Skip to content

an in-progress prototype interface for the land model

License

Notifications You must be signed in to change notification settings

lazarusA/ClimaLSM.jl

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

ClimaLSM

an in-progress prototype interface for running land models in integrated (multi- component) or standalone (single component) modes.

Recommended Julia Version: Stable release v1.10.0. CI no longer tests earlier versions of Julia.

Certain features, including global runs, are not currently available on Windows due to limitations with our regridding software.

Models

Model <: AbstractModel

All models have the same abstract supertype, and have shared functionality. There is the the option to define new methods particular to your model, or to fall back on defaults. The functions each new Model type can define are:

  • make_compute_exp_tendency()
  • make_compute_imp_tendency()
  • make_update_aux()
  • make_exp_tendency()
  • make_imp_tendency()
  • initialize_prognostic()
  • initialize_auxiliary()
  • initialize()
  • prognostic_vars()
  • auxiliary_vars()

Each model will also have some notion of a domain with coordinates, parameter sets, and boundary conditions or other prescribed drivers.

The AbstractModel type is extended by the types AbstractImExModel, which allows for mixed implicit and explicit timestepping, and AbstractExpModel, which only allows for explicit timestepping. AbstractModel is also extended by AbstractLandModel, which contains component models of type AbstractModel.

Examples:

Component Models: RichardsModel <: AbstractSoilModel <: AbstractImExModel <: AbstractModel [runnable w/o LandModel wrapper as well]

PlantHydraulicsModel <: AbstractVegetationModel <: AbstractExpModel <: AbstractModel [runnable w/o LandModel wrapper as well]

PondModel <: AbstractSurfaceWaterModel <: AbstractExpModel <: AbstractModel [runnable w/o LandModel wrapper as well]

Combined Models:

SoilPlantHydrologyModel <: AbstractLandModel <: AbstractModel (constructs the individual ComponentModels based on arguments)

Docs Build docs build
Documentation dev
GHA CI gha ci
Code Coverage codecov

About

an in-progress prototype interface for the land model

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Julia 100.0%