Scheduled Downtime
On Tuesday 24 October 2023 @ 5pm MT the forums will be in read only mode in preparation for the downtime. On Wednesday 25 October 2023 @ 5am MT, this website will be down for maintenance and expected to return online later in the morning.
Normal Operations
The forums are back online with normal operations. If you notice any issues or errors related to the forums, please reach out to help@ucar.edu

cam_in, cam_out, dyn_in, dyn_out, phys_state, elem%state

linlin

New Member
Hi CESM experts,

I have a high-level question. Could you please introduce the function and difference of dyn_in, dyn_out, cam_in and cam_out structure? i understand that phys_state and elem%state these two communicate to each other through dynamics-physics coupling in routines d_p_coupling and p_d_coupling. But I am not quite sure how the dyn_in, dyn_out, cam_in, cam_out work/not work with the dynamics-physics coupling. What are the roles dyn_in, dyn_out, cam_in, cam_out?

Thanks a lot,
Lin
 

peverley

Courtney Peverley
Moderator
Staff member
Hi Lin,

cam_in is the merged input state from merged surface to CAM (from the coupler)
  • cam_in is an object of type "cam_in_t", which you can find in $CAM/src/control/camsrfexch.F90
cam_out is the output state from CAM to the surface (back to the coupler)
  • As with cam_in, "cam_out_t" can be found in $CAM/src/control/camsrfexch.F90
dyn_in/dyn_out are objects that hold the inputs/outputs to dynamics
  • dyn_in is of type dyn_import_t (which can be found in $CAM/src/dynamics/<dycore>/dyn_comp.F90
  • dyn_out is of type dyn_export_t (which can be found in the same location).
If you want to see how all of these structures interact, I'd recommend starting in $CAM/src/control/cam_comp.F90 and tracing the code from there.

Hope that helps
Courtney
 
Top