MOM6
|
Interfaces for MOM6 ensembles and data assimilation.
Data Types | |
type | oda_cs |
Control structure that contains a transpose of the ocean state across ensemble members. More... | |
type | ptr_mpp_domain |
A structure with a pointer to a domain2d, to allow for the creation of arrays of pointers. More... | |
integer, parameter | no_assim = 0 |
DA parameters. More... | |
integer, parameter | oi_assim =1 |
DA parameters. More... | |
integer, parameter | eakf_assim =2 |
DA parameters. More... | |
subroutine, public | init_oda (Time, G, GV, CS) |
initialize First_guess (prior) and Analysis grid information for all ensemble members More... | |
subroutine, public | set_prior_tracer (Time, G, GV, h, tv, CS) |
Copy ensemble member tracers to ensemble vector. More... | |
subroutine, public | get_posterior_tracer (Time, CS, h, tv, increment) |
Returns posterior adjustments or full state Note that only those PEs associated with an ensemble member receive data. More... | |
subroutine, public | oda (Time, CS) |
Gather observations and sall ODA routines. More... | |
subroutine, public | oda_end (CS) |
Finalize DA module. More... | |
subroutine | init_ocean_ensemble (CS, Grid, GV, ens_size) |
Initialize DA module. More... | |
subroutine, public | set_analysis_time (Time, CS) |
Set the next analysis time. More... | |
subroutine, public | save_obs_diff (filename, CS) |
Write observation differences to a file. More... | |
subroutine, public | apply_oda_tracer_increments (dt, G, tv, h, CS) |
Apply increments to tracers. More... | |
subroutine, public mom_oda_driver_mod::apply_oda_tracer_increments | ( | real, intent(in) | dt, |
type(ocean_grid_type), intent(in) | G, | ||
type(thermo_var_ptrs), intent(inout) | tv, | ||
real, dimension( g %isd: g %ied, g %jsd: g %jed, g %ke), intent(in) | h, | ||
type(oda_cs), intent(inout) | CS | ||
) |
Apply increments to tracers.
[in] | dt | The tracer timestep [s] |
[in] | g | ocean grid structure |
[in,out] | tv | A structure pointing to various thermodynamic variables |
[in] | h | layer thickness [H ~> m or kg m-2] |
[in,out] | cs | the data assimilation structure |
Definition at line 548 of file MOM_oda_driver.F90.
Referenced by mom::step_mom_thermo().
subroutine, public mom_oda_driver_mod::get_posterior_tracer | ( | type(time_type), intent(in) | Time, |
type(oda_cs), pointer | CS, | ||
real, dimension(:,:,:), pointer | h, | ||
type(thermo_var_ptrs), pointer | tv, | ||
logical, intent(in), optional | increment | ||
) |
Returns posterior adjustments or full state Note that only those PEs associated with an ensemble member receive data.
[in] | time | the current model time |
cs | ocean DA control structure | |
h | Layer thicknesses [H ~> m or kg m-2] | |
tv | A structure pointing to various thermodynamic variables | |
[in] | increment | True if returning increment only |
Definition at line 384 of file MOM_oda_driver.F90.
References init_ocean_ensemble(), and mom_error_handler::mom_mesg().
|
private |
Initialize DA module.
cs | Pointer to ODA control structure | |
grid | Pointer to ocean analysis grid | |
gv | Pointer to DA vertical grid | |
[in] | ens_size | ensemble size |
Definition at line 467 of file MOM_oda_driver.F90.
Referenced by get_posterior_tracer(), and init_oda().
subroutine, public mom_oda_driver_mod::init_oda | ( | type(time_type), intent(in) | Time, |
type(ocean_grid_type), pointer | G, | ||
type(verticalgrid_type), intent(in) | GV, | ||
type(oda_cs), intent(inout), pointer | CS | ||
) |
initialize First_guess (prior) and Analysis grid information for all ensemble members
[in] | time | The current model time. |
g | domain and grid information for ocean model | |
[in] | gv | The ocean's vertical grid structure |
[in,out] | cs | The DA control structure |
Definition at line 116 of file MOM_oda_driver.F90.
References mom_ale::ale_init(), mom_ale::ale_initthicknesstocoord(), mom_ale::ale_updateverticalgridtype(), mom_transcribe_grid::copy_dyngrid_to_mom_grid(), mom_dyn_horgrid::create_dyn_horgrid(), eakf_assim, mom_get_input::get_mom_input(), mom_hor_index::hor_index_init(), init_ocean_ensemble(), mom_remapping::initialize_remapping(), mom_string_functions::lowercase(), mom_domains::mom_domains_init(), mom_grid::mom_grid_init(), mom_coord_initialization::mom_initialize_coord(), mom_fixed_initialization::mom_initialize_topography(), no_assim, oi_assim, mom_diag_mediator::set_axes_info(), mom_grid_initialize::set_grid_metrics(), mom_regridding::set_regrid_params(), mom_unit_scaling::unit_scaling_init(), and mom_verticalgrid::verticalgridinit().
subroutine, public mom_oda_driver_mod::oda | ( | type(time_type), intent(in) | Time, |
type(oda_cs), intent(inout) | CS | ||
) |
Gather observations and sall ODA routines.
[in] | time | the current model time |
[in,out] | cs | the ocean DA control structure |
Definition at line 434 of file MOM_oda_driver.F90.
subroutine, public mom_oda_driver_mod::oda_end | ( | type(oda_cs), intent(inout) | CS | ) |
Finalize DA module.
[in,out] | cs | the ocean DA control structure |
Definition at line 461 of file MOM_oda_driver.F90.
subroutine, public mom_oda_driver_mod::save_obs_diff | ( | character(len=*), intent(in) | filename, |
type(oda_cs), intent(in), pointer | CS | ||
) |
Write observation differences to a file.
[in] | filename | name of output file |
[in] | cs | pointer to DA control structure |
Definition at line 521 of file MOM_oda_driver.F90.
subroutine, public mom_oda_driver_mod::set_analysis_time | ( | type(time_type), intent(in) | Time, |
type(oda_cs), intent(inout), pointer | CS | ||
) |
Set the next analysis time.
[in] | time | the current model time |
[in,out] | cs | the DA control structure |
Definition at line 494 of file MOM_oda_driver.F90.
References mom_error_handler::mom_error(), and mom_error_handler::mom_mesg().
Referenced by mom::step_mom().
subroutine, public mom_oda_driver_mod::set_prior_tracer | ( | type(time_type), intent(in) | Time, |
type(ocean_grid_type), pointer | G, | ||
type(verticalgrid_type), intent(in) | GV, | ||
real, dimension( g %isd: g %ied, g %jsd: g %jed, g %ke), intent(in) | h, | ||
type(thermo_var_ptrs), intent(in) | tv, | ||
type(oda_cs), pointer | CS | ||
) |
Copy ensemble member tracers to ensemble vector.
[in] | time | The current model time |
g | domain and grid information for ocean model | |
[in] | gv | The ocean's vertical grid structure |
[in] | h | Layer thicknesses [H ~> m or kg m-2] |
[in] | tv | A structure pointing to various thermodynamic variables |
cs | ocean DA control structure |
Definition at line 323 of file MOM_oda_driver.F90.
References mom_error_handler::mom_error(), mom_error_handler::mom_mesg(), and mom_remapping::remapping_core_h().
Referenced by mom::step_mom().
|
private |
|
private |
|
private |