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