You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
We want to couple with a more complex land model than the bucket, with the goal of providing more realistic boundary conditions to the atmosphere. The full land model contains 3 main subcomponents: soil, canopy, and snow. It also contains a Soil CO2 model, but this will be largely uninvolved in the flux exchanges when coupling with the atmosphere.
Cost/Benefits/Risks
costs: developer time, potentially unseen changes to ClimaCoupler
benefits: more accurate model, will test ClimaCoupler capabilities in new setup
risks: model may be less stable and need to be debugged in Atmos, Land, and Coupler
Could be a nice stepping stone to global coupled runs, but not strictly a prerequisite
We'll skip this step and go straight to coupling the full land model (soil+canopy+snow). I don't think coupling the soil model alone would be very informative in terms of changes required in the coupler
Results and Deliverables
Global runs of coupled atmos + full land, with stability similar to bucket runs
Scope of Work
Changes needed in ClimaCoupler.jl
turbulent fluxes
extend partitioned fluxes calculation to compute for each land component
for now, call functions defined in ClimaLand, which are already specified for each component
land update_field! for turbulent_energy_flux, turbulent_moisture_flux: provide tuple of fields for each land component rather than one field
atmos update_field! for turbulent_energy_flux, turbulent_moisture_flux: provide one area-weighted field
Q: do we want to store all 4 TF fields in the coupler, or store 3 and compute the area-weighted field on the fly
land get_field for roughness_buoyancy, roughness_momentum, surface_temperature, displacement_height: return tuple of fields for each land component rather than one field
after computing turbulent fluxes in coupler, need update_field!s to provide turbulent_energy_flux, turbulent_moisture_flux to both atmos and surface models
radiative fluxes
land get_field functions for emissivity, albedo: 1 field each for entire land model, not one per component
also return T_eff from land surface_temperature get_field so we can use this for radiative fluxes in atmosphere
add atmos get_field functions for SW_d, LW_d, cos(zenith_angle), diffuse_fraction
add land update_field! functions for SW_d, LW_d, cos(zenith_angle), diffuse_fraction
Changes needed in ClimaLand.jl
turbulent fluxes
functions to compute q, \rho from land, atmos inputs, return land thermo state
this will be called by coupler during flux calculation
move inside land turbulent flux calculation function? already has access to atmos thermo state
radiative fluxes
move diffuse_fraction update out of update_aux!, into function that dispatches on radiation driver type
use cos(zenith angle) instead of zenith angle to avoid converting back and forth
conservations
functions to compute total water, total energy
integrate soil variables over column
Changes needed in ClimaAtmos.jl
provide diffuse light fraction, SW_d, LW_d, cos(zenith_angle), LHF, SHF to coupler via get_field functions
The content you are editing has changed. Please copy your edits and refresh the page.
Accommodate full land model and fields required for flux calculations
The text was updated successfully, but these errors were encountered:
juliasloan25
changed the title
[WIP] O2.5.4: Run coupled ClimaAtmos + ClimaLand soil/canopy/snow model and ensure stability comparable to bucket model
O2.5.4: Run coupled ClimaAtmos + ClimaLand soil/canopy/snow model and ensure stability comparable to bucket model
Feb 7, 2025
The Climate Modeling Alliance
Software Design Issue 📜
Purpose
We want to couple with a more complex land model than the bucket, with the goal of providing more realistic boundary conditions to the atmosphere. The full land model contains 3 main subcomponents: soil, canopy, and snow. It also contains a Soil CO2 model, but this will be largely uninvolved in the flux exchanges when coupling with the atmosphere.
Cost/Benefits/Risks
costs: developer time, potentially unseen changes to ClimaCoupler
benefits: more accurate model, will test ClimaCoupler capabilities in new setup
risks: model may be less stable and need to be debugged in Atmos, Land, and Coupler
People and Personnel
Components
Inputs
O2.5.3: Run single column model coupled runs of ClimaAtmos + ClimaLand soil model #1032Could be a nice stepping stone to global coupled runs, but not strictly a prerequisiteResults and Deliverables
Scope of Work
Changes needed in ClimaCoupler.jl
turbulent fluxes
update_field!
forturbulent_energy_flux
,turbulent_moisture_flux
: provide tuple of fields for each land component rather than one fieldupdate_field!
forturbulent_energy_flux
,turbulent_moisture_flux
: provide one area-weighted fieldget_field
forroughness_buoyancy
,roughness_momentum
,surface_temperature
,displacement_height
: return tuple of fields for each land component rather than one fieldupdate_field!
s to provideturbulent_energy_flux
,turbulent_moisture_flux
to both atmos and surface modelsradiative fluxes
get_field
functions foremissivity
,albedo
: 1 field each for entire land model, not one per componentT_eff
from land surface_temperatureget_field
so we can use this for radiative fluxes in atmosphereget_field
functions forSW_d
,LW_d
,cos(zenith_angle)
,diffuse_fraction
update_field!
functions forSW_d
,LW_d
,cos(zenith_angle)
,diffuse_fraction
Changes needed in ClimaLand.jl
turbulent fluxes
q
,\rho
from land, atmos inputs, return land thermo stateradiative fluxes
diffuse_fraction
update out ofupdate_aux!
, into function that dispatches on radiation driver typeconservations
Changes needed in ClimaAtmos.jl
SW_d
,LW_d
,cos(zenith_angle)
,LHF
,SHF
to coupler viaget_field
functionsAccommodate full land model and fields required for flux calculations
ClimaLandModel
struct and interfacing functions #1182Compute fluxes in ClimaCoupler for each component of land model
turbulent_fluxes!
methods forCoupledAtmosphere
#1202Run simulation with full land model
SDI Revision Log
CC
@tapios @sriharshakandala @charleskawczynski @cmbengue
The text was updated successfully, but these errors were encountered: