dyn_coupling_impl Submodule

This module, part of the MPAS interface, integrates MPAS dynamical core with CAM-SIMA by implementing the necessary APIs and managing their interaction.

It implements the bidirectional coupling between dynamics and physics states. For constituent states, their coupling is handled separately as a special case due to complications in CAM-SIMA.


Uses

  • module~~dyn_coupling_impl~~UsesGraph module~dyn_coupling_impl dyn_coupling_impl module~dyn_coupling dyn_coupling module~dyn_coupling_impl->module~dyn_coupling

Module Subroutines

module subroutine dyn_exchange_constituent_states(direction, exchange, conversion)

Exchange and/or convert constituent states between CAM-SIMA and MPAS. If exchange is .true. and direction is "e" or "export", set MPAS state scalars from physics state constituents. If exchange is .true. and direction is "i" or "import", set physics state constituents from MPAS state scalars. Think of it as "exporting/importing constituent states in CAM-SIMA to/from MPAS". Otherwise, if exchange is .false., no exchange is performed at all. If conversion is .true., appropriate conversion is performed for constituent mixing ratios that have different definitions between CAM-SIMA and MPAS (i.e., dry/moist). Otherwise, if conversion is .false., no conversion is performed at all. This subroutine is intentionally designed to have these elaborate controls due to complications in CAM-SIMA. Some procedures in CAM-SIMA expect constituent states to be dry, while the others expect them to be moist. (KCW, 2024-09-26)

Arguments

Type IntentOptional Attributes Name
character(len=*), intent(in) :: direction
logical, intent(in) :: exchange
logical, intent(in) :: conversion

Perform one-way coupling from the dynamics output states to the physics input states. The other coupling direction is implemented by its counterpart, physics_to_dynamics_coupling. (KCW, 2024-07-31)

Arguments

None

Perform one-way coupling from the physics output states to the dynamics input states. The other coupling direction is implemented by its counterpart, dynamics_to_physics_coupling. (KCW, 2024-09-20)

Arguments

None