Class iswr#

Inheritance Relationships#

Base Type#

Class Documentation#

class iswr : public module_base#

This aggregates the _no_slope direct and diffuse flat plane estimates provided by other modules and calculates a unified variant that includes (if required) slope effects and applies shadow masks from shadowing modules.

Depends:

  • Shortwave direct on a flat plane “iswr_direct_no_slope” [ \( W \cdot m^{-2}\)]

  • Shortwave diffuse on a flat plane “iswr_diffuse_no_slope” [ \( W \cdot m^{-2}\)]

Provides:

  • Shortwave all beam “iswr” [ \( W \cdot m^{-2}\)]

  • Shortwave direct “iswr_direct” [ \( W \cdot m^{-2}\)]

  • Shortwave diffuse “iswr_diffuse” [ \( W \cdot m^{-2}\)]

Configuration:

{
   "no_slope": false,
   "already_cosine_corrected": false
}
no_slope#

Disables slope correction.

already_cosine_corrected#
”Most observations implicitly have a cosine-correction built in by virtu of the flat-plane observation.

When using observed, ground based observations, you probably want to set this to true, so that a cosine correction is not applied twice.

If the forcing input is out of a NWP, then this should be false.

Warning

If using ground-based observations, please look at the already_cosine_corrected configuration option!

Type:

boolean

Default:

false

Type:

boolean

Default:

false

Public Functions

iswr(config_file cfg)#
~iswr()#
virtual void run(mesh_elem &face)#

Needs to be implemented by each data parallel module. This will be called and executed for each timestep

Parameters:
  • face – The terrain element (triangle) to be worked upon for an element parallel domain

  • global_param – A pointer to the shared global paramter space with domain-wide paramters

Public Members

bool assume_no_slope#
bool already_cosine_corrected#