Module Reference
Complete reference for all Fortran modules in the Canopy-App system. This page provides an overview and links to the detailed auto-generated API documentation.
Auto-Generated Documentation
For detailed API documentation with function signatures, parameters, and examples, see the Auto-Generated Doxygen API.
Core System Modules
Main Application
::: canopy selection: members: - canopy_app rendering: show_source: true show_bases: false heading_level: 4
The main program entry point that coordinates all model execution phases.
Memory Management
::: canopy selection: members: - MemoryManagement rendering: show_source: true show_bases: false heading_level: 4
Dynamic memory allocation and deallocation for all model arrays.
Reads and parses Fortran namelist configuration files.
Supported Namelists:
- &canopy_inputs - Input/output file specifications
- &canopy_options - Physics options and switches
- &canopy_physics - Physical parameter settings
canopy_files_mod.F90
File Management
Utilities for file path handling, existence checking, and format detection.
Key Functions:
Complete NetCDF file handling for both input and output operations.
canopy_aero_ddep_mod.F90
Aerosol Dry Deposition
Sub-canopy aerosol dry deposition velocity calculations following Katul et al. (2010) and urban/non-vegetated dry deposition using Pleim et al. (2022).
Key Variables:
- ddep_aero(nlon, nlat, modlays) - Vegetated aerosol dry deposition velocity profile (m/s)
User Options:
- ifcanaeroddep - Logical switch in the namelist to enable/disable aerosol dry deposition calculations. When .TRUE., activates both vegetated and urban/non-vegetated routines and outputs (see ddep_aero variables).
- aeroddep_opt - Integer option to select resistance parameterization for sub-canopy aerosol dry deposition:
- 0: Katul et al. (2010) [default]
- 1: Zhang et al. (2001)
- 2: Petroff et al. (2008)
- aeroddep_diam - Aerosol particle diameter (m)
- aeroddep_rho - Aerosol particle density (kg/m^3)
Subroutines:
- canopy_aero_ddep_katul2010 - Vegetated (Katul et al. 2010)
- canopy_aero_ddep_pleim2022 - Urban/non-vegetated (Pleim et al. 2022)
Capabilities:
- Read meteorological input data
- Write model output in CF-compliant format
- Handle time series and profile data
- Error checking and validation
canopy_txt_io_mod.F90
Text File Input/Output
ASCII text file I/O operations for simple data exchange.
Features: - Column-based data reading - Formatted output generation - Header processing - Quality control checks
Physical Process Modules
canopy_canmet_mod.F90
Canopy Meteorology
Computes meteorological variables within and above the canopy.
Calculations: - Wind speed profiles using similarity theory - Temperature and humidity gradients - Atmospheric stability corrections - Turbulent mixing parameterizations
Key Variables:
- wind_prof(nlev) - Wind speed profile
- temp_prof(nlev) - Temperature profile
- rh_prof(nlev) - Relative humidity profile
canopy_rad_mod.F90
Radiation Transfer
Solar and longwave radiation calculations through the canopy.
Capabilities: - Beer's law attenuation - Direct and diffuse radiation separation - Solar zenith angle calculations - Photosynthetically active radiation (PAR)
Key Variables:
- solar_flux(nlev) - Solar radiation by level
- par_flux(nlev) - PAR availability
- zenith_angle - Solar zenith angle
canopy_bioemi_mod.F90
Biogenic Emissions
Vegetation emissions of volatile organic compounds.
Emission Types: - Temperature-dependent emissions (monoterpenes) - Light-dependent emissions (isoprene) - Stress-induced emissions - Species-specific emission factors
Key Variables:
- emis_isop(nlev) - Isoprene emission rates
- emis_mono(nlev) - Monoterpene emission rates
- emis_total - Total canopy emissions
canopy_drydep_mod.F90
Dry Deposition
Removal of atmospheric gases and particles by vegetation.
Methods: - Multi-layer resistance networks - Big-leaf approximations - Stomatal and cuticular pathways - Environmental controls
Key Variables:
- vdep_gas(nspec) - Deposition velocities by species
- flux_dep(nspec) - Deposition fluxes
- resist_stom(nlev) - Stomatal resistance
canopy_phot_mod.F90
Photolysis Rates
Photolysis rate calculations for atmospheric chemistry.
Features: - Actinic flux attenuation - Species-specific cross sections - Canopy shading effects - Wavelength-dependent calculations
Key Variables:
- jvals(nphot,nlev) - Photolysis rates by species and level
- actinic_flux(nlev) - Actinic flux profile
Supporting Modules
canopy_const_mod.F90
Physical Constants
Fundamental physical and mathematical constants used throughout the model.
Categories: - Physical constants (gravity, gas constant, etc.) - Conversion factors - Mathematical constants - Default parameter values
canopy_utils_mod.F90
Utility Functions
General-purpose utility functions and mathematical operations.
Functions: - Array operations and statistics - Unit conversions - Mathematical utilities - String processing
canopy_coord_mod.F90
Coordinate Systems
Coordinate system transformations and grid utilities.
Features: - Vertical coordinate transformations - Grid spacing calculations - Level interpolation routines
canopy_date_mod.F90
Date and Time Handling
Date/time parsing, validation, and calculations.
Capabilities: - Date string parsing - Julian day calculations - Time zone handling - Solar angle computations
Variable and Parameter Modules
canopy_canvars_mod.F90
Canopy Variables
Central repository for all canopy-related variables and arrays.
canopy_canopts_mod.F90
Canopy Options
Model configuration options and physics switches.
canopy_bioparm_mod.F90
Biogenic Parameters
Parameters for biogenic emission calculations.