CLASSIC
Canadian Land Surface Scheme including Biogeochemical Cycles
src Directory Reference

Files

file  allocateCarbon.f90
 Performs allocation of carbon gained by photosynthesis into plant structural pools.
 
file  applyAllometry.f90
 Applies allometric relationships to converts biomass to structural attributes.
 
file  atmosphericVarsCalc.f90
 Evaluates atmospheric variables and rainfall/snowfall rates over modelled area.
 
file  autotrophicRespiration.f90
 Autotrophic respiration. Leaf respiration is calculated in phtsyn subroutine, while stem and root maintenance respiration are calculated here.
 
file  balanceCarbon.f90
 Checks carbon pools for conservation.
 
file  calcLandSurfParams.f90
 Calculates various land surface parameters.
 
file  canopyAlbedoTransmiss.f90
 Calculates vegetation albedos, transmissivities and stomatal resistances.
 
file  canopyInterception.f90
 Calculates canopy interception of rainfall and snowfall, and determines rainfall/snowfall rates at ground surface as a result of throughfall and unloading.
 
file  canopyPhaseChange.f90
 Checks for freezing or thawing of liquid or frozen water on the vegetation canopy, and adjust canopy temperature and intercepted water stores accordingly.
 
file  canopyWaterUpdate.f90
 Updates liquid and frozen water stores on canopy and in soil in response to calculated sublimation, evaporation and transpiration rates.
 
file  checkWaterBudget.f90
 Checks for closure of surface water budget, and for unphysical values of certain variables.
 
file  classGatherScatter.f90
 Transfers information between the 'gathered' and 'scattered' form of the CLASS data arrays.
 
file  classGrowthIndex.f90
 Evaluates growth index used in calculating vegetation parameters for forests.
 
file  CLASSIC.F90
 Principle driver program to run CLASSIC in stand-alone mode using specified boundary conditions and atmospheric forcing. Depending upon the compiler options chosen, this program will either run in MPI mode for use on parallel computing environments or in serial mode for use in running at single sites.
 
file  classicParams.f90
 Contains CLASSIC globally accessible parameters.
 
file  classStateVars.f90
 Contains the physics variable type structures.
 
file  competitionMod.f90
 Performs competition between PFTs for space.
 
file  ctemDriver.f90
 Principle driver for CTEM.
 
file  ctemGatherScatter.f90
 Transfers information between the 'gathered' and 'scattered' form of the CTEM data arrays.
 
file  ctemStateVars.f90
 Contains the biogeochemistry-related variable type structures.
 
file  ctemUtilities.f90
 Central module for CTEM (biogeochemical)-related utilities.
 
file  DIASURFZ.f90
 Calculate the diagnostic values of U, V, T, Q near the surface (ZU and ZT)
 
file  disturb.f90
 Calculates disturbance as both natural and human-influenced fires.
 
file  DRCOEF.f90
 Calculates drag coefficients and related variables This work has been described in [1].
 
file  energBalNoVegSolve.f90
 Solves surface energy balance for non-vegetated subareas.
 
file  energBalVegSolve.f90
 Solves surface energy balance for vegetated subareas.
 
file  energyBudgetDriver.f90
 Calls subroutines to perform surface energy budget calculations.
 
file  energyBudgetPrep.f90
 Initializes subarea variables and calculate various parameters for surface energy budget calculations.
 
file  energyWaterBalanceCheck.f90
 Checks for energy and water balance closure over modelled area.
 
file  errorHandler.f90
 Prints the name of the subroutine and an error code when an error condition is encountered.
 
file  fileIOModule.F90
 The File IO Module contains wrappers for accessing netCDF files. It uses precompile directives to determine if a compilation should be serial, using netCDF or parallel, using MPI/PnetCDF.
 
file  FLXSURFZ.f90
 Calculates surface layer transfer coefficients and fluxes FLXSURFZ is a variant of FLXSURF3 that permits to input wind and temperature (humidity) at different levels.
 
file  fourBandAlbedo.f90
 Driver for four band albedo scheme.
 
file  generalUtils.f90
 Central module for all general utilities.
 
file  groundAlbedo.f90
 Calculates visible and near-IR ground albedos.
 
file  heterotrophicRespirationMod.f90
 Central module for all heterotrophic respiration-related operations.
 
file  iceSheetBalance.f90
 >Performs temperature stepping and surface runoff calculations over ice sheets.
 
file  landuseChangeMod.f90
 Central module for all land use change operations.
 
file  main.f90
 Main model driver for CLASSIC in stand-alone mode using specified boundary conditions and atmospheric forcing.
 
file  methaneProcesses.f90
 Methane subroutines for wetland areal determination and methane emission and upland (oxic) soils methane uptake.
 
file  metModule.f90
 Performs disaggregation of input meteorological forcing arrays to the model physics timestep.
 
file  modelStateDrivers.f90
 Central driver to read in, and write out all model state variables (replacing INI and CTM files) as well as the model inputs such as MET, population density, land use change, CO2 etc.
 
file  mortality.f90
 Calculates the litter generated from leaves, stem, and root components after vegetation dies due to reduced growth efficiency or due to aging (the intrinsic mortality). Also updates the vegetation pools for changes due to the mortality calculations.
 
file  mvidx.f90
 Utility to determine location of closest value in an array.
 
file  outputManager.f90
 Central module for all netCDF output file operations.
 
file  peatlandsMod.f90
 Peatland specific parameterizations (photosynthesis and heterotrophic respiration)
 
file  phenolgy.f90
 Calculates the leaf status for CTEM's pfts and leaf litter generated by normal turnover of leaves and cold and drought stress; crop harvest; and for grasses green leaves are converted into brown.
 
file  photosynCanopyConduct.f90
 Net Photosynthesis and canopy conductance.
 
file  pondedWaterFreeze.f90
 Addresses freezing of water ponded on ground surface.
 
file  prepareOutputs.f90
 Central module that handles all preparation and writing to output files.
 
file  radiationDriver.f90
 Organizes calculation of radiation-related and other surface parameters.
 
file  readFromJobOptions.f90
 Parses command line arguments to program and reads in joboptions file.
 
file  screenRelativeHumidity.f90
 Calculates screen relative humidity based on input screen temperature, screen specific humidity and surface pressure.
 
file  SLDIAG.f90
 Calculates near surface output variables.
 
file  SNOW_ALBVAL.f90
 Computes the direct and diffuse snow albedo using lookup table and current snow conditions.
 
file  SNOW_TRANVAL.f90
 Computes the direct and diffuse snow transmission using lookup table and current snow conditions.
 
file  snowAddNew.f90
 Adds snow incident on the ground surface to the snow pack.
 
file  snowAging.f90
 Calculate decrease in snow albedo and increase in density due to aging.
 
file  snowAlbedoTransmiss.f90
 Diagnoses snowpack visible and near-IR albedos given the all-wave albedo at the current time step. Calculates snowpack transmissivity for shortwave radiation.
 
file  snowHeatCond.f90
 Calculate coefficients for solution of snow pack heat conduction.
 
file  snowInfiltrateRipen.f90
 Addresses infiltration of rain and meltwater into snow pack, and snow ripening.
 
file  snowMelt.f90
 Addresses melting of the snow pack.
 
file  snowSublimation.f90
 Sublimation calculations for the snow pack on the ground.
 
file  snowTempUpdate.f90
 Snow temperature calculations and cleanup after surface energy budget calculations.
 
file  soilCProcesses.f90
 Central module for all soil C processes involving movement of soil C up or down in soil column.
 
file  soilHeatFluxCleanup.f90
 Soil heat flux calculations and cleanup after surface energy budget calculations.
 
file  soilHeatFluxPrep.f90
 Calculate coefficients for solution of heat conduction into soil.
 
file  soilProperties.f90
 Assigns thermal and hydraulic properties to soil layers based on sand/clay content, or soil type. Also calculates permeable thickness of soil layers, and wet and dry surface albedo for mineral soils.
 
file  soilWaterPhaseChg.f90
 Check for freezing or thawing of liquid or frozen water in the soil layers, and adjust layer temperatures and water stores accordingly.
 
file  tracer.f90
 Module containing all relevant subroutines for the model tracer.
 
file  turnover.f90
 Calculates the litter generated from stem and root turnover Also updates the vegetation pools for changes due to the turnover calculations.
 
file  waterBaseflow.f90
 Recalculates liquid water content of soil layers after infiltration, and evaluates baseflow.
 
file  waterBudgetDriver.f90
 Calls subroutines to perform surface water budget calculations.
 
file  waterCalcPrep.f90
 Initializes subarea variables for surface water budget calculations, and performs preliminary calculations for diagnostic variables.
 
file  waterFlowInfiltrate.f90
 Quantifies movement of liquid water between soil layers under conditions of infiltration.
 
file  waterFlowNonInfiltrate.f90
 Quantifies movement of liquid water between soil layers under non-infiltrating conditions, in response to gravity and tension forces.
 
file  waterInfiltrateSat.f90
 Evaluates infiltration of water into soil under saturated conditions.
 
file  waterInfiltrateUnsat.f90
 Evaluates infiltration of water into soil under unsaturated conditions.
 
file  waterUnderCanopy.f90
 Assesses water flux elements at the ground surface under the vegetation canopy.
 
file  waterUpdates.f90
 Calculates overland flow; steps ahead pond and soil layer temperatures, and checks for freezing of the ponded water and freezing or thawing of liquid or frozen water in the soil layers. Adjusts ponded water temperature, soil layer temperatures and water stores accordingly.
 
file  xmlManager.f90
 The XML Manager Module handles the loading of variable descriptors and variable variants from an XML file. Once the variables are generated, corresponding NetCDF output files are created.
 
file  xmlParser.f90
 This xml parser is derived, in part, from xml-fortran (http://xml-fortran.sourceforge.net) Please see the LICENCE.txt for the licencing information.