jcm.physics_interfaceΒΆ

Date: 2/7/2024 Physics module that interfaces between the dynamics and the physics of the model. Should be agnostic to the specific physics being used.

Functions

dynamics_state_to_physics_state(state, dynamics)

Convert the state variables from the dynamics to the physics state variables.

filter_tendencies(dynamics_tendency, ...)

Apply dinosaur horizontal diffusion filter to the dynamics divergence tendency

get_physical_tendencies(state, dynamics, ...)

Compute the physical tendencies given the current state and a list of physics functions.

physics_state_to_dynamics_state(...)

Convert state variables from the physics (nodal space) back to the dynamical core (spectral space).

physics_tendency_to_dynamics_tendency(...)

Convert the physics tendencies to the dynamics tendencies.

verify_state(state)

Ensure the physical validity of the state variables.

verify_tendencies(state, tendencies, time_step)

Adjust tendencies to prevent the state from becoming physically invalid in the next time step.

Classes

Physics()

PhysicsState(u_wind, v_wind, temperature, ...)

Represents the state of the atmosphere in physical (nodal) space.

PhysicsTendency(u_wind, v_wind, temperature, ...)

Represents the tendencies (rates of change) of physical variables.