Class fast_shadow#
Defined in File fast_shadow.hpp
Inheritance Relationships#
Base Type#
public module_base(Class module_base)
Class Documentation#
-
class fast_shadow : public module_base#
Calculates horizon shadows using an adaptation of Dozier and Frew 1990 to an unstructured mesh. Modifies the direct beam iswr ( = 0 W/m^2). Does not impact the diffuse beam
Requires:
Solar elevation “solar_el” [degrees]
Solar azimuth “solar_az” [degrees]
Provides:
Binary no shadow/shadow “shadow” [0 or 1=shadow]
Configuration:
{ "steps": 10, "max_distance": 1000 }
- steps#
Number of steps along the search vector to check for a higher point
- max_distance#
Maximum search distance to look for a higher point
References:
Dozier, J., & Frew, J. (1990). Rapid calculation of terrain parameters for radiation modeling from digital elevation data. IEEE Transactions on Geoscience and Remote, 28(5), 963–969.
Marsh, C., Pomeroy, J., Wheater, H. (2020). The Canadian Hydrological Model (CHM) v1.0: a multi-scale, multi-extent, variable-complexity hydrological model – design and overview Geoscientific Model Development 13(1), 225-247. https://dx.doi.org/10.5194/gmd-13-225-2020
- Type:
int
- Default:
10
- Type:
double
- Default:
1000 m
Public Functions
-
fast_shadow(config_file cfg)#
-
~fast_shadow()#
-
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