rdb_ocean_eos_compute Module

Hosts ocean_eos_compute, the outer shim that pulls the registered S, T tracer arrays off multilayer_state_t and forwards them as bare 3D arrays to the regime-agnostic eos_compute_arrays dispatch in rdb_eos.

This shim is the ONLY EOS code that touches the ocean C-grid state, and it lives here — not in rdb_eos — so the shared EOS module carries zero ocean dependencies: the coastal opt-in nonlinear EOS (&tracer_nml eos_form, via rdb_ml_eos::ml_equation_of_state_shared) reaches eos_compute_arrays without transitively dragging in rdb_multilayer_state.


Uses

  • module~~rdb_ocean_eos_compute~~UsesGraph module~rdb_ocean_eos_compute rdb_ocean_eos_compute module~rdb_eos rdb_eos module~rdb_ocean_eos_compute->module~rdb_eos module~rdb_multilayer_state rdb_multilayer_state module~rdb_ocean_eos_compute->module~rdb_multilayer_state module~rdb_constants rdb_constants module~rdb_eos->module~rdb_constants module~rdb_grid rdb_grid module~rdb_eos->module~rdb_grid iso_fortran_env iso_fortran_env module~rdb_multilayer_state->iso_fortran_env module~rdb_multilayer_state->module~rdb_constants module~rdb_efp rdb_efp module~rdb_multilayer_state->module~rdb_efp module~rdb_error_ring rdb_error_ring module~rdb_multilayer_state->module~rdb_error_ring module~rdb_multilayer_state->module~rdb_grid module~rdb_mem_report rdb_mem_report module~rdb_multilayer_state->module~rdb_mem_report module~rdb_tracer rdb_tracer module~rdb_multilayer_state->module~rdb_tracer pic_logger pic_logger module~rdb_multilayer_state->pic_logger pic_types pic_types module~rdb_constants->pic_types module~rdb_efp->iso_fortran_env ieee_arithmetic ieee_arithmetic module~rdb_efp->ieee_arithmetic module~rdb_error_ring->pic_logger module~rdb_grid->module~rdb_constants module~rdb_mem_report->iso_fortran_env module~rdb_mem_report->module~rdb_constants module~rdb_mem_report->pic_logger pic_strings pic_strings module~rdb_mem_report->pic_strings module~rdb_tracer->iso_fortran_env module~rdb_tracer->module~rdb_constants module~rdb_tracer->module~rdb_grid module~rdb_tracer->module~rdb_mem_report

Used by

  • module~~rdb_ocean_eos_compute~~UsedByGraph module~rdb_ocean_eos_compute rdb_ocean_eos_compute module~rdb_ocean_api rdb_ocean_api module~rdb_ocean_api->module~rdb_ocean_eos_compute module~rdb_ocean_dyn rdb_ocean_dyn module~rdb_ocean_api->module~rdb_ocean_dyn module~rdb_ocean_engine rdb_ocean_engine module~rdb_ocean_api->module~rdb_ocean_engine module~rdb_handle rdb_handle module~rdb_ocean_api->module~rdb_handle module~rdb_ocean_diag_derived rdb_ocean_diag_derived module~rdb_ocean_api->module~rdb_ocean_diag_derived module~rdb_ocean_diag_fills rdb_ocean_diag_fills module~rdb_ocean_api->module~rdb_ocean_diag_fills module~rdb_ocean_dyn->module~rdb_ocean_eos_compute module~rdb_driver rdb_driver module~rdb_driver->module~rdb_ocean_dyn module~rdb_driver->module~rdb_ocean_engine module~rdb_ocean_state rdb_ocean_state module~rdb_driver->module~rdb_ocean_state module~rdb_ocean_engine->module~rdb_ocean_dyn module~rdb_ocean_setup rdb_ocean_setup module~rdb_ocean_engine->module~rdb_ocean_setup module~rdb_ocean_engine->module~rdb_ocean_state module~rdb_ocean_engine->module~rdb_ocean_diag_derived module~rdb_ocean_engine->module~rdb_ocean_diag_fills module~rdb_ocean_setup->module~rdb_ocean_dyn module~rdb_ocean_setup->module~rdb_ocean_state module~rdb_ocean_state->module~rdb_ocean_dyn module~rdb_handle->module~rdb_ocean_engine module~rdb_handle->module~rdb_ocean_state module~rdb_ocean_diag_derived->module~rdb_ocean_state module~rdb_ocean_diag_derived->module~rdb_ocean_diag_fills module~rdb_ocean_diag_fills->module~rdb_ocean_state

Subroutines

public subroutine ocean_eos_compute(eos, ms, active)

Compute ms%rho_layer from the registered (T, S) tracers. Outer-shim pattern: pulls the tracer hTr arrays off the registry on the host and forwards them as bare 3D arrays to a flat-impl chosen by eos%variant.

Read more…

Arguments

Type IntentOptional Attributes Name
type(eos_t), intent(in) :: eos
type(multilayer_state_t), intent(inout) :: ms
logical, intent(in), optional :: active