Getting Started

Installation of Julia and ClimaLand

ClimaLand is provided as a Julia package, so it requires having Julia installed. Information about Julia packages is available on the Julia website.

First, download and install Julia by following the instructions at https://julialang.org/downloads/. Then, you can launch a Julia REPL and install the ClimaLand.jl package by running:

julia> using Pkg
julia> Pkg.add(ClimaLand)
julia> using ClimaLand

A typical land simulation employs several different parameterizations to model the various land-surface processes. Let's start our journet into ClimaLand by looking at one of those.

Parameterization

Let's start with a basic example: compute canopy gross photosynthesis (GPP).

julia> using ClimaLand
julia> @doc ClimaLand.Canopy.compute_GPP compute_GPP(An::FT, K::FT, LAI::FT, Ω::FT) where {FT} Computes the total canopy photosynthesis (GPP) as a function of the total net carbon assimilation (An), the extinction coefficient (K), leaf area index (LAI) and the clumping index (Ω).

As you can see, our parameterization for GPP is located in the Canopy Module, and requires four arguments. For example, with An = 5 µmol m⁻² s⁻¹, K = 0.5, LAI = 3 m² m⁻², Ω = 0.7, you can compute GPP like below:

julia> import ClimaLand.Canopy as canopy
julia> canopy.compute_GPP(5.0, 0.5, 3.0, 0.7)9.28660358412635

Et voilà!

Note that our package ParamViz allows interactive visualisation of our parameterizations. See examples in the standalone models pages.

ClimaLand structure

ClimaLand contains multiple modules. They are listed below:

julia> using MethodAnalysis, ClimaLand
julia> child_modules(ClimaLand)14-element Vector{Module}: ClimaLand ClimaLand.Artifacts ClimaLand.Bucket ClimaLand.Canopy ClimaLand.Canopy.PlantHydraulics ClimaLand.Diagnostics ClimaLand.Domains ClimaLand.Parameters ClimaLand.Pond ClimaLand.Simulations ClimaLand.Snow ClimaLand.Soil ClimaLand.Soil.Biogeochemistry ClimaLand.Soil.Runoff

To explore what modules, functions and types are exported in a particular module, you can use About.jl:

julia> using ClimaLand
julia> using AboutERROR: ArgumentError: Package About not found in current path. - Run `import Pkg; Pkg.add("About")` to install the About package.
julia> about(ClimaLand.Soil.Biogeochemistry)ERROR: UndefVarError: `about` not defined in `Main` Suggestion: check for spelling errors or missing imports.

Where modules are shown in red, functions are shown in blue, and types are shown in yellow.

To see the documentation about a particular module, function or type, you can use ? to go in help mode in the REPL, or @doc as in Parameterization above.