Global full land (snow+soil+canopy) run

The code sets up the ClimaLand land model on a spherical domain, forcing with ERA5 data, but does not actually run the simulation. To run the simulation, we strongly recommend using a GPU.

First we import a lot of packages:

import ClimaComms
ClimaComms.@import_required_backends
using ClimaUtilities
import Interpolations
import ClimaUtilities.TimeVaryingInputs:
    TimeVaryingInput, LinearInterpolation, PeriodicCalendar
import ClimaParams as CP
import ClimaLand
import ClimaLand.Parameters as LP
import ClimaLand.Simulations: LandSimulation, solve!
using Dates
using CairoMakie, ClimaAnalysis, GeoMakie, Poppler_jll, Printf, StatsBase
import ClimaLand.LandSimVis as LandSimVis;

Set the simulation float type, determine the context (MPI or on a single node), and device type (CPU or GPU). Create a default output directory for diagnostics.

const FT = Float64;
context = ClimaComms.context()
ClimaComms.init(context)
device = ClimaComms.device()
device_suffix = device isa ClimaComms.CPUSingleThreaded ? "cpu" : "gpu"
root_path = "land_longrun_$(device_suffix)"
diagnostics_outdir = joinpath(root_path, "global_diagnostics")
outdir =
    ClimaUtilities.OutputPathGenerator.generate_output_path(diagnostics_outdir);
earth_param_set = LP.LandParameters(FT);

Set timestep, startdate, stopdate:

Δt = 450.0
start_date = DateTime(2008)
stop_date = DateTime(2009);

Create the domain:

nelements = (101, 15)
domain = ClimaLand.Domains.global_domain(FT; context, nelements);

Low-resolution forcing data from ERA5 is used here, but high-resolution should be used for production runs.

era5_ncdata_path = ClimaLand.Artifacts.era5_land_forcing_data2008_path(;
    context,
    lowres = true,
)
forcing = ClimaLand.prescribed_forcing_era5(
    era5_ncdata_path,
    domain.space.surface,
    start_date,
    earth_param_set,
    FT;
    max_wind_speed = 25.0,
    time_interpolation_method = LinearInterpolation(PeriodicCalendar()),
    regridder_type = :InterpolationsRegridder,
);

MODIS LAI is prescribed for the canopy model:

modis_lai_ncdata_path = ClimaLand.Artifacts.modis_lai_multiyear_paths(;
    context,
    start_date,
    end_date = stop_date,
)
LAI = ClimaLand.prescribed_lai_modis(
    modis_lai_ncdata_path,
    domain.space.surface,
    start_date;
    time_interpolation_method = LinearInterpolation(),
);

Make the model:

model = ClimaLand.LandModel{FT}(forcing, LAI, earth_param_set, domain, Δt);
simulation = ClimaLand.Simulations.LandSimulation(
    start_date,
    stop_date,
    Δt,
    model;
    outdir,
);
┌ Warning: overwriting diagnostic `epa` entry containing fields
│ ("nothing", "epa", "Energy per unit ground area", "energy_per_area", "J m^-2", "Vertically integrated volumetric energy per area")
└ @ ClimaLand.Diagnostics ~/work/ClimaLand.jl/ClimaLand.jl/src/diagnostics/diagnostic.jl:60
┌ Warning: overwriting diagnostic `wvpa` entry containing fields
│ ("nothing", "wvpa", "Water volume per unit ground area", "water_volume_per_area", "m^3 m^-2", "Vertically integrated volumetric water per area")
└ @ ClimaLand.Diagnostics ~/work/ClimaLand.jl/ClimaLand.jl/src/diagnostics/diagnostic.jl:60
┌ Warning: overwriting diagnostic `epac` entry containing fields
│ ("nothing", "epac", "Energy per unit ground area change", "energy_per_area_change", "J m^-2", "Expected change in vertically integrated volumetric energy per area")
└ @ ClimaLand.Diagnostics ~/work/ClimaLand.jl/ClimaLand.jl/src/diagnostics/diagnostic.jl:60
┌ Warning: overwriting diagnostic `wvpac` entry containing fields
│ ("nothing", "wvpac", "Water volume per unit ground area change", "water_volume_per_area_change", "m^3 m^-2", "Expected change in vertically integrated volumetric water per area")
└ @ ClimaLand.Diagnostics ~/work/ClimaLand.jl/ClimaLand.jl/src/diagnostics/diagnostic.jl:60
┌ Warning: overwriting diagnostic `swa` entry containing fields
│ ("nothing", "swa", "Shortwave Albedo", "sw_albedo", "", "The fraction of downwelling shortwave radiation reflected by the land surface.")
└ @ ClimaLand.Diagnostics ~/work/ClimaLand.jl/ClimaLand.jl/src/diagnostics/diagnostic.jl:60
┌ Warning: overwriting diagnostic `rn` entry containing fields
│ ("nothing", "rn", "Net Radiation", "net_radiation", "W m^-2", "Difference between downwelling and upwelling shortwave and longwave radiation at the land surface.")
└ @ ClimaLand.Diagnostics ~/work/ClimaLand.jl/ClimaLand.jl/src/diagnostics/diagnostic.jl:60
┌ Warning: overwriting diagnostic `tsfc` entry containing fields
│ ("nothing", "tsfc", "Bucket Surface Temperature", "surface_temperature", "K", "Temperature of the bucket-land surface.")
└ @ ClimaLand.Diagnostics ~/work/ClimaLand.jl/ClimaLand.jl/src/diagnostics/diagnostic.jl:60
┌ Warning: overwriting diagnostic `lhf` entry containing fields
│ ("nothing", "lhf", "Latent Heat Flux", "latent_heat_flux", "W m^-2", "Exchange of energy at the land-atmosphere interface due to water evaporation or sublimation.")
└ @ ClimaLand.Diagnostics ~/work/ClimaLand.jl/ClimaLand.jl/src/diagnostics/diagnostic.jl:60
┌ Warning: overwriting diagnostic `rae` entry containing fields
│ ("nothing", "rae", "Aerodynamic Resistance", "aerodynamic_resistance", "m s^-1", "Effiency of turbulent transport controlling the land-atmosphere exchange of sensible and latent heat.")
└ @ ClimaLand.Diagnostics ~/work/ClimaLand.jl/ClimaLand.jl/src/diagnostics/diagnostic.jl:60
┌ Warning: overwriting diagnostic `shf` entry containing fields
│ ("nothing", "shf", "Sensible Heat Flux", "sensible_heat_flux", "W m^-2", "Exchange of energy at the land-atmosphere interface due to temperature difference.")
└ @ ClimaLand.Diagnostics ~/work/ClimaLand.jl/ClimaLand.jl/src/diagnostics/diagnostic.jl:60
┌ Warning: overwriting diagnostic `vflux` entry containing fields
│ ("nothing", "vflux", "Liquid water evaporation", "vapor_flux", "m s^-1", "Flux of water from the land surface to the atmosphere. E.g., evaporation or sublimation.")
└ @ ClimaLand.Diagnostics ~/work/ClimaLand.jl/ClimaLand.jl/src/diagnostics/diagnostic.jl:60
┌ Warning: overwriting diagnostic `rhosfc` entry containing fields
│ ("nothing", "rhosfc", "Surface Air Density", "surface_air_density", "kg m^−3", "Density of air at the land-atmosphere interface.")
└ @ ClimaLand.Diagnostics ~/work/ClimaLand.jl/ClimaLand.jl/src/diagnostics/diagnostic.jl:60
┌ Warning: overwriting diagnostic `tsoil` entry containing fields
│ ("nothing", "tsoil", "Soil temperature", "soil_temperature", "K", "Soil temperature at multiple soil depth. (depth resolved)")
└ @ ClimaLand.Diagnostics ~/work/ClimaLand.jl/ClimaLand.jl/src/diagnostics/diagnostic.jl:60
┌ Warning: overwriting diagnostic `wsoil` entry containing fields
│ ("nothing", "wsoil", "subsurface Water Storage", "subsurface_water_storage", "m", "Soil water content.")
└ @ ClimaLand.Diagnostics ~/work/ClimaLand.jl/ClimaLand.jl/src/diagnostics/diagnostic.jl:60
┌ Warning: overwriting diagnostic `wsfc` entry containing fields
│ ("nothing", "wsfc", "Surface Water Content", "surface_water_content", "m", "Water at the soil surface.")
└ @ ClimaLand.Diagnostics ~/work/ClimaLand.jl/ClimaLand.jl/src/diagnostics/diagnostic.jl:60
┌ Warning: overwriting diagnostic `ssfc` entry containing fields
│ ("nothing", "ssfc", "Snow Water Equivalent", "snow_water_equivalent", "m", "Snow at the soil surface, expressed in water equivalent.")
└ @ ClimaLand.Diagnostics ~/work/ClimaLand.jl/ClimaLand.jl/src/diagnostics/diagnostic.jl:60
┌ Warning: overwriting diagnostic `sif` entry containing fields
│ ("nothing", "sif", "Solar Induced Fluorescence", "solar_induced_fluorescence", "W m^-2", "The fluorescence of leaves induced by solar radiation at 755nm. This quantity is correlated with photosynthesis activity.")
└ @ ClimaLand.Diagnostics ~/work/ClimaLand.jl/ClimaLand.jl/src/diagnostics/diagnostic.jl:60
┌ Warning: overwriting diagnostic `ra` entry containing fields
│ ("nothing", "ra", "Autotrophic Respiration", "autotrophic_respiration", "mol CO2 m^-2 s^-1", "The canopy autotrophic respiration, the sum of leaves, stems and roots respiration.")
└ @ ClimaLand.Diagnostics ~/work/ClimaLand.jl/ClimaLand.jl/src/diagnostics/diagnostic.jl:60
┌ Warning: overwriting diagnostic `gs` entry containing fields
│ ("nothing", "gs", "Stomatal Conductance", "stomatal_conductance", "mol H2O m^-2 s^-1", "The conductance of leaves. This depends on stomatal opening. It varies with factors such as soil moisture or atmospheric water demand.")
└ @ ClimaLand.Diagnostics ~/work/ClimaLand.jl/ClimaLand.jl/src/diagnostics/diagnostic.jl:60
┌ Warning: overwriting diagnostic `trans` entry containing fields
│ ("nothing", "trans", "Canopy Transpiration", "canopy_transpiration", "m s^-1", "The water evaporated from the canopy due to leaf transpiration (flux of water volume, m^3 of water per m^2 of ground).")
└ @ ClimaLand.Diagnostics ~/work/ClimaLand.jl/ClimaLand.jl/src/diagnostics/diagnostic.jl:60
┌ Warning: overwriting diagnostic `clhf` entry containing fields
│ ("nothing", "clhf", "Canopy Latent Heat Flux", "canopy_latent_heat_flux", "W m^-2", "The energy used for canopy transpiration.")
└ @ ClimaLand.Diagnostics ~/work/ClimaLand.jl/ClimaLand.jl/src/diagnostics/diagnostic.jl:60
┌ Warning: overwriting diagnostic `cshf` entry containing fields
│ ("nothing", "cshf", "Canopy Sensible Heat Flux", "canopy_sensible_heat_flux", "W m^-2", "The energy used for canopy temperature change.")
└ @ ClimaLand.Diagnostics ~/work/ClimaLand.jl/ClimaLand.jl/src/diagnostics/diagnostic.jl:60
┌ Warning: overwriting diagnostic `lwp` entry containing fields
│ ("nothing", "lwp", "Leaf Water Potential", "leaf_water_potential", "m", "The water potential of a leaf.")
└ @ ClimaLand.Diagnostics ~/work/ClimaLand.jl/ClimaLand.jl/src/diagnostics/diagnostic.jl:60
┌ Warning: overwriting diagnostic `far` entry containing fields
│ ("nothing", "far", "Root flux per ground area", "root_flux_per_ground_area", "m s^-1", "Flux of water volume per m^2 of root per second, multiplied by the area index (root area/ground area).")
└ @ ClimaLand.Diagnostics ~/work/ClimaLand.jl/ClimaLand.jl/src/diagnostics/diagnostic.jl:60
┌ Warning: overwriting diagnostic `lai` entry containing fields
│ ("nothing", "lai", "Leaf area Index", "leaf_area_index", "m^2 m^-2", "The area index of leaves, expressed in surface area of leaves per surface area of ground.")
└ @ ClimaLand.Diagnostics ~/work/ClimaLand.jl/ClimaLand.jl/src/diagnostics/diagnostic.jl:60
┌ Warning: overwriting diagnostic `msf` entry containing fields
│ ("nothing", "msf", "Moisture Stress Factor", "moisture_stress_factor", "", "Sensitivity of plants conductance to soil water content. Unitless")
└ @ ClimaLand.Diagnostics ~/work/ClimaLand.jl/ClimaLand.jl/src/diagnostics/diagnostic.jl:60
┌ Warning: overwriting diagnostic `rai` entry containing fields
│ ("nothing", "rai", "Root area Index", "root_area_index", "m^2 m^-2", "The area index of roots, expressed in surface area of roots per surface area of ground.")
└ @ ClimaLand.Diagnostics ~/work/ClimaLand.jl/ClimaLand.jl/src/diagnostics/diagnostic.jl:60
┌ Warning: overwriting diagnostic `sai` entry containing fields
│ ("nothing", "sai", "Stem area Index", "stem_area_index", "m^2 m^-2", "The area index of stems, expressed in surface area of stems per surface area of ground.")
└ @ ClimaLand.Diagnostics ~/work/ClimaLand.jl/ClimaLand.jl/src/diagnostics/diagnostic.jl:60
┌ Warning: overwriting diagnostic `gpp` entry containing fields
│ ("nothing", "gpp", "Gross Primary Productivity", "gross_primary_productivity", "mol CO2 m^-2 s^-1", "Net photosynthesis (carbon assimilation) of the canopy. This is equivalent to leaf net assimilation scaled to the canopy level.")
└ @ ClimaLand.Diagnostics ~/work/ClimaLand.jl/ClimaLand.jl/src/diagnostics/diagnostic.jl:60
┌ Warning: overwriting diagnostic `an` entry containing fields
│ ("nothing", "an", "Leaf Net Photosynthesis", "leaf_net_photosynthesis", "mol CO2 m^-2 s^-1", "Net photosynthesis (carbon assimilation) of a leaf, computed for example by the Farquhar model.")
└ @ ClimaLand.Diagnostics ~/work/ClimaLand.jl/ClimaLand.jl/src/diagnostics/diagnostic.jl:60
┌ Warning: overwriting diagnostic `rd` entry containing fields
│ ("nothing", "rd", "Leaf Respiration", "leaf_dark_respiration", "mol CO2 m^-2 s^-1", "Leaf respiration, called dark respiration because usually measured in the abscence of radiation.")
└ @ ClimaLand.Diagnostics ~/work/ClimaLand.jl/ClimaLand.jl/src/diagnostics/diagnostic.jl:60
┌ Warning: overwriting diagnostic `vcmax25` entry containing fields
│ ("nothing", "vcmax25", "Vcmax25", "vcmax25", "mol CO2 m^-2 s^-1", "The parameter vcmax at 25 degree celsius. Important for the Farquhar model of leaf photosynthesis.")
└ @ ClimaLand.Diagnostics ~/work/ClimaLand.jl/ClimaLand.jl/src/diagnostics/diagnostic.jl:60
┌ Warning: overwriting diagnostic `nir` entry containing fields
│ ("nothing", "nir", "Near Infrared Radiation", "near_infrared_radiation", "mol photons m^-2 s^-1", "The amount of near infrared radiation reaching the canopy.")
└ @ ClimaLand.Diagnostics ~/work/ClimaLand.jl/ClimaLand.jl/src/diagnostics/diagnostic.jl:60
┌ Warning: overwriting diagnostic `anir` entry containing fields
│ ("nothing", "anir", "Absorbed Near Infrared Radiation", "absorbed_near_infrared_radiation", "mol photons m^-2 s^-1", "The amount of near infrared radiation absorbed by the canopy.")
└ @ ClimaLand.Diagnostics ~/work/ClimaLand.jl/ClimaLand.jl/src/diagnostics/diagnostic.jl:60
┌ Warning: overwriting diagnostic `rnir` entry containing fields
│ ("nothing", "rnir", "Reflected Near Infrared Radiation", "reflected_near_infrared_radiation", "mol photons m^-2 s^-1", "The amount of near infrared radiation reflected by the canopy.")
└ @ ClimaLand.Diagnostics ~/work/ClimaLand.jl/ClimaLand.jl/src/diagnostics/diagnostic.jl:60
┌ Warning: overwriting diagnostic `tnir` entry containing fields
│ ("nothing", "tnir", "Transmitted Near Infrared Radiation", "transmitted_near_infrared_radiation", "mol photons m^-2 s^-1", "The amount of near infrared radiation transmitted by the canopy.")
└ @ ClimaLand.Diagnostics ~/work/ClimaLand.jl/ClimaLand.jl/src/diagnostics/diagnostic.jl:60
┌ Warning: overwriting diagnostic `par` entry containing fields
│ ("nothing", "par", "Photosynthetically Active Radiation", "photosynthetically_active_radiation", "mol photons m^-2 s^-1", "The subset of total radiation that activates photosynthesis reaching the canopy.")
└ @ ClimaLand.Diagnostics ~/work/ClimaLand.jl/ClimaLand.jl/src/diagnostics/diagnostic.jl:60
┌ Warning: overwriting diagnostic `apar` entry containing fields
│ ("nothing", "apar", "Absorbed Photosynthetically Active Radiation", "absorbed_photosynthetically_active_radiation", "mol photons m^-2 s^-1", "The amount of photosynthetically active radiation absorbed by the leaf. The rest if reflected or transmitted.")
└ @ ClimaLand.Diagnostics ~/work/ClimaLand.jl/ClimaLand.jl/src/diagnostics/diagnostic.jl:60
┌ Warning: overwriting diagnostic `rpar` entry containing fields
│ ("nothing", "rpar", "Reflected Photosynthetically Active Radiation", "reflected_photosynthetically_active_radiation", "mol photons m^-2 s^-1", "The amount of photosynthetically active radiation reflected by leaves.")
└ @ ClimaLand.Diagnostics ~/work/ClimaLand.jl/ClimaLand.jl/src/diagnostics/diagnostic.jl:60
┌ Warning: overwriting diagnostic `tpar` entry containing fields
│ ("nothing", "tpar", "Transmitted Photosynthetically Active Radiation", "transmitted_photosynthetically_active_radiation", "mol photons m^-2 s^-1", "The amount of photosynthetically active radiation transmitted by leaves.")
└ @ ClimaLand.Diagnostics ~/work/ClimaLand.jl/ClimaLand.jl/src/diagnostics/diagnostic.jl:60
┌ Warning: overwriting diagnostic `lwn` entry containing fields
│ ("nothing", "lwn", "Net Longwave Radiation", "net_longwave_radiation", "W m^-2", "The net (down minus up) longwave radiation at the surface.")
└ @ ClimaLand.Diagnostics ~/work/ClimaLand.jl/ClimaLand.jl/src/diagnostics/diagnostic.jl:60
┌ Warning: overwriting diagnostic `swn` entry containing fields
│ ("nothing", "swn", "Net Shortwave Radiation", "net_shortwave_radiation", "W m^-2", "The net (down minus up) shortwave radiation at the surface.")
└ @ ClimaLand.Diagnostics ~/work/ClimaLand.jl/ClimaLand.jl/src/diagnostics/diagnostic.jl:60
┌ Warning: overwriting diagnostic `soc` entry containing fields
│ ("nothing", "soc", "Soil organic carbon", "soil_organic_carbon", "kg C m^-3", "Mass of organic carbon per volume of soil. (depth resolved)")
└ @ ClimaLand.Diagnostics ~/work/ClimaLand.jl/ClimaLand.jl/src/diagnostics/diagnostic.jl:60
┌ Warning: overwriting diagnostic `airp` entry containing fields
│ ("nothing", "airp", "Air pressure", "air_pressure", "Pa", "The air pressure.")
└ @ ClimaLand.Diagnostics ~/work/ClimaLand.jl/ClimaLand.jl/src/diagnostics/diagnostic.jl:60
┌ Warning: overwriting diagnostic `rain` entry containing fields
│ ("nothing", "rain", "Rainfall", "rainfall", "m s^-1", "Precipitation of liquid water volume (m^3 of water per m^2 of ground per second).")
└ @ ClimaLand.Diagnostics ~/work/ClimaLand.jl/ClimaLand.jl/src/diagnostics/diagnostic.jl:60
┌ Warning: overwriting diagnostic `lwd` entry containing fields
│ ("nothing", "lwd", "Down Longwave Radiation", "down_longwave_radiation", "W m^-2", "The downwelling longwave radiation at the surface.")
└ @ ClimaLand.Diagnostics ~/work/ClimaLand.jl/ClimaLand.jl/src/diagnostics/diagnostic.jl:60
┌ Warning: overwriting diagnostic `swd` entry containing fields
│ ("nothing", "swd", "Shortwave Radiation Downwards", "down_shortwave_radiation", "W m^-2", "The downwelling shortwave radiation at the surface.")
└ @ ClimaLand.Diagnostics ~/work/ClimaLand.jl/ClimaLand.jl/src/diagnostics/diagnostic.jl:60
┌ Warning: overwriting diagnostic `snow` entry containing fields
│ ("nothing", "snow", "Snowfall", "snowfall", "m s^-1", "The precipitation of snow in liquid water volume (m^3 of water per m^2 of ground per second).")
└ @ ClimaLand.Diagnostics ~/work/ClimaLand.jl/ClimaLand.jl/src/diagnostics/diagnostic.jl:60
┌ Warning: overwriting diagnostic `precip` entry containing fields
│ ("nothing", "precip", "Total precipitation", "total_precipitation", "kg m^-2 s^-1", "The total flux from precipitation in kg of water per m^2 of ground per second).")
└ @ ClimaLand.Diagnostics ~/work/ClimaLand.jl/ClimaLand.jl/src/diagnostics/diagnostic.jl:60
┌ Warning: overwriting diagnostic `tair` entry containing fields
│ ("nothing", "tair", "Air Temperature (K)", "tair", "K", "The air temperature at the lowest level of the atmosphere (coupled) or 2m level (prescribed).")
└ @ ClimaLand.Diagnostics ~/work/ClimaLand.jl/ClimaLand.jl/src/diagnostics/diagnostic.jl:60
┌ Warning: overwriting diagnostic `qsfc` entry containing fields
│ ("nothing", "qsfc", "Surface Specific Humidity", "surface_specific_humidity", "", "Ratio of water vapor mass to total moist air parcel mass.")
└ @ ClimaLand.Diagnostics ~/work/ClimaLand.jl/ClimaLand.jl/src/diagnostics/diagnostic.jl:60
┌ Warning: overwriting diagnostic `ws` entry containing fields
│ ("nothing", "ws", "Wind Speed", "wind_speed", "m s^-1", "The average wind speed.")
└ @ ClimaLand.Diagnostics ~/work/ClimaLand.jl/ClimaLand.jl/src/diagnostics/diagnostic.jl:60
┌ Warning: overwriting diagnostic `infil` entry containing fields
│ ("nothing", "infil", "Infiltration", "infiltration", "m s^-1", "The flux of liquid water volume into the soil (m^3 of water per m^2 of ground per second).")
└ @ ClimaLand.Diagnostics ~/work/ClimaLand.jl/ClimaLand.jl/src/diagnostics/diagnostic.jl:60
┌ Warning: overwriting diagnostic `salb` entry containing fields
│ ("nothing", "salb", "Soil Albedo", "surface albedo", "", "The mean of PAR and NIR albedo, which are calculated as α_soil_band = α_band_dry * (1 - S_e) + α_band_wet * S_e.")
└ @ ClimaLand.Diagnostics ~/work/ClimaLand.jl/ClimaLand.jl/src/diagnostics/diagnostic.jl:60
┌ Warning: overwriting diagnostic `shc` entry containing fields
│ ("nothing", "shc", "Soil Hydraulic Conductivity", "soil_hydraulic_conductivity", "m s^-1", "Soil hydraulic conductivity. (depth resolved)")
└ @ ClimaLand.Diagnostics ~/work/ClimaLand.jl/ClimaLand.jl/src/diagnostics/diagnostic.jl:60
┌ Warning: overwriting diagnostic `stc` entry containing fields
│ ("nothing", "stc", "Soil Thermal Conductivity", "soil_thermal_conductivity", "W m^-1 K^-1", "Soil thermal conductivity. (depth resolved)")
└ @ ClimaLand.Diagnostics ~/work/ClimaLand.jl/ClimaLand.jl/src/diagnostics/diagnostic.jl:60
┌ Warning: overwriting diagnostic `swp` entry containing fields
│ ("nothing", "swp", "Soil Water Potential", "soil_water_potential", "Pa", "Soil water potential. (depth resolved)")
└ @ ClimaLand.Diagnostics ~/work/ClimaLand.jl/ClimaLand.jl/src/diagnostics/diagnostic.jl:60
┌ Warning: overwriting diagnostic `soilrn` entry containing fields
│ ("nothing", "soilrn", "Soil Net Radiation", "soil_net_radiation", "W m^-2", "Net radiation at the soil surface.")
└ @ ClimaLand.Diagnostics ~/work/ClimaLand.jl/ClimaLand.jl/src/diagnostics/diagnostic.jl:60
┌ Warning: overwriting diagnostic `soillhf` entry containing fields
│ ("nothing", "soillhf", "Soil Latent Heat Flux", "soil_Latent_Heat_Flux", "W m^-2", "Soil latent heat flux, the amount of liquid water evaporated by the soil, expressed in energy units (W m^-2).")
└ @ ClimaLand.Diagnostics ~/work/ClimaLand.jl/ClimaLand.jl/src/diagnostics/diagnostic.jl:60
┌ Warning: overwriting diagnostic `soilshf` entry containing fields
│ ("nothing", "soilshf", "Soil Sensible Heat Flux", "soil_sensible_Heat_Flux", "W m^-2", "Soil sensible heat flux, the amount of energy exchanged between the soil and atmosphere to change the temperature of the soil.")
└ @ ClimaLand.Diagnostics ~/work/ClimaLand.jl/ClimaLand.jl/src/diagnostics/diagnostic.jl:60
┌ Warning: overwriting diagnostic `hr` entry containing fields
│ ("nothing", "hr", "Heterotrophic Respiration", "heterotrophic_respiration", "mol m^-2 s^-1", "The CO2 efflux at the soil surface due to microbial decomposition of soil organic matter. This is not necessarily equal to CO2 production by microbes, as co2 diffusion through the soil pores takes time.")
└ @ ClimaLand.Diagnostics ~/work/ClimaLand.jl/ClimaLand.jl/src/diagnostics/diagnostic.jl:60
┌ Warning: overwriting diagnostic `scd` entry containing fields
│ ("nothing", "scd", "Soil CO2 Diffusivity", "soil_co2_diffusivity", "m^2 s^-1", "The diffusivity of CO2 in the porous phase of the soil. Depends on soil texture, moisture, and temperature. (depth resolved)")
└ @ ClimaLand.Diagnostics ~/work/ClimaLand.jl/ClimaLand.jl/src/diagnostics/diagnostic.jl:60
┌ Warning: overwriting diagnostic `scms` entry containing fields
│ ("nothing", "scms", "Soil CO2 Microbial Source", "soil_co2_microbial_source", "kg C m^-3 s^-1", "The production of CO2 by microbes in the soil. Vary by layers of soil depth. (depth resolved)")
└ @ ClimaLand.Diagnostics ~/work/ClimaLand.jl/ClimaLand.jl/src/diagnostics/diagnostic.jl:60
┌ Warning: overwriting diagnostic `lwu` entry containing fields
│ ("nothing", "lwu", "Longwave Radiation Up", "longwave_radiation_up", "W m^-2", "Upwelling longwave radiation.")
└ @ ClimaLand.Diagnostics ~/work/ClimaLand.jl/ClimaLand.jl/src/diagnostics/diagnostic.jl:60
┌ Warning: overwriting diagnostic `swu` entry containing fields
│ ("nothing", "swu", "Shortwave Radiation Up", "shortwave_radiation_up", "W m^-2", "Upwelling shortwave radiation")
└ @ ClimaLand.Diagnostics ~/work/ClimaLand.jl/ClimaLand.jl/src/diagnostics/diagnostic.jl:60
┌ Warning: overwriting diagnostic `et` entry containing fields
│ ("nothing", "et", "Evapotranspiration", "evapotranspiration", "kg m^-2 s^-1", "Total flux of water mass out of the surface.")
└ @ ClimaLand.Diagnostics ~/work/ClimaLand.jl/ClimaLand.jl/src/diagnostics/diagnostic.jl:60
┌ Warning: overwriting diagnostic `er` entry containing fields
│ ("nothing", "er", "Ecosystem Respiration", "ecosystem respiration", "mol CO2 m^-2 s^-1", "Total respiration flux out of the surface.")
└ @ ClimaLand.Diagnostics ~/work/ClimaLand.jl/ClimaLand.jl/src/diagnostics/diagnostic.jl:60
┌ Warning: overwriting diagnostic `sr` entry containing fields
│ ("nothing", "sr", "Surface Runoff", "surface_runoff", "m s^-1", "Water runoff at the surface, this is the water flowing horizontally above the ground.")
└ @ ClimaLand.Diagnostics ~/work/ClimaLand.jl/ClimaLand.jl/src/diagnostics/diagnostic.jl:60
┌ Warning: overwriting diagnostic `ssr` entry containing fields
│ ("nothing", "ssr", "Subsurface Runoff", "subsurface_runoff", "m s^-1", "Water runoff from below the surface")
└ @ ClimaLand.Diagnostics ~/work/ClimaLand.jl/ClimaLand.jl/src/diagnostics/diagnostic.jl:60
┌ Warning: overwriting diagnostic `ct` entry containing fields
│ ("nothing", "ct", "Canopy Temperature", "canopy_temperature", "K", "Canopy temperature.")
└ @ ClimaLand.Diagnostics ~/work/ClimaLand.jl/ClimaLand.jl/src/diagnostics/diagnostic.jl:60
┌ Warning: overwriting diagnostic `sco2` entry containing fields
│ ("nothing", "sco2", "Soil CO2", "soil_co2", "kg C m^3", "Concentration of CO2 in the porous air space of the soil. (depth resolved)")
└ @ ClimaLand.Diagnostics ~/work/ClimaLand.jl/ClimaLand.jl/src/diagnostics/diagnostic.jl:60
┌ Warning: overwriting diagnostic `swc` entry containing fields
│ ("nothing", "swc", "Soil Water Content", "soil_water_content", "m^3 m^-3", "The volume of soil water per volume of soil. (depth resolved)")
└ @ ClimaLand.Diagnostics ~/work/ClimaLand.jl/ClimaLand.jl/src/diagnostics/diagnostic.jl:60
┌ Warning: overwriting diagnostic `iwc` entry containing fields
│ ("nothing", "iwc", "Integrated Soil Water Mass in first 10cm", "soil_10cm_water_mass", "kg/m^2", "The integrated water mass to a depth of 10cm")
└ @ ClimaLand.Diagnostics ~/work/ClimaLand.jl/ClimaLand.jl/src/diagnostics/diagnostic.jl:60
┌ Warning: overwriting diagnostic `si` entry containing fields
│ ("nothing", "si", "Soil Ice", "soil_ice", "m^3 m^-3", "The volume of soil ice per volume of soil. (depth resolved)")
└ @ ClimaLand.Diagnostics ~/work/ClimaLand.jl/ClimaLand.jl/src/diagnostics/diagnostic.jl:60
┌ Warning: overwriting diagnostic `sie` entry containing fields
│ ("nothing", "sie", "Soil Internal Energy", "soil_internal_energy", "W m^-2", "The energy per volume of soil. (depth resolved)")
└ @ ClimaLand.Diagnostics ~/work/ClimaLand.jl/ClimaLand.jl/src/diagnostics/diagnostic.jl:60
┌ Warning: overwriting diagnostic `swe` entry containing fields
│ ("nothing", "swe", "Snow water equivalent", "snow_water_equivalent", "m", "The height of liquid water if all snow melted")
└ @ ClimaLand.Diagnostics ~/work/ClimaLand.jl/ClimaLand.jl/src/diagnostics/diagnostic.jl:60
┌ Warning: overwriting diagnostic `snd` entry containing fields
│ ("nothing", "snd", "Snow depth", "snow_depth", "m", "The snow depth")
└ @ ClimaLand.Diagnostics ~/work/ClimaLand.jl/ClimaLand.jl/src/diagnostics/diagnostic.jl:60
┌ Warning: overwriting diagnostic `snowc` entry containing fields
│ ("nothing", "snowc", "Snow cover fraction", "snow_cover_fraction", "", "The snow cover fraction")
└ @ ClimaLand.Diagnostics ~/work/ClimaLand.jl/ClimaLand.jl/src/diagnostics/diagnostic.jl:60

Run the simulation and make plots:

ClimaLand.Simulations.solve!(simulation)
LandSimVis.make_annual_timeseries(simulation; savedir = root_path)
LandSimVis.make_heatmaps(simulation;date = stop_date, savedir = root_path)
LandSimVis.make_leaderboard_plots(simulation, savedir = root_path)

This page was generated using Literate.jl.