sphinx-build -b latex -d _build/doctrees -vvv . _build/latex Running Sphinx v3.3.0+ Searching for include files... Searching for files in directory /home/cermak/src/MOM6/src/framework Searching for files in directory /home/cermak/src/MOM6/config_src/dynamic_symmetric Searching for example files... Searching for files in directory /home/cermak/src/MOM6/src Searching for files in directory /home/cermak/src/MOM6/src/ALE Searching for files in directory /home/cermak/src/MOM6/src/core Searching for files in directory /home/cermak/src/MOM6/src/diagnostics Searching for files in directory /home/cermak/src/MOM6/src/equation_of_state Searching for files in directory /home/cermak/src/MOM6/src/equation_of_state/TEOS10 Searching for files in directory /home/cermak/src/MOM6/src/framework Searching for files in directory /home/cermak/src/MOM6/src/ice_shelf Searching for files in directory /home/cermak/src/MOM6/src/initialization Searching for files in directory /home/cermak/src/MOM6/src/ocean_data_assim Searching for files in directory /home/cermak/src/MOM6/src/parameterizations Searching for files in directory /home/cermak/src/MOM6/src/parameterizations/lateral Searching for files in directory /home/cermak/src/MOM6/src/parameterizations/vertical Searching for files in directory /home/cermak/src/MOM6/src/tracer Searching for files in directory /home/cermak/src/MOM6/src/user Searching for images... Searching for files in directory /home/cermak/src/MOM6/docs/images Searching for files in directory /home/cermak/src/MOM6/src Searching for files in directory /home/cermak/src/MOM6/src/ALE Searching for files in directory /home/cermak/src/MOM6/src/core Searching for files in directory /home/cermak/src/MOM6/src/diagnostics Searching for files in directory /home/cermak/src/MOM6/src/equation_of_state Searching for files in directory /home/cermak/src/MOM6/src/equation_of_state/TEOS10 Searching for files in directory /home/cermak/src/MOM6/src/framework Searching for files in directory /home/cermak/src/MOM6/src/ice_shelf Searching for files in directory /home/cermak/src/MOM6/src/initialization Searching for files in directory /home/cermak/src/MOM6/src/ocean_data_assim Searching for files in directory /home/cermak/src/MOM6/src/parameterizations Searching for files in directory /home/cermak/src/MOM6/src/parameterizations/lateral Searching for files in directory /home/cermak/src/MOM6/src/parameterizations/vertical Searching for files in directory /home/cermak/src/MOM6/src/tracer Searching for files in directory /home/cermak/src/MOM6/src/user Searching for dot files... Searching for msc files... Searching for dia files... Searching for files to exclude Searching for files in directory /home/cermak/src/MOM6/src/equation_of_state/TEOS10 Searching INPUT for files to process... Searching for files in directory /home/cermak/src/MOM6/src Searching for files in directory /home/cermak/src/MOM6/src/ALE Searching for files in directory /home/cermak/src/MOM6/src/core Searching for files in directory /home/cermak/src/MOM6/src/diagnostics Searching for files in directory /home/cermak/src/MOM6/src/equation_of_state Searching for files in directory /home/cermak/src/MOM6/src/equation_of_state/TEOS10 Searching for files in directory /home/cermak/src/MOM6/src/framework Searching for files in directory /home/cermak/src/MOM6/src/ice_shelf Searching for files in directory /home/cermak/src/MOM6/src/initialization Searching for files in directory /home/cermak/src/MOM6/src/ocean_data_assim Searching for files in directory /home/cermak/src/MOM6/src/parameterizations Searching for files in directory /home/cermak/src/MOM6/src/parameterizations/lateral Searching for files in directory /home/cermak/src/MOM6/src/parameterizations/vertical Searching for files in directory /home/cermak/src/MOM6/src/tracer Searching for files in directory /home/cermak/src/MOM6/src/user Searching for files in directory /home/cermak/src/MOM6/config_src/solo_driver Searching for files in directory /home/cermak/src/MOM6/config_src/dynamic_symmetric Searching for files in directory /home/cermak/src/MOM6/config_src/external Searching for files in directory /home/cermak/src/MOM6/config_src/external/GFDL_ocean_BGC Searching for files in directory /home/cermak/src/MOM6/config_src/external/ODA_hooks Searching for files in directory /home/cermak/src/MOM6/config_src/coupled_driver Reading and parsing tag files Parsing files Preprocessing /home/cermak/src/MOM6/src/ALE/_ALE.dox... Parsing file /home/cermak/src/MOM6/src/ALE/_ALE.dox... Preprocessing /home/cermak/src/MOM6/src/ALE/_ALE_timestep.dox... Parsing file /home/cermak/src/MOM6/src/ALE/_ALE_timestep.dox... Preprocessing /home/cermak/src/MOM6/src/core/_Baroclinic_Momentum.dox... Parsing file /home/cermak/src/MOM6/src/core/_Baroclinic_Momentum.dox... Preprocessing /home/cermak/src/MOM6/src/core/_Barotropic_Baroclinic_Coupling.dox... Parsing file /home/cermak/src/MOM6/src/core/_Barotropic_Baroclinic_Coupling.dox... Preprocessing /home/cermak/src/MOM6/src/core/_Barotropic_Momentum.dox... Parsing file /home/cermak/src/MOM6/src/core/_Barotropic_Momentum.dox... Preprocessing /home/cermak/src/MOM6/src/core/_Discrete_Coriolis.dox... Parsing file /home/cermak/src/MOM6/src/core/_Discrete_Coriolis.dox... Preprocessing /home/cermak/src/MOM6/src/core/_Discrete_grids.dox... Parsing file /home/cermak/src/MOM6/src/core/_Discrete_grids.dox... Preprocessing /home/cermak/src/MOM6/src/core/_Discrete_OBC.dox... Parsing file /home/cermak/src/MOM6/src/core/_Discrete_OBC.dox... Preprocessing /home/cermak/src/MOM6/src/core/_Discrete_PG.dox... Parsing file /home/cermak/src/MOM6/src/core/_Discrete_PG.dox... Preprocessing /home/cermak/src/MOM6/src/core/_Energetic_consistancy.dox... Parsing file /home/cermak/src/MOM6/src/core/_Energetic_consistancy.dox... Preprocessing /home/cermak/src/MOM6/src/core/_Finite_difference.dox... Parsing file /home/cermak/src/MOM6/src/core/_Finite_difference.dox... Preprocessing /home/cermak/src/MOM6/src/core/_General_coordinate.dox... Parsing file /home/cermak/src/MOM6/src/core/_General_coordinate.dox... Preprocessing /home/cermak/src/MOM6/src/core/_Governing.dox... Parsing file /home/cermak/src/MOM6/src/core/_Governing.dox... Preprocessing /home/cermak/src/MOM6/src/core/_Notation.dox... Parsing file /home/cermak/src/MOM6/src/core/_Notation.dox... Preprocessing /home/cermak/src/MOM6/src/core/_PPM.dox... Parsing file /home/cermak/src/MOM6/src/core/_PPM.dox... Preprocessing /home/cermak/src/MOM6/src/core/_Sea_ice.dox... Parsing file /home/cermak/src/MOM6/src/core/_Sea_ice.dox... Preprocessing /home/cermak/src/MOM6/src/core/_Solar_radiation.dox... Parsing file /home/cermak/src/MOM6/src/core/_Solar_radiation.dox... Preprocessing /home/cermak/src/MOM6/src/core/_Specifics.dox... Parsing file /home/cermak/src/MOM6/src/core/_Specifics.dox... Preprocessing /home/cermak/src/MOM6/src/core/_Time_Filter.dox... Parsing file /home/cermak/src/MOM6/src/core/_Time_Filter.dox... Preprocessing /home/cermak/src/MOM6/src/equation_of_state/_Equation_of_State.dox... Parsing file /home/cermak/src/MOM6/src/equation_of_state/_Equation_of_State.dox... Preprocessing /home/cermak/src/MOM6/src/framework/_Diagnostics.dox... Parsing file /home/cermak/src/MOM6/src/framework/_Diagnostics.dox... Preprocessing /home/cermak/src/MOM6/src/framework/_Domain_decomposition.dox... Parsing file /home/cermak/src/MOM6/src/framework/_Domain_decomposition.dox... Preprocessing /home/cermak/src/MOM6/src/framework/_Global_grids.dox... Parsing file /home/cermak/src/MOM6/src/framework/_Global_grids.dox... Preprocessing /home/cermak/src/MOM6/src/framework/_Horizontal_indexing.dox... Parsing file /home/cermak/src/MOM6/src/framework/_Horizontal_indexing.dox... Preprocessing /home/cermak/src/MOM6/src/framework/_Parallel_IO.dox... Parsing file /home/cermak/src/MOM6/src/framework/_Parallel_IO.dox... Preprocessing /home/cermak/src/MOM6/src/framework/_Regional_grids.dox... Parsing file /home/cermak/src/MOM6/src/framework/_Regional_grids.dox... Preprocessing /home/cermak/src/MOM6/src/framework/_Runtime_parameter_system.dox... Parsing file /home/cermak/src/MOM6/src/framework/_Runtime_parameter_system.dox... Preprocessing /home/cermak/src/MOM6/src/framework/_Testing.dox... Parsing file /home/cermak/src/MOM6/src/framework/_Testing.dox... Preprocessing /home/cermak/src/MOM6/src/framework/_Vertical_grids.dox... Parsing file /home/cermak/src/MOM6/src/framework/_Vertical_grids.dox... Preprocessing /home/cermak/src/MOM6/src/parameterizations/vertical/_CVMix_KPP.dox... Parsing file /home/cermak/src/MOM6/src/parameterizations/vertical/_CVMix_KPP.dox... Preprocessing /home/cermak/src/MOM6/src/tracer/_Advection.dox... Parsing file /home/cermak/src/MOM6/src/tracer/_Advection.dox... Preprocessing /home/cermak/src/MOM6/src/tracer/_Discrete_tracer.dox... Parsing file /home/cermak/src/MOM6/src/tracer/_Discrete_tracer.dox... Preprocessing /home/cermak/src/MOM6/src/tracer/_Horizontal_diffusion.dox... Parsing file /home/cermak/src/MOM6/src/tracer/_Horizontal_diffusion.dox... Preprocessing /home/cermak/src/MOM6/src/tracer/_Passive_tracer.dox... Parsing file /home/cermak/src/MOM6/src/tracer/_Passive_tracer.dox... Preprocessing /home/cermak/src/MOM6/src/tracer/_Tracer_fluxes.dox... Parsing file /home/cermak/src/MOM6/src/tracer/_Tracer_fluxes.dox... Preprocessing /home/cermak/src/MOM6/src/tracer/_Tracer_timestep.dox... Parsing file /home/cermak/src/MOM6/src/tracer/_Tracer_timestep.dox... Preprocessing /home/cermak/src/MOM6/src/tracer/_Tracer_Transport.dox... Parsing file /home/cermak/src/MOM6/src/tracer/_Tracer_Transport.dox... Preprocessing /home/cermak/src/MOM6/src/tracer/_Vertical_diffusion.dox... Parsing file /home/cermak/src/MOM6/src/tracer/_Vertical_diffusion.dox... Preprocessing /home/cermak/src/MOM6/src/core/MOM.F90... Parsing file /home/cermak/src/MOM6/src/core/MOM.F90... Preprocessing /home/cermak/src/MOM6/src/ALE/MOM_ALE.F90... Parsing file /home/cermak/src/MOM6/src/ALE/MOM_ALE.F90... Preprocessing /home/cermak/src/MOM6/src/equation_of_state/MOM_EOS.F90... Parsing file /home/cermak/src/MOM6/src/equation_of_state/MOM_EOS.F90... Preprocessing /home/cermak/src/MOM6/src/framework/MOM_unit_scaling.F90... Parsing file /home/cermak/src/MOM6/src/framework/MOM_unit_scaling.F90... Preprocessing /home/cermak/src/MOM6/src/ice_shelf/MOM_ice_shelf.F90... Parsing file /home/cermak/src/MOM6/src/ice_shelf/MOM_ice_shelf.F90... Preprocessing /home/cermak/src/MOM6/src/parameterizations/lateral/MOM_MEKE.F90... Parsing file /home/cermak/src/MOM6/src/parameterizations/lateral/MOM_MEKE.F90... Building group list... Building directory list... Building namespace list... Building file list... Building class list... Associating documentation with classes... Computing nesting relations for classes... Building example list... Searching for enumerations... Searching for documented typedefs... Searching for members imported via using declarations... Searching for included using directives... Searching for documented variables... Building interface member list... Building member list... Searching for friends... Searching for documented defines... Computing class inheritance relations... Computing class usage relations... Flushing cached template relations that have become invalid... Computing class relations... Add enum values to enums... Searching for member function documentation... Creating members for template instances... Building page list... Search for main page... Computing page relations... Determining the scope of groups... Sorting lists... Freeing entry tree Determining which enums are documented Computing member relations... Building full member lists recursively... Adding members to member groups. Distributing member group documentation. Computing member references... Inheriting documentation... Generating disk names... Adding source references... Adding xrefitems... Sorting member lists... Computing dependencies between directories... Generating citations page... Counting data structures... Resolving user defined references... Finding anchors and sections in the documentation... Transferring function references... Combining using relations... Adding members to index pages... Generating style sheet... Generating search indices... Generating example documentation... Generating file sources... Parsing code for file /home/cermak/src/MOM6/src/ALE/_ALE.dox... Parsing code for file /home/cermak/src/MOM6/src/ALE/_ALE_timestep.dox... Generating code for file /home/cermak/src/MOM6/src/ALE/MOM_ALE.F90... Parsing code for file /home/cermak/src/MOM6/src/core/_Baroclinic_Momentum.dox... Parsing code for file /home/cermak/src/MOM6/src/core/_Barotropic_Baroclinic_Coupling.dox... Parsing code for file /home/cermak/src/MOM6/src/core/_Barotropic_Momentum.dox... Parsing code for file /home/cermak/src/MOM6/src/core/_Discrete_Coriolis.dox... Parsing code for file /home/cermak/src/MOM6/src/core/_Discrete_grids.dox... Parsing code for file /home/cermak/src/MOM6/src/core/_Discrete_OBC.dox... Parsing code for file /home/cermak/src/MOM6/src/core/_Discrete_PG.dox... Parsing code for file /home/cermak/src/MOM6/src/core/_Energetic_consistancy.dox... Parsing code for file /home/cermak/src/MOM6/src/core/_Finite_difference.dox... Parsing code for file /home/cermak/src/MOM6/src/core/_General_coordinate.dox... Parsing code for file /home/cermak/src/MOM6/src/core/_Governing.dox... Parsing code for file /home/cermak/src/MOM6/src/core/_Notation.dox... Parsing code for file /home/cermak/src/MOM6/src/core/_PPM.dox... Parsing code for file /home/cermak/src/MOM6/src/core/_Sea_ice.dox... Parsing code for file /home/cermak/src/MOM6/src/core/_Solar_radiation.dox... Parsing code for file /home/cermak/src/MOM6/src/core/_Specifics.dox... Parsing code for file /home/cermak/src/MOM6/src/core/_Time_Filter.dox... Generating code for file /home/cermak/src/MOM6/src/core/MOM.F90... Parsing code for file /home/cermak/src/MOM6/src/equation_of_state/_Equation_of_State.dox... Generating code for file /home/cermak/src/MOM6/src/equation_of_state/MOM_EOS.F90... Parsing code for file /home/cermak/src/MOM6/src/framework/_Diagnostics.dox... Parsing code for file /home/cermak/src/MOM6/src/framework/_Domain_decomposition.dox... Parsing code for file /home/cermak/src/MOM6/src/framework/_Global_grids.dox... Parsing code for file /home/cermak/src/MOM6/src/framework/_Horizontal_indexing.dox... Parsing code for file /home/cermak/src/MOM6/src/framework/_Parallel_IO.dox... Parsing code for file /home/cermak/src/MOM6/src/framework/_Regional_grids.dox... Parsing code for file /home/cermak/src/MOM6/src/framework/_Runtime_parameter_system.dox... Parsing code for file /home/cermak/src/MOM6/src/framework/_Testing.dox... Parsing code for file /home/cermak/src/MOM6/src/framework/_Vertical_grids.dox... Generating code for file /home/cermak/src/MOM6/src/framework/MOM_unit_scaling.F90... Generating code for file /home/cermak/src/MOM6/src/ice_shelf/MOM_ice_shelf.F90... Generating code for file /home/cermak/src/MOM6/src/parameterizations/lateral/MOM_MEKE.F90... Parsing code for file /home/cermak/src/MOM6/src/parameterizations/vertical/_CVMix_KPP.dox... Parsing code for file /home/cermak/src/MOM6/src/tracer/_Advection.dox... Parsing code for file /home/cermak/src/MOM6/src/tracer/_Discrete_tracer.dox... Parsing code for file /home/cermak/src/MOM6/src/tracer/_Horizontal_diffusion.dox... Parsing code for file /home/cermak/src/MOM6/src/tracer/_Passive_tracer.dox... Parsing code for file /home/cermak/src/MOM6/src/tracer/_Tracer_fluxes.dox... Parsing code for file /home/cermak/src/MOM6/src/tracer/_Tracer_timestep.dox... Parsing code for file /home/cermak/src/MOM6/src/tracer/_Tracer_Transport.dox... Parsing code for file /home/cermak/src/MOM6/src/tracer/_Vertical_diffusion.dox... Generating file documentation... Generating docs for file /home/cermak/src/MOM6/src/ALE/_ALE.dox... Generating docs for file /home/cermak/src/MOM6/src/ALE/_ALE_timestep.dox... Generating docs for file /home/cermak/src/MOM6/src/ALE/MOM_ALE.F90... Generating docs for file /home/cermak/src/MOM6/src/core/_Baroclinic_Momentum.dox... Generating docs for file /home/cermak/src/MOM6/src/core/_Barotropic_Baroclinic_Coupling.dox... Generating docs for file /home/cermak/src/MOM6/src/core/_Barotropic_Momentum.dox... Generating docs for file /home/cermak/src/MOM6/src/core/_Discrete_Coriolis.dox... Generating docs for file /home/cermak/src/MOM6/src/core/_Discrete_grids.dox... Generating docs for file /home/cermak/src/MOM6/src/core/_Discrete_OBC.dox... Generating docs for file /home/cermak/src/MOM6/src/core/_Discrete_PG.dox... Generating docs for file /home/cermak/src/MOM6/src/core/_Energetic_consistancy.dox... Generating docs for file /home/cermak/src/MOM6/src/core/_Finite_difference.dox... Generating docs for file /home/cermak/src/MOM6/src/core/_General_coordinate.dox... Generating docs for file /home/cermak/src/MOM6/src/core/_Governing.dox... Generating docs for file /home/cermak/src/MOM6/src/core/_Notation.dox... Generating docs for file /home/cermak/src/MOM6/src/core/_PPM.dox... Generating docs for file /home/cermak/src/MOM6/src/core/_Sea_ice.dox... Generating docs for file /home/cermak/src/MOM6/src/core/_Solar_radiation.dox... Generating docs for file /home/cermak/src/MOM6/src/core/_Specifics.dox... Generating docs for file /home/cermak/src/MOM6/src/core/_Time_Filter.dox... Generating docs for file /home/cermak/src/MOM6/src/core/MOM.F90... Generating docs for file /home/cermak/src/MOM6/src/equation_of_state/_Equation_of_State.dox... Generating docs for file /home/cermak/src/MOM6/src/equation_of_state/MOM_EOS.F90... Generating docs for file /home/cermak/src/MOM6/src/framework/_Diagnostics.dox... Generating docs for file /home/cermak/src/MOM6/src/framework/_Domain_decomposition.dox... Generating docs for file /home/cermak/src/MOM6/src/framework/_Global_grids.dox... Generating docs for file /home/cermak/src/MOM6/src/framework/_Horizontal_indexing.dox... Generating docs for file /home/cermak/src/MOM6/src/framework/_Parallel_IO.dox... Generating docs for file /home/cermak/src/MOM6/src/framework/_Regional_grids.dox... Generating docs for file /home/cermak/src/MOM6/src/framework/_Runtime_parameter_system.dox... Generating docs for file /home/cermak/src/MOM6/src/framework/_Testing.dox... Generating docs for file /home/cermak/src/MOM6/src/framework/_Vertical_grids.dox... Generating docs for file /home/cermak/src/MOM6/src/framework/MOM_unit_scaling.F90... Generating docs for file /home/cermak/src/MOM6/src/ice_shelf/MOM_ice_shelf.F90... Generating docs for file /home/cermak/src/MOM6/src/parameterizations/lateral/MOM_MEKE.F90... Generating docs for file /home/cermak/src/MOM6/src/parameterizations/vertical/_CVMix_KPP.dox... Generating docs for file /home/cermak/src/MOM6/src/tracer/_Advection.dox... Generating docs for file /home/cermak/src/MOM6/src/tracer/_Discrete_tracer.dox... Generating docs for file /home/cermak/src/MOM6/src/tracer/_Horizontal_diffusion.dox... Generating docs for file /home/cermak/src/MOM6/src/tracer/_Passive_tracer.dox... Generating docs for file /home/cermak/src/MOM6/src/tracer/_Tracer_fluxes.dox... Generating docs for file /home/cermak/src/MOM6/src/tracer/_Tracer_timestep.dox... Generating docs for file /home/cermak/src/MOM6/src/tracer/_Tracer_Transport.dox... Generating docs for file /home/cermak/src/MOM6/src/tracer/_Vertical_diffusion.dox... Generating page documentation... Generating docs for page ALE... Generating docs for page ALE_Timestep... Generating docs for page Baroclinic_Momentum_Equations... Generating docs for page Barotropic_Baroclinic_Coupling... Generating docs for page Barotropic_Momentum_Equations... Generating docs for page Discrete_Coriolis... Generating docs for page Discrete_Grids... Generating docs for page Discrete_OBC... Generating docs for page Discrete_PG... Generating docs for page Energetic_Consistency... Generating docs for page Finite_Difference_Operators... Generating docs for page General_Coordinate... Generating docs for page Governing_Equations... Generating docs for page Notation... Generating docs for page PPM... Generating docs for page Sea_Ice... Generating docs for page Solar_Radiation... Generating docs for page Specifics... Generating docs for page Time_Filtering... Generating docs for page Equation_of_State... Generating docs for page Diagnostics... Generating docs for page Domain_Decomposition... Generating docs for page Global_Grids... Generating docs for page Horizontal_Indexing... Generating docs for page Parallel_IO... Generating docs for page Regional_Grids... Generating docs for page Runtime_Parameter_System... Generating docs for page Testing... Generating docs for page Vertical_Grids... Generating docs for page CVMix_KPP... Generating docs for page Tracer_Advection... Generating docs for page Discrete_Tracer... Generating docs for page Horizontal_Diffusion... Generating docs for page Passive_Tracers... Generating docs for page Tracer_Fluxes... Generating docs for page Tracer_Timestep... Generating docs for page Tracer_Transport_Equations... Generating docs for page Vertical_Diffusion... Generating docs for page citelist... Generating group documentation... Generating class documentation... Generating namespace index... Generating docs for namespace mom Generating docs for compound mom::mom_control_struct... Generating docs for compound mom::mom_diag_ids... Generating docs for namespace mom_ale Generating docs for compound mom_ale::ale_cs... Generating docs for namespace mom_eos Generating docs for compound mom_eos::calculate_compress... Generating docs for compound mom_eos::calculate_density... Generating docs for compound mom_eos::calculate_density_derivs... Generating docs for compound mom_eos::calculate_density_second_derivs... Generating docs for compound mom_eos::calculate_spec_vol... Generating docs for compound mom_eos::calculate_specific_vol_derivs... Generating docs for compound mom_eos::calculate_tfreeze... Generating docs for compound mom_eos::eos_type... Generating docs for namespace mom_ice_shelf Generating docs for compound mom_ice_shelf::ice_shelf_cs... Generating docs for namespace mom_meke Generating docs for compound mom_meke::meke_cs... Generating docs for namespace mom_unit_scaling Generating docs for compound mom_unit_scaling::unit_scale_type... Generating graph info page... Generating directory documentation... Generating index page... Generating page index... Generating module index... Generating namespace index... Generating namespace member index... Generating annotated compound index... Generating alphabetical compound index... Generating hierarchical class index... Generating member index... Generating file index... Generating file member index... Generating example index... finalizing index lists... writing tag file... Generating XML output... Generating XML output for class mom_ale::ale_cs Generating XML output for class mom_eos::calculate_compress Generating XML output for class mom_eos::calculate_density Generating XML output for class mom_eos::calculate_density_derivs Generating XML output for class mom_eos::calculate_density_second_derivs Generating XML output for class mom_eos::calculate_spec_vol Generating XML output for class mom_eos::calculate_specific_vol_derivs Generating XML output for class mom_eos::calculate_tfreeze Generating XML output for class mom_eos::eos_type Generating XML output for class mom_ice_shelf::ice_shelf_cs Generating XML output for class mom_meke::meke_cs Generating XML output for class mom::mom_control_struct Generating XML output for class mom::mom_diag_ids Generating XML output for class mom_unit_scaling::unit_scale_type Generating XML output for namespace mom Generating XML output for namespace mom_ale Generating XML output for namespace mom_eos Generating XML output for namespace mom_ice_shelf Generating XML output for namespace mom_meke Generating XML output for namespace mom_unit_scaling Generating XML output for file _ALE.dox Generating XML output for file _ALE_timestep.dox Generating XML output for file MOM_ALE.F90 Generating XML output for file _Baroclinic_Momentum.dox Generating XML output for file _Barotropic_Baroclinic_Coupling.dox Generating XML output for file _Barotropic_Momentum.dox Generating XML output for file _Discrete_Coriolis.dox Generating XML output for file _Discrete_grids.dox Generating XML output for file _Discrete_OBC.dox Generating XML output for file _Discrete_PG.dox Generating XML output for file _Energetic_consistancy.dox Generating XML output for file _Finite_difference.dox Generating XML output for file _General_coordinate.dox Generating XML output for file _Governing.dox Generating XML output for file _Notation.dox Generating XML output for file _PPM.dox Generating XML output for file _Sea_ice.dox Generating XML output for file _Solar_radiation.dox Generating XML output for file _Specifics.dox Generating XML output for file _Time_Filter.dox Generating XML output for file MOM.F90 Generating XML output for file _Equation_of_State.dox Generating XML output for file MOM_EOS.F90 Generating XML output for file _Diagnostics.dox Generating XML output for file _Domain_decomposition.dox Generating XML output for file _Global_grids.dox Generating XML output for file _Horizontal_indexing.dox Generating XML output for file _Parallel_IO.dox Generating XML output for file _Regional_grids.dox Generating XML output for file _Runtime_parameter_system.dox Generating XML output for file _Testing.dox Generating XML output for file _Vertical_grids.dox Generating XML output for file MOM_unit_scaling.F90 Generating XML output for file MOM_ice_shelf.F90 Generating XML output for file MOM_MEKE.F90 Generating XML output for file _CVMix_KPP.dox Generating XML output for file _Advection.dox Generating XML output for file _Discrete_tracer.dox Generating XML output for file _Horizontal_diffusion.dox Generating XML output for file _Passive_tracer.dox Generating XML output for file _Tracer_fluxes.dox Generating XML output for file _Tracer_timestep.dox Generating XML output for file _Tracer_Transport.dox Generating XML output for file _Vertical_diffusion.dox Generating XML output for page ALE Generating XML output for page ALE_Timestep Generating XML output for page Baroclinic_Momentum_Equations Generating XML output for page Barotropic_Baroclinic_Coupling Generating XML output for page Barotropic_Momentum_Equations Generating XML output for page Discrete_Coriolis Generating XML output for page Discrete_Grids Generating XML output for page Discrete_OBC Generating XML output for page Discrete_PG Generating XML output for page Energetic_Consistency Generating XML output for page Finite_Difference_Operators Generating XML output for page General_Coordinate Generating XML output for page Governing_Equations Generating XML output for page Notation Generating XML output for page PPM Generating XML output for page Sea_Ice Generating XML output for page Solar_Radiation Generating XML output for page Specifics Generating XML output for page Time_Filtering Generating XML output for page Equation_of_State Generating XML output for page Diagnostics Generating XML output for page Domain_Decomposition Generating XML output for page Global_Grids Generating XML output for page Horizontal_Indexing Generating XML output for page Parallel_IO Generating XML output for page Regional_Grids Generating XML output for page Runtime_Parameter_System Generating XML output for page Testing Generating XML output for page Vertical_Grids Generating XML output for page CVMix_KPP Generating XML output for page Tracer_Advection Generating XML output for page Discrete_Tracer Generating XML output for page Horizontal_Diffusion Generating XML output for page Passive_Tracers Generating XML output for page Tracer_Fluxes Generating XML output for page Tracer_Timestep Generating XML output for page Tracer_Transport_Equations Generating XML output for page Vertical_Diffusion Generating XML output for page citelist Generate XML output for dir /home/cermak/src/MOM6/src/ALE/ Generate XML output for dir /home/cermak/src/MOM6/src/core/ Generate XML output for dir /home/cermak/src/MOM6/src/equation_of_state/ Generate XML output for dir /home/cermak/src/MOM6/src/framework/ Generate XML output for dir /home/cermak/src/MOM6/src/ice_shelf/ Generate XML output for dir /home/cermak/src/MOM6/src/parameterizations/lateral/ Generate XML output for dir /home/cermak/src/MOM6/src/parameterizations/ Generate XML output for dir /home/cermak/src/MOM6/src/ lookup cache used 776/65536 hits=5732 misses=903 finished... Doxygen version found in $PATH: 1.8.13 Sphinx-build mode: latex Running Doxygen 1.8.13 Running: doxygen Doxyfile_rtd_dox [app] setting up extension: 'sphinx.addnodes' [app] adding node: (, {}) [app] adding translation_handlers: , {} [app] adding node: (, {}) [app] adding translation_handlers: , {} [app] adding node: (, {}) [app] adding translation_handlers: , {} [app] adding node: (, {}) [app] adding translation_handlers: , {} [app] adding node: (, {}) [app] adding translation_handlers: , {} [app] adding node: (, {}) [app] adding translation_handlers: , {} [app] adding node: (, {}) [app] adding translation_handlers: , {} [app] adding node: (, {}) [app] adding translation_handlers: , {} [app] adding node: (, {}) [app] adding translation_handlers: , {} [app] adding node: (, {}) [app] adding translation_handlers: , {} [app] adding node: (, {}) [app] adding translation_handlers: , {} [app] adding node: (, {}) [app] adding translation_handlers: , {} [app] adding node: (, {}) [app] adding translation_handlers: , {} [app] adding node: (, {}) [app] adding translation_handlers: , {} [app] adding node: (, {}) [app] adding translation_handlers: , {} [app] adding node: (, {}) [app] adding translation_handlers: , {} [app] adding node: (, {}) [app] adding translation_handlers: , {} [app] adding node: (, {}) [app] adding translation_handlers: , {} [app] adding node: (, {}) [app] adding translation_handlers: , {} [app] adding node: (, {}) [app] adding translation_handlers: , {} [app] adding node: (, {}) [app] adding translation_handlers: , {} [app] adding node: (, {}) [app] adding translation_handlers: , {} [app] adding node: (, {}) [app] adding translation_handlers: , {} [app] adding node: (, {}) [app] adding translation_handlers: , {} [app] adding node: (, {}) [app] adding translation_handlers: , {} [app] adding node: (, {}) [app] adding translation_handlers: , {} [app] adding node: (, {}) [app] adding translation_handlers: , {} [app] adding node: (, {}) [app] adding translation_handlers: , {} [app] adding node: (, {}) [app] adding translation_handlers: , {} [app] adding node: (, {}) [app] adding translation_handlers: , {} [app] adding node: (, {}) [app] adding translation_handlers: , {} [app] adding node: (, {}) [app] adding translation_handlers: , {} [app] adding node: (, {}) [app] adding translation_handlers: , {} [app] adding node: (, {}) [app] adding translation_handlers: , {} [app] adding node: (, {}) [app] adding translation_handlers: , {} [app] adding node: (, {}) [app] adding translation_handlers: , {} [app] adding node: (, {}) [app] adding translation_handlers: , {} [app] adding node: (, {}) [app] adding translation_handlers: , {} [app] setting up extension: 'sphinx.builders.changes' [app] adding builder: [app] setting up extension: 'sphinx.builders.epub3' [app] adding builder: [app] adding config value: ('epub_basename', . at 0xffff85941e50>, None) [app] adding config value: ('epub_version', 3.0, 'epub') [app] adding config value: ('epub_theme', 'epub', 'epub') [app] adding config value: ('epub_theme_options', {}, 'epub') [app] adding config value: ('epub_title', . at 0xffff85941ca0>, 'epub') [app] adding config value: ('epub_author', . at 0xffff85941c10>, 'epub') [app] adding config value: ('epub_language', . at 0xffff85941dc0>, 'epub') [app] adding config value: ('epub_publisher', . at 0xffff8556b280>, 'epub') [app] adding config value: ('epub_copyright', . at 0xffff8556b310>, 'epub') [app] adding config value: ('epub_identifier', 'unknown', 'epub') [app] adding config value: ('epub_scheme', 'unknown', 'epub') [app] adding config value: ('epub_uid', 'unknown', 'env') [app] adding config value: ('epub_cover', (), 'env') [app] adding config value: ('epub_guide', (), 'env') [app] adding config value: ('epub_pre_files', [], 'env') [app] adding config value: ('epub_post_files', [], 'env') [app] adding config value: ('epub_css_files', . at 0xffff8556b3a0>, 'epub') [app] adding config value: ('epub_exclude_files', [], 'env') [app] adding config value: ('epub_tocdepth', 3, 'env') [app] adding config value: ('epub_tocdup', True, 'env') [app] adding config value: ('epub_tocscope', 'default', 'env') [app] adding config value: ('epub_fix_images', False, 'env') [app] adding config value: ('epub_max_image_width', 0, 'env') [app] adding config value: ('epub_show_urls', 'inline', 'epub') [app] adding config value: ('epub_use_index', . at 0xffff8556b430>, 'epub') [app] adding config value: ('epub_description', 'unknown', 'epub') [app] adding config value: ('epub_contributor', 'unknown', 'epub') [app] adding config value: ('epub_writing_mode', 'horizontal', 'epub', ) [app] connecting event 'config-inited' (800): [id=0] [app] connecting event 'builder-inited' (500): [id=1] [app] setting up extension: 'sphinx.builders.dirhtml' [app] setting up extension: 'sphinx.builders.html' [app] adding builder: [app] adding config value: ('html_theme', 'alabaster', 'html') [app] adding config value: ('html_theme_path', [], 'html') [app] adding config value: ('html_theme_options', {}, 'html') [app] adding config value: ('html_title', . at 0xffff8556b4c0>, 'html', []) [app] adding config value: ('html_short_title', . at 0xffff8556b550>, 'html') [app] adding config value: ('html_style', None, 'html', []) [app] adding config value: ('html_logo', None, 'html', []) [app] adding config value: ('html_favicon', None, 'html', []) [app] adding config value: ('html_css_files', [], 'html') [app] adding config value: ('html_js_files', [], 'html') [app] adding config value: ('html_static_path', [], 'html') [app] adding config value: ('html_extra_path', [], 'html') [app] adding config value: ('html_last_updated_fmt', None, 'html', []) [app] adding config value: ('html_sidebars', {}, 'html') [app] adding config value: ('html_additional_pages', {}, 'html') [app] adding config value: ('html_domain_indices', True, 'html', []) [app] adding config value: ('html_add_permalinks', 'ΒΆ', 'html') [app] adding config value: ('html_use_index', True, 'html') [app] adding config value: ('html_split_index', False, 'html') [app] adding config value: ('html_copy_source', True, 'html') [app] adding config value: ('html_show_sourcelink', True, 'html') [app] adding config value: ('html_sourcelink_suffix', '.txt', 'html') [app] adding config value: ('html_use_opensearch', '', 'html') [app] adding config value: ('html_file_suffix', None, 'html', []) [app] adding config value: ('html_link_suffix', None, 'html', []) [app] adding config value: ('html_show_copyright', True, 'html') [app] adding config value: ('html_show_sphinx', True, 'html') [app] adding config value: ('html_context', {}, 'html') [app] adding config value: ('html_output_encoding', 'utf-8', 'html') [app] adding config value: ('html_compact_lists', True, 'html') [app] adding config value: ('html_secnumber_suffix', '. ', 'html') [app] adding config value: ('html_search_language', None, 'html', []) [app] adding config value: ('html_search_options', {}, 'html') [app] adding config value: ('html_search_scorer', '', None) [app] adding config value: ('html_scaled_image_link', True, 'html') [app] adding config value: ('html_baseurl', '', 'html') [app] adding config value: ('html_codeblock_linenos_style', 'table', 'html', ) [app] adding config value: ('html_math_renderer', None, 'env') [app] adding config value: ('html4_writer', False, 'html') [app] connecting event 'config-inited' (800): [id=2] [app] connecting event 'config-inited' (800): [id=3] [app] connecting event 'config-inited' (800): [id=4] [app] connecting event 'config-inited' (800): [id=5] [app] connecting event 'config-inited' (800): [id=6] [app] connecting event 'config-inited' (800): [id=7] [app] connecting event 'builder-inited' (500): [id=8] [app] connecting event 'html-page-context' (500): [id=9] [app] setting up extension: 'sphinx.ext.mathjax' [app] adding html_math_renderer: mathjax, (, None), (, None) [app] adding config value: ('mathjax_path', 'https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.7/latest.js?config=TeX-AMS-MML_HTMLorMML', 'html') [app] adding config value: ('mathjax_options', {}, 'html') [app] adding config value: ('mathjax_inline', ['\\(', '\\)'], 'html') [app] adding config value: ('mathjax_display', ['\\[', '\\]'], 'html') [app] adding config value: ('mathjax_config', None, 'html') [app] connecting event 'env-updated' (500): [id=10] [app] setting up extension: 'sphinx.builders.html.transforms' [app] adding post transform: [app] adding builder: [app] setting up extension: 'sphinx.builders.dummy' [app] adding builder: [app] setting up extension: 'sphinx.builders.gettext' [app] adding builder: [app] adding config value: ('gettext_compact', True, 'gettext', typing.Any) [app] adding config value: ('gettext_location', True, 'gettext') [app] adding config value: ('gettext_uuid', False, 'gettext') [app] adding config value: ('gettext_auto_build', True, 'env') [app] adding config value: ('gettext_additional_targets', [], 'env') [app] adding config value: ('gettext_last_translator', 'FULL NAME ', 'gettext') [app] adding config value: ('gettext_language_team', 'LANGUAGE ', 'gettext') [app] setting up extension: 'sphinx.builders.html' [app] setting up extension: 'sphinx.builders.latex' [app] setting up extension: 'sphinx.builders.latex.transforms' [app] adding transform: [app] adding post transform: [app] adding post transform: [app] adding post transform: [app] adding post transform: [app] adding post transform: [app] adding post transform: [app] adding post transform: [app] adding post transform: [app] adding builder: [app] connecting event 'config-inited' (800): [id=11] [app] connecting event 'config-inited' (800): [id=12] [app] connecting event 'builder-inited' (500): [id=13] [app] adding config value: ('latex_engine', , None, ) [app] adding config value: ('latex_documents', , None) [app] adding config value: ('latex_logo', None, None, []) [app] adding config value: ('latex_appendices', [], None) [app] adding config value: ('latex_use_latex_multicolumn', False, None) [app] adding config value: ('latex_use_xindy', , None, []) [app] adding config value: ('latex_toplevel_sectioning', None, None, ) [app] adding config value: ('latex_domain_indices', True, None, []) [app] adding config value: ('latex_show_urls', 'no', None) [app] adding config value: ('latex_show_pagerefs', False, None) [app] adding config value: ('latex_elements', {}, None) [app] adding config value: ('latex_additional_files', [], None) [app] adding config value: ('latex_theme', 'manual', None, []) [app] adding config value: ('latex_theme_options', {}, None) [app] adding config value: ('latex_theme_path', [], None, []) [app] adding config value: ('latex_docclass', , None) [app] setting up extension: 'sphinx.builders.linkcheck' [app] adding builder: [app] adding config value: ('linkcheck_ignore', [], None) [app] adding config value: ('linkcheck_auth', [], None) [app] adding config value: ('linkcheck_request_headers', {}, None) [app] adding config value: ('linkcheck_retries', 1, None) [app] adding config value: ('linkcheck_timeout', None, None, []) [app] adding config value: ('linkcheck_workers', 5, None) [app] adding config value: ('linkcheck_anchors', True, None) [app] adding config value: ('linkcheck_anchors_ignore', ['^!'], None) [app] setting up extension: 'sphinx.builders.manpage' [app] adding builder: [app] adding config value: ('man_pages', , None) [app] adding config value: ('man_show_urls', False, None) [app] setting up extension: 'sphinx.builders.singlehtml' [app] setting up extension: 'sphinx.builders.html' [app] adding builder: [app] adding config value: ('singlehtml_sidebars', . at 0xffff851920d0>, 'html') [app] setting up extension: 'sphinx.builders.texinfo' [app] adding builder: [app] adding config value: ('texinfo_documents', , None) [app] adding config value: ('texinfo_appendices', [], None) [app] adding config value: ('texinfo_elements', {}, None) [app] adding config value: ('texinfo_domain_indices', True, None, []) [app] adding config value: ('texinfo_show_urls', 'footnote', None) [app] adding config value: ('texinfo_no_detailmenu', False, None) [app] setting up extension: 'sphinx.builders.text' [app] adding builder: [app] adding config value: ('text_sectionchars', '*=-~"+`', 'env') [app] adding config value: ('text_newlines', 'unix', 'env') [app] adding config value: ('text_add_secnumbers', True, 'env') [app] adding config value: ('text_secnumber_suffix', '. ', 'env') [app] setting up extension: 'sphinx.builders.xml' [app] adding builder: [app] adding builder: [app] adding config value: ('xml_pretty', True, 'env') [app] setting up extension: 'sphinx.config' [app] connecting event 'config-inited' (800): [id=14] [app] connecting event 'config-inited' (800): [id=15] [app] connecting event 'config-inited' (800): [id=16] [app] connecting event 'config-inited' (800): [id=17] [app] connecting event 'config-inited' (800): [id=18] [app] connecting event 'env-get-outdated' (500): [id=19] [app] setting up extension: 'sphinx.domains.c' [app] adding domain: [app] adding config value: ('c_id_attributes', [], 'env') [app] adding config value: ('c_paren_attributes', [], 'env') [app] adding post transform: [app] adding config value: ('c_allow_pre_v3', False, 'env') [app] adding config value: ('c_warn_on_allowed_pre_v3', True, 'env') [app] setting up extension: 'sphinx.domains.changeset' [app] adding domain: [app] adding directive: ('deprecated', ) [app] adding directive: ('versionadded', ) [app] adding directive: ('versionchanged', ) [app] setting up extension: 'sphinx.domains.citation' [app] adding domain: [app] adding transform: [app] adding transform: [app] setting up extension: 'sphinx.domains.cpp' [app] adding domain: [app] adding config value: ('cpp_index_common_prefix', [], 'env') [app] adding config value: ('cpp_id_attributes', [], 'env') [app] adding config value: ('cpp_paren_attributes', [], 'env') [app] adding post transform: [app] adding config value: ('cpp_debug_lookup', False, '') [app] adding config value: ('cpp_debug_show_tree', False, '') [app] connecting event 'builder-inited' (500): .setDebugFlags at 0xffff8513d280> [id=20] [app] setting up extension: 'sphinx.domains.index' [app] adding domain: [app] adding directive: ('index', ) [app] adding role: ('index', ) [app] setting up extension: 'sphinx.domains.javascript' [app] adding domain: [app] setting up extension: 'sphinx.domains.math' [app] adding domain: [app] adding role: ('eq', ) [app] setting up extension: 'sphinx.domains.python' [app] setting up extension: 'sphinx.directives' [app] adding config value: ('strip_signature_backslash', False, 'env') [app] adding event: 'object-description-transform' [app] adding domain: [app] connecting event 'object-description-transform' (500): [id=21] [app] connecting event 'missing-reference' (900): [id=22] [app] setting up extension: 'sphinx.domains.rst' [app] adding domain: [app] setting up extension: 'sphinx.domains.std' [app] adding domain: [app] setting up extension: 'sphinx.directives' [app] setting up extension: 'sphinx.directives.code' [app] setting up extension: 'sphinx.directives.other' [app] setting up extension: 'sphinx.directives.patches' [app] setting up extension: 'sphinx.extension' [app] connecting event 'config-inited' (800): [id=23] [app] setting up extension: 'sphinx.parsers' [app] adding search source_parser: [app] setting up extension: 'sphinx.registry' [app] connecting event 'config-inited' (800): [id=24] [app] setting up extension: 'sphinx.roles' [app] setting up extension: 'sphinx.transforms' [app] adding transform: [app] adding transform: [app] adding transform: [app] adding transform: [app] adding transform: [app] adding transform: [app] adding transform: [app] adding transform: [app] adding transform: [app] adding transform: [app] adding transform: [app] adding transform: [app] adding transform: [app] adding transform: [app] adding transform: [app] setting up extension: 'sphinx.transforms.compact_bullet_list' [app] adding transform: [app] setting up extension: 'sphinx.transforms.i18n' [app] adding transform: [app] adding transform: [app] adding transform: [app] setting up extension: 'sphinx.transforms.references' [app] adding transform: [app] adding transform: [app] adding transform: [app] setting up extension: 'sphinx.transforms.post_transforms' [app] adding post transform: [app] adding post transform: [app] adding post transform: [app] setting up extension: 'sphinx.transforms.post_transforms.code' [app] adding post transform: [app] adding post transform: [app] setting up extension: 'sphinx.transforms.post_transforms.images' [app] adding post transform: [app] adding post transform: [app] setting up extension: 'sphinx.util.compat' [app] adding transform: [app] connecting event 'builder-inited' (500): [id=25] [app] setting up extension: 'sphinx.versioning' [app] adding transform: [app] setting up extension: 'sphinx.environment.collectors.dependencies' [app] adding environment collector: [app] connecting event 'doctree-read' (500): > [id=26] [app] connecting event 'env-merge-info' (500): > [id=27] [app] connecting event 'env-purge-doc' (500): > [id=28] [app] connecting event 'env-get-updated' (500): > [id=29] [app] connecting event 'env-get-outdated' (500): > [id=30] [app] setting up extension: 'sphinx.environment.collectors.asset' [app] adding environment collector: [app] connecting event 'doctree-read' (500): > [id=31] [app] connecting event 'env-merge-info' (500): > [id=32] [app] connecting event 'env-purge-doc' (500): > [id=33] [app] connecting event 'env-get-updated' (500): > [id=34] [app] connecting event 'env-get-outdated' (500): > [id=35] [app] adding environment collector: [app] connecting event 'doctree-read' (500): > [id=36] [app] connecting event 'env-merge-info' (500): > [id=37] [app] connecting event 'env-purge-doc' (500): > [id=38] [app] connecting event 'env-get-updated' (500): > [id=39] [app] connecting event 'env-get-outdated' (500): > [id=40] [app] setting up extension: 'sphinx.environment.collectors.metadata' [app] adding environment collector: [app] connecting event 'doctree-read' (500): > [id=41] [app] connecting event 'env-merge-info' (500): > [id=42] [app] connecting event 'env-purge-doc' (500): > [id=43] [app] connecting event 'env-get-updated' (500): > [id=44] [app] connecting event 'env-get-outdated' (500): > [id=45] [app] setting up extension: 'sphinx.environment.collectors.title' [app] adding environment collector: [app] connecting event 'doctree-read' (500): > [id=46] [app] connecting event 'env-merge-info' (500): > [id=47] [app] connecting event 'env-purge-doc' (500): > [id=48] [app] connecting event 'env-get-updated' (500): > [id=49] [app] connecting event 'env-get-outdated' (500): > [id=50] [app] setting up extension: 'sphinx.environment.collectors.toctree' [app] adding environment collector: [app] connecting event 'doctree-read' (500): > [id=51] [app] connecting event 'env-merge-info' (500): > [id=52] [app] connecting event 'env-purge-doc' (500): > [id=53] [app] connecting event 'env-get-updated' (500): > [id=54] [app] connecting event 'env-get-outdated' (500): > [id=55] [app] setting up extension: 'sphinxcontrib.applehelp' [app] setting up extension: 'sphinx.builders.html' [app] adding builder: [app] adding config value: ('applehelp_bundle_name', . at 0xffff850098b0>, 'applehelp') [app] adding config value: ('applehelp_bundle_id', None, 'applehelp', []) [app] adding config value: ('applehelp_dev_region', 'en-us', 'applehelp') [app] adding config value: ('applehelp_bundle_version', '1', 'applehelp') [app] adding config value: ('applehelp_icon', None, 'applehelp', []) [app] adding config value: ('applehelp_kb_product', . at 0xffff84e15670>, 'applehelp') [app] adding config value: ('applehelp_kb_url', None, 'applehelp', []) [app] adding config value: ('applehelp_remote_url', None, 'applehelp', []) [app] adding config value: ('applehelp_index_anchors', False, 'applehelp', []) [app] adding config value: ('applehelp_min_term_length', None, 'applehelp', []) [app] adding config value: ('applehelp_stopwords', . at 0xffff84e15940>, 'applehelp') [app] adding config value: ('applehelp_locale', . at 0xffff84e159d0>, 'applehelp') [app] adding config value: ('applehelp_title', . at 0xffff84e15550>, 'applehelp') [app] adding config value: ('applehelp_codesign_identity', . at 0xffff84e15a60>, 'applehelp') [app] adding config value: ('applehelp_codesign_flags', . at 0xffff84e15af0>, 'applehelp') [app] adding config value: ('applehelp_indexer_path', '/usr/bin/hiutil', 'applehelp') [app] adding config value: ('applehelp_codesign_path', '/usr/bin/codesign', 'applehelp') [app] adding config value: ('applehelp_disable_external_tools', False, 'applehelp') [app] setting up extension: 'sphinxcontrib.devhelp' [app] setting up extension: 'sphinx.builders.html' [app] adding builder: [app] adding config value: ('devhelp_basename', . at 0xffff84e158b0>, 'devhelp') [app] setting up extension: 'sphinxcontrib.htmlhelp' [app] setting up extension: 'sphinx.builders.html' [app] adding builder: [app] adding config value: ('htmlhelp_basename', , '') [app] adding config value: ('htmlhelp_file_suffix', None, 'html', []) [app] adding config value: ('htmlhelp_link_suffix', None, 'html', []) [app] setting up extension: 'sphinxcontrib.serializinghtml' [app] setting up extension: 'sphinx.builders.html' [app] adding builder: [app] adding builder: [app] setting up extension: 'sphinxcontrib.qthelp' [app] setting up extension: 'sphinx.builders.html' [app] adding builder: [app] adding config value: ('qthelp_basename', . at 0xffff84e15c10>, 'html') [app] adding config value: ('qthelp_namespace', None, 'html', []) [app] adding config value: ('qthelp_theme', 'nonav', 'html') [app] adding config value: ('qthelp_theme_options', {}, 'html') [app] setting up extension: 'alabaster' [app] adding HTML theme: 'alabaster', '/home/cermak/venv/esmg/lib/python3.8/site-packages/alabaster-0.7.12-py3.8.egg/alabaster' [app] connecting event 'html-page-context' (500): [id=56] [app] setting up extension: 'sphinxcontrib.bibtex' [app] adding config value: ('bibtex_default_style', 'alpha', 'html') [app] connecting event 'builder-inited' (500): [id=57] [app] connecting event 'doctree-resolved' (500): [id=58] [app] connecting event 'doctree-resolved' (500): [id=59] [app] connecting event 'env-purge-doc' (500): [id=60] [app] connecting event 'env-updated' (500): [id=61] [app] adding directive: ('bibliography', ) [app] adding role: ('cite', ) [app] adding node: (, {}) [app] adding translation_handlers: , {} [app] adding transform: [app] setting up extension: 'sphinx.ext.ifconfig' [app] adding node: (, {}) [app] adding translation_handlers: , {} [app] adding directive: ('ifconfig', ) [app] connecting event 'doctree-resolved' (500): [id=62] [app] setting up extension: 'sphinxcontrib.autodoc_doxygen' [app] connecting event 'builder-inited' (500): [id=63] [app] connecting event 'builder-inited' (500): [id=64] [app] setting up extension: 'sphinx.ext.autodoc' [app] adding autodocumenter: [app] adding directive: ('automodule', ) [app] adding autodocumenter: [app] adding directive: ('autoclass', ) [app] adding autodocumenter: [app] adding directive: ('autoexception', ) [app] adding autodocumenter: [app] adding directive: ('autodata', ) [app] adding autodocumenter: [app] adding directive: ('autodatadecl', ) [app] adding autodocumenter: [app] adding directive: ('autogenericalias', ) [app] adding autodocumenter: [app] adding directive: ('autotypevar', ) [app] adding autodocumenter: [app] adding directive: ('autofunction', ) [app] adding autodocumenter: [app] adding directive: ('autodecorator', ) [app] adding autodocumenter: [app] adding directive: ('automethod', ) [app] adding autodocumenter: [app] adding directive: ('autoattribute', ) [app] adding autodocumenter: [app] adding directive: ('autoproperty', ) [app] adding autodocumenter: [app] adding directive: ('autoinstanceattribute', ) [app] adding autodocumenter: [app] adding directive: ('autoslotsattribute', ) [app] adding config value: ('autoclass_content', 'class', True, ) [app] adding config value: ('autodoc_member_order', 'alphabetical', True, ) [app] adding config value: ('autodoc_default_options', {}, True) [app] adding config value: ('autodoc_docstring_signature', True, True) [app] adding config value: ('autodoc_mock_imports', [], True) [app] adding config value: ('autodoc_typehints', 'signature', True, ) [app] adding config value: ('autodoc_warningiserror', True, True) [app] adding config value: ('autodoc_inherit_docstrings', True, True) [app] adding event: 'autodoc-before-process-signature' [app] adding event: 'autodoc-process-docstring' [app] adding event: 'autodoc-process-signature' [app] adding event: 'autodoc-skip-member' [app] connecting event 'config-inited' (800): [id=65] [app] setting up extension: 'sphinx.ext.autodoc.type_comment' [app] connecting event 'autodoc-before-process-signature' (500): [id=66] [app] setting up extension: 'sphinx.ext.autodoc.typehints' [app] connecting event 'autodoc-process-signature' (500): [id=67] [app] connecting event 'object-description-transform' (500): [id=68] [app] setting up extension: 'sphinx.ext.autosummary' [app] setting up extension: 'sphinx.ext.autodoc' [app] adding node: (, {'html': (, ), 'latex': (, ), 'text': (, ), 'man': (, ), 'texinfo': (, )}) [app] adding translation_handlers: , {'html': (, ), 'latex': (, ), 'text': (, ), 'man': (, ), 'texinfo': (, )} [app] adding node: (, {'html': (, ), 'latex': (, ), 'text': (, ), 'man': (, ), 'texinfo': (, )}) [app] adding translation_handlers: , {'html': (, ), 'latex': (, ), 'text': (, ), 'man': (, ), 'texinfo': (, )} [app] adding directive: ('autosummary', ) [app] adding role: ('autolink', ) [app] connecting event 'builder-inited' (500): [id=69] [app] adding config value: ('autosummary_context', {}, True) [app] adding config value: ('autosummary_filename_map', {}, 'html') [app] adding config value: ('autosummary_generate', [], True, []) [app] adding config value: ('autosummary_generate_overwrite', True, False) [app] adding config value: ('autosummary_mock_imports', . at 0xffff84652700>, 'env') [app] adding config value: ('autosummary_imported_members', [], False, []) [app] adding autodocumenter: [app] adding directive: ('autodoxymodule', ) [app] adding autodocumenter: [app] adding directive: ('autodoxymethod', ) [app] adding autodocumenter: [app] adding directive: ('autodoxytype', ) [app] adding config value: ('doxygen_xml', '', 'env') [app] adding config value: ('autosummary_toctree', '', 'html') [app] adding directive: ('autodoxysummary', ) [app] adding directive: ('autodoxyenum', ) [app] setting up extension: 'sphinxfortran.fortran_domain' [app] adding domain: making output directory... done [app] adding config value: ('sphinx_build_mode', '', 'env') [app] adding role: ('latex', ) [app] emitting event: 'config-inited'(,) [app] emitting event: 'builder-inited'() [autosummary] generating autosummary for: api/modules.rst, api/pages.rst [debug] checking path: /home/cermak/src/MOM6/docs/api/generated/pages [debug] template:doxypage.rst kind: page obj.items():[('id', 'ALE'), ('kind', 'page')] [debug] xml parsing for ALE [debug] verbosity = 3 [debug] Setting build mode: latex [debug] method=visit_para [debug] method=visit_para [debug] method=visit_ref [debug] refid(citelist_1CITEREF_adcroft2006) kindref(member) ref([]) [debug] method=visit_ref [debug] refid(citelist_1CITEREF_bleck2002) kindref(member) ref([]) [debug] method=visit_ref [debug] refid(citelist_1CITEREF_hirt1997) kindref(member) ref([]) [debug] method=visit_ref [debug] refid(citelist_1CITEREF_dukowicz2000) kindref(member) ref([]) [debug] method=visit_para [debug] method=visit_formula [debug] method=visit_formula [debug] method=visit_formula [debug] method=visit_para [debug] method=visit_formula [debug] method=visit_ref [debug] refid(citelist_1CITEREF_white2008) kindref(member) ref([]) [debug] method=visit_ref [debug] refid(citelist_1CITEREF_white2009) kindref(member) ref([]) [debug] method=visit_para [debug] method=visit_ndash [debug] method=visit_formula [debug] method=visit_para [debug] method=visit_formula [debug] method=visit_para [debug] inserting math labels [debug] method=visit_formula [debug] method=visit_formula [debug] method=visit_formula [debug] method=visit_formula [debug] method=visit_formula [debug] method=visit_formula [debug] method=visit_para [debug] method=visit_ref [debug] refid(citelist_1CITEREF_hallberg2009) kindref(member) ref([]) [debug] method=visit_formula [debug] checking path: /home/cermak/src/MOM6/docs/api/generated/pages [debug] template:doxypage.rst kind: page obj.items():[('id', 'ALE_Timestep'), ('kind', 'page')] [debug] xml parsing for ALE_Timestep [debug] verbosity = 3 [debug] Setting build mode: latex [debug] method=visit_para [debug] method=visit_para [debug] method=visit_para [debug] method=visit_formula [debug] method=visit_para [debug] method=visit_image [debug] method=visit_image [debug] image type(latex) mode(latex) [debug] caption text(The initial state with level surface (left) and the perturbed state after a wave has come through (right).) [debug] method=visit_formula [debug] method=visit_para [debug] method=visit_image [debug] method=visit_image [debug] image type(latex) mode(latex) [debug] caption text(The regrid operation (left) and the remap operation (right).) [debug] method=visit_para [debug] method=visit_image [debug] method=visit_image [debug] image type(latex) mode(latex) [debug] caption text(The final state after remapping.) [debug] method=visit_formula [debug] method=visit_para [debug] method=visit_formula [debug] method=visit_formula [debug] method=visit_formula [debug] method=visit_formula [debug] checking path: /home/cermak/src/MOM6/docs/api/generated/pages [debug] template:doxypage.rst kind: page obj.items():[('id', 'Baroclinic_Momentum_Equations'), ('kind', 'page')] [debug] xml parsing for Baroclinic_Momentum_Equations [debug] verbosity = 3 [debug] Setting build mode: latex [debug] method=visit_para [debug] method=visit_para [debug] method=visit_para [debug] method=visit_formula [debug] method=visit_formula [debug] method=visit_para [debug] method=visit_ref [debug] refid(citelist_1CITEREF_shchepetkin2005) kindref(member) ref([]) [debug] method=visit_para [debug] method=visit_image [debug] method=visit_image [debug] image type(latex) mode(latex) [debug] caption text(Graphical notation for timestepping schemes in which the black line represents the ideal solution and the red line shows the actual solution. Phase errors are represented by the grey shapes between the bars normal to the circle.) [debug] method=visit_para [debug] method=visit_image [debug] method=visit_image [debug] image type(latex) mode(latex) [debug] caption text(Graphical notation for the Adams-Bashforth technique used in the ROMS model.) [debug] checking path: /home/cermak/src/MOM6/docs/api/generated/pages [debug] template:doxypage.rst kind: page obj.items():[('id', 'Barotropic_Baroclinic_Coupling'), ('kind', 'page')] [debug] xml parsing for Barotropic_Baroclinic_Coupling [debug] verbosity = 3 [debug] Setting build mode: latex [debug] method=visit_para [debug] method=visit_para [debug] method=visit_formula [debug] method=visit_para [debug] method=visit_formula [debug] method=visit_para [debug] method=visit_para [debug] method=visit_formula [debug] method=visit_formula [debug] method=visit_formula [debug] method=visit_sect1 [debug] visit_sect id(Barotropic_Baroclinic_Coupling_1SSH_Estimates) title(Two estimates of the free surface height) [debug] method=visit_title [debug] method=visit_para [debug] method=visit_para [debug] method=visit_formula [debug] method=visit_para [debug] method=visit_formula [debug] method=visit_para [debug] method=visit_formula [debug] method=visit_para [debug] method=visit_para [debug] method=visit_formula [debug] method=visit_para [debug] method=visit_emphasis [debug] method=visit_para [debug] method=visit_formula [debug] method=visit_para [debug] method=visit_formula [debug] method=visit_formula [debug] method=visit_ref [debug] refid(PPM) kindref(compound) ref([]) [debug] ref([('id', 'PPM'), ('kind', 'page')]) [debug] method=visit_ref [debug] refid(citelist_1CITEREF_hallberg2009) kindref(member) ref([]) [debug] method=visit_formula [debug] method=visit_para [debug] method=visit_formula [debug] method=visit_para [debug] method=visit_formula [debug] method=visit_para [debug] method=visit_formula [debug] method=visit_formula [debug] method=visit_para [debug] method=visit_para [debug] method=visit_formula [debug] method=visit_para [debug] method=visit_para [debug] method=visit_itemizedlist [debug] method=visit_listitem [debug] listitem indent = 0 [debug] method=visit_para [debug] method=visit_listitem [debug] listitem indent = 0 [debug] method=visit_para [debug] method=visit_listitem [debug] listitem indent = 0 [debug] method=visit_para [debug] method=visit_listitem [debug] listitem indent = 0 [debug] method=visit_para [debug] method=visit_listitem [debug] listitem indent = 0 [debug] method=visit_para [debug] method=visit_listitem [debug] listitem indent = 0 [debug] method=visit_para [debug] method=visit_formula [debug] method=visit_formula [debug] method=visit_formula [debug] method=visit_formula [debug] method=visit_formula [debug] method=visit_formula [debug] method=visit_para [debug] method=visit_formula [debug] method=visit_formula [debug] method=visit_sect2 [debug] visit_sect id(Barotropic_Baroclinic_Coupling_1subsec_practical) title(How practical is this iterative approach?) [debug] method=visit_title [debug] method=visit_para [debug] method=visit_para [debug] method=visit_itemizedlist [debug] method=visit_listitem [debug] listitem indent = 0 [debug] method=visit_para [debug] method=visit_formula [debug] method=visit_image [debug] method=visit_image [debug] image type(latex) mode(latex) [debug] caption text(Piecewise parabolic reconstructions of $h(x)$.) [debug] method=visit_itemizedlist [debug] method=visit_listitem [debug] listitem indent = 0 [debug] method=visit_para [debug] method=visit_formula [debug] method=visit_formula [debug] method=visit_formula [debug] method=visit_formula [debug] method=visit_image [debug] method=visit_image [debug] image type(latex) mode(latex) [debug] caption text(Newton's method iterations for finding $ U$.) [debug] method=visit_formula [debug] method=visit_formula [debug] method=visit_sect2 [debug] visit_sect id(Barotropic_Baroclinic_Coupling_1bottom_drag) title(A note on bottom drag) [debug] method=visit_title [debug] method=visit_para [debug] method=visit_para [debug] method=visit_formula [debug] method=visit_para [debug] method=visit_formula [debug] method=visit_formula [debug] method=visit_formula [debug] method=visit_formula [debug] method=visit_para [debug] method=visit_formula [debug] method=visit_para [debug] method=visit_formula [debug] method=visit_formula [debug] method=visit_formula [debug] method=visit_para [debug] method=visit_para [debug] method=visit_formula [debug] method=visit_formula [debug] method=visit_formula [debug] method=visit_para [debug] method=visit_formula [debug] method=visit_formula [debug] method=visit_para [debug] method=visit_image [debug] method=visit_image [debug] image type(latex) mode(latex) [debug] caption text(The continuous solution for barotropic flow plus a no-slip condition at the bottom.) [debug] method=visit_para [debug] method=visit_para [debug] method=visit_formula [debug] method=visit_formula [debug] method=visit_formula [debug] method=visit_formula [debug] method=visit_sect1 [debug] visit_sect id(Barotropic_Baroclinic_Coupling_1bt-bc_details) title(Additional details about the split time stepping) [debug] method=visit_title [debug] method=visit_para [debug] method=visit_itemizedlist [debug] method=visit_listitem [debug] listitem indent = 0 [debug] method=visit_para [debug] method=visit_formula [debug] method=visit_formula [debug] method=visit_formula [debug] method=visit_formula [debug] method=visit_para [debug] method=visit_formula [debug] method=visit_para [debug] method=visit_formula [debug] method=visit_para [debug] method=visit_itemizedlist [debug] method=visit_listitem [debug] listitem indent = 0 [debug] method=visit_para [debug] method=visit_formula [debug] method=visit_para [debug] method=visit_itemizedlist [debug] method=visit_listitem [debug] listitem indent = 0 [debug] method=visit_para [debug] method=visit_listitem [debug] listitem indent = 0 [debug] method=visit_para [debug] method=visit_image [debug] method=visit_image [debug] image type(latex) mode(latex) [debug] caption text(The barotropic transports depend on the baroclinic flows and thicknesses.) [debug] method=visit_sect1 [debug] visit_sect id(Barotropic_Baroclinic_Coupling_1time-split_summary) title(Summary of MOM6 split time stepping) [debug] method=visit_title [debug] method=visit_para [debug] method=visit_itemizedlist [debug] method=visit_listitem [debug] listitem indent = 0 [debug] method=visit_para [debug] method=visit_itemizedlist [debug] method=visit_listitem [debug] listitem indent = 0 [debug] method=visit_para [debug] method=visit_itemizedlist [debug] method=visit_listitem [debug] listitem indent = 0 [debug] method=visit_para [debug] method=visit_itemizedlist [debug] method=visit_listitem [debug] listitem indent = 0 [debug] method=visit_para [debug] method=visit_itemizedlist [debug] method=visit_listitem [debug] listitem indent = 0 [debug] method=visit_para [debug] checking path: /home/cermak/src/MOM6/docs/api/generated/pages [debug] template:doxypage.rst kind: page obj.items():[('id', 'Barotropic_Momentum_Equations'), ('kind', 'page')] [debug] xml parsing for Barotropic_Momentum_Equations [debug] verbosity = 3 [debug] Setting build mode: latex [debug] method=visit_para [debug] method=visit_para [debug] method=visit_para [debug] method=visit_para [debug] method=visit_formula [debug] method=visit_formula [debug] method=visit_formula [debug] method=visit_para [debug] method=visit_formula [debug] method=visit_para [debug] method=visit_formula [debug] method=visit_para [debug] method=visit_formula [debug] method=visit_formula [debug] method=visit_para [debug] method=visit_para [debug] method=visit_formula [debug] method=visit_para [debug] method=visit_ref [debug] refid(citelist_1CITEREF_bleck1990) kindref(member) ref([]) [debug] method=visit_ref [debug] refid(citelist_1CITEREF_hallberg1997a) kindref(member) ref([]) [debug] checking path: /home/cermak/src/MOM6/docs/api/generated/pages [debug] template:doxypage.rst kind: page obj.items():[('id', 'CVMix_KPP'), ('kind', 'page')] [debug] xml parsing for CVMix_KPP [debug] verbosity = 3 [debug] Setting build mode: latex [debug] method=visit_para [debug] method=visit_ref [debug] refid(citelist_1CITEREF_large1994) kindref(member) ref([]) [debug] method=visit_ulink [debug] method=visit_para [debug] method=visit_ulink [debug] method=visit_sect1 [debug] visit_sect id(CVMix_KPP_1section_KPP_nutshell) title(KPP in a nutshell) [debug] method=visit_title [debug] method=visit_para [debug] method=visit_ref [debug] refid(citelist_1CITEREF_large1994) kindref(member) ref([]) [debug] method=visit_formula [debug] method=visit_formula [debug] method=visit_formula [debug] method=visit_formula [debug] method=visit_formula [debug] method=visit_formula [debug] method=visit_formula [debug] method=visit_formula [debug] method=visit_formula [debug] method=visit_formula [debug] method=visit_formula [debug] method=visit_formula [debug] method=visit_formula [debug] method=visit_formula [debug] method=visit_formula [debug] method=visit_para [debug] method=visit_formula [debug] method=visit_formula [debug] method=visit_formula [debug] method=visit_formula [debug] method=visit_formula [debug] method=visit_ulink [debug] method=visit_para [debug] method=visit_para [debug] method=visit_simplesect [debug] simplesect kind(see) [debug] method=visit_para [debug] checking path: /home/cermak/src/MOM6/docs/api/generated/pages [debug] template:doxypage.rst kind: page obj.items():[('id', 'Diagnostics'), ('kind', 'page')] [debug] xml parsing for Diagnostics [debug] verbosity = 3 [debug] Setting build mode: latex [debug] method=visit_para [debug] method=visit_para [debug] method=visit_sect1 [debug] visit_sect id(Diagnostics_1diag_table) title(The "diag_table") [debug] method=visit_title [debug] method=visit_para [debug] method=visit_computeroutput [debug] method=visit_para [debug] method=visit_sect2 [debug] visit_sect id(Diagnostics_1diag_table_title) title(Title section) [debug] method=visit_title [debug] method=visit_para [debug] method=visit_para [debug] method=visit_programlisting [debug] method=visit_sect2 [debug] visit_sect id(Diagnostics_1diag_table_files) title(File section) [debug] method=visit_title [debug] method=visit_para [debug] method=visit_para [debug] method=visit_programlisting [debug] method=visit_para [debug] method=visit_itemizedlist [debug] method=visit_listitem [debug] listitem indent = 0 [debug] method=visit_para [debug] method=visit_computeroutput [debug] method=visit_listitem [debug] listitem indent = 0 [debug] method=visit_para [debug] method=visit_computeroutput [debug] method=visit_computeroutput [debug] method=visit_listitem [debug] listitem indent = 0 [debug] method=visit_para [debug] method=visit_computeroutput [debug] method=visit_computeroutput [debug] method=visit_listitem [debug] listitem indent = 0 [debug] method=visit_para [debug] method=visit_computeroutput [debug] method=visit_listitem [debug] listitem indent = 0 [debug] method=visit_para [debug] method=visit_computeroutput [debug] method=visit_listitem [debug] listitem indent = 0 [debug] method=visit_para [debug] method=visit_computeroutput [debug] method=visit_para [debug] method=visit_para [debug] method=visit_programlisting [debug] method=visit_para [debug] method=visit_itemizedlist [debug] method=visit_listitem [debug] listitem indent = 0 [debug] method=visit_para [debug] method=visit_listitem [debug] listitem indent = 0 [debug] method=visit_para [debug] method=visit_computeroutput [debug] method=visit_listitem [debug] listitem indent = 0 [debug] method=visit_para [debug] method=visit_computeroutput [debug] method=visit_computeroutput [debug] method=visit_listitem [debug] listitem indent = 0 [debug] method=visit_para [debug] method=visit_computeroutput [debug] method=visit_computeroutput [debug] method=visit_computeroutput [debug] method=visit_sect2 [debug] visit_sect id(Diagnostics_1diag_table_fields) title(Field section) [debug] method=visit_title [debug] method=visit_para [debug] method=visit_para [debug] method=visit_programlisting [debug] method=visit_para [debug] method=visit_itemizedlist [debug] method=visit_listitem [debug] listitem indent = 0 [debug] method=visit_para [debug] method=visit_computeroutput [debug] method=visit_ref [debug] refid(Diagnostics_1remapped_diagnostics) kindref(member) ref([]) [debug] ref([('id', 'Diagnostics_1remapped_diagnostics')]) [debug] refid2(remapped_diagnostics) reftext(Vertically remapped diagnostics) [debug] method=visit_listitem [debug] listitem indent = 0 [debug] method=visit_para [debug] method=visit_computeroutput [debug] method=visit_listitem [debug] listitem indent = 0 [debug] method=visit_para [debug] method=visit_computeroutput [debug] method=visit_computeroutput [debug] method=visit_listitem [debug] listitem indent = 0 [debug] method=visit_para [debug] method=visit_computeroutput [debug] method=visit_ref [debug] refid(Diagnostics_1diag_table_files) kindref(member) ref([]) [debug] ref([('id', 'Diagnostics_1diag_table_files')]) [debug] refid2(diag_table_files) reftext(File section) [debug] method=visit_listitem [debug] listitem indent = 0 [debug] method=visit_para [debug] method=visit_computeroutput [debug] method=visit_listitem [debug] listitem indent = 0 [debug] method=visit_para [debug] method=visit_computeroutput [debug] method=visit_listitem [debug] listitem indent = 0 [debug] method=visit_para [debug] method=visit_computeroutput [debug] method=visit_listitem [debug] listitem indent = 0 [debug] method=visit_para [debug] method=visit_computeroutput [debug] method=visit_sect2 [debug] visit_sect id(Diagnostics_1diag_table_example) title(Example) [debug] method=visit_title [debug] method=visit_para [debug] method=visit_programlisting [debug] method=visit_sect1 [debug] visit_sect id(Diagnostics_1native_diagnostics) title(Native diagnostics) [debug] method=visit_title [debug] method=visit_para [debug] method=visit_ulink [debug] method=visit_para [debug] method=visit_sect1 [debug] visit_sect id(Diagnostics_1remapped_diagnostics) title(Vertically remapped diagnostics) [debug] method=visit_title [debug] method=visit_para [debug] method=visit_para [debug] method=visit_computeroutput [debug] method=visit_para [debug] method=visit_computeroutput [debug] method=visit_computeroutput [debug] method=visit_computeroutput [debug] method=visit_computeroutput [debug] method=visit_para [debug] method=visit_computeroutput [debug] method=visit_computeroutput [debug] method=visit_computeroutput [debug] method=visit_para [debug] method=visit_programlisting [debug] method=visit_para [debug] method=visit_programlisting [debug] method=visit_para [debug] method=visit_para [debug] method=visit_programlisting [debug] method=visit_sect2 [debug] visit_sect id(Diagnostics_1diag_table_vertical_coords) title(Diagnostic vertical coordinates) [debug] method=visit_title [debug] method=visit_para [debug] method=visit_computeroutput [debug] method=visit_computeroutput [debug] method=visit_computeroutput [debug] method=visit_itemizedlist [debug] method=visit_listitem [debug] listitem indent = 0 [debug] method=visit_para [debug] method=visit_computeroutput [debug] method=visit_listitem [debug] listitem indent = 0 [debug] method=visit_para [debug] method=visit_listitem [debug] listitem indent = 0 [debug] method=visit_para [debug] method=visit_computeroutput [debug] method=visit_listitem [debug] listitem indent = 0 [debug] method=visit_para [debug] method=visit_computeroutput [debug] method=visit_computeroutput [debug] method=visit_listitem [debug] listitem indent = 0 [debug] method=visit_para [debug] method=visit_listitem [debug] listitem indent = 0 [debug] method=visit_para [debug] method=visit_listitem [debug] listitem indent = 0 [debug] method=visit_para [debug] method=visit_listitem [debug] listitem indent = 0 [debug] method=visit_para [debug] method=visit_computeroutput [debug] method=visit_sect1 [debug] visit_sect id(Diagnostics_1diagnostics_implementation) title(APIs for diagnostics) [debug] method=visit_title [debug] method=visit_para [debug] method=visit_para [debug] method=visit_programlisting [debug] method=visit_para [debug] method=visit_para [debug] method=visit_para [debug] method=visit_para [debug] method=visit_para [debug] method=visit_programlisting [debug] method=visit_sect2 [debug] visit_sect id(Diagnostics_1diag_post_frequency) title(Artifacts of posting frequency for diagnostics) [debug] method=visit_title [debug] method=visit_para [debug] checking path: /home/cermak/src/MOM6/docs/api/generated/pages [debug] template:doxypage.rst kind: page obj.items():[('id', 'Discrete_Coriolis'), ('kind', 'page')] [debug] xml parsing for Discrete_Coriolis [debug] verbosity = 3 [debug] Setting build mode: latex [debug] method=visit_sect1 [debug] visit_sect id(Discrete_Coriolis_1Coriolis) title(Coriolis Term) [debug] method=visit_title [debug] method=visit_para [debug] method=visit_ref [debug] refid(Discrete_Grids_1horizontal_grids) kindref(member) ref([]) [debug] ref([('id', 'Discrete_Grids_1horizontal_grids')]) [debug] refid2(horizontal_grids) reftext(Horizontal grids) [debug] method=visit_para [debug] method=visit_formula [debug] method=visit_para [debug] method=visit_formula [debug] method=visit_formula [debug] method=visit_formula [debug] method=visit_para [debug] method=visit_itemizedlist [debug] method=visit_listitem [debug] listitem indent = 0 [debug] method=visit_para [debug] method=visit_ref [debug] refid(citelist_1CITEREF_sadourny1975) kindref(member) ref([]) [debug] method=visit_formula [debug] method=visit_formula [debug] method=visit_formula [debug] method=visit_formula [debug] method=visit_formula [debug] method=visit_formula [debug] method=visit_para [debug] method=visit_itemizedlist [debug] method=visit_listitem [debug] listitem indent = 0 [debug] method=visit_para [debug] method=visit_ref [debug] refid(citelist_1CITEREF_sadourny1975) kindref(member) ref([]) [debug] method=visit_formula [debug] method=visit_itemizedlist [debug] method=visit_listitem [debug] listitem indent = 0 [debug] method=visit_para [debug] method=visit_ref [debug] refid(citelist_1CITEREF_arakawa1981) kindref(member) ref([]) [debug] method=visit_formula [debug] method=visit_formula [debug] method=visit_formula [debug] method=visit_formula [debug] inserting math labels [debug] method=visit_itemizedlist [debug] method=visit_listitem [debug] listitem indent = 0 [debug] method=visit_para [debug] method=visit_ref [debug] refid(citelist_1CITEREF_arakawa1990) kindref(member) ref([]) [debug] method=visit_formula [debug] method=visit_formula [debug] method=visit_itemizedlist [debug] method=visit_listitem [debug] listitem indent = 0 [debug] method=visit_para [debug] method=visit_formula [debug] method=visit_formula [debug] method=visit_itemizedlist [debug] method=visit_listitem [debug] listitem indent = 0 [debug] method=visit_para [debug] method=visit_formula [debug] method=visit_formula [debug] method=visit_formula [debug] method=visit_formula [debug] method=visit_sect2 [debug] visit_sect id(Discrete_Coriolis_1Coriolis_BC) title(Wall boundary conditions) [debug] method=visit_title [debug] method=visit_para [debug] method=visit_para [debug] method=visit_formula [debug] method=visit_para [debug] method=visit_formula [debug] method=visit_para [debug] method=visit_formula [debug] checking path: /home/cermak/src/MOM6/docs/api/generated/pages [debug] template:doxypage.rst kind: page obj.items():[('id', 'Discrete_Grids'), ('kind', 'page')] [debug] xml parsing for Discrete_Grids [debug] verbosity = 3 [debug] Setting build mode: latex [debug] method=visit_para [debug] method=visit_sect1 [debug] visit_sect id(Discrete_Grids_1horizontal_grids) title(Horizontal grids) [debug] method=visit_title [debug] method=visit_para [debug] method=visit_para [debug] method=visit_image [debug] method=visit_image [debug] image type(latex) mode(latex) [debug] caption text(MOM6 uses an Arakawa C grid staggering of variables with a North-East indexing convention.) [debug] method=visit_formula [debug] method=visit_formula [debug] method=visit_formula [debug] method=visit_formula [debug] method=visit_formula [debug] method=visit_formula [debug] method=visit_formula [debug] method=visit_formula [debug] method=visit_formula [debug] method=visit_formula [debug] method=visit_formula [debug] method=visit_formula [debug] method=visit_formula [debug] method=visit_formula [debug] method=visit_formula [debug] method=visit_para [debug] method=visit_para [debug] method=visit_image [debug] method=visit_image [debug] image type(latex) mode(latex) [debug] caption text(The grid metrics around both $h$-points and $q$-points.) [debug] method=visit_formula [debug] method=visit_formula [debug] method=visit_formula [debug] method=visit_formula [debug] method=visit_para [debug] method=visit_formula [debug] method=visit_para [debug] method=visit_formula [debug] method=visit_sect1 [debug] visit_sect id(Discrete_Grids_1vertical_grids) title(Vertical grids) [debug] method=visit_title [debug] method=visit_para [debug] method=visit_para [debug] method=visit_image [debug] method=visit_image [debug] image type(latex) mode(latex) [debug] caption text(The MOM6 interfaces are at vertical location $e$ which are separated by the layer thicknesses $h$.) [debug] method=visit_ref [debug] refid(ALE_Timestep) kindref(compound) ref([]) [debug] ref([('id', 'ALE_Timestep'), ('kind', 'page')]) [debug] checking path: /home/cermak/src/MOM6/docs/api/generated/pages [debug] template:doxypage.rst kind: page obj.items():[('id', 'Discrete_OBC'), ('kind', 'page')] [debug] xml parsing for Discrete_OBC [debug] verbosity = 3 [debug] Setting build mode: latex [debug] method=visit_para [debug] checking path: /home/cermak/src/MOM6/docs/api/generated/pages [debug] template:doxypage.rst kind: page obj.items():[('id', 'Discrete_PG'), ('kind', 'page')] [debug] xml parsing for Discrete_PG [debug] verbosity = 3 [debug] Setting build mode: latex [debug] method=visit_sect1 [debug] visit_sect id(Discrete_PG_1PG) title(Pressure Gradient Term) [debug] method=visit_title [debug] method=visit_para [debug] method=visit_ref [debug] refid(citelist_1CITEREF_adcroft2008) kindref(member) ref([]) [debug] method=visit_formula [debug] method=visit_formula [debug] method=visit_formula [debug] method=visit_formula [debug] method=visit_formula [debug] method=visit_formula [debug] method=visit_formula [debug] method=visit_formula [debug] method=visit_formula [debug] method=visit_para [debug] method=visit_ref [debug] refid(citelist_1CITEREF_sun1999) kindref(member) ref([]) [debug] method=visit_ref [debug] refid(citelist_1CITEREF_hallberg2005) kindref(member) ref([]) [debug] method=visit_ref [debug] refid(citelist_1CITEREF_adcroft2008) kindref(member) ref([]) [debug] method=visit_para [debug] method=visit_formula [debug] method=visit_formula [debug] method=visit_para [debug] method=visit_formula [debug] method=visit_para [debug] inserting math labels [debug] method=visit_para [debug] method=visit_image [debug] method=visit_image [debug] image type(latex) mode(latex) [debug] caption text(Schematic of the finite volume used for integrating the $u$-component of momentum. The thermodynamic variables $$ and $s$ reside on the sides of the depicted volume and are considered uniform for the vertical extent of the volume but with linear variation in the horizontal. The volume is depicted in $(x, p)$ space so $p$ is linear around the volume but $$ can vary arbitrarily along the edges.) [debug] method=visit_formula [debug] method=visit_formula [debug] method=visit_formula [debug] method=visit_formula [debug] method=visit_para [debug] method=visit_ref [debug] refid(citelist_1CITEREF_wright1997) kindref(member) ref([]) [debug] method=visit_para [debug] method=visit_formula [debug] method=visit_para [debug] method=visit_formula [debug] method=visit_formula [debug] method=visit_formula [debug] method=visit_formula [debug] method=visit_para [debug] method=visit_formula [debug] method=visit_para [debug] method=visit_formula [debug] method=visit_formula [debug] method=visit_formula [debug] method=visit_formula [debug] method=visit_formula [debug] method=visit_formula [debug] method=visit_formula [debug] method=visit_formula [debug] inserting math labels [debug] method=visit_formula [debug] method=visit_formula [debug] method=visit_formula [debug] method=visit_para [debug] method=visit_formula [debug] method=visit_para [debug] method=visit_formula [debug] method=visit_formula [debug] method=visit_formula [debug] method=visit_formula [debug] method=visit_formula [debug] method=visit_formula [debug] method=visit_formula [debug] method=visit_para [debug] method=visit_formula [debug] method=visit_formula [debug] method=visit_formula [debug] method=visit_formula [debug] method=visit_para [debug] method=visit_formula [debug] method=visit_formula [debug] method=visit_formula [debug] method=visit_formula [debug] method=visit_formula [debug] method=visit_formula [debug] method=visit_para [debug] method=visit_formula [debug] method=visit_para [debug] method=visit_para [debug] checking path: /home/cermak/src/MOM6/docs/api/generated/pages [debug] template:doxypage.rst kind: page obj.items():[('id', 'Discrete_Tracer'), ('kind', 'page')] [debug] xml parsing for Discrete_Tracer [debug] verbosity = 3 [debug] Setting build mode: latex [debug] method=visit_para [debug] checking path: /home/cermak/src/MOM6/docs/api/generated/pages [debug] template:doxypage.rst kind: page obj.items():[('id', 'Domain_Decomposition'), ('kind', 'page')] [debug] xml parsing for Domain_Decomposition [debug] verbosity = 3 [debug] Setting build mode: latex [debug] method=visit_sect1 [debug] visit_sect id(Domain_Decomposition_1section_domain_decomp) title(Domain Decomposition) [debug] method=visit_title [debug] method=visit_para [debug] method=visit_para [debug] method=visit_itemizedlist [debug] method=visit_listitem [debug] listitem indent = 0 [debug] method=visit_para [debug] method=visit_listitem [debug] listitem indent = 0 [debug] method=visit_para [debug] method=visit_listitem [debug] listitem indent = 0 [debug] method=visit_para [debug] method=visit_listitem [debug] listitem indent = 0 [debug] method=visit_para [debug] method=visit_listitem [debug] listitem indent = 0 [debug] method=visit_para [debug] method=visit_ref [debug] refid(Horizontal_Indexing_1section_Memory) kindref(member) ref([]) [debug] ref([('id', 'Horizontal_Indexing_1section_Memory')]) [debug] refid2(section_Memory) reftext(Declaration of variables) [debug] method=visit_formula [debug] method=visit_formula [debug] method=visit_sect1 [debug] visit_sect id(Domain_Decomposition_1section_wide_halos) title(Wide Halos) [debug] method=visit_title [debug] checking path: /home/cermak/src/MOM6/docs/api/generated/pages [debug] template:doxypage.rst kind: page obj.items():[('id', 'Energetic_Consistency'), ('kind', 'page')] [debug] xml parsing for Energetic_Consistency [debug] verbosity = 3 [debug] Setting build mode: latex [debug] method=visit_para [debug] checking path: /home/cermak/src/MOM6/docs/api/generated/pages [debug] template:doxypage.rst kind: page obj.items():[('id', 'Equation_of_State'), ('kind', 'page')] [debug] xml parsing for Equation_of_State [debug] verbosity = 3 [debug] Setting build mode: latex [debug] method=visit_para [debug] method=visit_sect1 [debug] visit_sect id(Equation_of_State_1Linear_EOS) title(Linear Equation of State) [debug] method=visit_title [debug] method=visit_para [debug] method=visit_formula [debug] method=visit_formula [debug] method=visit_sect1 [debug] visit_sect id(Equation_of_State_1Wright_EOS) title(Wright Equation of State) [debug] method=visit_title [debug] method=visit_para [debug] method=visit_ref [debug] refid(citelist_1CITEREF_wright1997) kindref(member) ref([]) [debug] method=visit_formula [debug] method=visit_formula [debug] method=visit_formula [debug] method=visit_formula [debug] method=visit_formula [debug] method=visit_formula [debug] method=visit_ref [debug] refid(Discrete_PG_1PG) kindref(member) ref([]) [debug] ref([('id', 'Discrete_PG_1PG')]) [debug] refid2(PG) reftext(Pressure Gradient Term) [debug] method=visit_sect1 [debug] visit_sect id(Equation_of_State_1NEMO_EOS) title(NEMO Equation of State) [debug] method=visit_title [debug] method=visit_para [debug] method=visit_ref [debug] refid(citelist_1CITEREF_roquet2015) kindref(member) ref([]) [debug] method=visit_sect1 [debug] visit_sect id(Equation_of_State_1UNESCO_EOS) title(UNESCO Equation of State) [debug] method=visit_title [debug] method=visit_para [debug] method=visit_ref [debug] refid(citelist_1CITEREF_jackett1995) kindref(member) ref([]) [debug] method=visit_sect1 [debug] visit_sect id(Equation_of_State_1TEOS-10_EOS) title(TEOS-10 Equation of State) [debug] method=visit_title [debug] method=visit_para [debug] method=visit_ulink [debug] method=visit_sect1 [debug] visit_sect id(Equation_of_State_1TFREEZE) title(Freezing Temperature of Sea Water) [debug] method=visit_title [debug] method=visit_para [debug] method=visit_para [debug] method=visit_itemizedlist [debug] method=visit_listitem [debug] listitem indent = 0 [debug] method=visit_para [debug] method=visit_formula [debug] method=visit_formula [debug] method=visit_itemizedlist [debug] method=visit_listitem [debug] listitem indent = 0 [debug] method=visit_para [debug] method=visit_ref [debug] refid(citelist_1CITEREF_millero1978) kindref(member) ref([]) [debug] method=visit_emphasis [debug] method=visit_formula [debug] method=visit_formula [debug] method=visit_itemizedlist [debug] method=visit_listitem [debug] listitem indent = 0 [debug] method=visit_para [debug] checking path: /home/cermak/src/MOM6/docs/api/generated/pages [debug] template:doxypage.rst kind: page obj.items():[('id', 'Finite_Difference_Operators'), ('kind', 'page')] [debug] xml parsing for Finite_Difference_Operators [debug] verbosity = 3 [debug] Setting build mode: latex [debug] method=visit_para [debug] checking path: /home/cermak/src/MOM6/docs/api/generated/pages [debug] template:doxypage.rst kind: page obj.items():[('id', 'General_Coordinate'), ('kind', 'page')] [debug] xml parsing for General_Coordinate [debug] verbosity = 3 [debug] Setting build mode: latex [debug] method=visit_para [debug] method=visit_para [debug] method=visit_formula [debug] method=visit_formula [debug] method=visit_para [debug] method=visit_formula [debug] method=visit_para [debug] method=visit_formula [debug] method=visit_para [debug] inserting math labels [debug] method=visit_formula [debug] method=visit_para [debug] method=visit_ref [debug] refid(citelist_1CITEREF_bleck2002) kindref(member) ref([]) [debug] method=visit_formula [debug] method=visit_formula [debug] method=visit_para [debug] method=visit_formula [debug] method=visit_para [debug] inserting math labels [debug] method=visit_formula [debug] method=visit_ref [debug] refid(citelist_1CITEREF_adcroft2008) kindref(member) ref([]) [debug] method=visit_formula [debug] method=visit_ref [debug] refid(citelist_1CITEREF_white2008) kindref(member) ref([]) [debug] method=visit_ref [debug] refid(citelist_1CITEREF_white2009) kindref(member) ref([]) [debug] method=visit_ref [debug] refid(ALE_Timestep) kindref(compound) ref([]) [debug] ref([('id', 'ALE_Timestep'), ('kind', 'page')]) [debug] checking path: /home/cermak/src/MOM6/docs/api/generated/pages [debug] template:doxypage.rst kind: page obj.items():[('id', 'Global_Grids'), ('kind', 'page')] [debug] xml parsing for Global_Grids [debug] verbosity = 3 [debug] Setting build mode: latex [debug] method=visit_para [debug] method=visit_sect1 [debug] visit_sect id(Global_Grids_1Dipole) title(Dipole Grids) [debug] method=visit_title [debug] method=visit_sect1 [debug] visit_sect id(Global_Grids_1Tripole) title(Tripole Grids) [debug] method=visit_title [debug] checking path: /home/cermak/src/MOM6/docs/api/generated/pages [debug] template:doxypage.rst kind: page obj.items():[('id', 'Governing_Equations'), ('kind', 'page')] [debug] xml parsing for Governing_Equations [debug] verbosity = 3 [debug] Setting build mode: latex [debug] method=visit_para [debug] method=visit_para [debug] method=visit_formula [debug] method=visit_para [debug] method=visit_ref [debug] refid(Notation) kindref(compound) ref([]) [debug] ref([('id', 'Notation'), ('kind', 'page')]) [debug] method=visit_formula [debug] method=visit_para [debug] method=visit_formula [debug] method=visit_formula [debug] method=visit_emphasis [debug] method=visit_formula [debug] method=visit_ref [debug] refid(citelist_1CITEREF_wright1997) kindref(member) ref([]) [debug] method=visit_formula [debug] method=visit_formula [debug] method=visit_emphasis [debug] method=visit_para [debug] method=visit_para [debug] method=visit_formula [debug] method=visit_para [debug] method=visit_para [debug] method=visit_formula [debug] method=visit_para [debug] method=visit_para [debug] method=visit_formula [debug] method=visit_sect1 [debug] visit_sect id(Governing_Equations_1vector_invariant_eqns) title(Vector Invariant Equations) [debug] method=visit_title [debug] method=visit_para [debug] method=visit_para [debug] method=visit_para [debug] method=visit_formula [debug] method=visit_para [debug] method=visit_para [debug] method=visit_formula [debug] method=visit_para [debug] checking path: /home/cermak/src/MOM6/docs/api/generated/pages [debug] template:doxypage.rst kind: page obj.items():[('id', 'Horizontal_Diffusion'), ('kind', 'page')] [debug] xml parsing for Horizontal_Diffusion [debug] verbosity = 3 [debug] Setting build mode: latex [debug] method=visit_para [debug] method=visit_para [debug] method=visit_para [debug] method=visit_anchor [debug] anchor id(Horizontal_Diffusion_1eddy_flux) [debug] method=visit_image [debug] method=visit_image [debug] image type(latex) mode(latex) [debug] caption text(Horizontal surface boundary layer fluxes and interior epineutral fluxes.) [debug] method=visit_sect1 [debug] visit_sect id(Horizontal_Diffusion_1Epineutral_Diffusion) title(Epineutral Diffusion) [debug] method=visit_title [debug] method=visit_para [debug] method=visit_para [debug] method=visit_itemizedlist [debug] method=visit_listitem [debug] listitem indent = 0 [debug] method=visit_para [debug] method=visit_listitem [debug] listitem indent = 0 [debug] method=visit_para [debug] method=visit_listitem [debug] listitem indent = 0 [debug] method=visit_para [debug] method=visit_ref [debug] refid(citelist_1CITEREF_shao2019-in-review) kindref(member) ref([]) [debug] method=visit_para [debug] method=visit_para [debug] method=visit_image [debug] method=visit_image [debug] image type(latex) mode(latex) [debug] caption text(Polynomial reconstructions, starting with piecewise constant on the left, piecewise linear in the middle and piecewise parabolic on the right.) [debug] method=visit_para [debug] method=visit_itemizedlist [debug] method=visit_listitem [debug] listitem indent = 0 [debug] method=visit_para [debug] method=visit_listitem [debug] listitem indent = 0 [debug] method=visit_para [debug] method=visit_listitem [debug] listitem indent = 0 [debug] method=visit_para [debug] method=visit_sect2 [debug] visit_sect id(Horizontal_Diffusion_1Epineutral_Initialization) title(Initialization) [debug] method=visit_title [debug] method=visit_para [debug] method=visit_para [debug] method=visit_image [debug] method=visit_image [debug] image type(latex) mode(latex) [debug] caption text(Polynomial reconstructions of two adjacent water columns.) [debug] method=visit_formula [debug] method=visit_formula [debug] method=visit_formula [debug] method=visit_formula [debug] method=visit_para [debug] method=visit_sect2 [debug] visit_sect id(Horizontal_Diffusion_1Epineutral_Sorting) title(Sorting) [debug] method=visit_title [debug] method=visit_para [debug] method=visit_para [debug] method=visit_formula [debug] method=visit_para [debug] method=visit_formula [debug] method=visit_formula [debug] method=visit_para [debug] method=visit_para [debug] method=visit_image [debug] method=visit_image [debug] image type(latex) mode(latex) [debug] caption text(Searching the column with the lighter surface for the water matching the other column's surface water.) [debug] method=visit_para [debug] method=visit_itemizedlist [debug] method=visit_listitem [debug] listitem indent = 0 [debug] method=visit_para [debug] method=visit_listitem [debug] listitem indent = 0 [debug] method=visit_para [debug] method=visit_formula [debug] method=visit_formula [debug] method=visit_formula [debug] method=visit_formula [debug] method=visit_listitem [debug] listitem indent = 0 [debug] method=visit_para [debug] method=visit_formula [debug] method=visit_formula [debug] method=visit_listitem [debug] listitem indent = 0 [debug] method=visit_para [debug] method=visit_formula [debug] method=visit_sect2 [debug] visit_sect id(Horizontal_Diffusion_1Epineutral_Flux_Calculation) title(Flux Calculation) [debug] method=visit_title [debug] method=visit_para [debug] method=visit_formula [debug] method=visit_formula [debug] method=visit_para [debug] method=visit_formula [debug] method=visit_para [debug] method=visit_para [debug] method=visit_formula [debug] method=visit_para [debug] method=visit_para [debug] method=visit_image [debug] method=visit_image [debug] image type(latex) mode(latex) [debug] caption text(Diagram of sublayer thickness for the sublayer bounded by surfaces $$ and ${n+1}$.) [debug] method=visit_image [debug] method=visit_image [debug] image type(latex) mode(latex) [debug] caption text(Flux of tracer $C$ along the sublayer.) [debug] method=visit_para [debug] method=visit_image [debug] method=visit_image [debug] image type(latex) mode(latex) [debug] caption text(Accumulate all the fluxes across a face from all the layers in the next column contributing to it.) [debug] method=visit_sect1 [debug] visit_sect id(Horizontal_Diffusion_1Surface_Diffusion) title(Surface Diffusion) [debug] method=visit_title [debug] method=visit_para [debug] method=visit_ref [debug] refid(Horizontal_Diffusion_1eddy_flux) kindref(member) ref([]) [debug] ref([('id', 'Horizontal_Diffusion_1eddy_flux')]) [debug] refid(Horizontal_Diffusion_1eddy_flux) [debug] method=visit_para [debug] method=visit_para [debug] method=visit_image [debug] method=visit_image [debug] image type(latex) mode(latex) [debug] caption text(Two cells within the surface mixed layer, red on the left, blue on the right. The mixed layer depth is shown in green.) [debug] method=visit_para [debug] method=visit_image [debug] method=visit_image [debug] image type(latex) mode(latex) [debug] caption text(Two cells within the surface mixed layer with down-gradient fluxes as shown by the black arrows.) [debug] method=visit_para [debug] method=visit_formula [debug] method=visit_para [debug] method=visit_formula [debug] method=visit_para [debug] method=visit_formula [debug] checking path: /home/cermak/src/MOM6/docs/api/generated/pages [debug] template:doxypage.rst kind: page obj.items():[('id', 'Horizontal_Indexing'), ('kind', 'page')] [debug] xml parsing for Horizontal_Indexing [debug] verbosity = 3 [debug] Setting build mode: latex [debug] method=visit_para [debug] method=visit_para [debug] method=visit_computeroutput [debug] method=visit_computeroutput [debug] method=visit_sect1 [debug] visit_sect id(Horizontal_Indexing_1section_Staggering) title(Loops and staggered variables) [debug] method=visit_title [debug] method=visit_para [debug] method=visit_computeroutput [debug] method=visit_para [debug] method=visit_image [debug] method=visit_image [debug] image type(latex) mode(latex) [debug] caption text(MOM6 uses an Arakawa C grid staggering of variables with a North-East indexing convention. "Cells" refer to the control volumes around tracer- or h-point located variables unless labelled otherwise.) [debug] method=visit_sect2 [debug] visit_sect id(Horizontal_Indexing_1Soft_convention) title(Soft convention for loop variables) [debug] method=visit_title [debug] method=visit_para [debug] method=visit_formula [debug] method=visit_para [debug] method=visit_itemizedlist [debug] method=visit_listitem [debug] listitem indent = 0 [debug] method=visit_para [debug] method=visit_computeroutput [debug] method=visit_listitem [debug] listitem indent = 0 [debug] method=visit_para [debug] method=visit_computeroutput [debug] method=visit_computeroutput [debug] method=visit_listitem [debug] listitem indent = 0 [debug] method=visit_para [debug] method=visit_computeroutput [debug] method=visit_formula [debug] method=visit_computeroutput [debug] method=visit_formula [debug] method=visit_listitem [debug] listitem indent = 0 [debug] method=visit_para [debug] method=visit_computeroutput [debug] method=visit_formula [debug] method=visit_computeroutput [debug] method=visit_formula [debug] method=visit_listitem [debug] listitem indent = 0 [debug] method=visit_para [debug] method=visit_computeroutput [debug] method=visit_formula [debug] method=visit_para [debug] method=visit_itemizedlist [debug] method=visit_listitem [debug] listitem indent = 0 [debug] method=visit_para [debug] method=visit_computeroutput [debug] method=visit_computeroutput [debug] method=visit_listitem [debug] listitem indent = 0 [debug] method=visit_para [debug] method=visit_formula [debug] method=visit_computeroutput [debug] method=visit_sect1 [debug] visit_sect id(Horizontal_Indexing_1section_Memory) title(Declaration of variables) [debug] method=visit_title [debug] method=visit_para [debug] method=visit_image [debug] method=visit_image [debug] image type(latex) mode(latex) [debug] caption text(Non-symmetric mode: All arrays are declared with the same shape (isd:ied,jsd:jed).) [debug] method=visit_para [debug] method=visit_image [debug] method=visit_image [debug] image type(latex) mode(latex) [debug] caption text(Symmetric mode: Arrays have different shapes depending on their staggering location on the Arakawa C grid.) [debug] method=visit_para [debug] method=visit_para [debug] method=visit_para [debug] method=visit_para [debug] method=visit_para [debug] method=visit_para [debug] method=visit_itemizedlist [debug] method=visit_listitem [debug] listitem indent = 0 [debug] method=visit_para [debug] method=visit_computeroutput [debug] method=visit_listitem [debug] listitem indent = 0 [debug] method=visit_para [debug] method=visit_computeroutput [debug] method=visit_para [debug] method=visit_itemizedlist [debug] method=visit_listitem [debug] listitem indent = 0 [debug] method=visit_para [debug] method=visit_computeroutput [debug] method=visit_listitem [debug] listitem indent = 0 [debug] method=visit_para [debug] method=visit_computeroutput [debug] method=visit_para [debug] method=visit_itemizedlist [debug] method=visit_listitem [debug] listitem indent = 0 [debug] method=visit_para [debug] method=visit_computeroutput [debug] method=visit_listitem [debug] listitem indent = 0 [debug] method=visit_para [debug] method=visit_computeroutput [debug] method=visit_para [debug] method=visit_itemizedlist [debug] method=visit_listitem [debug] listitem indent = 0 [debug] method=visit_para [debug] method=visit_computeroutput [debug] method=visit_listitem [debug] listitem indent = 0 [debug] method=visit_para [debug] method=visit_computeroutput [debug] method=visit_para [debug] method=visit_computeroutput [debug] method=visit_computeroutput [debug] method=visit_computeroutput [debug] method=visit_computeroutput [debug] method=visit_itemizedlist [debug] method=visit_listitem [debug] listitem indent = 0 [debug] method=visit_para [debug] method=visit_computeroutput [debug] method=visit_listitem [debug] listitem indent = 0 [debug] method=visit_para [debug] method=visit_computeroutput [debug] method=visit_listitem [debug] listitem indent = 0 [debug] method=visit_para [debug] method=visit_computeroutput [debug] method=visit_listitem [debug] listitem indent = 0 [debug] method=visit_para [debug] method=visit_computeroutput [debug] method=visit_para [debug] method=visit_sect1 [debug] visit_sect id(Horizontal_Indexing_1Global_index) title(Calculating a global index) [debug] method=visit_title [debug] method=visit_para [debug] method=visit_computeroutput [debug] method=visit_para [debug] method=visit_computeroutput [debug] method=visit_para [debug] method=visit_para [debug] method=visit_computeroutput [debug] method=visit_para [debug] method=visit_para [debug] checking path: /home/cermak/src/MOM6/docs/api/generated/pages [debug] template:doxypage.rst kind: page obj.items():[('id', 'Notation'), ('kind', 'page')] [debug] xml parsing for Notation [debug] verbosity = 3 [debug] Setting build mode: latex [debug] method=visit_sect1 [debug] visit_sect id(Notation_1Symbols) title(Symbols for variables) [debug] method=visit_title [debug] method=visit_para [debug] method=visit_formula [debug] method=visit_formula [debug] method=visit_para [debug] method=visit_formula [debug] method=visit_formula [debug] method=visit_para [debug] method=visit_formula [debug] method=visit_formula [debug] method=visit_para [debug] method=visit_formula [debug] method=visit_formula [debug] method=visit_formula [debug] method=visit_para [debug] method=visit_formula [debug] method=visit_formula [debug] method=visit_para [debug] method=visit_formula [debug] method=visit_para [debug] method=visit_formula [debug] method=visit_formula [debug] method=visit_formula [debug] method=visit_sect1 [debug] visit_sect id(Notation_1vector_notation) title(Vector notation) [debug] method=visit_title [debug] method=visit_para [debug] method=visit_formula [debug] method=visit_para [debug] method=visit_formula [debug] method=visit_para [debug] method=visit_formula [debug] method=visit_formula [debug] method=visit_para [debug] method=visit_para [debug] method=visit_formula [debug] method=visit_para [debug] method=visit_para [debug] method=visit_formula [debug] checking path: /home/cermak/src/MOM6/docs/api/generated/pages [debug] template:doxypage.rst kind: page obj.items():[('id', 'PPM'), ('kind', 'page')] [debug] xml parsing for PPM [debug] verbosity = 3 [debug] Setting build mode: latex [debug] method=visit_para [debug] method=visit_para [debug] method=visit_ref [debug] refid(citelist_1CITEREF_colella1984) kindref(member) ref([]) [debug] method=visit_ref [debug] refid(citelist_1CITEREF_carpenter1990) kindref(member) ref([]) [debug] method=visit_para [debug] method=visit_itemizedlist [debug] method=visit_listitem [debug] listitem indent = 0 [debug] method=visit_para [debug] method=visit_listitem [debug] listitem indent = 0 [debug] method=visit_para [debug] method=visit_listitem [debug] listitem indent = 0 [debug] method=visit_para [debug] method=visit_para [debug] method=visit_image [debug] method=visit_image [debug] image type(latex) mode(latex) [debug] caption text(The parabolic representation of a field within a cell.) [debug] method=visit_para [debug] method=visit_formula [debug] method=visit_para [debug] method=visit_formula [debug] method=visit_para [debug] method=visit_formula [debug] method=visit_para [debug] method=visit_formula [debug] method=visit_para [debug] method=visit_formula [debug] method=visit_para [debug] method=visit_formula [debug] method=visit_para [debug] method=visit_formula [debug] method=visit_para [debug] method=visit_formula [debug] method=visit_formula [debug] method=visit_ref [debug] refid(citelist_1CITEREF_colella1984) kindref(member) ref([]) [debug] method=visit_ref [debug] refid(citelist_1CITEREF_huynh1997) kindref(member) ref([]) [debug] method=visit_ref [debug] refid(Tracer_Advection) kindref(compound) ref([]) [debug] ref([('id', 'Tracer_Advection'), ('kind', 'page')]) [debug] checking path: /home/cermak/src/MOM6/docs/api/generated/pages [debug] template:doxypage.rst kind: page obj.items():[('id', 'Parallel_IO'), ('kind', 'page')] [debug] xml parsing for Parallel_IO [debug] verbosity = 3 [debug] Setting build mode: latex [debug] method=visit_para [debug] method=visit_para [debug] method=visit_ulink [debug] checking path: /home/cermak/src/MOM6/docs/api/generated/pages [debug] template:doxypage.rst kind: page obj.items():[('id', 'Passive_Tracers'), ('kind', 'page')] [debug] xml parsing for Passive_Tracers [debug] verbosity = 3 [debug] Setting build mode: latex [debug] method=visit_para [debug] method=visit_sect1 [debug] visit_sect id(Passive_Tracers_1Passive_tracers) title(Passive Tracers) [debug] method=visit_title [debug] method=visit_sect1 [debug] visit_sect id(Passive_Tracers_1Generic_tracers) title(Generic Tracers) [debug] method=visit_title [debug] method=visit_sect1 [debug] visit_sect id(Passive_Tracers_1User_tracers) title(User-defined Tracers) [debug] method=visit_title [debug] checking path: /home/cermak/src/MOM6/docs/api/generated/pages [debug] template:doxypage.rst kind: page obj.items():[('id', 'Regional_Grids'), ('kind', 'page')] [debug] xml parsing for Regional_Grids [debug] verbosity = 3 [debug] Setting build mode: latex [debug] method=visit_para [debug] method=visit_sect1 [debug] visit_sect id(Regional_Grids_1map_projections) title(Map Projections) [debug] method=visit_title [debug] method=visit_sect1 [debug] visit_sect id(Regional_Grids_1OBC_segments) title(Open Boundary Segments) [debug] method=visit_title [debug] checking path: /home/cermak/src/MOM6/docs/api/generated/pages [debug] template:doxypage.rst kind: page obj.items():[('id', 'Runtime_Parameter_System'), ('kind', 'page')] [debug] xml parsing for Runtime_Parameter_System [debug] verbosity = 3 [debug] Setting build mode: latex [debug] method=visit_para [debug] method=visit_para [debug] method=visit_sect1 [debug] visit_sect id(Runtime_Parameter_System_1reading_params) title(Getting parameters into MOM6) [debug] method=visit_title [debug] method=visit_para [debug] method=visit_para [debug] method=visit_orderedlist [debug] method=visit_listitem [debug] listitem indent = 0 [debug] method=visit_para [debug] method=visit_computeroutput [debug] method=visit_listitem [debug] listitem indent = 0 [debug] method=visit_para [debug] method=visit_sect2 [debug] visit_sect id(Runtime_Parameter_System_1mom6_namelist) title(Namelist parameters (`input.nml`)) [debug] method=visit_title [debug] method=visit_para [debug] method=visit_computeroutput [debug] method=visit_computeroutput [debug] method=visit_itemizedlist [debug] method=visit_listitem [debug] listitem indent = 0 [debug] method=visit_para [debug] method=visit_computeroutput [debug] method=visit_listitem [debug] listitem indent = 0 [debug] method=visit_para [debug] method=visit_computeroutput [debug] method=visit_computeroutput [debug] method=visit_listitem [debug] listitem indent = 0 [debug] method=visit_para [debug] method=visit_computeroutput [debug] method=visit_computeroutput [debug] method=visit_computeroutput [debug] method=visit_sect2 [debug] visit_sect id(Runtime_Parameter_System_1fms_params) title(Other MOM6-relevant FMS parameters) [debug] method=visit_title [debug] method=visit_para [debug] method=visit_sect2 [debug] visit_sect id(Runtime_Parameter_System_1param_syntax) title(MOM6 parameter file syntax) [debug] method=visit_title [debug] method=visit_para [debug] method=visit_programlisting [debug] method=visit_para [debug] method=visit_computeroutput [debug] method=visit_computeroutput [debug] method=visit_para [debug] method=visit_para [debug] method=visit_bold [debug] method=visit_para [debug] method=visit_programlisting [debug] method=visit_sect2 [debug] visit_sect id(Runtime_Parameter_System_1param_logging) title(Logging of parameters) [debug] method=visit_title [debug] method=visit_para [debug] method=visit_computeroutput [debug] method=visit_programlisting [debug] method=visit_para [debug] method=visit_computeroutput [debug] method=visit_para [debug] method=visit_itemizedlist [debug] method=visit_listitem [debug] listitem indent = 0 [debug] method=visit_para [debug] method=visit_listitem [debug] listitem indent = 0 [debug] method=visit_para [debug] method=visit_para [debug] method=visit_para [debug] method=visit_sect2 [debug] visit_sect id(Runtime_Parameter_System_1param_checking) title(Error checking of parameters and parameter files) [debug] method=visit_title [debug] method=visit_para [debug] method=visit_para [debug] method=visit_itemizedlist [debug] method=visit_listitem [debug] listitem indent = 0 [debug] method=visit_para [debug] method=visit_listitem [debug] listitem indent = 0 [debug] method=visit_para [debug] method=visit_listitem [debug] listitem indent = 0 [debug] method=visit_para [debug] method=visit_listitem [debug] listitem indent = 0 [debug] method=visit_para [debug] checking path: /home/cermak/src/MOM6/docs/api/generated/pages [debug] template:doxypage.rst kind: page obj.items():[('id', 'Sea_Ice'), ('kind', 'page')] [debug] xml parsing for Sea_Ice [debug] verbosity = 3 [debug] Setting build mode: latex [debug] method=visit_para [debug] method=visit_sect1 [debug] visit_sect id(Sea_Ice_1Frazil) title(Ice Formation) [debug] method=visit_title [debug] checking path: /home/cermak/src/MOM6/docs/api/generated/pages [debug] template:doxypage.rst kind: page obj.items():[('id', 'Solar_Radiation'), ('kind', 'page')] [debug] xml parsing for Solar_Radiation [debug] verbosity = 3 [debug] Setting build mode: latex [debug] method=visit_para [debug] method=visit_sect1 [debug] visit_sect id(Solar_Radiation_1Jerlov_WT) title(Jerlov water type) [debug] method=visit_title [debug] method=visit_sect1 [debug] visit_sect id(Solar_Radiation_1Chl_Absorb) title(Absorption by Chlorophyll) [debug] method=visit_title [debug] checking path: /home/cermak/src/MOM6/docs/api/generated/pages [debug] template:doxypage.rst kind: page obj.items():[('id', 'Specifics'), ('kind', 'page')] [debug] xml parsing for Specifics [debug] verbosity = 3 [debug] Setting build mode: latex [debug] method=visit_para [debug] method=visit_para [debug] method=visit_ref [debug] refid(General_Coordinate) kindref(compound) ref([]) [debug] ref([('id', 'General_Coordinate'), ('kind', 'page')]) [debug] method=visit_sect1 [debug] visit_sect id(Specifics_1Horiz_mom_eq) title(Horizontal Momentum Equation) [debug] method=visit_title [debug] method=visit_para [debug] method=visit_formula [debug] method=visit_formula [debug] method=visit_formula [debug] method=visit_formula [debug] method=visit_formula [debug] method=visit_ref [debug] refid(citelist_1CITEREF_sadourny1975) kindref(member) ref([]) [debug] method=visit_formula [debug] method=visit_formula [debug] method=visit_formula [debug] method=visit_formula [debug] method=visit_formula [debug] method=visit_formula [debug] method=visit_para [debug] method=visit_formula [debug] method=visit_ref [debug] refid(citelist_1CITEREF_SMGbook) kindref(member) ref([]) [debug] method=visit_formula [debug] method=visit_formula [debug] method=visit_formula [debug] method=visit_formula [debug] method=visit_formula [debug] method=visit_formula [debug] method=visit_formula [debug] method=visit_para [debug] method=visit_ref [debug] refid(citelist_1CITEREF_griffies2000) kindref(member) ref([]) [debug] method=visit_formula [debug] method=visit_sect1 [debug] visit_sect id(Specifics_1hydrostatic_balance) title(Hydrostatic balance) [debug] method=visit_title [debug] method=visit_para [debug] method=visit_ref [debug] refid(citelist_1CITEREF_adcroft2008) kindref(member) ref([]) [debug] method=visit_ref [debug] refid(citelist_1CITEREF_bleck2002) kindref(member) ref([]) [debug] method=visit_sect1 [debug] visit_sect id(Specifics_1Thickness_and_tracer) title(Thickness and tracer equations) [debug] method=visit_title [debug] method=visit_para [debug] method=visit_formula [debug] method=visit_formula [debug] method=visit_formula [debug] method=visit_formula [debug] method=visit_formula [debug] method=visit_formula [debug] method=visit_ref [debug] refid(citelist_1CITEREF_colella1984) kindref(member) ref([]) [debug] method=visit_para [debug] method=visit_formula [debug] method=visit_formula [debug] method=visit_formula [debug] method=visit_formula [debug] method=visit_para [debug] method=visit_ref [debug] refid(citelist_1CITEREF_fox-kemper2011) kindref(member) ref([]) [debug] method=visit_ref [debug] refid(citelist_1CITEREF_gent1995) kindref(member) ref([]) [debug] method=visit_ref [debug] refid(citelist_1CITEREF_mcdougall2001) kindref(member) ref([]) [debug] method=visit_sect1 [debug] visit_sect id(Specifics_1EOS) title(Equation of state) [debug] method=visit_title [debug] method=visit_para [debug] method=visit_emphasis [debug] method=visit_formula [debug] method=visit_ref [debug] refid(citelist_1CITEREF_GVbook) kindref(member) ref([]) [debug] method=visit_ref [debug] refid(citelist_1CITEREF_wright1997) kindref(member) ref([]) [debug] method=visit_formula [debug] method=visit_formula [debug] method=visit_ref [debug] refid(citelist_1CITEREF_TEOS2010) kindref(member) ref([]) [debug] method=visit_ref [debug] refid(citelist_1CITEREF_wright1997) kindref(member) ref([]) [debug] method=visit_para [debug] method=visit_formula [debug] method=visit_formula [debug] method=visit_formula [debug] method=visit_formula [debug] checking path: /home/cermak/src/MOM6/docs/api/generated/pages [debug] template:doxypage.rst kind: page obj.items():[('id', 'Testing'), ('kind', 'page')] [debug] xml parsing for Testing [debug] verbosity = 3 [debug] Setting build mode: latex [debug] method=visit_para [debug] method=visit_para [debug] method=visit_para [debug] method=visit_itemizedlist [debug] method=visit_listitem [debug] listitem indent = 0 [debug] method=visit_para [debug] method=visit_listitem [debug] listitem indent = 0 [debug] method=visit_para [debug] method=visit_listitem [debug] listitem indent = 0 [debug] method=visit_para [debug] method=visit_listitem [debug] listitem indent = 0 [debug] method=visit_para [debug] method=visit_para [debug] method=visit_itemizedlist [debug] method=visit_listitem [debug] listitem indent = 0 [debug] method=visit_para [debug] method=visit_listitem [debug] listitem indent = 0 [debug] method=visit_para [debug] method=visit_listitem [debug] listitem indent = 0 [debug] method=visit_para [debug] method=visit_listitem [debug] listitem indent = 0 [debug] method=visit_para [debug] method=visit_sect1 [debug] visit_sect id(Testing_1Travis) title(Travis Testing) [debug] method=visit_title [debug] method=visit_para [debug] method=visit_simplesect [debug] simplesect kind(see) [debug] method=visit_para [debug] method=visit_sect1 [debug] visit_sect id(Testing_1Consortium_testing) title(Consortium Testing) [debug] method=visit_title [debug] method=visit_para [debug] method=visit_para [debug] method=visit_image [debug] method=visit_image [debug] image type(latex) mode(latex) [debug] caption text(The MOM6 consortium.) [debug] method=visit_sect1 [debug] visit_sect id(Testing_1Novel_tests) title(Novel Tests) [debug] method=visit_title [debug] method=visit_para [debug] method=visit_sect2 [debug] visit_sect id(Testing_1Scalings) title(Scaling tests) [debug] method=visit_title [debug] method=visit_para [debug] method=visit_para [debug] method=visit_formula [debug] method=visit_para [debug] method=visit_para [debug] method=visit_formula [debug] method=visit_para [debug] method=visit_table [debug] method=visit_para [debug] method=visit_para [debug] method=visit_para [debug] method=visit_para [debug] method=visit_para [debug] method=visit_para [debug] method=visit_para [debug] method=visit_para [debug] method=visit_para [debug] method=visit_para [debug] method=visit_para [debug] method=visit_para [debug] method=visit_para [debug] method=visit_para [debug] method=visit_para [debug] method=visit_para [debug] method=visit_para [debug] method=visit_para [debug] method=visit_para [debug] method=visit_para [debug] method=visit_para [debug] method=visit_para [debug] method=visit_para [debug] method=visit_programlisting [debug] method=visit_para [debug] method=visit_programlisting [debug] method=visit_para [debug] method=visit_programlisting [debug] method=visit_simplesect [debug] simplesect kind(see) [debug] method=visit_para [debug] method=visit_ref [debug] refid(namespacemom__unit__scaling) kindref(compound) ref([]) [debug] ref([('id', 'namespacemom__unit__scaling'), ('kind', 'namespace'), ('language', 'Fortran')]) [debug] kind(namespace) real_name() node_name(None) [debug] method=visit_sect2 [debug] visit_sect id(Testing_1Rotations) title(Rotational tests) [debug] method=visit_title [debug] method=visit_para [debug] method=visit_para [debug] method=visit_image [debug] method=visit_image [debug] image type(latex) mode(latex) [debug] caption text(The original non-rotated domain is shown on the left while the right shows the domain rotated counterclockwise by 90 degrees. The array values are shown by the (invariant) colors, while the array indices (and dimensions) change.) [debug] method=visit_para [debug] method=visit_para [debug] method=visit_formula [debug] method=visit_para [debug] method=visit_para [debug] method=visit_image [debug] method=visit_formula [debug] method=visit_para [debug] method=visit_image [debug] method=visit_formula [debug] checking path: /home/cermak/src/MOM6/docs/api/generated/pages [debug] template:doxypage.rst kind: page obj.items():[('id', 'Time_Filtering'), ('kind', 'page')] [debug] xml parsing for Time_Filtering [debug] verbosity = 3 [debug] Setting build mode: latex [debug] method=visit_para [debug] checking path: /home/cermak/src/MOM6/docs/api/generated/pages [debug] template:doxypage.rst kind: page obj.items():[('id', 'Tracer_Advection'), ('kind', 'page')] [debug] xml parsing for Tracer_Advection [debug] verbosity = 3 [debug] Setting build mode: latex [debug] method=visit_para [debug] method=visit_para [debug] method=visit_ref [debug] refid(citelist_1CITEREF_easter1993) kindref(member) ref([]) [debug] method=visit_ref [debug] refid(citelist_1CITEREF_colella1984) kindref(member) ref([]) [debug] method=visit_ref [debug] refid(citelist_1CITEREF_huynh1997) kindref(member) ref([]) [debug] method=visit_sect1 [debug] visit_sect id(Tracer_Advection_1Flux_advection) title(Flux advection) [debug] method=visit_title [debug] method=visit_para [debug] method=visit_sect1 [debug] visit_sect id(Tracer_Advection_1Tracer_reconstruction) title(Tracer reconstruction) [debug] method=visit_title [debug] method=visit_para [debug] method=visit_para [debug] method=visit_ref [debug] refid(citelist_1CITEREF_lin1994) kindref(member) ref([]) [debug] method=visit_formula [debug] method=visit_formula [debug] method=visit_para [debug] method=visit_ref [debug] refid(PPM) kindref(compound) ref([]) [debug] ref([('id', 'PPM'), ('kind', 'page')]) [debug] method=visit_formula [debug] method=visit_formula [debug] method=visit_formula [debug] method=visit_formula [debug] method=visit_formula [debug] method=visit_formula [debug] method=visit_formula [debug] method=visit_para [debug] method=visit_formula [debug] method=visit_para [debug] method=visit_itemizedlist [debug] method=visit_listitem [debug] listitem indent = 0 [debug] method=visit_para [debug] method=visit_formula [debug] method=visit_listitem [debug] listitem indent = 0 [debug] method=visit_para [debug] method=visit_formula [debug] method=visit_listitem [debug] listitem indent = 0 [debug] method=visit_para [debug] method=visit_formula [debug] method=visit_para [debug] method=visit_formula [debug] method=visit_formula [debug] checking path: /home/cermak/src/MOM6/docs/api/generated/pages [debug] template:doxypage.rst kind: page obj.items():[('id', 'Tracer_Fluxes'), ('kind', 'page')] [debug] xml parsing for Tracer_Fluxes [debug] verbosity = 3 [debug] Setting build mode: latex [debug] method=visit_para [debug] method=visit_sect1 [debug] visit_sect id(Tracer_Fluxes_1Tracer_Fluxes) title(Tracer Fluxes) [debug] method=visit_title [debug] method=visit_sect1 [debug] visit_sect id(Tracer_Fluxes_1River_Runoff) title(River Runoff) [debug] method=visit_title [debug] method=visit_sect1 [debug] visit_sect id(Tracer_Fluxes_1Ice_Runoff) title(Ice Runoff) [debug] method=visit_title [debug] checking path: /home/cermak/src/MOM6/docs/api/generated/pages [debug] template:doxypage.rst kind: page obj.items():[('id', 'Tracer_Timestep'), ('kind', 'page')] [debug] xml parsing for Tracer_Timestep [debug] verbosity = 3 [debug] Setting build mode: latex [debug] method=visit_para [debug] method=visit_para [debug] method=visit_para [debug] method=visit_formula [debug] method=visit_para [debug] method=visit_formula [debug] method=visit_para [debug] method=visit_formula [debug] method=visit_para [debug] method=visit_ref [debug] refid(Horizontal_Diffusion) kindref(compound) ref([]) [debug] ref([('id', 'Horizontal_Diffusion'), ('kind', 'page')]) [debug] checking path: /home/cermak/src/MOM6/docs/api/generated/pages [debug] template:doxypage.rst kind: page obj.items():[('id', 'Tracer_Transport_Equations'), ('kind', 'page')] [debug] xml parsing for Tracer_Transport_Equations [debug] verbosity = 3 [debug] Setting build mode: latex [debug] method=visit_para [debug] method=visit_para [debug] method=visit_image [debug] method=visit_image [debug] image type(latex) mode(latex) [debug] caption text(The 1-D finite volume advection of tracers. The reddish fluid will be in the cell at the end of the timestep.) [debug] method=visit_para [debug] method=visit_formula [debug] method=visit_para [debug] method=visit_para [debug] method=visit_formula [debug] method=visit_formula [debug] method=visit_formula [debug] method=visit_formula [debug] method=visit_para [debug] method=visit_sect1 [debug] visit_sect id(Tracer_Transport_Equations_1Multidimensional_Tracer_Advection) title(Multidimensional Tracer Advection) [debug] method=visit_title [debug] method=visit_para [debug] method=visit_formula [debug] method=visit_para [debug] method=visit_anchor [debug] anchor id(Tracer_Transport_Equations_1ht-equation) [debug] method=visit_formula [debug] method=visit_para [debug] method=visit_formula [debug] method=visit_para [debug] method=visit_formula [debug] method=visit_para [debug] method=visit_para [debug] method=visit_formula [debug] method=visit_para [debug] method=visit_para [debug] method=visit_formula [debug] method=visit_para [debug] method=visit_formula [debug] method=visit_para [debug] method=visit_formula [debug] method=visit_para [debug] method=visit_formula [debug] method=visit_para [debug] method=visit_formula [debug] method=visit_para [debug] method=visit_formula [debug] method=visit_para [debug] method=visit_formula [debug] method=visit_para [debug] method=visit_formula [debug] method=visit_para [debug] method=visit_formula [debug] method=visit_para [debug] method=visit_itemizedlist [debug] method=visit_listitem [debug] listitem indent = 0 [debug] method=visit_para [debug] method=visit_ref [debug] refid(citelist_1CITEREF_easter1993) kindref(member) ref([]) [debug] method=visit_ref [debug] refid(citelist_1CITEREF_durran2010) kindref(member) ref([]) [debug] method=visit_ref [debug] refid(citelist_1CITEREF_russell1981) kindref(member) ref([]) [debug] method=visit_itemizedlist [debug] method=visit_listitem [debug] listitem indent = 0 [debug] method=visit_para [debug] method=visit_itemizedlist [debug] method=visit_listitem [debug] listitem indent = 0 [debug] method=visit_para [debug] method=visit_itemizedlist [debug] method=visit_listitem [debug] listitem indent = 0 [debug] method=visit_para [debug] method=visit_itemizedlist [debug] method=visit_listitem [debug] listitem indent = 0 [debug] method=visit_para [debug] checking path: /home/cermak/src/MOM6/docs/api/generated/pages [debug] template:doxypage.rst kind: page obj.items():[('id', 'Vertical_Diffusion'), ('kind', 'page')] [debug] xml parsing for Vertical_Diffusion [debug] verbosity = 3 [debug] Setting build mode: latex [debug] method=visit_para [debug] method=visit_para [debug] checking path: /home/cermak/src/MOM6/docs/api/generated/pages [debug] template:doxypage.rst kind: page obj.items():[('id', 'Vertical_Grids'), ('kind', 'page')] [debug] xml parsing for Vertical_Grids [debug] verbosity = 3 [debug] Setting build mode: latex [debug] method=visit_para [debug] method=visit_sect1 [debug] visit_sect id(Vertical_Grids_1vert_layer) title(Layered) [debug] method=visit_title [debug] method=visit_sect1 [debug] visit_sect id(Vertical_Grids_1vert_z_star) title(Z-Star) [debug] method=visit_title [debug] method=visit_sect1 [debug] visit_sect id(Vertical_Grids_1vert_sigma) title(Sigma) [debug] method=visit_title [debug] method=visit_sect1 [debug] visit_sect id(Vertical_Grids_1vert_rho) title(Rho) [debug] method=visit_title [debug] method=visit_sect1 [debug] visit_sect id(Vertical_Grids_1vert_hybrid) title(Hybrid) [debug] method=visit_title [debug] checking path: /home/cermak/src/MOM6/docs/api/generated/pages [debug] template:doxypage.rst kind: page obj.items():[('id', 'citelist'), ('kind', 'page')] [debug] xml parsing for citelist [debug] verbosity = 3 [debug] Setting build mode: latex [debug] method=visit_para [debug] method=visit_variablelist [debug] method=visit_varlistentry [debug] method=visit_term [debug] method=visit_anchor [debug] anchor id(_1CITEREF_adcroft2006) [debug] method=visit_listitem [debug] listitem indent = -1 [debug] method=visit_para [debug] method=visit_ulink [debug] method=visit_emphasis [debug] method=visit_ndash [debug] method=visit_para [debug] method=visit_varlistentry [debug] method=visit_term [debug] method=visit_anchor [debug] anchor id(_1CITEREF_adcroft2008) [debug] method=visit_listitem [debug] listitem indent = -1 [debug] method=visit_para [debug] method=visit_ulink [debug] method=visit_emphasis [debug] method=visit_ndash [debug] method=visit_para [debug] method=visit_varlistentry [debug] method=visit_term [debug] method=visit_anchor [debug] anchor id(_1CITEREF_arakawa1990) [debug] method=visit_listitem [debug] listitem indent = -1 [debug] method=visit_para [debug] method=visit_nonbreakablespace [debug] method=visit_emphasis [debug] method=visit_ndash [debug] method=visit_para [debug] method=visit_varlistentry [debug] method=visit_term [debug] method=visit_anchor [debug] anchor id(_1CITEREF_arakawa1981) [debug] method=visit_listitem [debug] listitem indent = -1 [debug] method=visit_para [debug] method=visit_nonbreakablespace [debug] method=visit_ulink [debug] method=visit_emphasis [debug] method=visit_ndash [debug] method=visit_para [debug] method=visit_varlistentry [debug] method=visit_term [debug] method=visit_anchor [debug] anchor id(_1CITEREF_bleck1990) [debug] method=visit_listitem [debug] listitem indent = -1 [debug] method=visit_para [debug] method=visit_nonbreakablespace [debug] method=visit_emphasis [debug] method=visit_ndash [debug] method=visit_para [debug] method=visit_varlistentry [debug] method=visit_term [debug] method=visit_anchor [debug] anchor id(_1CITEREF_bleck2002) [debug] method=visit_listitem [debug] listitem indent = -1 [debug] method=visit_para [debug] method=visit_ulink [debug] method=visit_emphasis [debug] method=visit_ndash [debug] method=visit_para [debug] method=visit_varlistentry [debug] method=visit_term [debug] method=visit_anchor [debug] anchor id(_1CITEREF_carpenter1990) [debug] method=visit_listitem [debug] listitem indent = -1 [debug] method=visit_para [debug] method=visit_nonbreakablespace [debug] method=visit_nonbreakablespace [debug] method=visit_nonbreakablespace [debug] method=visit_nonbreakablespace [debug] method=visit_emphasis [debug] method=visit_ndash [debug] method=visit_para [debug] method=visit_varlistentry [debug] method=visit_term [debug] method=visit_anchor [debug] anchor id(_1CITEREF_colella1984) [debug] method=visit_listitem [debug] listitem indent = -1 [debug] method=visit_para [debug] method=visit_nonbreakablespace [debug] method=visit_ulink [debug] method=visit_emphasis [debug] method=visit_ndash [debug] method=visit_para [debug] method=visit_varlistentry [debug] method=visit_term [debug] method=visit_anchor [debug] anchor id(_1CITEREF_dukowicz2000) [debug] method=visit_listitem [debug] listitem indent = -1 [debug] method=visit_para [debug] method=visit_nonbreakablespace [debug] method=visit_nonbreakablespace [debug] method=visit_ulink [debug] method=visit_emphasis [debug] method=visit_ndash [debug] method=visit_para [debug] method=visit_varlistentry [debug] method=visit_term [debug] method=visit_anchor [debug] anchor id(_1CITEREF_durran2010) [debug] method=visit_listitem [debug] listitem indent = -1 [debug] method=visit_para [debug] method=visit_nonbreakablespace [debug] method=visit_emphasis [debug] method=visit_para [debug] method=visit_varlistentry [debug] method=visit_term [debug] method=visit_anchor [debug] anchor id(_1CITEREF_easter1993) [debug] method=visit_listitem [debug] listitem indent = -1 [debug] method=visit_para [debug] method=visit_nonbreakablespace [debug] method=visit_emphasis [debug] method=visit_ndash [debug] method=visit_para [debug] method=visit_varlistentry [debug] method=visit_term [debug] method=visit_anchor [debug] anchor id(_1CITEREF_fox-kemper2011) [debug] method=visit_listitem [debug] listitem indent = -1 [debug] method=visit_para [debug] method=visit_nonbreakablespace [debug] method=visit_nonbreakablespace [debug] method=visit_nonbreakablespace [debug] method=visit_nonbreakablespace [debug] method=visit_nonbreakablespace [debug] method=visit_nonbreakablespace [debug] method=visit_nonbreakablespace [debug] method=visit_nonbreakablespace [debug] method=visit_nonbreakablespace [debug] method=visit_ulink [debug] method=visit_emphasis [debug] method=visit_ndash [debug] method=visit_para [debug] method=visit_varlistentry [debug] method=visit_term [debug] method=visit_anchor [debug] anchor id(_1CITEREF_gent1995) [debug] method=visit_listitem [debug] listitem indent = -1 [debug] method=visit_para [debug] method=visit_nonbreakablespace [debug] method=visit_nonbreakablespace [debug] method=visit_nonbreakablespace [debug] method=visit_ulink [debug] method=visit_emphasis [debug] method=visit_ndash [debug] method=visit_para [debug] method=visit_varlistentry [debug] method=visit_term [debug] method=visit_anchor [debug] anchor id(_1CITEREF_griffies2000) [debug] method=visit_listitem [debug] listitem indent = -1 [debug] method=visit_para [debug] method=visit_nonbreakablespace [debug] method=visit_nonbreakablespace [debug] method=visit_ulink [debug] method=visit_emphasis [debug] method=visit_ndash [debug] method=visit_para [debug] method=visit_varlistentry [debug] method=visit_term [debug] method=visit_anchor [debug] anchor id(_1CITEREF_griffies2000-2) [debug] method=visit_listitem [debug] listitem indent = -1 [debug] method=visit_para [debug] method=visit_nonbreakablespace [debug] method=visit_oumlaut [debug] method=visit_nonbreakablespace [debug] method=visit_nonbreakablespace [debug] method=visit_ulink [debug] method=visit_emphasis [debug] method=visit_ndash [debug] method=visit_para [debug] method=visit_varlistentry [debug] method=visit_term [debug] method=visit_anchor [debug] anchor id(_1CITEREF_SMGbook) [debug] method=visit_listitem [debug] listitem indent = -1 [debug] method=visit_para [debug] method=visit_nonbreakablespace [debug] method=visit_emphasis [debug] method=visit_para [debug] method=visit_varlistentry [debug] method=visit_term [debug] method=visit_anchor [debug] anchor id(_1CITEREF_hallberg2009) [debug] method=visit_listitem [debug] listitem indent = -1 [debug] method=visit_para [debug] method=visit_ulink [debug] method=visit_emphasis [debug] method=visit_ndash [debug] method=visit_para [debug] method=visit_varlistentry [debug] method=visit_term [debug] method=visit_anchor [debug] anchor id(_1CITEREF_hallberg1997a) [debug] method=visit_listitem [debug] listitem indent = -1 [debug] method=visit_para [debug] method=visit_emphasis [debug] method=visit_ndash [debug] method=visit_para [debug] method=visit_varlistentry [debug] method=visit_term [debug] method=visit_anchor [debug] anchor id(_1CITEREF_hallberg2005) [debug] method=visit_listitem [debug] listitem indent = -1 [debug] method=visit_para [debug] method=visit_emphasis [debug] method=visit_para [debug] method=visit_varlistentry [debug] method=visit_term [debug] method=visit_anchor [debug] anchor id(_1CITEREF_hirt1997) [debug] method=visit_listitem [debug] listitem indent = -1 [debug] method=visit_para [debug] method=visit_nonbreakablespace [debug] method=visit_nonbreakablespace [debug] method=visit_nonbreakablespace [debug] method=visit_ulink [debug] method=visit_emphasis [debug] method=visit_ndash [debug] method=visit_para [debug] method=visit_varlistentry [debug] method=visit_term [debug] method=visit_anchor [debug] anchor id(_1CITEREF_huynh1997) [debug] method=visit_listitem [debug] listitem indent = -1 [debug] method=visit_para [debug] method=visit_nonbreakablespace [debug] method=visit_emphasis [debug] method=visit_para [debug] method=visit_varlistentry [debug] method=visit_term [debug] method=visit_anchor [debug] anchor id(_1CITEREF_TEOS2010) [debug] method=visit_listitem [debug] listitem indent = -1 [debug] method=visit_para [debug] method=visit_emphasis [debug] method=visit_orderedlist [debug] method=visit_listitem [debug] listitem indent = 0 [debug] method=visit_para [debug] method=visit_para [debug] method=visit_varlistentry [debug] method=visit_term [debug] method=visit_anchor [debug] anchor id(_1CITEREF_jackett1995) [debug] method=visit_listitem [debug] listitem indent = -1 [debug] method=visit_para [debug] method=visit_nonbreakablespace [debug] method=visit_nonbreakablespace [debug] method=visit_emphasis [debug] method=visit_ndash [debug] method=visit_para [debug] method=visit_varlistentry [debug] method=visit_term [debug] method=visit_anchor [debug] anchor id(_1CITEREF_large1994) [debug] method=visit_listitem [debug] listitem indent = -1 [debug] method=visit_para [debug] method=visit_nonbreakablespace [debug] method=visit_nonbreakablespace [debug] method=visit_nonbreakablespace [debug] method=visit_ulink [debug] method=visit_emphasis [debug] method=visit_ndash [debug] method=visit_para [debug] method=visit_varlistentry [debug] method=visit_term [debug] method=visit_anchor [debug] anchor id(_1CITEREF_lin1994) [debug] method=visit_listitem [debug] listitem indent = -1 [debug] method=visit_para [debug] method=visit_nonbreakablespace [debug] method=visit_nonbreakablespace [debug] method=visit_nonbreakablespace [debug] method=visit_emphasis [debug] method=visit_ndash [debug] method=visit_para [debug] method=visit_varlistentry [debug] method=visit_term [debug] method=visit_anchor [debug] anchor id(_1CITEREF_mcdougall2001) [debug] method=visit_listitem [debug] listitem indent = -1 [debug] method=visit_para [debug] method=visit_nonbreakablespace [debug] method=visit_nonbreakablespace [debug] method=visit_ulink [debug] method=visit_emphasis [debug] method=visit_ndash [debug] method=visit_para [debug] method=visit_varlistentry [debug] method=visit_term [debug] method=visit_anchor [debug] anchor id(_1CITEREF_millero1978) [debug] method=visit_listitem [debug] listitem indent = -1 [debug] method=visit_para [debug] method=visit_ulink [debug] method=visit_emphasis [debug] method=visit_nonbreakablespace [debug] method=visit_ndash [debug] method=visit_para [debug] method=visit_varlistentry [debug] method=visit_term [debug] method=visit_anchor [debug] anchor id(_1CITEREF_roquet2015) [debug] method=visit_listitem [debug] listitem indent = -1 [debug] method=visit_para [debug] method=visit_nonbreakablespace [debug] method=visit_nonbreakablespace [debug] method=visit_nonbreakablespace [debug] method=visit_nonbreakablespace [debug] method=visit_emphasis [debug] method=visit_ndash [debug] method=visit_para [debug] method=visit_varlistentry [debug] method=visit_term [debug] method=visit_anchor [debug] anchor id(_1CITEREF_russell1981) [debug] method=visit_listitem [debug] listitem indent = -1 [debug] method=visit_para [debug] method=visit_nonbreakablespace [debug] method=visit_nonbreakablespace [debug] method=visit_emphasis [debug] method=visit_ndash [debug] method=visit_para [debug] method=visit_varlistentry [debug] method=visit_term [debug] method=visit_anchor [debug] anchor id(_1CITEREF_sadourny1975) [debug] method=visit_listitem [debug] listitem indent = -1 [debug] method=visit_para [debug] method=visit_ulink [debug] method=visit_emphasis [debug] method=visit_ndash [debug] method=visit_para [debug] method=visit_varlistentry [debug] method=visit_term [debug] method=visit_anchor [debug] anchor id(_1CITEREF_shao2019-in-review) [debug] method=visit_listitem [debug] listitem indent = -1 [debug] method=visit_para [debug] method=visit_para [debug] method=visit_varlistentry [debug] method=visit_term [debug] method=visit_anchor [debug] anchor id(_1CITEREF_shchepetkin2005) [debug] method=visit_listitem [debug] listitem indent = -1 [debug] method=visit_para [debug] method=visit_nonbreakablespace [debug] method=visit_nonbreakablespace [debug] method=visit_emphasis [debug] method=visit_ndash [debug] method=visit_para [debug] method=visit_varlistentry [debug] method=visit_term [debug] method=visit_anchor [debug] anchor id(_1CITEREF_sun1999) [debug] method=visit_listitem [debug] listitem indent = -1 [debug] method=visit_para [debug] method=visit_emphasis [debug] method=visit_ndash [debug] method=visit_para [debug] method=visit_varlistentry [debug] method=visit_term [debug] method=visit_anchor [debug] anchor id(_1CITEREF_GVbook) [debug] method=visit_listitem [debug] listitem indent = -1 [debug] method=visit_para [debug] method=visit_nonbreakablespace [debug] method=visit_emphasis [debug] method=visit_para [debug] method=visit_varlistentry [debug] method=visit_term [debug] method=visit_anchor [debug] anchor id(_1CITEREF_white2008) [debug] method=visit_listitem [debug] listitem indent = -1 [debug] method=visit_para [debug] method=visit_ulink [debug] method=visit_emphasis [debug] method=visit_ndash [debug] method=visit_para [debug] method=visit_varlistentry [debug] method=visit_term [debug] method=visit_anchor [debug] anchor id(_1CITEREF_white2009) [debug] method=visit_listitem [debug] listitem indent = -1 [debug] method=visit_para [debug] method=visit_ulink [debug] method=visit_emphasis [debug] method=visit_ndash [debug] method=visit_para [debug] method=visit_varlistentry [debug] method=visit_term [debug] method=visit_anchor [debug] anchor id(_1CITEREF_wright1997) [debug] method=visit_listitem [debug] listitem indent = -1 [debug] method=visit_para [debug] method=visit_nonbreakablespace [debug] method=visit_ulink [debug] method=visit_emphasis [debug] method=visit_ndash [debug] method=visit_orderedlist [debug] method=visit_listitem [debug] listitem indent = 0 [debug] method=visit_para [debug] checking path: /home/cermak/src/MOM6/docs/api/generated/modules [debug] template:doxynamespace.rst kind: namespace obj.items():[('id', 'namespacemom'), ('kind', 'namespace'), ('language', 'Fortran')] [debug] checking path: /home/cermak/src/MOM6/docs/api/generated/modules [debug] template:doxynamespace.rst kind: namespace obj.items():[('id', 'namespacemom__ale'), ('kind', 'namespace'), ('language', 'Fortran')] [debug] checking path: /home/cermak/src/MOM6/docs/api/generated/modules [debug] template:doxynamespace.rst kind: namespace obj.items():[('id', 'namespacemom__eos'), ('kind', 'namespace'), ('language', 'Fortran')] [debug] checking path: /home/cermak/src/MOM6/docs/api/generated/modules [debug] template:doxynamespace.rst kind: namespace obj.items():[('id', 'namespacemom__ice__shelf'), ('kind', 'namespace'), ('language', 'Fortran')] [debug] checking path: /home/cermak/src/MOM6/docs/api/generated/modules [debug] template:doxynamespace.rst kind: namespace obj.items():[('id', 'namespacemom__meke'), ('kind', 'namespace'), ('language', 'Fortran')] [debug] checking path: /home/cermak/src/MOM6/docs/api/generated/modules [debug] template:doxynamespace.rst kind: namespace obj.items():[('id', 'namespacemom__unit__scaling'), ('kind', 'namespace'), ('language', 'Fortran')] [autosummary] generating autosummary for: api/modules.rst, api/pages.rst building [mo]: targets for 0 po files that are out of date building [latex]: all documents updating environment: [app] emitting event: 'env-get-outdated'(, {'code_organization', 'api/generate [new config] 66 added, 0 changed, 0 removed [app] emitting event: 'env-before-read-docs'(, ['about', 'advection', 'api/generat reading sources... [ 1%] about [app] emitting event: 'env-purge-doc'(, 'about') [app] emitting event: 'source-read'('about', ['About this documentation\n========================\n\nThis readthedocs site hosts the na [i18n] PATCH: 'docutils.nodes.term' to have rawsource: Download, compile and run [i18n] PATCH: 'docutils.nodes.term' to have rawsource: User guide [i18n] PATCH: 'docutils.nodes.term' to have rawsource: Repository policies [i18n] PATCH: 'docutils.nodes.term' to have rawsource: Developer guide [app] emitting event: 'doctree-read'(>,) reading sources... [ 3%] advection [app] emitting event: 'env-purge-doc'(, 'advection') [app] emitting event: 'source-read'('advection', ['Advection\n=========\n\nSome choices here...\n\n.. toctree::\n :maxdepth: 2\n\n [app] emitting event: 'doctree-read'(>,) reading sources... [ 4%] api/generated/modules/mom [app] emitting event: 'env-purge-doc'(, 'api/generated/modules/mom') [app] emitting event: 'source-read'('api/generated/modules/mom', ['.. autodoxymodule:: mom\n :members:\n :methods:\n :types:\n\n [autodoc] /home/cermak/src/MOM6/docs/api/generated/modules/mom.rst:1: input: .. autodoxymodule:: mom :members: :methods: :types: ---------- Data Types ---------- .. autodoxysummary:: :kind: type ~mom::mom_control_struct ~mom::mom_diag_ids --------------------- Functions/Subroutines --------------------- .. autodoxysummary:: :kind: func ~mom::step_mom ~mom::step_mom_dynamics ~mom::step_mom_tracer_dyn ~mom::step_mom_thermo ~mom::step_offline ~mom::initialize_mom ~mom::finish_mom_initialization ~mom::register_diags ~mom::mom_timing_init ~mom::set_restart_fields ~mom::adjust_ssh_for_p_atm ~mom::extract_surface_state ~mom::rotate_initial_state ~mom::mom_state_is_synchronized ~mom::get_mom_state_elements ~mom::get_ocean_stocks ~mom::mom_end [debug] xpath(./compounddef/compoundname[text()="mom"]/..) match([('id', 'namespacemom'), ('kind', 'namespace'), ('language', 'Fortran')]) [debug] add_title:mom module reference [debug] verbosity = 3 [debug] Setting build mode: latex [debug] method=visit_para [app] emitting event: 'autodoc-process-docstring'('doxymodule', 'mom', , {'members': , {'members': ]) [debug] ref([('id', 'MOM_8F90'), ('kind', 'file'), ('language', 'Fortran')]) [debug] method=visit_para [debug] method=visit_para [debug] method=visit_para [debug] method=visit_sect1 [debug] visit_sect id(namespacemom_1section_structure) title(Structure of MOM) [debug] method=visit_title [debug] method=visit_para [debug] method=visit_para [debug] method=visit_para [debug] method=visit_verbatim [debug] method=visit_para [debug] method=visit_para [debug] method=visit_para [debug] method=visit_itemizedlist [debug] method=visit_listitem [debug] listitem indent = 0 [debug] method=visit_para [debug] method=visit_listitem [debug] listitem indent = 0 [debug] method=visit_para [debug] method=visit_listitem [debug] listitem indent = 0 [debug] method=visit_para [debug] method=visit_para [debug] method=visit_para [debug] method=visit_listitem [debug] listitem indent = 0 [debug] method=visit_para [debug] method=visit_listitem [debug] listitem indent = 0 [debug] method=visit_para [debug] method=visit_listitem [debug] listitem indent = 0 [debug] method=visit_para [debug] method=visit_listitem [debug] listitem indent = 0 [debug] method=visit_para [debug] method=visit_listitem [debug] listitem indent = 0 [debug] method=visit_para [debug] method=visit_listitem [debug] listitem indent = 0 [debug] method=visit_para [debug] method=visit_listitem [debug] listitem indent = 0 [debug] method=visit_para [debug] method=visit_listitem [debug] listitem indent = 0 [debug] method=visit_para [debug] method=visit_listitem [debug] listitem indent = 0 [debug] method=visit_para [debug] method=visit_para [debug] method=visit_para [debug] method=visit_ref [debug] refid(MOM_8F90) kindref(compound) ref([]) [debug] ref([('id', 'MOM_8F90'), ('kind', 'file'), ('language', 'Fortran')]) [debug] method=visit_itemizedlist [debug] method=visit_listitem [debug] listitem indent = 0 [debug] method=visit_para [debug] method=visit_listitem [debug] listitem indent = 0 [debug] method=visit_para [debug] method=visit_listitem [debug] listitem indent = 0 [debug] method=visit_para [debug] method=visit_para [debug] method=visit_ref [debug] refid(MOM_8F90) kindref(compound) ref([]) [debug] ref([('id', 'MOM_8F90'), ('kind', 'file'), ('language', 'Fortran')]) [debug] method=visit_listitem [debug] listitem indent = 0 [debug] method=visit_para [debug] method=visit_listitem [debug] listitem indent = 0 [debug] method=visit_para [debug] method=visit_listitem [debug] listitem indent = 0 [debug] method=visit_para [debug] method=visit_listitem [debug] listitem indent = 0 [debug] method=visit_para [debug] method=visit_listitem [debug] listitem indent = 0 [debug] method=visit_para [debug] method=visit_sect1 [debug] visit_sect id(namespacemom_1section_heat_budget) title(Diagnosing MOM heat budget) [debug] method=visit_title [debug] method=visit_para [debug] method=visit_sect2 [debug] visit_sect id(namespacemom_1subsection_2d_heat_budget) title(Depth integrated heat budget) [debug] method=visit_title [debug] method=visit_para [debug] method=visit_para [debug] method=visit_itemizedlist [debug] method=visit_listitem [debug] listitem indent = 0 [debug] method=visit_para [debug] method=visit_listitem [debug] listitem indent = 0 [debug] method=visit_para [debug] method=visit_listitem [debug] listitem indent = 0 [debug] method=visit_para [debug] method=visit_listitem [debug] listitem indent = 0 [debug] method=visit_para [debug] method=visit_listitem [debug] listitem indent = 0 [debug] method=visit_para [debug] method=visit_listitem [debug] listitem indent = 0 [debug] method=visit_para [debug] method=visit_listitem [debug] listitem indent = 0 [debug] method=visit_para [debug] method=visit_itemizedlist [debug] method=visit_listitem [debug] listitem indent = 1 [debug] method=visit_para [debug] method=visit_listitem [debug] listitem indent = 1 [debug] method=visit_para [debug] method=visit_itemizedlist [debug] method=visit_listitem [debug] listitem indent = 2 [debug] method=visit_para [debug] method=visit_sect2 [debug] visit_sect id(namespacemom_1subsection_3d_heat_budget) title(Depth integrated heat budget) [debug] method=visit_title [debug] method=visit_para [debug] method=visit_para [debug] method=visit_itemizedlist [debug] method=visit_listitem [debug] listitem indent = 0 [debug] method=visit_para [debug] method=visit_itemizedlist [debug] method=visit_listitem [debug] listitem indent = 1 [debug] method=visit_para [debug] method=visit_listitem [debug] listitem indent = 0 [debug] method=visit_para [debug] method=visit_ref [debug] refid(MOM_8F90) kindref(compound) ref([]) [debug] ref([('id', 'MOM_8F90'), ('kind', 'file'), ('language', 'Fortran')]) [debug] method=visit_listitem [debug] listitem indent = 0 [debug] method=visit_para [debug] method=visit_listitem [debug] listitem indent = 0 [debug] method=visit_para [debug] method=visit_listitem [debug] listitem indent = 0 [debug] method=visit_para [debug] method=visit_listitem [debug] listitem indent = 0 [debug] method=visit_para [debug] method=visit_listitem [debug] listitem indent = 0 [debug] method=visit_para [debug] method=visit_listitem [debug] listitem indent = 0 [debug] method=visit_para [debug] method=visit_listitem [debug] listitem indent = 0 [debug] method=visit_para [debug] method=visit_listitem [debug] listitem indent = 0 [debug] method=visit_para [debug] method=visit_listitem [debug] listitem indent = 0 [debug] method=visit_para [debug] method=visit_listitem [debug] listitem indent = 0 [debug] method=visit_para [debug] method=visit_listitem [debug] listitem indent = 0 [debug] method=visit_para [debug] method=visit_listitem [debug] listitem indent = 0 [debug] method=visit_para [debug] method=visit_para [debug] method=visit_listitem [debug] listitem indent = 0 [debug] method=visit_para [debug] method=visit_para [debug] method=visit_listitem [debug] listitem indent = 0 [debug] method=visit_para [debug] method=visit_itemizedlist [debug] method=visit_listitem [debug] listitem indent = 1 [debug] method=visit_para [debug] method=visit_listitem [debug] listitem indent = 0 [debug] method=visit_para [debug] method=visit_ref [debug] refid(MOM_8F90) kindref(compound) ref([]) [debug] ref([('id', 'MOM_8F90'), ('kind', 'file'), ('language', 'Fortran')]) [debug] method=visit_listitem [debug] listitem indent = 0 [debug] method=visit_para [debug] method=visit_listitem [debug] listitem indent = 0 [debug] method=visit_para [debug] method=visit_listitem [debug] listitem indent = 0 [debug] method=visit_para [debug] method=visit_listitem [debug] listitem indent = 0 [debug] method=visit_para [debug] method=visit_listitem [debug] listitem indent = 0 [debug] method=visit_para [debug] method=visit_listitem [debug] listitem indent = 0 [debug] method=visit_para [debug] method=visit_listitem [debug] listitem indent = 0 [debug] method=visit_para [debug] method=visit_listitem [debug] listitem indent = 0 [debug] method=visit_para [debug] method=visit_listitem [debug] listitem indent = 0 [debug] method=visit_para [debug] method=visit_para [debug] method=visit_listitem [debug] listitem indent = 0 [debug] method=visit_para [app] emitting event: 'autodoc-process-docstring'('doxymodule', 'mom', , {'members': ), ('mom::mom_diag_ids', )]) [autodoc] module analyzer failed: error importing 'mom' (exception was: ModuleNotFoundError("No module named 'mom'")) [app] emitting event: 'autodoc-process-signature'('doxytype', 'mom::mom_control_struct', , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': ), ('step_mom_dynamics', ), ('step_mom_tracer_dyn', ), ('step_mom_thermo', ), ('step_offline', ), ('initialize_mom', ), ('finish_mom_initialization', ), ('register_diags', ), ('mom_timing_init', ), ('set_restart_fields', ), ('adjust_ssh_for_p_atm', ), ('extract_surface_state', ), ('rotate_initial_state', ), ('mom_state_is_synchronized', ), ('get_mom_state_elements', ), ('get_ocean_stocks', ), ('mom_end', )]) [autodoc] module analyzer failed: error importing 'mom' (exception was: ModuleNotFoundError("No module named 'mom'")) [debug] DoxygenMethodDocumenter format_signature called ((forces_in, fluxes_in, sfc_state, Time_start, time_int_in, CS, Waves, do_dynamics, do_thermodynamics, start_cycle, end_cycle, cycle_length, reset_therm)) [debug] add_directive_header sig((forces_in, fluxes_in, sfc_state, Time_start, time_int_in, CS, Waves, do_dynamics, do_thermodynamics, start_cycle, end_cycle, cycle_length, reset_therm)) [debug] DoxygenMethodDocumenter directive(subroutine) name(subroutine step_mom) [debug] verbosity = 3 [debug] Setting build mode: latex [debug] method=visit_para [debug] verbosity = 3 [debug] Setting build mode: latex [debug] method=visit_para [debug] method=visit_parameterlist [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'step_mom', , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': `_ ---------- Data Types ---------- .. autodoxysummary:: :kind: type ~mom::mom_control_struct ~mom::mom_diag_ids --------------------- Functions/Subroutines --------------------- .. autodoxysummary:: :kind: func ~mom::step_mom ~mom::step_mom_dynamics ~mom::step_mom_tracer_dyn ~mom::step_mom_thermo ~mom::step_offline ~mom::initialize_mom ~mom::finish_mom_initialization ~mom::register_diags ~mom::mom_timing_init ~mom::set_restart_fields ~mom::adjust_ssh_for_p_atm ~mom::extract_surface_state ~mom::rotate_initial_state ~mom::mom_state_is_synchronized ~mom::get_mom_state_elements ~mom::get_ocean_stocks ~mom::mom_end .. _DETAmom: -------------------- Detailed Description -------------------- Modular Ocean Model (MOM) Version 6.0 (MOM6) Additional contributions from: * Whit Anderson * Brian Arbic * Will Cooke * Anand Gnanadesikan * Matthew Harrison * Mehmet Ilicak * Laura Jackson * Jasmine John * John Krasting * Zhi Liang * Bonnie Samuels * Harper Simmons * Laurent White * Niki Zadeh MOM ice-shelf code was developed by * Daniel Goldberg * Robert Hallberg * Chris Little * Olga Sergienko .. _namespacemom_1section_overview: Overview of MOM =============== This program (MOM) simulates the ocean by numerically solving the hydrostatic primitive equations in generalized Lagrangian vertical coordinates, typically tracking stretched pressure (p*) surfaces or following isopycnals in the ocean's interior, and general orthogonal horizontal coordinates. Unlike earlier versions of MOM, in MOM6 these equations are horizontally discretized on an Arakawa C-grid. (It remains to be seen whether a B-grid dynamic core will be revived in MOM6 at a later date; for now applications requiring a B-grid discretization should use MOM5.1.) MOM6 offers a range of options for the physical parameterizations, from those most appropriate to highly idealized models for geophysical fluid dynamics studies to a rich suite of processes appropriate for realistic ocean simulations. The thermodynamic options typically use conservative temperature and preformed salinity as conservative state variables and a full nonlinear equation of state, but there are also idealized adiabatic configurations of the model that use fixed density layers. Version 6.0 of MOM continues in the long tradition of a commitment to climate-quality ocean simulations embodied in previous versions of MOM, even as it draws extensively on the lessons learned in the development of the Generalized Ocean Layered Dynamics (GOLD) ocean model, which was also primarily developed at NOAA/GFDL. MOM has also benefited tremendously from the FMS infrastructure, which it utilizes and shares with other component models developed at NOAA/GFDL. When run is isopycnal-coordinate mode, the uppermost few layers are often used to describe a bulk mixed layer, including the effects of penetrating shortwave radiation. Either a split- explicit time stepping scheme or a non-split scheme may be used for the dynamics, while the time stepping may be split (and use different numbers of steps to cover the same interval) for the forcing, the thermodynamics, and for the dynamics. Most of the numerics are second order accurate in space. MOM can run with an absurdly thin minimum layer thickness. A variety of non-isopycnal vertical coordinate options are under development, but all exploit the advantages of a Lagrangian vertical coordinate, as discussed in detail by Adcroft and Hallberg (Ocean Modelling, 2006). Details of the numerics and physical parameterizations are provided in the appropriate source files. All of the available options are selected at run-time by parsing the input files, usually MOM_input and MOM_override, and the options choices are then documented for each run in MOM_param_docs. MOM6 integrates the equations forward in time in three distinct phases. In one phase, the dynamic equations for the velocities and layer thicknesses are advanced, capturing the propagation of external and internal inertia-gravity waves, Rossby waves, and other strictly adiabatic processes, including lateral stresses, vertical viscosity and momentum forcing, and interface height diffusion (commonly called Gent-McWilliams diffusion in depth- coordinate models). In the second phase, all tracers are advected and diffused along the layers. The third phase applies diabatic processes, vertical mixing of water properties, and perhaps vertical remapping to cause the layers to track the desired vertical coordinate. The present file (``MOM.F90`` ) orchestrates the main time stepping loops. One time integration option for the dynamics uses a split explicit time stepping scheme to rapidly step the barotropic pressure and velocity fields. The barotropic velocities are averaged over the baroclinic time step before they are used to advect thickness and determine the baroclinic accelerations. As described in Hallberg and Adcroft (2009), a barotropic correction is applied to the time-mean layer velocities to ensure that the sum of the layer transports agrees with the time-mean barotropic transport, thereby ensuring that the estimates of the free surface from the sum of the layer thicknesses agrees with the final free surface height as calculated by the barotropic solver. The barotropic and baroclinic velocities are kept consistent by recalculating the barotropic velocities from the baroclinic transports each time step. This scheme is described in Hallberg, 1997, J. Comp. Phys. 135, 54-65 and in Hallberg and Adcroft, 2009, Ocean Modelling, 29, 15-26. The other time integration options use non-split time stepping schemes based on the 3-step third order Runge-Kutta scheme described in Matsuno, 1966, J. Met. Soc. Japan, 44, 85-88, or on a two-step quasi-2nd order Runge-Kutta scheme. These are much slower than the split time-stepping scheme, but they are useful for providing a more robust solution for debugging cases where the more complicated split time-stepping scheme may be giving suspect solutions. There are a range of closure options available. Horizontal velocities are subject to a combination of horizontal biharmonic and Laplacian friction (based on a stress tensor formalism) and a vertical Fickian viscosity (perhaps using the kinematic viscosity of water). The horizontal viscosities may be constant, spatially varying or may be dynamically calculated using Smagorinsky's approach. A diapycnal diffusion of density and thermodynamic quantities is also allowed, but not required, as is horizontal diffusion of interface heights (akin to the Gent-McWilliams closure of geopotential coordinate models). The diapycnal mixing may use a fixed diffusivity or it may use the shear Richardson number dependent closure, like that described in Jackson et al. (JPO, 2008). When there is diapycnal diffusion, it applies to momentum as well. As this is in addition to the vertical viscosity, the vertical Prandtl always exceeds 1. A refined bulk-mixed layer is often used to describe the planetary boundary layer in realistic ocean simulations. MOM has a number of noteworthy debugging capabilities. Excessively large velocities are truncated and MOM will stop itself after a number of such instances to keep the model from crashing altogether. This is useful in diagnosing failures, or (by accepting some truncations) it may be useful for getting the model past the adjustment from an ill-balanced initial condition. In addition, all of the accelerations in the columns with excessively large velocities may be directed to a text file. Parallelization errors may be diagnosed using the DEBUG option, which causes extensive checksums to be written out along with comments indicating where in the algorithm the sums originate and what variable is being summed. The point where these checksums differ between runs is usually a good indication of where in the code the problem lies. All of the test cases provided with MOM are routinely tested to ensure that they give bitwise identical results regardless of the domain decomposition, or whether they use static or dynamic memory allocation. .. _namespacemom_1section_structure: Structure of MOM ================ About 115 other files of source code and 4 header files comprise the MOM code, although there are several hundred more files that make up the FMS infrastructure upon which MOM is built. Each of the MOM files contains comments documenting what it does, and most of the file names are fairly self-evident. In addition, all subroutines and data types are referenced via a module use, only statement, and the module names are consistent with the file names, so it is not too hard to find the source file for a subroutine. The typical MOM directory tree is as follows: :: ../MOM |-- config_src | |-- coupled_driver | |-- dynamic | `-- solo_driver |-- examples | |-- CM2G | |-- ... | `-- torus_advection_test `-- src |-- core |-- diagnostics |-- equation_of_state |-- framework |-- ice_shelf |-- initialization |-- parameterizations | |-- lateral | `-- vertical |-- tracer `-- user Rather than describing each file here, each directory contents will be described to give a broad overview of the MOM code structure. The directories under config_src contain files that are used for configuring the code, for instance for coupled or ocean-only runs. Only one or two of these directories are used in compiling any, particular run. * config_src/coupled_driver: The files here are used to couple MOM as a component in a larger run driven by the FMS coupler. This includes code that converts various forcing fields into the code structures and flux and unit conventions used by MOM, and converts the MOM surface fields back to the forms used by other FMS components. * config_src/dynamic: The only file here is the version of MOM_memory.h that is used for dynamic memory configurations of MOM. * config_src/solo_driver: The files here are include the _main driver that is used when MOM is configured as an ocean-only model, as well as the files that specify the surface forcing in this configuration. The directories under examples provide a large number of working configurations of MOM, along with reference solutions for several different compilers on GFDL's latest large computer. The versions of MOM_memory.h in these directories need not be used if dynamic memory allocation is desired, and the answers should be unchanged. The directories under src contain most of the MOM files. These files are used in every configuration using MOM. * src/core: The files here constitute the MOM dynamic core. This directory also includes files with the types that describe the model's lateral grid and have defined types that are shared across various MOM modules to allow for more succinct and flexible subroutine argument lists. * src/diagnostics: The files here calculate various diagnostics that are anciliary to the model itself. While most of these diagnostics do not directly affect the model's solution, there are some, like the calculation of the deformation radius, that are used in some of the process parameterizations. * src/equation_of_state: These files describe the physical properties of sea-water, including both the equation of state and when it freezes. * src/framework: These files provide infrastructure utilities for MOM. Many are simply wrappers for capabilities provided by FMS, although others provide capabilities (like the file_parser) that are unique to MOM. When MOM is adapted to use a modeling infrastructure distinct from FMS, most of the required changes are in this directory. * src/initialization: These are the files that are used to initialize the MOM grid or provide the initial physical state for MOM. These files are not intended to be modified, but provide a means for calling user-specific initialization code like the examples in src/user. * src/parameterizations/lateral: These files implement a number of quasi-lateral (along-layer) process parameterizations, including lateral viscosities, parameterizations of eddy effects, and the calculation of tidal forcing. * src/parameterizations/vertical: These files implement a number of vertical mixing or diabatic processes, including the effects of vertical viscosity and code to parameterize the planetary boundary layer. There is a separate driver that orchestrates this portion of the algorithm, and there is a diversity of parameterizations to be found here. * src/tracer: These files handle the lateral transport and diffusion of tracers, or are the code to implement various passive tracer packages. Additional tracer packages are readily accommodated. * src/user: These are either stub routines that a user could use to change the model's initial conditions or forcing, or are examples that implement specific test cases. These files can easily be hand edited to create new analytically specified configurations. Most simulations can be set up by modifying only the files MOM_input, and possibly one or two of the files in src/user. In addition, the diag_table (MOM_diag_table) will commonly be modified to tailor the output to the needs of the question at hand. The FMS utility mkmf works with a file called path_names to build an appropriate makefile, and path_names should be edited to reflect the actual location of the desired source code. There are 3 publicly visible subroutines in this file (``MOM.F90`` ). * step_MOM steps MOM over a specified interval of time. * MOM_initialize calls initialize and does other initialization that does not warrant user modification. * extract_surface_state determines the surface (bulk mixed layer if traditional isoycnal vertical coordinate) properties of the current model state and packages pointers to these fields into an exported structure. The remaining subroutines in this file (``src/core/MOM.F90`` ) are: * find_total_transport determines the barotropic mass transport. * register_diags registers many diagnostic fields for the dynamic solver, or of the main model variables. * MOM_timing_init initializes various CPU time clocks. * write_static_fields writes out various time-invariant fields. * set_restart_fields is used to specify those fields that are written to and read from the restart file. .. _namespacemom_1section_heat_budget: Diagnosing MOM heat budget ========================== Here are some example heat budgets for the ALE version of MOM6. .. _namespacemom_1subsection_2d_heat_budget: Depth integrated heat budget ---------------------------- Depth integrated heat budget diagnostic for MOM. * OPOTTEMPTEND_2d = T_ADVECTION_XY_2d + OPOTTEMPPMDIFF_2d + HFDS + HFGEOU * T_ADVECTION_XY_2d = horizontal advection * OPOTTEMPPMDIFF_2d = neutral diffusion * HFDS = net surface boundary heat flux * HFGEOU = geothermal heat flux * HFDS = net surface boundary heat flux entering the ocean = rsntds + rlntds + hfls + hfss + heat_pme + hfsifrazil * More heat flux cross-checks * hfds = net_heat_coupler + hfsifrazil + heat_pme * heat_pme = heat_content_surfwater = heat_content_massin + heat_content_massout = heat_content_fprec + heat_content_cond + heat_content_vprec * hfrunoffds + hfevapds + hfrainds .. _namespacemom_1subsection_3d_heat_budget: Depth integrated heat budget ---------------------------- Here is an example 3d heat budget diagnostic for MOM. * OPOTTEMPTEND = T_ADVECTION_XY + TH_TENDENCY_VERT_REMAP + OPOTTEMPDIFF + OPOTTEMPPMDIFF * BOUNDARY_FORCING_HEAT_TENDENCY + FRAZIL_HEAT_TENDENCY * OPOTTEMPTEND = net tendency of heat as diagnosed in ``MOM.F90`` * T_ADVECTION_XY = heating of a cell from lateral advection * TH_TENDENCY_VERT_REMAP = heating of a cell from vertical remapping * OPOTTEMPDIFF = heating of a cell from diabatic diffusion * OPOTTEMPPMDIFF = heating of a cell from neutral diffusion * BOUNDARY_FORCING_HEAT_TENDENCY = heating of cell from boundary fluxes * FRAZIL_HEAT_TENDENCY = heating of cell from frazil * TH_TENDENCY_VERT_REMAP has zero vertical sum, as it redistributes heat in vertical. * OPOTTEMPDIFF has zero vertical sum, as it redistributes heat in the vertical. * BOUNDARY_FORCING_HEAT_TENDENCY generally has 3d structure, with k > 1 contributions from penetrative shortwave, and from other fluxes for the case when layers are tiny, in which case MOM6 partitions tendencies into k > 1 layers. * FRAZIL_HEAT_TENDENCY generally has 3d structure, since MOM6 frazil calculation checks the full ocean column. * FRAZIL_HEAT_TENDENCY[k=@sum] = HFSIFRAZIL = column integrated frazil heating. * HFDS = FRAZIL_HEAT_TENDENCY[k=@sum] + BOUNDARY_FORCING_HEAT_TENDENCY[k=@sum] Here is an example 2d heat budget (depth summed) diagnostic for MOM. * OPOTTEMPTEND_2d = T_ADVECTION_XY_2d + OPOTTEMPPMDIFF_2d + HFDS Here is an example 3d salt budget diagnostic for MOM. * OSALTTEND = S_ADVECTION_XY + SH_TENDENCY_VERT_REMAP + OSALTDIFF + OSALTPMDIFF * BOUNDARY_FORCING_SALT_TENDENCY * OSALTTEND = net tendency of salt as diagnosed in ``MOM.F90`` * S_ADVECTION_XY = salt convergence to cell from lateral advection * SH_TENDENCY_VERT_REMAP = salt convergence to cell from vertical remapping * OSALTDIFF = salt convergence to cell from diabatic diffusion * OSALTPMDIFF = salt convergence to cell from neutral diffusion * BOUNDARY_FORCING_SALT_TENDENCY = salt convergence to cell from boundary fluxes * SH_TENDENCY_VERT_REMAP has zero vertical sum, as it redistributes salt in vertical. * OSALTDIFF has zero vertical sum, as it redistributes salt in the vertical. * BOUNDARY_FORCING_SALT_TENDENCY generally has 3d structure, with k > 1 contributions from the case when layers are tiny, in which case MOM6 partitions tendencies into k > 1 layers. * SFDSI = BOUNDARY_FORCING_SALT_TENDENCY[k=@sum] Here is an example 2d salt budget (depth summed) diagnostic for MOM. * OSALTTEND_2d = S_ADVECTION_XY_2d + OSALTPMDIFF_2d + SFDSI (+ SALT_FLUX_RESTORE) ------------------ Type Documentation ------------------ .. f:type:: mom_control_struct Control structure for the MOM module, including the variables that describe the state of the ocean. :typefield real(\: h [:, :), allocatable]: layer thickness [H ~> m or kg m-2] :typefield real(\: t [:, :), allocatable]: potential temperature [degC] :typefield real(\: s [:, :), allocatable]: salinity [ppt] :typefield real(\: u [:, :), allocatable]: zonal velocity component [L T-1 ~> m s-1] :typefield real(\: uh [:, :), allocatable]: uh = u * h * dy at u grid points [H L2 T-1 ~> m3 s-1 or kg s-1] :typefield real(\: uhtr [:, :), allocatable]: accumulated zonal thickness fluxes to advect tracers [H L2 ~> m3 or kg] :typefield real(\: v [:, :), allocatable]: meridional velocity [L T-1 ~> m s-1] :typefield real(\: vh [:, :), allocatable]: vh = v * h * dx at v grid points [H L2 T-1 ~> m3 s-1 or kg s-1] :typefield real(\: vhtr [:, :), allocatable]: accumulated meridional thickness fluxes to advect tracers [H L2 ~> m3 or kg] :typefield real(\: ssh_rint [:), allocatable]: A running time integral of the sea surface height [T m ~> s m]. :typefield real(\: ave_ssh_ibc [:), allocatable]: time-averaged (over a forcing time step) sea surface height with a correction for the inverse barometer [m] :typefield real(\: eta_av_bc [:), allocatable]: free surface height or column mass time averaged over the last baroclinic dynamics time step [H ~> m or kg m-2] :typefield real(\:,\:) hml [pointer]: active mixed layer depth [Z ~> m] :typefield real time_in_cycle: The running time of the current time-stepping cycle in calls that step the dynamics, and also the length of the time integral of ssh_rint [T ~> s]. :typefield real time_in_thermo_cycle: The running time of the current time-stepping cycle in calls that step the thermodynamics [T ~> s]. :typefield type(ocean_grid_type) g_in: Input grid metric. :typefield type(ocean_grid_type) g [pointer]: Model grid metric. :typefield logical rotate_index: True if index map is rotated. :typefield type(verticalgrid_type) gv [pointer]: structure containing vertical grid info :typefield type(unit_scale_type) us [pointer]: structure containing various unit conversion factors :typefield type(thermo_var_ptrs) tv: structure containing pointers to available thermodynamic fields :typefield real t_dyn_rel_adv: The time of the dynamics relative to tracer advection and lateral mixing [T ~> s], or equivalently the elapsed time since advectively updating the tracers. t_dyn_rel_adv is invariably positive and may span multiple coupling timesteps. :typefield real t_dyn_rel_thermo: The time of the dynamics relative to diabatic processes and remapping [T ~> s]. t_dyn_rel_thermo can be negative or positive depending on whether the diabatic processes are applied before or after the dynamics and may span multiple coupling timesteps. :typefield real t_dyn_rel_diag: The time of the diagnostics relative to diabatic processes and remapping [T ~> s]. t_dyn_rel_diag is always positive, since the diagnostics must lag. :typefield logical preadv_h_stored: If true, the thicknesses from before the advective cycle have been stored for use in diagnostics. :typefield type(diag_ctrl) diag: structure to regulate diagnostic output timing :typefield type(vertvisc_type) visc: structure containing vertical viscosities, bottom drag viscosities, and related fields :typefield type(meke_type) meke [pointer]: structure containing fields related to the Mesoscale Eddy Kinetic Energy :typefield logical adiabatic: If true, there are no diapycnal mass fluxes, and no calls to routines to calculate or apply diapycnal fluxes. :typefield logical diabatic_first: If true, apply diabatic and thermodynamic processes before time stepping the dynamics. :typefield logical use_ale_algorithm: If true, use the ALE algorithm rather than layered isopycnal/stacked shallow water mode. This logical is set by calling the function useRegridding() from the MOM_regridding module. :typefield logical offline_tracer_mode: If true, :typefield type(time_type) time [pointer]: pointer to the ocean clock :typefield real dt: (baroclinic) dynamics time step [T ~> s] :typefield real dt_therm: thermodynamics time step [T ~> s] :typefield logical thermo_spans_coupling: If true, thermodynamic and tracer time steps can span multiple coupled time steps. :typefield integer nstep_tot: The total number of dynamic timesteps tcaaken so far in this run segment. :typefield logical count_calls: If true, count the calls to step_MOM, rather than the number of dynamics steps in nstep_tot. :typefield logical debug: If true, write verbose checksums for debugging purposes. :typefield integer ntrunc: number u,v truncations since last call to write_energy :typefield integer cont_stencil: The stencil for thickness from the continuity solver. :typefield logical do_dynamics: If false, does not call step_MOM_dyn_*. This is an undocumented run-time flag that is fragile. :typefield logical split: If true, use the split time stepping scheme. :typefield logical use_rk2: If true, use RK2 instead of RK3 in unsplit mode (i.e., no split between barotropic and baroclinic). :typefield logical thickness_diffuse: If true, diffuse interface height w/ a diffusivity KHTH. :typefield logical thickness_diffuse_first: If true, diffuse thickness before dynamics. :typefield logical mixedlayer_restrat: If true, use submesoscale mixed layer restratifying scheme. :typefield logical usemeke: If true, call the MEKE parameterization. :typefield logical usewaves: If true, update Stokes drift. :typefield logical use_p_surf_in_eos: If true, always include the surface pressure contributions in equation of state calculations. :typefield real dtbt_reset_period: The time interval between dynamic recalculation of the barotropic time step [s]. If this is negative dtbt is never calculated, and if it is 0, dtbt is calculated every step. :typefield type(time_type) dtbt_reset_interval: A time_time representation of dtbt_reset_period. :typefield type(time_type) dtbt_reset_time: The next time DTBT should be calculated. :typefield real(\:,\:,\:) h_pre_dyn [pointer]: The thickness before the transports [H ~> m or kg m-2]. :typefield real(\:,\:,\:) t_pre_dyn [pointer]: Temperature before the transports [degC]. :typefield real(\:,\:,\:) s_pre_dyn [pointer]: Salinity before the transports [ppt]. :typefield type(accel_diag_ptrs) adp: structure containing pointers to accelerations, for derived diagnostics (e.g., energy budgets) :typefield type(cont_diag_ptrs) cdp: structure containing pointers to continuity equation terms, for derived diagnostics (e.g., energy budgets) :typefield real(\:,\:,\:) u_prev [pointer]: previous value of u stored for diagnostics [L T-1 ~> m s-1] :typefield real(\:,\:,\:) v_prev [pointer]: previous value of v stored for diagnostics [L T-1 ~> m s-1] :typefield logical interp_p_surf: If true, linearly interpolate surface pressure over the coupling time step, using specified value at the end of the coupling step. False by default. :typefield logical p_surf_prev_set: If true, p_surf_prev has been properly set from a previous time-step or the ocean restart file. This is only valid when interp_p_surf is true. :typefield real(\:,\:) p_surf_prev [pointer]: surface pressure [R L2 T-2 ~> Pa] at end previous call to step_MOM :typefield real(\:,\:) p_surf_begin [pointer]: surface pressure [R L2 T-2 ~> Pa] at start of step_MOM_dyn_... :typefield real(\:,\:) p_surf_end [pointer]: surface pressure [R L2 T-2 ~> Pa] at end of step_MOM_dyn_... :typefield logical write_ic: If true, then the initial conditions will be written to file. :typefield character(len=120) ic_file: A file into which the initial conditions are written in a new run if SAVE_INITIAL_CONDS is true. :typefield logical calc_rho_for_sea_lev: If true, calculate rho to convert pressure to sea level. :typefield real hmix: Diagnostic mixed layer thickness over which to average surface tracer properties when a bulk mixed layer is not used [Z ~> m], or a negative value if a bulk mixed layer is being used. :typefield real hfrz: If HFrz > 0, the nominal depth over which melt potential is computed [Z ~> m]. The actual depth over which melt potential is computed is min(HFrz, OBLD), where OBLD is the boundary layer depth. If HFrz <= 0 (default), melt potential will not be computed. :typefield real hmix_uv: Depth scale over which to average surface flow to feedback to the coupler/driver [Z ~> m] when bulk mixed layer is not used, or a negative value if a bulk mixed layer is being used. :typefield logical check_bad_sfc_vals: If true, scan surface state for ridiculous values. :typefield real bad_val_ssh_max: Maximum SSH before triggering bad value message [Z ~> m]. :typefield real bad_val_sst_max: Maximum SST before triggering bad value message [degC]. :typefield real bad_val_sst_min: Minimum SST before triggering bad value message [degC]. :typefield real bad_val_sss_max: Maximum SSS before triggering bad value message [ppt]. :typefield real bad_val_col_thick: Minimum column thickness before triggering bad value message [Z ~> m]. :typefield logical answers_2018: If true, use expressions for the surface properties that recover the answers from the end of 2018. Otherwise, use more appropriate expressions that differ at roundoff for non-Boussinsq cases. :typefield type( mom_diag_ids ) ids: Handles used for diagnostics. :typefield type(transport_diag_ids) transport_ids: Handles used for transport diagnostics. :typefield type(surface_diag_ids) sfc_ids: Handles used for surface diagnostics. :typefield type(diag_grid_storage) diag_pre_sync: The grid (thicknesses) before remapping. :typefield type(diag_grid_storage) diag_pre_dyn: The grid (thicknesses) before dynamics. :typefield type(mom_dyn_unsplit_cs) dyn_unsplit_csp [pointer]: Pointer to the control structure used for the unsplit dynamics. :typefield type(mom_dyn_unsplit_rk2_cs) dyn_unsplit_rk2_csp [pointer]: Pointer to the control structure used for the unsplit RK2 dynamics. :typefield type(mom_dyn_split_rk2_cs) dyn_split_rk2_csp [pointer]: Pointer to the control structure used for the mode-split RK2 dynamics. :typefield type(thickness_diffuse_cs) thickness_diffuse_csp [pointer]: Pointer to the control structure used for the isopycnal height diffusive transport. This is also common referred to as Gent-McWilliams diffusion. :typefield type(mixedlayer_restrat_cs) mixedlayer_restrat_csp [pointer]: Pointer to the control structure used for the mixed layer restratification. :typefield type(set_visc_cs) set_visc_csp [pointer]: Pointer to the control structure used to set viscosities. :typefield type(diabatic_cs) diabatic_csp [pointer]: Pointer to the control structure for the diabatic driver. :typefield type(meke_cs) meke_csp [pointer]: Pointer to the control structure for the MEKE updates. :typefield type(varmix_cs) varmix [pointer]: Pointer to the control structure for the variable mixing module. :typefield type(barotropic_cs) barotropic_csp [pointer]: Pointer to the control structure for the barotropic module. :typefield type(tracer_registry_type) tracer_reg [pointer]: Pointer to the MOM tracer registry. :typefield type(tracer_advect_cs) tracer_adv_csp [pointer]: Pointer to the MOM tracer advection control structure. :typefield type(tracer_hor_diff_cs) tracer_diff_csp [pointer]: Pointer to the MOM along-isopycnal tracer diffusion control structure. :typefield type(tracer_flow_control_cs) tracer_flow_csp [pointer]: Pointer to the control structure that orchestrates the calling of tracer packages. :typefield type(update_obc_cs) update_obc_csp [pointer]: Pointer to the control structure for updating open boundary condition properties. :typefield type(ocean_obc_type) obc [pointer]: Pointer to the MOM open boundary condition type. :typefield type(sponge_cs) sponge_csp [pointer]: Pointer to the layered-mode sponge control structure. :typefield type(ale_sponge_cs) ale_sponge_csp [pointer]: Pointer to the ALE-mode sponge control structure. :typefield type(ale_cs) ale_csp [pointer]: Pointer to the Arbitrary Lagrangian Eulerian (ALE) vertical coordinate control structure. :typefield type(sum_output_cs) sum_output_csp [pointer]: Pointer to the globally summed output control structure. :typefield type(diagnostics_cs) diagnostics_csp [pointer]: Pointer to the MOM diagnostics control structure. :typefield type(offline_transport_cs) offline_csp [pointer]: Pointer to the offline tracer transport control structure. :typefield logical ensemble_ocean: if true, this run is part of a larger ensemble for the purpose of data assimilation or statistical analysis. :typefield type(oda_cs) odacs [pointer]: a pointer to the control structure for handling ensemble model state vectors and data assimilation increments and priors .. f:type:: mom_diag_ids A structure with diagnostic IDs of the state variables. :typefield integer id_u [private]: 3-d state field diagnostic IDs :typefield integer id_v [private]: 3-d state field diagnostic IDs :typefield integer id_h [private]: 3-d state field diagnostic IDs :typefield integer id_ssh_inst [private]: 2-d state field diagnotic ID --------------------------------- Function/Subroutine Documentation --------------------------------- .. f:subroutine:: subroutine step_mom(forces_in, fluxes_in, sfc_state, Time_start, time_int_in, CS, Waves, do_dynamics, do_thermodynamics, start_cycle, end_cycle, cycle_length, reset_therm) This subroutine orchestrates the time stepping of MOM. The adiabatic dynamics are stepped by calls to one of the step_MOM_dyn_...routines. The action of lateral processes on tracers occur in calls to advect_tracer and tracer_hordiff. Vertical mixing and possibly remapping occur inside of diabatic. :param forces_in: [inout] A structure with the driving mechanical forces :param fluxes_in: [inout] A structure with pointers to themodynamic, tracer and mass exchange forcing fields :param sfc_state: [inout] surface ocean state :param time_start: [in] starting time of a segment, as a time type :param time_int_in: [in] time interval covered by this run segment [s]. :param cs: control structure from initialize_MOM :param waves: An optional pointer to a wave property CS :param do_dynamics: [in] Present and false, do not do updates due to the dynamics. :param do_thermodynamics: [in] Present and false, do not do updates due to the thermodynamics or remapping. :param start_cycle: [in] This indicates whether this call is to be treated as the first call to step_MOM in a time-stepping cycle; missing is like true. :param end_cycle: [in] This indicates whether this call is to be treated as the last call to step_MOM in a time-stepping cycle; missing is like true. :param cycle_length: [in] The amount of time in a coupled time stepping cycle [s]. :param reset_therm: [in] This indicates whether the running sums of thermodynamic quantities should be reset. If missing, this is like start_cycle. :callto: :f:func:`adjust_ssh_for_p_atm ` :callto: :f:func:`extract_surface_state ` :callto: :f:func:`id_clock_diagnostics ` :callto: :f:func:`id_clock_dynamics ` :callto: :f:func:`id_clock_ocean ` :callto: :f:func:`id_clock_other ` :callto: :f:func:`id_clock_pass ` :callto: :f:func:`mom_state_is_synchronized ` :callto: :f:func:`step_mom_dynamics ` :callto: :f:func:`step_mom_thermo ` :callto: :f:func:`step_mom_tracer_dyn ` .. f:subroutine:: subroutine step_mom_dynamics(forces, p_surf_begin, p_surf_end, dt, dt_thermo, bbl_time_int, CS, Time_local, Waves) Time step the ocean dynamics, including the momentum and continuity equations. :param forces: [in] A structure with the driving mechanical forces :param p_surf_begin: A pointer (perhaps NULL) to the surface pressure at the beginning of this dynamic step, intent in [R L2 T-2 ~> Pa]. :param p_surf_end: A pointer (perhaps NULL) to the surface pressure at the end of this dynamic step, intent in [R L2 T-2 ~> Pa]. :param dt: [in] time interval covered by this call [T ~> s]. :param dt_thermo: [in] time interval covered by any updates that may span multiple dynamics steps [T ~> s]. :param bbl_time_int: [in] time interval over which updates to the bottom boundary layer properties will apply [T ~> s], or zero not to update the properties. :param cs: control structure from initialize_MOM :param time_local: [in] End time of a segment, as a time type :param waves: Container for wave related parameters; the :callto: :f:func:`id_clock_bbl_visc ` :callto: :f:func:`id_clock_diagnostics ` :callto: :f:func:`id_clock_dynamics ` :callto: :f:func:`id_clock_ml_restrat ` :callto: :f:func:`id_clock_other ` :callto: :f:func:`id_clock_pass ` :callto: :f:func:`id_clock_thick_diff ` :calledfrom: :f:func:`step_mom ` .. f:subroutine:: subroutine step_mom_tracer_dyn(CS, G, GV, US, h, Time_local) step_MOM_tracer_dyn does tracer advection and lateral diffusion, bringing the tracers up to date with the changes in state due to the dynamics. Surface sources and sinks and remapping are handled via step_MOM_thermo. :param cs: [inout] control structure :param g: [inout] ocean grid structure :param gv: [in] ocean vertical grid structure :param us: [in] A dimensional unit scaling type :param h: [in] layer thicknesses after the transports [H ~> m or kg m-2] :param time_local: [in] The model time at the end of the time step. :callto: :f:func:`id_clock_diagnostics ` :callto: :f:func:`id_clock_other ` :callto: :f:func:`id_clock_pass ` :callto: :f:func:`id_clock_thermo ` :callto: :f:func:`id_clock_tracer ` :calledfrom: :f:func:`step_mom ` .. f:subroutine:: subroutine step_mom_thermo(CS, G, GV, US, u, v, h, tv, fluxes, dtdia, Time_end_thermo, update_BBL, Waves) MOM_step_thermo orchestrates the thermodynamic time stepping and vertical remapping, via calls to diabatic (or adiabatic) and ALE_main. :param cs: [inout] Master MOM control structure :param g: [inout] ocean grid structure :param gv: [inout] ocean vertical grid structure :param us: [in] A dimensional unit scaling type :param u: [inout] zonal velocity [L T-1 ~> m s-1] :param v: [inout] meridional velocity [L T-1 ~> m s-1] :param h: [inout] layer thickness [H ~> m or kg m-2] :param tv: [inout] A structure pointing to various thermodynamic variables :param fluxes: [inout] pointers to forcing fields :param dtdia: [in] The time interval over which to advance [T ~> s] :param time_end_thermo: [in] End of averaging interval for thermo diags :param update_bbl: [in] If true, calculate the bottom boundary layer properties. :param waves: Container for wave related parameters :callto: :f:func:`id_clock_adiabatic ` :callto: :f:func:`id_clock_ale ` :callto: :f:func:`id_clock_bbl_visc ` :callto: :f:func:`id_clock_diabatic ` :callto: :f:func:`id_clock_pass ` :callto: :f:func:`id_clock_thermo ` :calledfrom: :f:func:`step_mom ` .. f:subroutine:: subroutine step_offline(forces, fluxes, sfc_state, Time_start, time_interval, CS) step_offline is the main driver for running tracers offline in MOM6. This has been primarily developed with ALE configurations in mind. Some work has been done in isopycnal configuration, but the work is very preliminary. Some more detail about this capability along with some of the subroutines called here can be found in tracers/MOM_offline_control.F90 :param forces: [in] A structure with the driving mechanical forces :param fluxes: [inout] pointers to forcing fields :param sfc_state: [inout] surface ocean state :param time_start: [in] starting time of a segment, as a time type :param time_interval: [in] time interval :param cs: control structure from initialize_MOM :callto: :f:func:`adjust_ssh_for_p_atm ` :callto: :f:func:`extract_surface_state ` :callto: :f:func:`id_clock_ale ` :callto: :f:func:`id_clock_offline_tracer ` .. f:subroutine:: subroutine initialize_mom(Time, Time_init, param_file, dirs, CS, restart_CSp, Time_in, offline_tracer_mode, input_restart_file, diag_ptr, count_calls, tracer_flow_CSp) Initialize MOM, including memory allocation, setting up parameters and diagnostics, initializing the ocean state variables, and initializing subsidiary modules. :param time: [inout] model time, set in this routine :param time_init: [in] The start time for the coupled model's calendar :param param_file: [out] structure indicating parameter file to parse :param dirs: [out] structure with directory paths :param cs: pointer set in this routine to MOM control structure :param restart_csp: pointer set in this routine to the restart control structure that will be used for MOM. :param time_in: [in] time passed to MOM_initialize_state when model is not being started from a restart file :param offline_tracer_mode: [out] True is returned if tracers are being run offline :param input_restart_file: [in] If present, name of restart file to read :param diag_ptr: A pointer set in this routine to the diagnostic regulatory structure :param tracer_flow_csp: A pointer set in this routine to :param count_calls: [in] If true, nstep_tot counts the number of calls to step_MOM instead of the number of dynamics timesteps. :callto: :f:func:`id_clock_init ` :callto: :f:func:`id_clock_mom_init ` :callto: :f:func:`id_clock_pass_init ` :callto: :f:func:`id_clock_unit_tests ` :callto: :f:func:`mom_timing_init ` :callto: :f:func:`register_diags ` :callto: :f:func:`rotate_initial_state ` :callto: :f:func:`set_restart_fields ` .. f:subroutine:: subroutine finish_mom_initialization(Time, dirs, CS, restart_CSp) Finishes initializing MOM and writes out the initial conditions. :param time: [in] model time, used in this routine :param dirs: [in] structure with directory paths :param cs: pointer to MOM control structure :param restart_csp: pointer to the restart control structure that will be used for MOM. :callto: :f:func:`id_clock_init ` .. f:subroutine:: subroutine register_diags(Time, G, GV, US, IDs, diag) Register certain diagnostics. :param time: [in] current model time :param g: [in] ocean grid structure :param gv: [in] ocean vertical grid structure :param us: [inout] A dimensional unit scaling type :param ids: [inout] A structure with the diagnostic IDs. :param diag: [inout] regulates diagnostic output :calledfrom: :f:func:`initialize_mom ` .. f:subroutine:: subroutine mom_timing_init(CS) Set up CPU clock IDs for timing various subroutines. :param cs: [in] control structure set up by initialize_MOM. :callto: :f:func:`id_clock_adiabatic ` :callto: :f:func:`id_clock_ale ` :callto: :f:func:`id_clock_bbl_visc ` :callto: :f:func:`id_clock_continuity ` :callto: :f:func:`id_clock_diabatic ` :callto: :f:func:`id_clock_diagnostics ` :callto: :f:func:`id_clock_dynamics ` :callto: :f:func:`id_clock_ml_restrat ` :callto: :f:func:`id_clock_mom_init ` :callto: :f:func:`id_clock_ocean ` :callto: :f:func:`id_clock_offline_tracer ` :callto: :f:func:`id_clock_other ` :callto: :f:func:`id_clock_pass ` :callto: :f:func:`id_clock_pass_init ` :callto: :f:func:`id_clock_thermo ` :callto: :f:func:`id_clock_thick_diff ` :callto: :f:func:`id_clock_tracer ` :callto: :f:func:`id_clock_z_diag ` :calledfrom: :f:func:`initialize_mom ` .. f:subroutine:: subroutine set_restart_fields(GV, US, param_file, CS, restart_CSp) Set the fields that are needed for bitwise identical restarting the time stepping scheme. In addition to those specified here directly, there may be fields related to the forcing or to the barotropic solver that are needed; these are specified in sub- routines that are called from this one. This routine should be altered if there are any changes to the time stepping scheme. The CHECK_RESTART facility may be used to confirm that all needed restart fields have been included. :param gv: [inout] ocean vertical grid structure :param us: [inout] A dimensional unit scaling type :param param_file: [in] opened file for parsing to get parameters :param cs: [in] control structure set up by initialize_MOM :param restart_csp: pointer to the restart control structure that will be used for MOM. :calledfrom: :f:func:`initialize_mom ` .. f:subroutine:: subroutine adjust_ssh_for_p_atm(tv, G, GV, US, ssh, p_atm, use_EOS) Apply a correction to the sea surface height to compensate for the atmospheric pressure (the inverse barometer). :param tv: [in] A structure pointing to various thermodynamic variables :param g: [in] ocean grid structure :param gv: [in] ocean vertical grid structure :param us: [in] A dimensional unit scaling type :param ssh: [inout] time mean surface height [m] :param p_atm: Ocean surface pressure [R L2 T-2 ~> Pa] :param use_eos: [in] If true, calculate the density for the SSH correction using the equation of state. :calledfrom: :f:func:`step_mom ` :calledfrom: :f:func:`step_offline ` .. f:subroutine:: subroutine extract_surface_state(CS, sfc_state_in) Set the surface (return) properties of the ocean model by setting the appropriate fields in sfc_state. Unused fields are set to NULL or are unallocated. :param cs: Master MOM control structure :param sfc_state_in: [inout] transparent ocean surface state structure shared with the calling routine data in this structure is intent out. :calledfrom: :f:func:`step_mom ` :calledfrom: :f:func:`step_offline ` .. f:subroutine:: subroutine rotate_initial_state(u_in, v_in, h_in, T_in, S_in, use_temperature, turns, u, v, h, T, S) Rotate initialization fields from input to rotated arrays. :calledfrom: :f:func:`initialize_mom ` .. f:function:: logical function mom_state_is_synchronized(CS, adv_dyn) Return true if all phases of step_MOM are at the same point in time. :param cs: MOM control structure :param adv_dyn: [in] If present and true, only check whether the advection is up-to-date with the dynamics. :returns undefined: True if all phases of the update are synchronized. :calledfrom: :f:func:`step_mom ` .. f:subroutine:: subroutine get_mom_state_elements(CS, G, GV, US, C_p, C_p_scaled, use_temp) This subroutine offers access to values or pointers to other types from within the MOM_control_struct, allowing the MOM_control_struct to be opaque. :param cs: MOM control structure :param g: structure containing metrics and grid info :param gv: structure containing vertical grid info :param us: A dimensional unit scaling type :param c_p: [out] The heat capacity [J kg degC-1] :param c_p_scaled: [out] The heat capacity in scaled units [Q degC-1 ~> J kg degC-1] :param use_temp: [out] True if temperature is a state variable .. f:subroutine:: subroutine get_ocean_stocks(CS, mass, heat, salt, on_PE_only) Find the global integrals of various quantities. :param cs: MOM control structure :param heat: [out] The globally integrated integrated ocean heat [J]. :param salt: [out] The globally integrated integrated ocean salt [kg]. :param mass: [out] The globally integrated integrated ocean mass [kg]. :param on_pe_only: [in] If present and true, only sum on the local PE. .. f:subroutine:: subroutine mom_end(CS) End of ocean model, including memory deallocation. :param cs: MOM control structure [debug] xpath(./compounddef/compoundname[text()="mom::mom_control_struct"]/..) match([('id', 'structmom_1_1mom__control__struct'), ('kind', 'type'), ('language', 'Fortran'), ('prot', 'public')]) [debug] DoxygenModuleDocumenter format_signature called [debug] verbosity = 3 [debug] Setting build mode: latex [debug] method=visit_para [app] emitting event: 'autodoc-process-docstring'('doxymodule', 'mom::mom_control_struct', , {}, ['', 'Control [app] emitting event: 'autodoc-process-docstring'('doxymodule', 'mom::mom_control_struct', , {}, ['`More... , {}, ['', 'Control [debug] xpath(./compounddef/compoundname[text()="mom::mom_diag_ids"]/..) match([('id', 'structmom_1_1mom__diag__ids'), ('kind', 'type'), ('language', 'Fortran'), ('prot', 'private')]) [debug] DoxygenModuleDocumenter format_signature called [debug] verbosity = 3 [debug] Setting build mode: latex [debug] method=visit_para [app] emitting event: 'autodoc-process-docstring'('doxymodule', 'mom::mom_diag_ids', , {}, ['', 'A structure w [app] emitting event: 'autodoc-process-docstring'('doxymodule', 'mom::mom_diag_ids', , {}, ['`More... , {}, ['', 'A structure w [debug] DoxygenMethodDocumenter format_signature called ((forces_in, fluxes_in, sfc_state, Time_start, time_int_in, CS, Waves, do_dynamics, do_thermodynamics, start_cycle, end_cycle, cycle_length, reset_therm)) [debug] verbosity = 3 [debug] Setting build mode: latex [debug] method=visit_para [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'mom::step_mom', , {}, ['', 'This subroutine orc [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'mom::step_mom', , {}, ['', 'This subroutine orc [debug] DoxygenMethodDocumenter format_signature called ((forces, p_surf_begin, p_surf_end, dt, dt_thermo, bbl_time_int, CS, Time_local, Waves)) [debug] verbosity = 3 [debug] Setting build mode: latex [debug] method=visit_para [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'mom::step_mom_dynamics', , {}, ['', 'Time step [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'mom::step_mom_dynamics', , {}, ['', 'Time step [debug] DoxygenMethodDocumenter format_signature called ((CS, G, GV, US, h, Time_local)) [debug] verbosity = 3 [debug] Setting build mode: latex [debug] method=visit_para [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'mom::step_mom_tracer_dyn', , {}, ['', 'step_MOM [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'mom::step_mom_tracer_dyn', , {}, ['', 'step_MOM [debug] DoxygenMethodDocumenter format_signature called ((CS, G, GV, US, u, v, h, tv, fluxes, dtdia, Time_end_thermo, update_BBL, Waves)) [debug] verbosity = 3 [debug] Setting build mode: latex [debug] method=visit_para [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'mom::step_mom_thermo', , {}, ['', 'MOM_step_the [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'mom::step_mom_thermo', , {}, ['', 'MOM_step_the [debug] DoxygenMethodDocumenter format_signature called ((forces, fluxes, sfc_state, Time_start, time_interval, CS)) [debug] verbosity = 3 [debug] Setting build mode: latex [debug] method=visit_para [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'mom::step_offline', , {}, ['', 'step_offline is [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'mom::step_offline', , {}, ['', 'step_offline is [debug] DoxygenMethodDocumenter format_signature called ((Time, Time_init, param_file, dirs, CS, restart_CSp, Time_in, offline_tracer_mode, input_restart_file, diag_ptr, count_calls, tracer_flow_CSp)) [debug] verbosity = 3 [debug] Setting build mode: latex [debug] method=visit_para [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'mom::initialize_mom', , {}, ['', 'Initialize MO [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'mom::initialize_mom', , {}, ['', 'Initialize MO [debug] DoxygenMethodDocumenter format_signature called ((Time, dirs, CS, restart_CSp)) [debug] verbosity = 3 [debug] Setting build mode: latex [debug] method=visit_para [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'mom::finish_mom_initialization', , {}, ['', 'Fi [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'mom::finish_mom_initialization', , {}, ['', 'Fi [debug] DoxygenMethodDocumenter format_signature called ((Time, G, GV, US, IDs, diag)) [debug] verbosity = 3 [debug] Setting build mode: latex [debug] method=visit_para [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'mom::register_diags', , {}, ['', 'Register cert [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'mom::register_diags', , {}, ['', 'Register cert [debug] DoxygenMethodDocumenter format_signature called ((CS)) [debug] verbosity = 3 [debug] Setting build mode: latex [debug] method=visit_para [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'mom::mom_timing_init', , {}, ['', 'Set up CPU c [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'mom::mom_timing_init', , {}, ['', 'Set up CPU c [debug] DoxygenMethodDocumenter format_signature called ((GV, US, param_file, CS, restart_CSp)) [debug] verbosity = 3 [debug] Setting build mode: latex [debug] method=visit_para [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'mom::set_restart_fields', , {}, ['', 'Set the f [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'mom::set_restart_fields', , {}, ['', 'Set the f [debug] DoxygenMethodDocumenter format_signature called ((tv, G, GV, US, ssh, p_atm, use_EOS)) [debug] verbosity = 3 [debug] Setting build mode: latex [debug] method=visit_para [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'mom::adjust_ssh_for_p_atm', , {}, ['', 'Apply a [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'mom::adjust_ssh_for_p_atm', , {}, ['', 'Apply a [debug] DoxygenMethodDocumenter format_signature called ((CS, sfc_state_in)) [debug] verbosity = 3 [debug] Setting build mode: latex [debug] method=visit_para [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'mom::extract_surface_state', , {}, ['', 'Set th [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'mom::extract_surface_state', , {}, ['', 'Set th [debug] DoxygenMethodDocumenter format_signature called ((u_in, v_in, h_in, T_in, S_in, use_temperature, turns, u, v, h, T, S)) [debug] verbosity = 3 [debug] Setting build mode: latex [debug] method=visit_para [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'mom::rotate_initial_state', , {}, ['', 'Rotate [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'mom::rotate_initial_state', , {}, ['', 'Rotate [debug] DoxygenMethodDocumenter format_signature called ((CS, adv_dyn)) [debug] verbosity = 3 [debug] Setting build mode: latex [debug] method=visit_para [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'mom::mom_state_is_synchronized', , {}, ['', 'Re [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'mom::mom_state_is_synchronized', , {}, ['', 'Re [debug] DoxygenMethodDocumenter format_signature called ((CS, G, GV, US, C_p, C_p_scaled, use_temp)) [debug] verbosity = 3 [debug] Setting build mode: latex [debug] method=visit_para [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'mom::get_mom_state_elements', , {}, ['', 'This [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'mom::get_mom_state_elements', , {}, ['', 'This [debug] DoxygenMethodDocumenter format_signature called ((CS, mass, heat, salt, on_PE_only)) [debug] verbosity = 3 [debug] Setting build mode: latex [debug] method=visit_para [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'mom::get_ocean_stocks', , {}, ['', 'Find the gl [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'mom::get_ocean_stocks', , {}, ['', 'Find the gl [debug] DoxygenMethodDocumenter format_signature called ((CS)) [debug] verbosity = 3 [debug] Setting build mode: latex [debug] method=visit_para [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'mom::mom_end', , {}, ['', 'End of ocean model, [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'mom::mom_end', , {}, ['', 'End of ocean model, [fd] run(.. f:type:: mom_control_struct) [fd] sig(mom_control_struct) [fd] ftype(None) objtype(None) modname(None) typename() name(mom_control_struct) arglist(None) [fd] fullname(mom/mom_control_struct) ftype(None) [fd] name(('mom/mom_control_struct', None)) sig(mom_control_struct) signode(type mom/mom_control_struct) [fd] run(.. f:type:: mom_diag_ids) [fd] sig(mom_diag_ids) [fd] ftype(None) objtype(None) modname(None) typename() name(mom_diag_ids) arglist(None) [fd] fullname(mom/mom_diag_ids) ftype(None) [fd] name(('mom/mom_diag_ids', None)) sig(mom_diag_ids) signode(type mom/mom_diag_ids) [fd] run(.. f:subroutine:: subroutine step_mom(forces_in, fluxes_in, sfc_state, Time_start, time_int_in, CS, Waves, do_dynamics, do_thermodynamics, start_cycle, end_cycle, cycle_length, reset_therm)) [fd] sig(subroutine step_mom(forces_in, fluxes_in, sfc_state, Time_start, time_int_in, CS, Waves, do_dynamics, do_thermodynamics, start_cycle, end_cycle, cycle_length, reset_therm)) [fd] ftype(None) objtype(subroutine) modname(None) typename() name(step_mom) arglist(forces_in, fluxes_in, sfc_state, Time_start, time_int_in, CS, Waves, do_dynamics, do_thermodynamics, start_cycle, end_cycle, cycle_length, reset_therm) [fd] fullname(mom/step_mom) ftype(None) [fd] name(('mom/step_mom', None)) sig(subroutine step_mom(forces_in, fluxes_in, sfc_state, Time_start, time_int_in, CS, Waves, do_dynamics, do_thermodynamics, start_cycle, end_cycle, cycle_length, reset_therm)) signode(subroutine mom/step_momforces_influxes_insfc_stateTime_starttime_int_inCSWavesdo_dynamicsdo_thermodynamicsstart_cycleend_cyclecycle_lengthreset_therm) [fd] run(.. f:subroutine:: subroutine step_mom_dynamics(forces, p_surf_begin, p_surf_end, dt, dt_thermo, bbl_time_int, CS, Time_local, Waves)) [fd] sig(subroutine step_mom_dynamics(forces, p_surf_begin, p_surf_end, dt, dt_thermo, bbl_time_int, CS, Time_local, Waves)) [fd] ftype(None) objtype(subroutine) modname(None) typename() name(step_mom_dynamics) arglist(forces, p_surf_begin, p_surf_end, dt, dt_thermo, bbl_time_int, CS, Time_local, Waves) [fd] fullname(mom/step_mom_dynamics) ftype(None) [fd] name(('mom/step_mom_dynamics', None)) sig(subroutine step_mom_dynamics(forces, p_surf_begin, p_surf_end, dt, dt_thermo, bbl_time_int, CS, Time_local, Waves)) signode(subroutine mom/step_mom_dynamicsforcesp_surf_beginp_surf_enddtdt_thermobbl_time_intCSTime_localWaves) [fd] run(.. f:subroutine:: subroutine step_mom_tracer_dyn(CS, G, GV, US, h, Time_local)) [fd] sig(subroutine step_mom_tracer_dyn(CS, G, GV, US, h, Time_local)) [fd] ftype(None) objtype(subroutine) modname(None) typename() name(step_mom_tracer_dyn) arglist(CS, G, GV, US, h, Time_local) [fd] fullname(mom/step_mom_tracer_dyn) ftype(None) [fd] name(('mom/step_mom_tracer_dyn', None)) sig(subroutine step_mom_tracer_dyn(CS, G, GV, US, h, Time_local)) signode(subroutine mom/step_mom_tracer_dynCSGGVUShTime_local) [fd] run(.. f:subroutine:: subroutine step_mom_thermo(CS, G, GV, US, u, v, h, tv, fluxes, dtdia, Time_end_thermo, update_BBL, Waves)) [fd] sig(subroutine step_mom_thermo(CS, G, GV, US, u, v, h, tv, fluxes, dtdia, Time_end_thermo, update_BBL, Waves)) [fd] ftype(None) objtype(subroutine) modname(None) typename() name(step_mom_thermo) arglist(CS, G, GV, US, u, v, h, tv, fluxes, dtdia, Time_end_thermo, update_BBL, Waves) [fd] fullname(mom/step_mom_thermo) ftype(None) [fd] name(('mom/step_mom_thermo', None)) sig(subroutine step_mom_thermo(CS, G, GV, US, u, v, h, tv, fluxes, dtdia, Time_end_thermo, update_BBL, Waves)) signode(subroutine mom/step_mom_thermoCSGGVUSuvhtvfluxesdtdiaTime_end_thermoupdate_BBLWaves) [fd] run(.. f:subroutine:: subroutine step_offline(forces, fluxes, sfc_state, Time_start, time_interval, CS)) [fd] sig(subroutine step_offline(forces, fluxes, sfc_state, Time_start, time_interval, CS)) [fd] ftype(None) objtype(subroutine) modname(None) typename() name(step_offline) arglist(forces, fluxes, sfc_state, Time_start, time_interval, CS) [fd] fullname(mom/step_offline) ftype(None) [fd] name(('mom/step_offline', None)) sig(subroutine step_offline(forces, fluxes, sfc_state, Time_start, time_interval, CS)) signode(subroutine mom/step_offlineforcesfluxessfc_stateTime_starttime_intervalCS) [fd] run(.. f:subroutine:: subroutine initialize_mom(Time, Time_init, param_file, dirs, CS, restart_CSp, Time_in, offline_tracer_mode, input_restart_file, diag_ptr, count_calls, tracer_flow_CSp)) [fd] sig(subroutine initialize_mom(Time, Time_init, param_file, dirs, CS, restart_CSp, Time_in, offline_tracer_mode, input_restart_file, diag_ptr, count_calls, tracer_flow_CSp)) [fd] ftype(None) objtype(subroutine) modname(None) typename() name(initialize_mom) arglist(Time, Time_init, param_file, dirs, CS, restart_CSp, Time_in, offline_tracer_mode, input_restart_file, diag_ptr, count_calls, tracer_flow_CSp) [fd] fullname(mom/initialize_mom) ftype(None) [fd] name(('mom/initialize_mom', None)) sig(subroutine initialize_mom(Time, Time_init, param_file, dirs, CS, restart_CSp, Time_in, offline_tracer_mode, input_restart_file, diag_ptr, count_calls, tracer_flow_CSp)) signode(subroutine mom/initialize_momTimeTime_initparam_filedirsCSrestart_CSpTime_inoffline_tracer_modeinput_restart_filediag_ptrcount_callstracer_flow_CSp) [fd] run(.. f:subroutine:: subroutine finish_mom_initialization(Time, dirs, CS, restart_CSp)) [fd] sig(subroutine finish_mom_initialization(Time, dirs, CS, restart_CSp)) [fd] ftype(None) objtype(subroutine) modname(None) typename() name(finish_mom_initialization) arglist(Time, dirs, CS, restart_CSp) [fd] fullname(mom/finish_mom_initialization) ftype(None) [fd] name(('mom/finish_mom_initialization', None)) sig(subroutine finish_mom_initialization(Time, dirs, CS, restart_CSp)) signode(subroutine mom/finish_mom_initializationTimedirsCSrestart_CSp) [fd] run(.. f:subroutine:: subroutine register_diags(Time, G, GV, US, IDs, diag)) [fd] sig(subroutine register_diags(Time, G, GV, US, IDs, diag)) [fd] ftype(None) objtype(subroutine) modname(None) typename() name(register_diags) arglist(Time, G, GV, US, IDs, diag) [fd] fullname(mom/register_diags) ftype(None) [fd] name(('mom/register_diags', None)) sig(subroutine register_diags(Time, G, GV, US, IDs, diag)) signode(subroutine mom/register_diagsTimeGGVUSIDsdiag) [fd] run(.. f:subroutine:: subroutine mom_timing_init(CS)) [fd] sig(subroutine mom_timing_init(CS)) [fd] ftype(None) objtype(subroutine) modname(None) typename() name(mom_timing_init) arglist(CS) [fd] fullname(mom/mom_timing_init) ftype(None) [fd] name(('mom/mom_timing_init', None)) sig(subroutine mom_timing_init(CS)) signode(subroutine mom/mom_timing_initCS) [fd] run(.. f:subroutine:: subroutine set_restart_fields(GV, US, param_file, CS, restart_CSp)) [fd] sig(subroutine set_restart_fields(GV, US, param_file, CS, restart_CSp)) [fd] ftype(None) objtype(subroutine) modname(None) typename() name(set_restart_fields) arglist(GV, US, param_file, CS, restart_CSp) [fd] fullname(mom/set_restart_fields) ftype(None) [fd] name(('mom/set_restart_fields', None)) sig(subroutine set_restart_fields(GV, US, param_file, CS, restart_CSp)) signode(subroutine mom/set_restart_fieldsGVUSparam_fileCSrestart_CSp) [fd] run(.. f:subroutine:: subroutine adjust_ssh_for_p_atm(tv, G, GV, US, ssh, p_atm, use_EOS)) [fd] sig(subroutine adjust_ssh_for_p_atm(tv, G, GV, US, ssh, p_atm, use_EOS)) [fd] ftype(None) objtype(subroutine) modname(None) typename() name(adjust_ssh_for_p_atm) arglist(tv, G, GV, US, ssh, p_atm, use_EOS) [fd] fullname(mom/adjust_ssh_for_p_atm) ftype(None) [fd] name(('mom/adjust_ssh_for_p_atm', None)) sig(subroutine adjust_ssh_for_p_atm(tv, G, GV, US, ssh, p_atm, use_EOS)) signode(subroutine mom/adjust_ssh_for_p_atmtvGGVUSsshp_atmuse_EOS) [fd] run(.. f:subroutine:: subroutine extract_surface_state(CS, sfc_state_in)) [fd] sig(subroutine extract_surface_state(CS, sfc_state_in)) [fd] ftype(None) objtype(subroutine) modname(None) typename() name(extract_surface_state) arglist(CS, sfc_state_in) [fd] fullname(mom/extract_surface_state) ftype(None) [fd] name(('mom/extract_surface_state', None)) sig(subroutine extract_surface_state(CS, sfc_state_in)) signode(subroutine mom/extract_surface_stateCSsfc_state_in) [fd] run(.. f:subroutine:: subroutine rotate_initial_state(u_in, v_in, h_in, T_in, S_in, use_temperature, turns, u, v, h, T, S)) [fd] sig(subroutine rotate_initial_state(u_in, v_in, h_in, T_in, S_in, use_temperature, turns, u, v, h, T, S)) [fd] ftype(None) objtype(subroutine) modname(None) typename() name(rotate_initial_state) arglist(u_in, v_in, h_in, T_in, S_in, use_temperature, turns, u, v, h, T, S) [fd] fullname(mom/rotate_initial_state) ftype(None) [fd] name(('mom/rotate_initial_state', None)) sig(subroutine rotate_initial_state(u_in, v_in, h_in, T_in, S_in, use_temperature, turns, u, v, h, T, S)) signode(subroutine mom/rotate_initial_stateu_inv_inh_inT_inS_inuse_temperatureturnsuvhTS) [fd] run(.. f:function:: logical function mom_state_is_synchronized(CS, adv_dyn)) [fd] sig(logical function mom_state_is_synchronized(CS, adv_dyn)) [fd] ftype(logical) objtype(function) modname(None) typename() name(mom_state_is_synchronized) arglist(CS, adv_dyn) [fd] fullname(mom/mom_state_is_synchronized) ftype(logical) [fd] name(('mom/mom_state_is_synchronized', 'logical')) sig(logical function mom_state_is_synchronized(CS, adv_dyn)) signode(function mom/mom_state_is_synchronizedCSadv_dyn [logical]) [fd] run(.. f:subroutine:: subroutine get_mom_state_elements(CS, G, GV, US, C_p, C_p_scaled, use_temp)) [fd] sig(subroutine get_mom_state_elements(CS, G, GV, US, C_p, C_p_scaled, use_temp)) [fd] ftype(None) objtype(subroutine) modname(None) typename() name(get_mom_state_elements) arglist(CS, G, GV, US, C_p, C_p_scaled, use_temp) [fd] fullname(mom/get_mom_state_elements) ftype(None) [fd] name(('mom/get_mom_state_elements', None)) sig(subroutine get_mom_state_elements(CS, G, GV, US, C_p, C_p_scaled, use_temp)) signode(subroutine mom/get_mom_state_elementsCSGGVUSC_pC_p_scaleduse_temp) [fd] run(.. f:subroutine:: subroutine get_ocean_stocks(CS, mass, heat, salt, on_PE_only)) [fd] sig(subroutine get_ocean_stocks(CS, mass, heat, salt, on_PE_only)) [fd] ftype(None) objtype(subroutine) modname(None) typename() name(get_ocean_stocks) arglist(CS, mass, heat, salt, on_PE_only) [fd] fullname(mom/get_ocean_stocks) ftype(None) [fd] name(('mom/get_ocean_stocks', None)) sig(subroutine get_ocean_stocks(CS, mass, heat, salt, on_PE_only)) signode(subroutine mom/get_ocean_stocksCSmassheatsalton_PE_only) [fd] run(.. f:subroutine:: subroutine mom_end(CS)) [fd] sig(subroutine mom_end(CS)) [fd] ftype(None) objtype(subroutine) modname(None) typename() name(mom_end) arglist(CS) [fd] fullname(mom/mom_end) ftype(None) [fd] name(('mom/mom_end', None)) sig(subroutine mom_end(CS)) signode(subroutine mom/mom_endCS) [i18n] PATCH: 'docutils.nodes.field_name' to have source and line: Type fields [i18n] PATCH: 'docutils.nodes.field_name' to have source and line: Type fields [i18n] PATCH: 'docutils.nodes.field_name' to have source and line: Parameters [i18n] PATCH: 'docutils.nodes.field_name' to have source and line: Call to [i18n] PATCH: 'docutils.nodes.field_name' to have source and line: Parameters [i18n] PATCH: 'docutils.nodes.field_name' to have source and line: Call to [i18n] PATCH: 'docutils.nodes.field_name' to have source and line: Called from [i18n] PATCH: 'docutils.nodes.field_name' to have source and line: Parameters [i18n] PATCH: 'docutils.nodes.field_name' to have source and line: Call to [i18n] PATCH: 'docutils.nodes.field_name' to have source and line: Called from [i18n] PATCH: 'docutils.nodes.field_name' to have source and line: Parameters [i18n] PATCH: 'docutils.nodes.field_name' to have source and line: Call to [i18n] PATCH: 'docutils.nodes.field_name' to have source and line: Called from [i18n] PATCH: 'docutils.nodes.field_name' to have source and line: Parameters [i18n] PATCH: 'docutils.nodes.field_name' to have source and line: Call to [i18n] PATCH: 'docutils.nodes.field_name' to have source and line: Parameters [i18n] PATCH: 'docutils.nodes.field_name' to have source and line: Call to [i18n] PATCH: 'docutils.nodes.field_name' to have source and line: Parameters [i18n] PATCH: 'docutils.nodes.field_name' to have source and line: Call to [i18n] PATCH: 'docutils.nodes.field_name' to have source and line: Parameters [i18n] PATCH: 'docutils.nodes.field_name' to have source and line: Called from [i18n] PATCH: 'docutils.nodes.field_name' to have source and line: Parameters [i18n] PATCH: 'docutils.nodes.field_name' to have source and line: Call to [i18n] PATCH: 'docutils.nodes.field_name' to have source and line: Called from [i18n] PATCH: 'docutils.nodes.field_name' to have source and line: Parameters [i18n] PATCH: 'docutils.nodes.field_name' to have source and line: Called from [i18n] PATCH: 'docutils.nodes.field_name' to have source and line: Parameters [i18n] PATCH: 'docutils.nodes.field_name' to have source and line: Called from [i18n] PATCH: 'docutils.nodes.field_name' to have source and line: Parameters [i18n] PATCH: 'docutils.nodes.field_name' to have source and line: Called from [i18n] PATCH: 'docutils.nodes.field_name' to have source and line: Called from [i18n] PATCH: 'docutils.nodes.field_name' to have source and line: Parameters [i18n] PATCH: 'docutils.nodes.field_name' to have source and line: Return [i18n] PATCH: 'docutils.nodes.field_name' to have source and line: Called from [i18n] PATCH: 'docutils.nodes.field_name' to have source and line: Parameters [i18n] PATCH: 'docutils.nodes.field_name' to have source and line: Parameters [i18n] PATCH: 'docutils.nodes.field_name' to have source and line: Parameters [app] emitting event: 'doctree-read'(>,) docstring of mom:209: (INFO/1) Duplicate implicit target name: β€œdepth integrated heat budget”. [filtered system message] reading sources... [ 6%] api/generated/modules/mom_ale [app] emitting event: 'env-purge-doc'(, 'api/generated/modules/mom_ale') [app] emitting event: 'source-read'('api/generated/modules/mom_ale', ['.. autodoxymodule:: mom_ale\n :members:\n :methods:\n :typ [autodoc] /home/cermak/src/MOM6/docs/api/generated/modules/mom_ale.rst:1: input: .. autodoxymodule:: mom_ale :members: :methods: :types: ---------- Data Types ---------- .. autodoxysummary:: :kind: type ~mom_ale::ale_cs --------------------- Functions/Subroutines --------------------- .. autodoxysummary:: :kind: func ~mom_ale::ale_init ~mom_ale::ale_register_diags ~mom_ale::adjustgridforintegrity ~mom_ale::ale_end ~mom_ale::ale_main ~mom_ale::ale_main_offline ~mom_ale::ale_offline_inputs ~mom_ale::ale_offline_tracer_final ~mom_ale::check_grid ~mom_ale::ale_build_grid ~mom_ale::ale_regrid_accelerated ~mom_ale::remap_all_state_vars ~mom_ale::ale_remap_scalar ~mom_ale::ts_plm_edge_values ~mom_ale::ale_plm_edge_values ~mom_ale::ts_ppm_edge_values ~mom_ale::ale_initregridding ~mom_ale::ale_getcoordinate ~mom_ale::ale_getcoordinateunits ~mom_ale::ale_remap_init_conds ~mom_ale::ale_update_regrid_weights ~mom_ale::ale_updateverticalgridtype ~mom_ale::ale_writecoordinatefile ~mom_ale::ale_initthicknesstocoord [debug] xpath(./compounddef/compoundname[text()="mom_ale"]/..) match([('id', 'namespacemom__ale'), ('kind', 'namespace'), ('language', 'Fortran')]) [debug] add_title:mom_ale module reference [debug] verbosity = 3 [debug] Setting build mode: latex [debug] method=visit_para [app] emitting event: 'autodoc-process-docstring'('doxymodule', 'mom_ale', , {'members': , {'members': , {'members': )]) [autodoc] module analyzer failed: error importing 'mom_ale' (exception was: ModuleNotFoundError("No module named 'mom_ale'")) [app] emitting event: 'autodoc-process-signature'('doxytype', 'mom_ale::ale_cs', , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': ), ('ale_register_diags', ), ('adjustgridforintegrity', ), ('ale_end', ), ('ale_main', ), ('ale_main_offline', ), ('ale_offline_inputs', ), ('ale_offline_tracer_final', ), ('check_grid', ), ('ale_build_grid', ), ('ale_regrid_accelerated', ), ('remap_all_state_vars', ), ('ale_remap_scalar', ), ('ts_plm_edge_values', ), ('ale_plm_edge_values', ), ('ts_ppm_edge_values', ), ('ale_initregridding', ), ('ale_getcoordinate', ), ('ale_getcoordinateunits', ), ('ale_remap_init_conds', ), ('ale_update_regrid_weights', ), ('ale_updateverticalgridtype', ), ('ale_writecoordinatefile', ), ('ale_initthicknesstocoord', )]) [autodoc] module analyzer failed: error importing 'mom_ale' (exception was: ModuleNotFoundError("No module named 'mom_ale'")) [debug] DoxygenMethodDocumenter format_signature called ((param_file, GV, US, max_depth, CS)) [debug] add_directive_header sig((param_file, GV, US, max_depth, CS)) [debug] DoxygenMethodDocumenter directive(subroutine) name(subroutine ale_init) [debug] verbosity = 3 [debug] Setting build mode: latex [debug] method=visit_para [debug] method=visit_ref [debug] refid(MOM_8F90) kindref(compound) ref([]) [debug] ref([('id', 'MOM_8F90'), ('kind', 'file'), ('language', 'Fortran')]) [debug] verbosity = 3 [debug] Setting build mode: latex [debug] method=visit_para [debug] method=visit_parameterlist [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'ale_init', , {'members': , {'members': , {'members': , {'members': , {'members': ]) [debug] ref([('id', 'MOM_8F90'), ('kind', 'file'), ('language', 'Fortran')]) [debug] verbosity = 3 [debug] Setting build mode: latex [debug] method=visit_para [debug] method=visit_parameterlist [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'adjustgridforintegrity', , {'members': , {'members': ]) [debug] ref([('id', 'MOM_8F90'), ('kind', 'file'), ('language', 'Fortran')]) [debug] verbosity = 3 [debug] Setting build mode: latex [debug] method=visit_para [debug] method=visit_parameterlist [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'ale_end', , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': `_ ---------- Data Types ---------- .. autodoxysummary:: :kind: type ~mom_ale::ale_cs --------------------- Functions/Subroutines --------------------- .. autodoxysummary:: :kind: func ~mom_ale::ale_init ~mom_ale::ale_register_diags ~mom_ale::adjustgridforintegrity ~mom_ale::ale_end ~mom_ale::ale_main ~mom_ale::ale_main_offline ~mom_ale::ale_offline_inputs ~mom_ale::ale_offline_tracer_final ~mom_ale::check_grid ~mom_ale::ale_build_grid ~mom_ale::ale_regrid_accelerated ~mom_ale::remap_all_state_vars ~mom_ale::ale_remap_scalar ~mom_ale::ts_plm_edge_values ~mom_ale::ale_plm_edge_values ~mom_ale::ts_ppm_edge_values ~mom_ale::ale_initregridding ~mom_ale::ale_getcoordinate ~mom_ale::ale_getcoordinateunits ~mom_ale::ale_remap_init_conds ~mom_ale::ale_update_regrid_weights ~mom_ale::ale_updateverticalgridtype ~mom_ale::ale_writecoordinatefile ~mom_ale::ale_initthicknesstocoord .. _DETAmom_ale: -------------------- Detailed Description -------------------- Regridding comprises two steps: #. Interpolation and creation of a new grid based on target interface densities (or any other criterion). #. Remapping of quantities between old grid and new grid. Original module written by Laurent White, 2008.06.09 ------------------ Type Documentation ------------------ .. f:type:: ale_cs ALE control structure. :typefield logical remap_uv_using_old_alg: If true, uses the old "remapping via a delta z" method. If False, uses the new method that remaps between grids described by h. :typefield real regrid_time_scale: The time-scale used in blending between the current (old) grid and the target (new) grid [T ~> s]. :typefield type(regridding_cs) regridcs: Regridding parameters and work arrays. :typefield type(remapping_cs) remapcs: Remapping parameters and work arrays. :typefield integer nk: Used only for queries, not directly by this module. :typefield logical remap_after_initialization: Indicates whether to regrid/remap after initializing the state. :typefield logical answers_2018: If true, use the order of arithmetic and expressions for remapping that recover the answers from the end of 2018. Otherwise, use more robust and accurate forms of mathematically equivalent expressions. :typefield logical show_call_tree: For debugging. :typefield type(diag_ctrl) diag [pointer]: structure to regulate output :typefield integer(\:) id_tracer_remap_tendency [allocatable]: diagnostic id :typefield integer(\:) id_htracer_remap_tendency [allocatable]: diagnostic id :typefield integer(\:) id_htracer_remap_tendency_2d [allocatable]: diagnostic id :typefield logical(\:) do_tendency_diag [allocatable]: flag for doing diagnostics :typefield integer id_dzregrid: diagnostic id :typefield integer id_u_preale: diagnostic id for zonal velocity before ALE. :typefield integer id_v_preale: diagnostic id for meridional velocity before ALE. :typefield integer id_h_preale: diagnostic id for layer thicknesses before ALE. :typefield integer id_t_preale: diagnostic id for temperatures before ALE. :typefield integer id_s_preale: diagnostic id for salinities before ALE. :typefield integer id_e_preale: diagnostic id for interface heights before ALE. :typefield integer id_vert_remap_h: diagnostic id for layer thicknesses used for remapping :typefield integer id_vert_remap_h_tendency: diagnostic id for layer thickness tendency due to ALE --------------------------------- Function/Subroutine Documentation --------------------------------- .. f:subroutine:: subroutine ale_init(param_file, GV, US, max_depth, CS) This routine is typically called (from initialize_MOM in file ``MOM.F90`` ) before the main time integration loop to initialize the regridding stuff. We read the MOM_input file to register the values of different regridding/remapping parameters. :param param_file: [in] Parameter file :param gv: [in] Ocean vertical grid structure :param us: [in] A dimensional unit scaling type :param max_depth: [in] The maximum depth of the ocean [Z ~> m]. :param cs: Module control structure :callto: :f:func:`ale_initregridding ` .. f:subroutine:: subroutine ale_register_diags(Time, G, GV, US, diag, CS) Initialize diagnostics for the ALE module. :param time: [in] Time structure :param g: [in] Grid structure :param us: [in] A dimensional unit scaling type :param gv: [in] Ocean vertical grid structure :param diag: [in] Diagnostics control structure :param cs: Module control structure .. f:subroutine:: subroutine adjustgridforintegrity(CS, G, GV, h) Crudely adjust (initial) grid for integrity. This routine is typically called (from initialize_MOM in file ``MOM.F90`` ) before the main time integration loop to initialize the regridding stuff. We read the MOM_input file to register the values of different regridding/remapping parameters. :param cs: Regridding parameters and options :param g: [in] Ocean grid informations :param gv: [in] Ocean vertical grid structure :param h: [inout] Current 3D grid thickness that are to be adjusted [H ~> m or kg-2] .. f:subroutine:: subroutine ale_end(CS) End of regridding (memory deallocation). This routine is typically called (from MOM_end in file ``MOM.F90`` ) after the main time integration loop to deallocate the regridding stuff. :param cs: module control structure .. f:subroutine:: subroutine ale_main(G, GV, US, h, u, v, tv, Reg, CS, OBC, dt, frac_shelf_h) Takes care of (1) building a new grid and (2) remapping all variables between the old grid and the new grid. The creation of the new grid can be based on z coordinates, target interface densities, sigma coordinates or any arbitrary coordinate system. :param g: [in] Ocean grid informations :param gv: [in] Ocean vertical grid structure :param us: [in] A dimensional unit scaling type :param h: [inout] Current 3D grid obtained after the last time step [H ~> m or kg m-2] :param u: [inout] Zonal velocity field [L T-1 ~> m s-1] :param v: [inout] Meridional velocity field [L T-1 ~> m s-1] :param tv: [inout] Thermodynamic variable structure :param reg: Tracer registry structure :param cs: Regridding parameters and options :param obc: Open boundary structure :param dt: [in] Time step between calls to ALE_main [T ~> s] :param frac_shelf_h: Fractional ice shelf coverage :callto: :f:func:`ale_update_regrid_weights ` :callto: :f:func:`check_grid ` :callto: :f:func:`remap_all_state_vars ` .. f:subroutine:: subroutine ale_main_offline(G, GV, h, tv, Reg, CS, OBC, dt) Takes care of (1) building a new grid and (2) remapping all variables between the old grid and the new grid. The creation of the new grid can be based on z coordinates, target interface densities, sigma coordinates or any arbitrary coordinate system. :param g: [in] Ocean grid informations :param gv: [in] Ocean vertical grid structure :param h: [inout] Current 3D grid obtained after the last time step [H ~> m or kg-2] :param tv: [inout] Thermodynamic variable structure :param reg: Tracer registry structure :param cs: Regridding parameters and options :param obc: Open boundary structure :param dt: [in] Time step between calls to ALE_main [T ~> s] :callto: :f:func:`ale_update_regrid_weights ` :callto: :f:func:`check_grid ` :callto: :f:func:`remap_all_state_vars ` .. f:subroutine:: subroutine ale_offline_inputs(CS, G, GV, h, tv, Reg, uhtr, vhtr, Kd, debug, OBC) Regrid/remap stored fields used for offline tracer integrations. These input fields are assumed to have the same layer thicknesses at the end of the last offline interval (which should be a Zstar grid). This routine builds a grid on the runtime specified vertical coordinate. :param cs: Regridding parameters and options :param g: [in] Ocean grid informations :param gv: [in] Ocean vertical grid structure :param h: [inout] Layer thicknesses :param tv: [inout] Thermodynamic variable structure :param reg: Tracer registry structure :param uhtr: [inout] Zonal mass fluxes :param vhtr: [inout] Meridional mass fluxes :param kd: [inout] Input diffusivites :param debug: [in] If true, then turn checksums :param obc: Open boundary structure :callto: :f:func:`ale_remap_scalar ` :callto: :f:func:`check_grid ` :callto: :f:func:`remap_all_state_vars ` .. f:subroutine:: subroutine ale_offline_tracer_final(G, GV, h, tv, h_target, Reg, CS, OBC) Remaps all tracers from h onto h_target. This is intended to be called when tracers are done offline. In the case where transports don't quite conserve, we still want to make sure that layer thicknesses offline do not drift too far away from the online model. :param g: [in] Ocean grid informations :param gv: [in] Ocean vertical grid structure :param h: [inout] Current 3D grid obtained after the last time step [H ~> m or kg-2] :param tv: [inout] Thermodynamic variable structure :param h_target: [inout] Current 3D grid obtained after last time step [H ~> m or kg-2] :param reg: Tracer registry structure :param cs: Regridding parameters and options :param obc: Open boundary structure :callto: :f:func:`check_grid ` :callto: :f:func:`remap_all_state_vars ` .. f:subroutine:: subroutine check_grid(G, GV, h, threshold) Check grid for negative thicknesses. :param g: [in] Ocean grid structure :param gv: [in] Ocean vertical grid structure :param h: [in] Current 3D grid obtained after the last time step [H ~> m or kg m-2] :param threshold: [in] Value below which to flag issues, [H ~> m or kg m-2] :calledfrom: :f:func:`ale_main ` :calledfrom: :f:func:`ale_main_offline ` :calledfrom: :f:func:`ale_offline_inputs ` :calledfrom: :f:func:`ale_offline_tracer_final ` .. f:subroutine:: subroutine ale_build_grid(G, GV, regridCS, remapCS, h, tv, debug, frac_shelf_h) Generates new grid. :param g: [in] Ocean grid structure :param gv: [in] Ocean vertical grid structure :param regridcs: [in] Regridding parameters and options :param remapcs: [in] Remapping parameters and options :param tv: [inout] Thermodynamical variable structure :param h: [inout] Current 3D grid obtained after the last time step [H ~> m or kg-2] :param debug: [in] If true, show the call tree :param frac_shelf_h: Fractional ice shelf coverage .. f:subroutine:: subroutine ale_regrid_accelerated(CS, G, GV, h, tv, n, u, v, OBC, Reg, dt, dzRegrid, initial) For a state-based coordinate, accelerate the process of regridding by repeatedly applying the grid calculation algorithm. :param cs: ALE control structure :param g: [inout] Ocean grid :param gv: [in] Vertical grid :param h: [inout] Original thicknesses [H ~> m or kg-2] :param tv: [inout] Thermo vars (T/S/EOS) :param n: [in] Number of times to regrid :param u: [inout] Zonal velocity [L T-1 ~> m s-1] :param v: [inout] Meridional velocity [L T-1 ~> m s-1] :param obc: Open boundary structure :param reg: Tracer registry to remap onto new grid :param dt: [in] Model timestep to provide a timescale for regridding [T ~> s] :param dzregrid: [inout] Final change in interface positions :param initial: [in] Whether we're being called from an initialization routine (and expect diagnostics to work) :callto: :f:func:`ale_update_regrid_weights ` :callto: :f:func:`remap_all_state_vars ` .. f:subroutine:: subroutine remap_all_state_vars(CS_remapping, CS_ALE, G, GV, h_old, h_new, Reg, OBC, dxInterface, u, v, debug, dt) This routine takes care of remapping all variable between the old and the new grids. When velocity components need to be remapped, thicknesses at velocity points are taken to be arithmetic averages of tracer thicknesses. This routine is called during initialization of the model at time=0, to remap initiali conditions to the model grid. It is also called during a time step to update the state. :param cs_remapping: [in] Remapping control structure :param cs_ale: [in] ALE control structure :param g: [in] Ocean grid structure :param gv: [in] Ocean vertical grid structure :param h_old: [in] Thickness of source grid [H ~> m or kg-2] :param h_new: [in] Thickness of destination grid [H ~> m or kg-2] :param reg: Tracer registry structure :param obc: Open boundary structure :param dxinterface: [in] Change in interface position :param u: [inout] Zonal velocity [L T-1 ~> m s-1] :param v: [inout] Meridional velocity [L T-1 ~> m s-1] :param debug: [in] If true, show the call tree :param dt: [in] time step for diagnostics [T ~> s] :calledfrom: :f:func:`ale_main ` :calledfrom: :f:func:`ale_main_offline ` :calledfrom: :f:func:`ale_offline_inputs ` :calledfrom: :f:func:`ale_offline_tracer_final ` :calledfrom: :f:func:`ale_regrid_accelerated ` .. f:subroutine:: subroutine ale_remap_scalar(CS, G, GV, nk_src, h_src, s_src, h_dst, s_dst, all_cells, old_remap, answers_2018) Remaps a single scalar between grids described by thicknesses h_src and h_dst. h_dst must be dimensioned as a model array with GVke layers while h_src can have an arbitrary number of layers specified by nk_src. :param cs: [in] Remapping control structure :param g: [in] Ocean grid structure :param gv: [in] Ocean vertical grid structure :param nk_src: [in] Number of levels on source grid :param h_src: [in] Level thickness of source grid [H ~> m or kg-2] :param s_src: [in] Scalar on source grid :param h_dst: [in] Level thickness of destination grid [H ~> m or kg-2] :param s_dst: [inout] Scalar on destination grid :param all_cells: [in] If false, only reconstruct for non-vanished cells. Use all vanished layers otherwise (default). :param old_remap: [in] If true, use the old "remapping_core_w" method, otherwise use "remapping_core_h". :param answers_2018: [in] If true, use the order of arithmetic and expressions that recover the answers for remapping from the end of 2018. Otherwise, use more robust forms of the same expressions. :calledfrom: :f:func:`ale_offline_inputs ` .. f:subroutine:: subroutine ts_plm_edge_values(CS, S_t, S_b, T_t, T_b, G, GV, tv, h, bdry_extrap) Calculate edge values (top and bottom of layer) for T and S consistent with a PLM reconstruction in the vertical direction. Boundary reconstructions are PCM unless bdry_extrap is true. :param g: [in] ocean grid structure :param gv: [in] Ocean vertical grid structure :param cs: [inout] module control structure :param s_t: [inout] Salinity at the top edge of each layer :param s_b: [inout] Salinity at the bottom edge of each layer :param t_t: [inout] Temperature at the top edge of each layer :param t_b: [inout] Temperature at the bottom edge of each layer :param tv: [in] thermodynamics structure :param h: [in] layer thickness [H ~> m or kg m-2] :param bdry_extrap: [in] If true, use high-order boundary extrapolation within boundary cells :callto: :f:func:`ale_plm_edge_values ` .. f:subroutine:: subroutine ale_plm_edge_values(CS, G, GV, h, Q, bdry_extrap, Q_t, Q_b) Calculate edge values (top and bottom of layer) 3d scalar array. Boundary reconstructions are PCM unless bdry_extrap is true. :param cs: [in] module control structure :param g: [in] ocean grid structure :param gv: [in] Ocean vertical grid structure :param h: [in] layer thickness [H ~> m or kg m-2] :param q: [in] 3d scalar array :param bdry_extrap: [in] If true, use high-order boundary extrapolation within boundary cells :param q_t: [inout] Scalar at the top edge of each layer :param q_b: [inout] Scalar at the bottom edge of each layer :calledfrom: :f:func:`ts_plm_edge_values ` .. f:subroutine:: subroutine ts_ppm_edge_values(CS, S_t, S_b, T_t, T_b, G, GV, tv, h, bdry_extrap) Calculate edge values (top and bottom of layer) for T and S consistent with a PPM reconstruction in the vertical direction. Boundary reconstructions are PCM unless bdry_extrap is true. :param g: [in] ocean grid structure :param gv: [in] Ocean vertical grid structure :param cs: [inout] module control structure :param s_t: [inout] Salinity at the top edge of each layer :param s_b: [inout] Salinity at the bottom edge of each layer :param t_t: [inout] Temperature at the top edge of each layer :param t_b: [inout] Temperature at the bottom edge of each layer :param tv: [in] thermodynamics structure :param h: [in] layer thicknesses [H ~> m or kg m-2] :param bdry_extrap: [in] If true, use high-order boundary extrapolation within boundary cells .. f:subroutine:: subroutine ale_initregridding(GV, US, max_depth, param_file, mdl, regridCS) Initializes regridding for the main ALE algorithm. :param gv: [in] Ocean vertical grid structure :param us: [in] A dimensional unit scaling type :param max_depth: [in] The maximum depth of the ocean [Z ~> m]. :param param_file: [in] parameter file :param mdl: [in] Name of calling module :param regridcs: [out] Regridding parameters and work arrays :calledfrom: :f:func:`ale_init ` .. f:function:: real function ale_getcoordinate(CS) Query the target coordinate interfaces positions. :param cs: module control structure .. f:function:: character(len=20) function ale_getcoordinateunits(CS) Query the target coordinate units. :param cs: module control structure .. f:function:: logical function ale_remap_init_conds(CS) Returns true if initial conditions should be regridded and remapped. :param cs: module control structure .. f:subroutine:: subroutine ale_update_regrid_weights(dt, CS) Updates the weights for time filtering the new grid generated in regridding. :param dt: [in] Time-step used between ALE calls [T ~> s] :param cs: ALE control structure :calledfrom: :f:func:`ale_main ` :calledfrom: :f:func:`ale_main_offline ` :calledfrom: :f:func:`ale_regrid_accelerated ` .. f:subroutine:: subroutine ale_updateverticalgridtype(CS, GV) Update the vertical grid type with ALE information. This subroutine sets information in the verticalGrid_type to be consistent with the use of ALE mode. :param cs: ALE control structure :param gv: vertical grid information .. f:subroutine:: subroutine ale_writecoordinatefile(CS, GV, directory) Write the vertical coordinate information into a file. This subroutine writes out a file containing any available data related to the vertical grid used by the MOM ocean model when in ALE mode. :param cs: module control structure :param gv: [in] ocean vertical grid structure :param directory: [in] directory for writing grid info .. f:subroutine:: subroutine ale_initthicknesstocoord(CS, G, GV, h) Set h to coordinate values for fixed coordinate systems. :param cs: [inout] module control structure :param g: [in] module grid structure :param gv: [in] Ocean vertical grid structure :param h: [out] layer thickness [H ~> m or kg m-2] [debug] xpath(./compounddef/compoundname[text()="mom_ale::ale_cs"]/..) match([('id', 'structmom__ale_1_1ale__cs'), ('kind', 'type'), ('language', 'Fortran'), ('prot', 'public')]) [debug] DoxygenModuleDocumenter format_signature called [debug] verbosity = 3 [debug] Setting build mode: latex [debug] method=visit_para [app] emitting event: 'autodoc-process-docstring'('doxymodule', 'mom_ale::ale_cs', , {}, ['', 'ALE control str [app] emitting event: 'autodoc-process-docstring'('doxymodule', 'mom_ale::ale_cs', , {}, ['`More... , {}, ['', 'ALE control str [debug] DoxygenMethodDocumenter format_signature called ((param_file, GV, US, max_depth, CS)) [debug] verbosity = 3 [debug] Setting build mode: latex [debug] method=visit_para [debug] method=visit_ref [debug] refid(MOM_8F90) kindref(compound) ref([]) [debug] ref([('id', 'MOM_8F90'), ('kind', 'file'), ('language', 'Fortran')]) [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'mom_ale::ale_init', , {}, ['', 'This routine is [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'mom_ale::ale_init', , {}, ['', 'This routine is [debug] DoxygenMethodDocumenter format_signature called ((Time, G, GV, US, diag, CS)) [debug] verbosity = 3 [debug] Setting build mode: latex [debug] method=visit_para [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'mom_ale::ale_register_diags', , {}, ['', 'Initi [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'mom_ale::ale_register_diags', , {}, ['', 'Initi [debug] DoxygenMethodDocumenter format_signature called ((CS, G, GV, h)) [debug] verbosity = 3 [debug] Setting build mode: latex [debug] method=visit_para [debug] method=visit_ref [debug] refid(MOM_8F90) kindref(compound) ref([]) [debug] ref([('id', 'MOM_8F90'), ('kind', 'file'), ('language', 'Fortran')]) [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'mom_ale::adjustgridforintegrity', , {}, ['', 'C [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'mom_ale::adjustgridforintegrity', , {}, ['', 'C [debug] DoxygenMethodDocumenter format_signature called ((CS)) [debug] verbosity = 3 [debug] Setting build mode: latex [debug] method=visit_para [debug] method=visit_ref [debug] refid(MOM_8F90) kindref(compound) ref([]) [debug] ref([('id', 'MOM_8F90'), ('kind', 'file'), ('language', 'Fortran')]) [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'mom_ale::ale_end', , {}, ['', 'End of regriddin [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'mom_ale::ale_end', , {}, ['', 'End of regriddin [debug] DoxygenMethodDocumenter format_signature called ((G, GV, US, h, u, v, tv, Reg, CS, OBC, dt, frac_shelf_h)) [debug] verbosity = 3 [debug] Setting build mode: latex [debug] method=visit_para [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'mom_ale::ale_main', , {}, ['', 'Takes care of ( [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'mom_ale::ale_main', , {}, ['', 'Takes care of ( [debug] DoxygenMethodDocumenter format_signature called ((G, GV, h, tv, Reg, CS, OBC, dt)) [debug] verbosity = 3 [debug] Setting build mode: latex [debug] method=visit_para [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'mom_ale::ale_main_offline', , {}, ['', 'Takes c [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'mom_ale::ale_main_offline', , {}, ['', 'Takes c [debug] DoxygenMethodDocumenter format_signature called ((CS, G, GV, h, tv, Reg, uhtr, vhtr, Kd, debug, OBC)) [debug] verbosity = 3 [debug] Setting build mode: latex [debug] method=visit_para [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'mom_ale::ale_offline_inputs', , {}, ['', 'Regri [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'mom_ale::ale_offline_inputs', , {}, ['', 'Regri [debug] DoxygenMethodDocumenter format_signature called ((G, GV, h, tv, h_target, Reg, CS, OBC)) [debug] verbosity = 3 [debug] Setting build mode: latex [debug] method=visit_para [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'mom_ale::ale_offline_tracer_final', , {}, ['', [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'mom_ale::ale_offline_tracer_final', , {}, ['', [debug] DoxygenMethodDocumenter format_signature called ((G, GV, h, threshold)) [debug] verbosity = 3 [debug] Setting build mode: latex [debug] method=visit_para [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'mom_ale::check_grid', , {}, ['', 'Check grid fo [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'mom_ale::check_grid', , {}, ['', 'Check grid fo [debug] DoxygenMethodDocumenter format_signature called ((G, GV, regridCS, remapCS, h, tv, debug, frac_shelf_h)) [debug] verbosity = 3 [debug] Setting build mode: latex [debug] method=visit_para [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'mom_ale::ale_build_grid', , {}, ['', 'Generates [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'mom_ale::ale_build_grid', , {}, ['', 'Generates [debug] DoxygenMethodDocumenter format_signature called ((CS, G, GV, h, tv, n, u, v, OBC, Reg, dt, dzRegrid, initial)) [debug] verbosity = 3 [debug] Setting build mode: latex [debug] method=visit_para [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'mom_ale::ale_regrid_accelerated', , {}, ['', 'F [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'mom_ale::ale_regrid_accelerated', , {}, ['', 'F [debug] DoxygenMethodDocumenter format_signature called ((CS_remapping, CS_ALE, G, GV, h_old, h_new, Reg, OBC, dxInterface, u, v, debug, dt)) [debug] verbosity = 3 [debug] Setting build mode: latex [debug] method=visit_para [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'mom_ale::remap_all_state_vars', , {}, ['', 'Thi [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'mom_ale::remap_all_state_vars', , {}, ['', 'Thi [debug] DoxygenMethodDocumenter format_signature called ((CS, G, GV, nk_src, h_src, s_src, h_dst, s_dst, all_cells, old_remap, answers_2018)) [debug] verbosity = 3 [debug] Setting build mode: latex [debug] method=visit_para [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'mom_ale::ale_remap_scalar', , {}, ['', 'Remaps [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'mom_ale::ale_remap_scalar', , {}, ['', 'Remaps [debug] DoxygenMethodDocumenter format_signature called ((CS, S_t, S_b, T_t, T_b, G, GV, tv, h, bdry_extrap)) [debug] verbosity = 3 [debug] Setting build mode: latex [debug] method=visit_para [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'mom_ale::ts_plm_edge_values', , {}, ['', 'Calcu [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'mom_ale::ts_plm_edge_values', , {}, ['', 'Calcu [debug] DoxygenMethodDocumenter format_signature called ((CS, G, GV, h, Q, bdry_extrap, Q_t, Q_b)) [debug] verbosity = 3 [debug] Setting build mode: latex [debug] method=visit_para [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'mom_ale::ale_plm_edge_values', , {}, ['', 'Calc [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'mom_ale::ale_plm_edge_values', , {}, ['', 'Calc [debug] DoxygenMethodDocumenter format_signature called ((CS, S_t, S_b, T_t, T_b, G, GV, tv, h, bdry_extrap)) [debug] verbosity = 3 [debug] Setting build mode: latex [debug] method=visit_para [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'mom_ale::ts_ppm_edge_values', , {}, ['', 'Calcu [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'mom_ale::ts_ppm_edge_values', , {}, ['', 'Calcu [debug] DoxygenMethodDocumenter format_signature called ((GV, US, max_depth, param_file, mdl, regridCS)) [debug] verbosity = 3 [debug] Setting build mode: latex [debug] method=visit_para [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'mom_ale::ale_initregridding', , {}, ['', 'Initi [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'mom_ale::ale_initregridding', , {}, ['', 'Initi [debug] DoxygenMethodDocumenter format_signature called ((CS)) [debug] verbosity = 3 [debug] Setting build mode: latex [debug] method=visit_para [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'mom_ale::ale_getcoordinate', , {}, ['', 'Query [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'mom_ale::ale_getcoordinate', , {}, ['', 'Query [debug] DoxygenMethodDocumenter format_signature called ((CS)) [debug] verbosity = 3 [debug] Setting build mode: latex [debug] method=visit_para [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'mom_ale::ale_getcoordinateunits', , {}, ['', 'Q [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'mom_ale::ale_getcoordinateunits', , {}, ['', 'Q [debug] DoxygenMethodDocumenter format_signature called ((CS)) [debug] verbosity = 3 [debug] Setting build mode: latex [debug] method=visit_para [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'mom_ale::ale_remap_init_conds', , {}, ['', 'Ret [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'mom_ale::ale_remap_init_conds', , {}, ['', 'Ret [debug] DoxygenMethodDocumenter format_signature called ((dt, CS)) [debug] verbosity = 3 [debug] Setting build mode: latex [debug] method=visit_para [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'mom_ale::ale_update_regrid_weights', , {}, ['', [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'mom_ale::ale_update_regrid_weights', , {}, ['', [debug] DoxygenMethodDocumenter format_signature called ((CS, GV)) [debug] verbosity = 3 [debug] Setting build mode: latex [debug] method=visit_para [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'mom_ale::ale_updateverticalgridtype', , {}, ['' [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'mom_ale::ale_updateverticalgridtype', , {}, ['' [debug] DoxygenMethodDocumenter format_signature called ((CS, GV, directory)) [debug] verbosity = 3 [debug] Setting build mode: latex [debug] method=visit_para [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'mom_ale::ale_writecoordinatefile', , {}, ['', ' [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'mom_ale::ale_writecoordinatefile', , {}, ['', ' [debug] DoxygenMethodDocumenter format_signature called ((CS, G, GV, h)) [debug] verbosity = 3 [debug] Setting build mode: latex [debug] method=visit_para [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'mom_ale::ale_initthicknesstocoord', , {}, ['', [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'mom_ale::ale_initthicknesstocoord', , {}, ['', [fd] run(.. f:type:: ale_cs) [fd] sig(ale_cs) [fd] ftype(None) objtype(None) modname(None) typename() name(ale_cs) arglist(None) [fd] fullname(mom_ale/ale_cs) ftype(None) [fd] name(('mom_ale/ale_cs', None)) sig(ale_cs) signode(type mom_ale/ale_cs) [fd] run(.. f:subroutine:: subroutine ale_init(param_file, GV, US, max_depth, CS)) [fd] sig(subroutine ale_init(param_file, GV, US, max_depth, CS)) [fd] ftype(None) objtype(subroutine) modname(None) typename() name(ale_init) arglist(param_file, GV, US, max_depth, CS) [fd] fullname(mom_ale/ale_init) ftype(None) [fd] name(('mom_ale/ale_init', None)) sig(subroutine ale_init(param_file, GV, US, max_depth, CS)) signode(subroutine mom_ale/ale_initparam_fileGVUSmax_depthCS) [fd] run(.. f:subroutine:: subroutine ale_register_diags(Time, G, GV, US, diag, CS)) [fd] sig(subroutine ale_register_diags(Time, G, GV, US, diag, CS)) [fd] ftype(None) objtype(subroutine) modname(None) typename() name(ale_register_diags) arglist(Time, G, GV, US, diag, CS) [fd] fullname(mom_ale/ale_register_diags) ftype(None) [fd] name(('mom_ale/ale_register_diags', None)) sig(subroutine ale_register_diags(Time, G, GV, US, diag, CS)) signode(subroutine mom_ale/ale_register_diagsTimeGGVUSdiagCS) [fd] run(.. f:subroutine:: subroutine adjustgridforintegrity(CS, G, GV, h)) [fd] sig(subroutine adjustgridforintegrity(CS, G, GV, h)) [fd] ftype(None) objtype(subroutine) modname(None) typename() name(adjustgridforintegrity) arglist(CS, G, GV, h) [fd] fullname(mom_ale/adjustgridforintegrity) ftype(None) [fd] name(('mom_ale/adjustgridforintegrity', None)) sig(subroutine adjustgridforintegrity(CS, G, GV, h)) signode(subroutine mom_ale/adjustgridforintegrityCSGGVh) [fd] run(.. f:subroutine:: subroutine ale_end(CS)) [fd] sig(subroutine ale_end(CS)) [fd] ftype(None) objtype(subroutine) modname(None) typename() name(ale_end) arglist(CS) [fd] fullname(mom_ale/ale_end) ftype(None) [fd] name(('mom_ale/ale_end', None)) sig(subroutine ale_end(CS)) signode(subroutine mom_ale/ale_endCS) [fd] run(.. f:subroutine:: subroutine ale_main(G, GV, US, h, u, v, tv, Reg, CS, OBC, dt, frac_shelf_h)) [fd] sig(subroutine ale_main(G, GV, US, h, u, v, tv, Reg, CS, OBC, dt, frac_shelf_h)) [fd] ftype(None) objtype(subroutine) modname(None) typename() name(ale_main) arglist(G, GV, US, h, u, v, tv, Reg, CS, OBC, dt, frac_shelf_h) [fd] fullname(mom_ale/ale_main) ftype(None) [fd] name(('mom_ale/ale_main', None)) sig(subroutine ale_main(G, GV, US, h, u, v, tv, Reg, CS, OBC, dt, frac_shelf_h)) signode(subroutine mom_ale/ale_mainGGVUShuvtvRegCSOBCdtfrac_shelf_h) [fd] run(.. f:subroutine:: subroutine ale_main_offline(G, GV, h, tv, Reg, CS, OBC, dt)) [fd] sig(subroutine ale_main_offline(G, GV, h, tv, Reg, CS, OBC, dt)) [fd] ftype(None) objtype(subroutine) modname(None) typename() name(ale_main_offline) arglist(G, GV, h, tv, Reg, CS, OBC, dt) [fd] fullname(mom_ale/ale_main_offline) ftype(None) [fd] name(('mom_ale/ale_main_offline', None)) sig(subroutine ale_main_offline(G, GV, h, tv, Reg, CS, OBC, dt)) signode(subroutine mom_ale/ale_main_offlineGGVhtvRegCSOBCdt) [fd] run(.. f:subroutine:: subroutine ale_offline_inputs(CS, G, GV, h, tv, Reg, uhtr, vhtr, Kd, debug, OBC)) [fd] sig(subroutine ale_offline_inputs(CS, G, GV, h, tv, Reg, uhtr, vhtr, Kd, debug, OBC)) [fd] ftype(None) objtype(subroutine) modname(None) typename() name(ale_offline_inputs) arglist(CS, G, GV, h, tv, Reg, uhtr, vhtr, Kd, debug, OBC) [fd] fullname(mom_ale/ale_offline_inputs) ftype(None) [fd] name(('mom_ale/ale_offline_inputs', None)) sig(subroutine ale_offline_inputs(CS, G, GV, h, tv, Reg, uhtr, vhtr, Kd, debug, OBC)) signode(subroutine mom_ale/ale_offline_inputsCSGGVhtvReguhtrvhtrKddebugOBC) [fd] run(.. f:subroutine:: subroutine ale_offline_tracer_final(G, GV, h, tv, h_target, Reg, CS, OBC)) [fd] sig(subroutine ale_offline_tracer_final(G, GV, h, tv, h_target, Reg, CS, OBC)) [fd] ftype(None) objtype(subroutine) modname(None) typename() name(ale_offline_tracer_final) arglist(G, GV, h, tv, h_target, Reg, CS, OBC) [fd] fullname(mom_ale/ale_offline_tracer_final) ftype(None) [fd] name(('mom_ale/ale_offline_tracer_final', None)) sig(subroutine ale_offline_tracer_final(G, GV, h, tv, h_target, Reg, CS, OBC)) signode(subroutine mom_ale/ale_offline_tracer_finalGGVhtvh_targetRegCSOBC) [fd] run(.. f:subroutine:: subroutine check_grid(G, GV, h, threshold)) [fd] sig(subroutine check_grid(G, GV, h, threshold)) [fd] ftype(None) objtype(subroutine) modname(None) typename() name(check_grid) arglist(G, GV, h, threshold) [fd] fullname(mom_ale/check_grid) ftype(None) [fd] name(('mom_ale/check_grid', None)) sig(subroutine check_grid(G, GV, h, threshold)) signode(subroutine mom_ale/check_gridGGVhthreshold) [fd] run(.. f:subroutine:: subroutine ale_build_grid(G, GV, regridCS, remapCS, h, tv, debug, frac_shelf_h)) [fd] sig(subroutine ale_build_grid(G, GV, regridCS, remapCS, h, tv, debug, frac_shelf_h)) [fd] ftype(None) objtype(subroutine) modname(None) typename() name(ale_build_grid) arglist(G, GV, regridCS, remapCS, h, tv, debug, frac_shelf_h) [fd] fullname(mom_ale/ale_build_grid) ftype(None) [fd] name(('mom_ale/ale_build_grid', None)) sig(subroutine ale_build_grid(G, GV, regridCS, remapCS, h, tv, debug, frac_shelf_h)) signode(subroutine mom_ale/ale_build_gridGGVregridCSremapCShtvdebugfrac_shelf_h) [fd] run(.. f:subroutine:: subroutine ale_regrid_accelerated(CS, G, GV, h, tv, n, u, v, OBC, Reg, dt, dzRegrid, initial)) [fd] sig(subroutine ale_regrid_accelerated(CS, G, GV, h, tv, n, u, v, OBC, Reg, dt, dzRegrid, initial)) [fd] ftype(None) objtype(subroutine) modname(None) typename() name(ale_regrid_accelerated) arglist(CS, G, GV, h, tv, n, u, v, OBC, Reg, dt, dzRegrid, initial) [fd] fullname(mom_ale/ale_regrid_accelerated) ftype(None) [fd] name(('mom_ale/ale_regrid_accelerated', None)) sig(subroutine ale_regrid_accelerated(CS, G, GV, h, tv, n, u, v, OBC, Reg, dt, dzRegrid, initial)) signode(subroutine mom_ale/ale_regrid_acceleratedCSGGVhtvnuvOBCRegdtdzRegridinitial) [fd] run(.. f:subroutine:: subroutine remap_all_state_vars(CS_remapping, CS_ALE, G, GV, h_old, h_new, Reg, OBC, dxInterface, u, v, debug, dt)) [fd] sig(subroutine remap_all_state_vars(CS_remapping, CS_ALE, G, GV, h_old, h_new, Reg, OBC, dxInterface, u, v, debug, dt)) [fd] ftype(None) objtype(subroutine) modname(None) typename() name(remap_all_state_vars) arglist(CS_remapping, CS_ALE, G, GV, h_old, h_new, Reg, OBC, dxInterface, u, v, debug, dt) [fd] fullname(mom_ale/remap_all_state_vars) ftype(None) [fd] name(('mom_ale/remap_all_state_vars', None)) sig(subroutine remap_all_state_vars(CS_remapping, CS_ALE, G, GV, h_old, h_new, Reg, OBC, dxInterface, u, v, debug, dt)) signode(subroutine mom_ale/remap_all_state_varsCS_remappingCS_ALEGGVh_oldh_newRegOBCdxInterfaceuvdebugdt) [fd] run(.. f:subroutine:: subroutine ale_remap_scalar(CS, G, GV, nk_src, h_src, s_src, h_dst, s_dst, all_cells, old_remap, answers_2018)) [fd] sig(subroutine ale_remap_scalar(CS, G, GV, nk_src, h_src, s_src, h_dst, s_dst, all_cells, old_remap, answers_2018)) [fd] ftype(None) objtype(subroutine) modname(None) typename() name(ale_remap_scalar) arglist(CS, G, GV, nk_src, h_src, s_src, h_dst, s_dst, all_cells, old_remap, answers_2018) [fd] fullname(mom_ale/ale_remap_scalar) ftype(None) [fd] name(('mom_ale/ale_remap_scalar', None)) sig(subroutine ale_remap_scalar(CS, G, GV, nk_src, h_src, s_src, h_dst, s_dst, all_cells, old_remap, answers_2018)) signode(subroutine mom_ale/ale_remap_scalarCSGGVnk_srch_srcs_srch_dsts_dstall_cellsold_remapanswers_2018) [fd] run(.. f:subroutine:: subroutine ts_plm_edge_values(CS, S_t, S_b, T_t, T_b, G, GV, tv, h, bdry_extrap)) [fd] sig(subroutine ts_plm_edge_values(CS, S_t, S_b, T_t, T_b, G, GV, tv, h, bdry_extrap)) [fd] ftype(None) objtype(subroutine) modname(None) typename() name(ts_plm_edge_values) arglist(CS, S_t, S_b, T_t, T_b, G, GV, tv, h, bdry_extrap) [fd] fullname(mom_ale/ts_plm_edge_values) ftype(None) [fd] name(('mom_ale/ts_plm_edge_values', None)) sig(subroutine ts_plm_edge_values(CS, S_t, S_b, T_t, T_b, G, GV, tv, h, bdry_extrap)) signode(subroutine mom_ale/ts_plm_edge_valuesCSS_tS_bT_tT_bGGVtvhbdry_extrap) [fd] run(.. f:subroutine:: subroutine ale_plm_edge_values(CS, G, GV, h, Q, bdry_extrap, Q_t, Q_b)) [fd] sig(subroutine ale_plm_edge_values(CS, G, GV, h, Q, bdry_extrap, Q_t, Q_b)) [fd] ftype(None) objtype(subroutine) modname(None) typename() name(ale_plm_edge_values) arglist(CS, G, GV, h, Q, bdry_extrap, Q_t, Q_b) [fd] fullname(mom_ale/ale_plm_edge_values) ftype(None) [fd] name(('mom_ale/ale_plm_edge_values', None)) sig(subroutine ale_plm_edge_values(CS, G, GV, h, Q, bdry_extrap, Q_t, Q_b)) signode(subroutine mom_ale/ale_plm_edge_valuesCSGGVhQbdry_extrapQ_tQ_b) [fd] run(.. f:subroutine:: subroutine ts_ppm_edge_values(CS, S_t, S_b, T_t, T_b, G, GV, tv, h, bdry_extrap)) [fd] sig(subroutine ts_ppm_edge_values(CS, S_t, S_b, T_t, T_b, G, GV, tv, h, bdry_extrap)) [fd] ftype(None) objtype(subroutine) modname(None) typename() name(ts_ppm_edge_values) arglist(CS, S_t, S_b, T_t, T_b, G, GV, tv, h, bdry_extrap) [fd] fullname(mom_ale/ts_ppm_edge_values) ftype(None) [fd] name(('mom_ale/ts_ppm_edge_values', None)) sig(subroutine ts_ppm_edge_values(CS, S_t, S_b, T_t, T_b, G, GV, tv, h, bdry_extrap)) signode(subroutine mom_ale/ts_ppm_edge_valuesCSS_tS_bT_tT_bGGVtvhbdry_extrap) [fd] run(.. f:subroutine:: subroutine ale_initregridding(GV, US, max_depth, param_file, mdl, regridCS)) [fd] sig(subroutine ale_initregridding(GV, US, max_depth, param_file, mdl, regridCS)) [fd] ftype(None) objtype(subroutine) modname(None) typename() name(ale_initregridding) arglist(GV, US, max_depth, param_file, mdl, regridCS) [fd] fullname(mom_ale/ale_initregridding) ftype(None) [fd] name(('mom_ale/ale_initregridding', None)) sig(subroutine ale_initregridding(GV, US, max_depth, param_file, mdl, regridCS)) signode(subroutine mom_ale/ale_initregriddingGVUSmax_depthparam_filemdlregridCS) [fd] run(.. f:function:: real function ale_getcoordinate(CS)) [fd] sig(real function ale_getcoordinate(CS)) [fd] ftype(real) objtype(function) modname(None) typename() name(ale_getcoordinate) arglist(CS) [fd] fullname(mom_ale/ale_getcoordinate) ftype(real) [fd] name(('mom_ale/ale_getcoordinate', 'real')) sig(real function ale_getcoordinate(CS)) signode(function mom_ale/ale_getcoordinateCS [real]) [fd] run(.. f:function:: character(len=20) function ale_getcoordinateunits(CS)) [fd] sig(character(len=20) function ale_getcoordinateunits(CS)) [fd] ftype(character(len=20)) objtype(function) modname(None) typename() name(ale_getcoordinateunits) arglist(CS) [fd] fullname(mom_ale/ale_getcoordinateunits) ftype(character(len=20)) [fd] name(('mom_ale/ale_getcoordinateunits', 'character(len=20)')) sig(character(len=20) function ale_getcoordinateunits(CS)) signode(function mom_ale/ale_getcoordinateunitsCS [character(len=20)]) [fd] run(.. f:function:: logical function ale_remap_init_conds(CS)) [fd] sig(logical function ale_remap_init_conds(CS)) [fd] ftype(logical) objtype(function) modname(None) typename() name(ale_remap_init_conds) arglist(CS) [fd] fullname(mom_ale/ale_remap_init_conds) ftype(logical) [fd] name(('mom_ale/ale_remap_init_conds', 'logical')) sig(logical function ale_remap_init_conds(CS)) signode(function mom_ale/ale_remap_init_condsCS [logical]) [fd] run(.. f:subroutine:: subroutine ale_update_regrid_weights(dt, CS)) [fd] sig(subroutine ale_update_regrid_weights(dt, CS)) [fd] ftype(None) objtype(subroutine) modname(None) typename() name(ale_update_regrid_weights) arglist(dt, CS) [fd] fullname(mom_ale/ale_update_regrid_weights) ftype(None) [fd] name(('mom_ale/ale_update_regrid_weights', None)) sig(subroutine ale_update_regrid_weights(dt, CS)) signode(subroutine mom_ale/ale_update_regrid_weightsdtCS) [fd] run(.. f:subroutine:: subroutine ale_updateverticalgridtype(CS, GV)) [fd] sig(subroutine ale_updateverticalgridtype(CS, GV)) [fd] ftype(None) objtype(subroutine) modname(None) typename() name(ale_updateverticalgridtype) arglist(CS, GV) [fd] fullname(mom_ale/ale_updateverticalgridtype) ftype(None) [fd] name(('mom_ale/ale_updateverticalgridtype', None)) sig(subroutine ale_updateverticalgridtype(CS, GV)) signode(subroutine mom_ale/ale_updateverticalgridtypeCSGV) [fd] run(.. f:subroutine:: subroutine ale_writecoordinatefile(CS, GV, directory)) [fd] sig(subroutine ale_writecoordinatefile(CS, GV, directory)) [fd] ftype(None) objtype(subroutine) modname(None) typename() name(ale_writecoordinatefile) arglist(CS, GV, directory) [fd] fullname(mom_ale/ale_writecoordinatefile) ftype(None) [fd] name(('mom_ale/ale_writecoordinatefile', None)) sig(subroutine ale_writecoordinatefile(CS, GV, directory)) signode(subroutine mom_ale/ale_writecoordinatefileCSGVdirectory) [fd] run(.. f:subroutine:: subroutine ale_initthicknesstocoord(CS, G, GV, h)) [fd] sig(subroutine ale_initthicknesstocoord(CS, G, GV, h)) [fd] ftype(None) objtype(subroutine) modname(None) typename() name(ale_initthicknesstocoord) arglist(CS, G, GV, h) [fd] fullname(mom_ale/ale_initthicknesstocoord) ftype(None) [fd] name(('mom_ale/ale_initthicknesstocoord', None)) sig(subroutine ale_initthicknesstocoord(CS, G, GV, h)) signode(subroutine mom_ale/ale_initthicknesstocoordCSGGVh) [i18n] PATCH: 'docutils.nodes.field_name' to have source and line: Type fields [i18n] PATCH: 'docutils.nodes.field_name' to have source and line: Parameters [i18n] PATCH: 'docutils.nodes.field_name' to have source and line: Call to [i18n] PATCH: 'docutils.nodes.field_name' to have source and line: Parameters [i18n] PATCH: 'docutils.nodes.field_name' to have source and line: Parameters [i18n] PATCH: 'docutils.nodes.field_name' to have source and line: Parameters [i18n] PATCH: 'docutils.nodes.field_name' to have source and line: Parameters [i18n] PATCH: 'docutils.nodes.field_name' to have source and line: Call to [i18n] PATCH: 'docutils.nodes.field_name' to have source and line: Parameters [i18n] PATCH: 'docutils.nodes.field_name' to have source and line: Call to [i18n] PATCH: 'docutils.nodes.field_name' to have source and line: Parameters [i18n] PATCH: 'docutils.nodes.field_name' to have source and line: Call to [i18n] PATCH: 'docutils.nodes.field_name' to have source and line: Parameters [i18n] PATCH: 'docutils.nodes.field_name' to have source and line: Call to [i18n] PATCH: 'docutils.nodes.field_name' to have source and line: Parameters [i18n] PATCH: 'docutils.nodes.field_name' to have source and line: Called from [i18n] PATCH: 'docutils.nodes.field_name' to have source and line: Parameters [i18n] PATCH: 'docutils.nodes.field_name' to have source and line: Parameters [i18n] PATCH: 'docutils.nodes.field_name' to have source and line: Call to [i18n] PATCH: 'docutils.nodes.field_name' to have source and line: Parameters [i18n] PATCH: 'docutils.nodes.field_name' to have source and line: Called from [i18n] PATCH: 'docutils.nodes.field_name' to have source and line: Parameters [i18n] PATCH: 'docutils.nodes.field_name' to have source and line: Called from [i18n] PATCH: 'docutils.nodes.field_name' to have source and line: Parameters [i18n] PATCH: 'docutils.nodes.field_name' to have source and line: Call to [i18n] PATCH: 'docutils.nodes.field_name' to have source and line: Parameters [i18n] PATCH: 'docutils.nodes.field_name' to have source and line: Called from [i18n] PATCH: 'docutils.nodes.field_name' to have source and line: Parameters [i18n] PATCH: 'docutils.nodes.field_name' to have source and line: Parameters [i18n] PATCH: 'docutils.nodes.field_name' to have source and line: Called from [i18n] PATCH: 'docutils.nodes.field_name' to have source and line: Parameters [i18n] PATCH: 'docutils.nodes.field_name' to have source and line: Parameters [i18n] PATCH: 'docutils.nodes.field_name' to have source and line: Parameters [i18n] PATCH: 'docutils.nodes.field_name' to have source and line: Parameters [i18n] PATCH: 'docutils.nodes.field_name' to have source and line: Called from [i18n] PATCH: 'docutils.nodes.field_name' to have source and line: Parameters [i18n] PATCH: 'docutils.nodes.field_name' to have source and line: Parameters [i18n] PATCH: 'docutils.nodes.field_name' to have source and line: Parameters [app] emitting event: 'doctree-read'(>,) reading sources... [ 7%] api/generated/modules/mom_eos [app] emitting event: 'env-purge-doc'(, 'api/generated/modules/mom_eos') [app] emitting event: 'source-read'('api/generated/modules/mom_eos', ['.. autodoxymodule:: mom_eos\n :members:\n :methods:\n :typ [autodoc] /home/cermak/src/MOM6/docs/api/generated/modules/mom_eos.rst:1: input: .. autodoxymodule:: mom_eos :members: :methods: :types: ---------- Data Types ---------- .. autodoxysummary:: :kind: type ~mom_eos::eos_type --------------------- Functions/Subroutines --------------------- .. autodoxysummary:: :kind: func ~mom_eos::calculate_density_scalar ~mom_eos::calculate_stanley_density_scalar ~mom_eos::calculate_density_array ~mom_eos::calculate_stanley_density_array ~mom_eos::calculate_density_1d ~mom_eos::calculate_stanley_density_1d ~mom_eos::calculate_spec_vol_array ~mom_eos::calc_spec_vol_scalar ~mom_eos::calc_spec_vol_1d ~mom_eos::calculate_tfreeze_scalar ~mom_eos::calculate_tfreeze_array ~mom_eos::calculate_density_derivs_array ~mom_eos::calculate_density_derivs_1d ~mom_eos::calculate_density_derivs_scalar ~mom_eos::calculate_density_second_derivs_array ~mom_eos::calculate_density_second_derivs_scalar ~mom_eos::calculate_spec_vol_derivs_array ~mom_eos::calc_spec_vol_derivs_1d ~mom_eos::calculate_compress_array ~mom_eos::calculate_compress_scalar ~mom_eos::eos_domain ~mom_eos::analytic_int_specific_vol_dp ~mom_eos::analytic_int_density_dz ~mom_eos::query_compressible ~mom_eos::eos_init ~mom_eos::eos_manual_init ~mom_eos::eos_allocate ~mom_eos::eos_end ~mom_eos::eos_use_linear ~mom_eos::convert_temp_salt_for_teos10 ~mom_eos::eos_quadrature ~mom_eos::extract_member_eos [debug] xpath(./compounddef/compoundname[text()="mom_eos"]/..) match([('id', 'namespacemom__eos'), ('kind', 'namespace'), ('language', 'Fortran')]) [debug] add_title:mom_eos module reference [debug] verbosity = 3 [debug] Setting build mode: latex [debug] method=visit_para [app] emitting event: 'autodoc-process-docstring'('doxymodule', 'mom_eos', , {'members': , {'members': , {'members': )]) [autodoc] module analyzer failed: error importing 'mom_eos' (exception was: ModuleNotFoundError("No module named 'mom_eos'")) [app] emitting event: 'autodoc-process-signature'('doxytype', 'mom_eos::eos_type', , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': ), ('calculate_stanley_density_scalar', ), ('calculate_density_array', ), ('calculate_stanley_density_array', ), ('calculate_density_1d', ), ('calculate_stanley_density_1d', ), ('calculate_spec_vol_array', ), ('calc_spec_vol_scalar', ), ('calc_spec_vol_1d', ), ('calculate_tfreeze_scalar', ), ('calculate_tfreeze_array', ), ('calculate_density_derivs_array', ), ('calculate_density_derivs_1d', ), ('calculate_density_derivs_scalar', ), ('calculate_density_second_derivs_array', ), ('calculate_density_second_derivs_scalar', ), ('calculate_spec_vol_derivs_array', ), ('calc_spec_vol_derivs_1d', ), ('calculate_compress_array', ), ('calculate_compress_scalar', ), ('eos_domain', ), ('analytic_int_specific_vol_dp', ), ('analytic_int_density_dz', ), ('query_compressible', ), ('eos_init', ), ('eos_manual_init', ), ('eos_allocate', ), ('eos_end', ), ('eos_use_linear', ), ('convert_temp_salt_for_teos10', ), ('eos_quadrature', ), ('extract_member_eos', )]) [autodoc] module analyzer failed: error importing 'mom_eos' (exception was: ModuleNotFoundError("No module named 'mom_eos'")) [debug] DoxygenMethodDocumenter format_signature called ((T, S, pressure, rho, EOS, rho_ref, scale)) [debug] add_directive_header sig((T, S, pressure, rho, EOS, rho_ref, scale)) [debug] DoxygenMethodDocumenter directive(subroutine) name(subroutine calculate_density_scalar) [debug] verbosity = 3 [debug] Setting build mode: latex [debug] method=visit_para [debug] verbosity = 3 [debug] Setting build mode: latex [debug] method=visit_para [debug] method=visit_parameterlist [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'calculate_density_scalar', , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members' [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'calculate_stanley_density_scalar', , {'members' [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'calculate_stanley_density_scalar', , {'members' [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'calculate_stanley_density_scalar', , {'members' [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'calculate_stanley_density_scalar', , {'members' [autodoc] module analyzer failed: error importing 'mom_eos' (exception was: ModuleNotFoundError("No module named 'mom_eos'")) [debug] DoxygenMethodDocumenter format_signature called ((T, S, pressure, rho, start, npts, EOS, rho_ref, scale)) [debug] add_directive_header sig((T, S, pressure, rho, start, npts, EOS, rho_ref, scale)) [debug] DoxygenMethodDocumenter directive(subroutine) name(subroutine calculate_density_array) [debug] verbosity = 3 [debug] Setting build mode: latex [debug] method=visit_para [debug] verbosity = 3 [debug] Setting build mode: latex [debug] method=visit_para [debug] method=visit_parameterlist [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'calculate_density_array', , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'calculate_stanley_density_array', , {'members': [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'calculate_stanley_density_array', , {'members': [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'calculate_stanley_density_array', , {'members': [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'calculate_stanley_density_array', , {'members': [autodoc] module analyzer failed: error importing 'mom_eos' (exception was: ModuleNotFoundError("No module named 'mom_eos'")) [debug] DoxygenMethodDocumenter format_signature called ((T, S, pressure, rho, EOS, dom, rho_ref, scale)) [debug] add_directive_header sig((T, S, pressure, rho, EOS, dom, rho_ref, scale)) [debug] DoxygenMethodDocumenter directive(subroutine) name(subroutine calculate_density_1d) [debug] verbosity = 3 [debug] Setting build mode: latex [debug] method=visit_para [debug] verbosity = 3 [debug] Setting build mode: latex [debug] method=visit_para [debug] method=visit_parameterlist [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'calculate_density_1d', , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'calculate_density_derivs_array', , {'members': [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'calculate_density_derivs_array', , {'members': [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'calculate_density_derivs_array', , {'members': [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'calculate_density_derivs_array', , {'members': [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'calculate_density_derivs_array', , {'members': [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'calculate_density_derivs_array', , {'members': [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'calculate_density_derivs_array', , {'members': [autodoc] module analyzer failed: error importing 'mom_eos' (exception was: ModuleNotFoundError("No module named 'mom_eos'")) [debug] DoxygenMethodDocumenter format_signature called ((T, S, pressure, drho_dT, drho_dS, EOS, dom, scale)) [debug] add_directive_header sig((T, S, pressure, drho_dT, drho_dS, EOS, dom, scale)) [debug] DoxygenMethodDocumenter directive(subroutine) name(subroutine calculate_density_derivs_1d) [debug] verbosity = 3 [debug] Setting build mode: latex [debug] method=visit_para [debug] verbosity = 3 [debug] Setting build mode: latex [debug] method=visit_para [debug] method=visit_parameterlist [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'calculate_density_derivs_1d', , {'members': , {'members': , {'members': , {'members': [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'calculate_density_derivs_scalar', , {'members': [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'calculate_density_derivs_scalar', , {'members': [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'calculate_density_derivs_scalar', , {'members': [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'calculate_density_derivs_scalar', , {'members': [autodoc] module analyzer failed: error importing 'mom_eos' (exception was: ModuleNotFoundError("No module named 'mom_eos'")) [debug] DoxygenMethodDocumenter format_signature called ((T, S, pressure, drho_dS_dS, drho_dS_dT, drho_dT_dT, drho_dS_dP, drho_dT_dP, start, npts, EOS, scale)) [debug] add_directive_header sig((T, S, pressure, drho_dS_dS, drho_dS_dT, drho_dT_dT, drho_dS_dP, drho_dT_dP, start, npts, EOS, scale)) [debug] DoxygenMethodDocumenter directive(subroutine) name(subroutine calculate_density_second_derivs_array) [debug] verbosity = 3 [debug] Setting build mode: latex [debug] method=visit_para [debug] verbosity = 3 [debug] Setting build mode: latex [debug] method=visit_para [debug] method=visit_parameterlist [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'calculate_density_second_derivs_array', , {'mem [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'calculate_density_second_derivs_array', , {'mem [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'calculate_density_second_derivs_array', , {'mem [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'calculate_density_second_derivs_array', , {'mem [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'calculate_density_second_derivs_array', , {'mem [autodoc] module analyzer failed: error importing 'mom_eos' (exception was: ModuleNotFoundError("No module named 'mom_eos'")) [debug] DoxygenMethodDocumenter format_signature called ((T, S, pressure, drho_dS_dS, drho_dS_dT, drho_dT_dT, drho_dS_dP, drho_dT_dP, EOS, scale)) [debug] add_directive_header sig((T, S, pressure, drho_dS_dS, drho_dS_dT, drho_dT_dT, drho_dS_dP, drho_dT_dP, EOS, scale)) [debug] DoxygenMethodDocumenter directive(subroutine) name(subroutine calculate_density_second_derivs_scalar) [debug] verbosity = 3 [debug] Setting build mode: latex [debug] method=visit_para [debug] verbosity = 3 [debug] Setting build mode: latex [debug] method=visit_para [debug] method=visit_parameterlist [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'calculate_density_second_derivs_scalar', , {'me [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'calculate_density_second_derivs_scalar', , {'me [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'calculate_density_second_derivs_scalar', , {'me [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'calculate_density_second_derivs_scalar', , {'me [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'calculate_density_second_derivs_scalar', , {'me [autodoc] module analyzer failed: error importing 'mom_eos' (exception was: ModuleNotFoundError("No module named 'mom_eos'")) [debug] DoxygenMethodDocumenter format_signature called ((T, S, pressure, dSV_dT, dSV_dS, start, npts, EOS)) [debug] add_directive_header sig((T, S, pressure, dSV_dT, dSV_dS, start, npts, EOS)) [debug] DoxygenMethodDocumenter directive(subroutine) name(subroutine calculate_spec_vol_derivs_array) [debug] verbosity = 3 [debug] Setting build mode: latex [debug] method=visit_para [debug] verbosity = 3 [debug] Setting build mode: latex [debug] method=visit_para [debug] method=visit_parameterlist [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'calculate_spec_vol_derivs_array', , {'members': [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'calculate_spec_vol_derivs_array', , {'members': [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'calculate_spec_vol_derivs_array', , {'members': [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'calculate_spec_vol_derivs_array', , {'members': [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'calculate_spec_vol_derivs_array', , {'members': [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'calculate_spec_vol_derivs_array', , {'members': [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'calculate_spec_vol_derivs_array', , {'members': [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'calculate_spec_vol_derivs_array', , {'members': [autodoc] module analyzer failed: error importing 'mom_eos' (exception was: ModuleNotFoundError("No module named 'mom_eos'")) [debug] DoxygenMethodDocumenter format_signature called ((T, S, pressure, dSV_dT, dSV_dS, EOS, dom, scale)) [debug] add_directive_header sig((T, S, pressure, dSV_dT, dSV_dS, EOS, dom, scale)) [debug] DoxygenMethodDocumenter directive(subroutine) name(subroutine calc_spec_vol_derivs_1d) [debug] verbosity = 3 [debug] Setting build mode: latex [debug] method=visit_para [debug] verbosity = 3 [debug] Setting build mode: latex [debug] method=visit_para [debug] method=visit_parameterlist [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'calc_spec_vol_derivs_1d', , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': `_ ---------- Data Types ---------- .. autodoxysummary:: :kind: type ~mom_eos::eos_type --------------------- Functions/Subroutines --------------------- .. autodoxysummary:: :kind: func ~mom_eos::calculate_density_scalar ~mom_eos::calculate_stanley_density_scalar ~mom_eos::calculate_density_array ~mom_eos::calculate_stanley_density_array ~mom_eos::calculate_density_1d ~mom_eos::calculate_stanley_density_1d ~mom_eos::calculate_spec_vol_array ~mom_eos::calc_spec_vol_scalar ~mom_eos::calc_spec_vol_1d ~mom_eos::calculate_tfreeze_scalar ~mom_eos::calculate_tfreeze_array ~mom_eos::calculate_density_derivs_array ~mom_eos::calculate_density_derivs_1d ~mom_eos::calculate_density_derivs_scalar ~mom_eos::calculate_density_second_derivs_array ~mom_eos::calculate_density_second_derivs_scalar ~mom_eos::calculate_spec_vol_derivs_array ~mom_eos::calc_spec_vol_derivs_1d ~mom_eos::calculate_compress_array ~mom_eos::calculate_compress_scalar ~mom_eos::eos_domain ~mom_eos::analytic_int_specific_vol_dp ~mom_eos::analytic_int_density_dz ~mom_eos::query_compressible ~mom_eos::eos_init ~mom_eos::eos_manual_init ~mom_eos::eos_allocate ~mom_eos::eos_end ~mom_eos::eos_use_linear ~mom_eos::convert_temp_salt_for_teos10 ~mom_eos::eos_quadrature ~mom_eos::extract_member_eos .. _DETAmom_eos: -------------------- Detailed Description -------------------- The MOM_EOS module is a wrapper for various equations of state (e.g. Linear, Wright, UNESCO) and provides a uniform interface to the rest of the model independent of which equation of state is being used. ------------------ Type Documentation ------------------ .. f:type:: eos_type A control structure for the equation of state. :typefield integer form_of_eos: The equation of state to use. :typefield integer form_of_tfreeze: The expression for the potential temperature of the freezing point. :typefield logical eos_quadrature: If true, always use the generic (quadrature) code for the integrals of density. :typefield logical compressible: If true, in situ density is a function of pressure. :typefield real rho_t0_s0: The density at T=0, S=0 [kg m-3]. :typefield real drho_dt: The partial derivative of density with temperature [kg m-3 degC-1]. :typefield real drho_ds: The partial derivative of density with salinity [kg m-3 ppt-1]. :typefield real tfr_s0_p0: The freezing potential temperature at S=0, P=0 [degC]. :typefield real dtfr_ds: The derivative of freezing point with salinity [degC ppt-1]. :typefield real dtfr_dp: The derivative of freezing point with pressure [degC Pa-1]. :typefield real m_to_z: A constant that translates distances in meters to the units of depth. :typefield real kg_m3_to_r: A constant that translates kilograms per meter cubed to the units of density. :typefield real r_to_kg_m3: A constant that translates the units of density to kilograms per meter cubed. :typefield real rl2_t2_to_pa: Convert pressures from R L2 T-2 to Pa. :typefield real l_t_to_m_s: Convert lateral velocities from L T-1 to m s-1. --------------------------------- Function/Subroutine Documentation --------------------------------- .. f:subroutine:: subroutine calculate_density_scalar(T, S, pressure, rho, EOS, rho_ref, scale) Calls the appropriate subroutine to calculate density of sea water for scalar inputs. If rho_ref is present, the anomaly with respect to rho_ref is returned. The pressure and density can be rescaled with the US. If both the US and scale arguments are present the density scaling uses the product of the two scaling factors. :param t: [in] Potential temperature referenced to the surface [degC] :param s: [in] Salinity [ppt] :param pressure: [in] Pressure [Pa] or [R L2 T-2 ~> Pa] :param rho: [out] Density (in-situ if pressure is local) [kg m-3] or [R ~> kg m-3] :param eos: Equation of state structure :param rho_ref: [in] A reference density [kg m-3] :param scale: [in] A multiplicative factor by which to scale density in combination with scaling given by US [various] :callto: :f:func:`eos_linear ` :callto: :f:func:`eos_nemo ` :callto: :f:func:`eos_teos10 ` :callto: :f:func:`eos_unesco ` :callto: :f:func:`eos_wright ` .. f:subroutine:: subroutine calculate_stanley_density_scalar(T, S, pressure, Tvar, TScov, Svar, rho, EOS, rho_ref, scale) Calls the appropriate subroutine to calculate density of sea water for scalar inputs including the variance of T, S and covariance of T-S. The calculation uses only the second order correction in a series as discussed in Stanley et al., 2020. If rho_ref is present, the anomaly with respect to rho_ref is returned. The density can be rescaled using rho_ref. :param t: [in] Potential temperature referenced to the surface [degC] :param s: [in] Salinity [ppt] :param tvar: [in] Variance of potential temperature referenced to the surface [degC2] :param tscov: [in] Covariance of potential temperature and salinity [degC ppt] :param svar: [in] Variance of salinity [ppt2] :param pressure: [in] Pressure [Pa] :param rho: [out] Density (in-situ if pressure is local) [kg m-3] or [R ~> kg m-3] :param eos: Equation of state structure :param rho_ref: [in] A reference density [kg m-3]. :param scale: [in] A multiplicative factor by which to scale density from kg m-3 to the desired units [R m3 kg-1] :callto: :f:func:`eos_linear ` :callto: :f:func:`eos_teos10 ` :callto: :f:func:`eos_wright ` .. f:subroutine:: subroutine calculate_density_array(T, S, pressure, rho, start, npts, EOS, rho_ref, scale) Calls the appropriate subroutine to calculate the density of sea water for 1-D array inputs. If rho_ref is present, the anomaly with respect to rho_ref is returned. :param t: [in] Potential temperature referenced to the surface [degC] :param s: [in] Salinity [ppt] :param pressure: [in] Pressure [Pa] or [R L2 T-2 ~> Pa] :param rho: [inout] Density (in-situ if pressure is local) [kg m-3] or [R ~> kg m-3] :param start: [in] Start index for computation :param npts: [in] Number of point to compute :param eos: Equation of state structure :param rho_ref: [in] A reference density [kg m-3] :param scale: [in] A multiplicative factor by which to scale density in combination with scaling given by US [various] :callto: :f:func:`eos_linear ` :callto: :f:func:`eos_nemo ` :callto: :f:func:`eos_teos10 ` :callto: :f:func:`eos_unesco ` :callto: :f:func:`eos_wright ` :calledfrom: :f:func:`calculate_density_1d ` .. f:subroutine:: subroutine calculate_stanley_density_array(T, S, pressure, Tvar, TScov, Svar, rho, start, npts, EOS, rho_ref, scale) Calls the appropriate subroutine to calculate the density of sea water for 1-D array inputs including the variance of T, S and covariance of T-S. The calculation uses only the second order correction in a series as discussed in Stanley et al., 2020. If rho_ref is present, the anomaly with respect to rho_ref is returned. :param t: [in] Potential temperature referenced to the surface [degC] :param s: [in] Salinity [ppt] :param pressure: [in] Pressure [Pa] :param tvar: [in] Variance of potential temperature referenced to the surface [degC2] :param tscov: [in] Covariance of potential temperature and salinity [degC ppt] :param svar: [in] Variance of salinity [ppt2] :param rho: [inout] Density (in-situ if pressure is local) [kg m-3] :param start: [in] Start index for computation :param npts: [in] Number of point to compute :param eos: Equation of state structure :param rho_ref: [in] A reference density [kg m-3]. :param scale: [in] A multiplicative factor by which to scale density from kg m-3 to the desired units [R m3 kg-1] :callto: :f:func:`eos_linear ` :callto: :f:func:`eos_teos10 ` :callto: :f:func:`eos_wright ` .. f:subroutine:: subroutine calculate_density_1d(T, S, pressure, rho, EOS, dom, rho_ref, scale) Calls the appropriate subroutine to calculate the density of sea water for 1-D array inputs, potentially limiting the domain of indices that are worked on. If rho_ref is present, the anomaly with respect to rho_ref is returned. :param t: [in] Potential temperature referenced to the surface [degC] :param s: [in] Salinity [ppt] :param pressure: [in] Pressure [R L2 T-2 ~> Pa] :param rho: [inout] Density (in-situ if pressure is local) [R ~> kg m-3] :param eos: Equation of state structure :param dom: [in] The domain of indices to work on, taking into account that arrays start at 1. :param rho_ref: [in] A reference density [kg m-3] :param scale: [in] A multiplicative factor by which to scale density in combination with scaling given by US [various] :callto: :f:func:`calculate_density_array ` .. f:subroutine:: subroutine calculate_stanley_density_1d(T, S, pressure, Tvar, TScov, Svar, rho, EOS, dom, rho_ref, scale) Calls the appropriate subroutine to calculate the density of sea water for 1-D array inputs including the variance of T, S and covariance of T-S, potentially limiting the domain of indices that are worked on. The calculation uses only the second order correction in a series as discussed in Stanley et al., 2020. If rho_ref is present, the anomaly with respect to rho_ref is returned. :param t: [in] Potential temperature referenced to the surface [degC] :param s: [in] Salinity [ppt] :param pressure: [in] Pressure [R L2 T-2 ~> Pa] :param tvar: [in] Variance of potential temperature [degC2] :param tscov: [in] Covariance of potential temperature and salinity [degC ppt] :param svar: [in] Variance of salinity [ppt2] :param rho: [inout] Density (in-situ if pressure is local) [R ~> kg m-3] :param eos: Equation of state structure :param dom: [in] The domain of indices to work on, taking into account that arrays start at 1. :param rho_ref: [in] A reference density [kg m-3] :param scale: [in] A multiplicative factor by which to scale density in combination with scaling given by US [various] :callto: :f:func:`eos_linear ` :callto: :f:func:`eos_teos10 ` :callto: :f:func:`eos_wright ` .. f:subroutine:: subroutine calculate_spec_vol_array(T, S, pressure, specvol, start, npts, EOS, spv_ref, scale) Calls the appropriate subroutine to calculate the specific volume of sea water for 1-D array inputs. :param t: [in] potential temperature relative to the surface [degC] :param s: [in] salinity [ppt] :param pressure: [in] pressure [Pa] :param specvol: [inout] in situ specific volume [kg m-3] :param start: [in] the starting point in the arrays. :param npts: [in] the number of values to calculate. :param eos: Equation of state structure :param spv_ref: [in] A reference specific volume [m3 kg-1] :param scale: [in] A multiplicative factor by which to scale specific volume in combination with scaling given by US [various] :callto: :f:func:`eos_linear ` :callto: :f:func:`eos_nemo ` :callto: :f:func:`eos_teos10 ` :callto: :f:func:`eos_unesco ` :callto: :f:func:`eos_wright ` :calledfrom: :f:func:`calc_spec_vol_1d ` :calledfrom: :f:func:`calc_spec_vol_scalar ` .. f:subroutine:: subroutine calc_spec_vol_scalar(T, S, pressure, specvol, EOS, spv_ref, scale) Calls the appropriate subroutine to calculate specific volume of sea water for scalar inputs. :param t: [in] Potential temperature referenced to the surface [degC] :param s: [in] Salinity [ppt] :param pressure: [in] Pressure [Pa] or [R L2 T-2 ~> Pa] :param specvol: [out] In situ? specific volume [m3 kg-1] or [R-1 ~> m3 kg-1] :param eos: Equation of state structure :param spv_ref: [in] A reference specific volume [m3 kg-1] or [R-1 m3 kg-1] :param scale: [in] A multiplicative factor by which to scale specific volume in combination with scaling given by US [various] :callto: :f:func:`calculate_spec_vol_array ` .. f:subroutine:: subroutine calc_spec_vol_1d(T, S, pressure, specvol, EOS, dom, spv_ref, scale) Calls the appropriate subroutine to calculate the specific volume of sea water for 1-D array inputs, potentially limiting the domain of indices that are worked on. :param t: [in] Potential temperature referenced to the surface [degC] :param s: [in] Salinity [ppt] :param pressure: [in] Pressure [R L2 T-2 ~> Pa] :param specvol: [inout] In situ specific volume [R-1 ~> m3 kg-1] :param eos: Equation of state structure :param dom: [in] The domain of indices to work on, taking into account that arrays start at 1. :param spv_ref: [in] A reference specific volume [R-1 ~> m3 kg-1] :param scale: [in] A multiplicative factor by which to scale output specific volume in combination with scaling given by US [various] :callto: :f:func:`calculate_spec_vol_array ` .. f:subroutine:: subroutine calculate_tfreeze_scalar(S, pressure, T_fr, EOS, pres_scale) Calls the appropriate subroutine to calculate the freezing point for scalar inputs. :param s: [in] Salinity [ppt] :param pressure: [in] Pressure [Pa] or [other] :param t_fr: [out] Freezing point potential temperature referenced to the surface [degC] :param eos: Equation of state structure :param pres_scale: [in] A multiplicative factor to convert pressure into Pa :callto: :f:func:`tfreeze_linear ` :callto: :f:func:`tfreeze_millero ` :callto: :f:func:`tfreeze_teos10 ` .. f:subroutine:: subroutine calculate_tfreeze_array(S, pressure, T_fr, start, npts, EOS, pres_scale) Calls the appropriate subroutine to calculate the freezing point for a 1-D array. :param s: [in] Salinity [ppt] :param pressure: [in] Pressure [Pa] or [other] :param t_fr: [inout] Freezing point potential temperature referenced to the surface [degC] :param start: [in] Starting index within the array :param npts: [in] The number of values to calculate :param eos: Equation of state structure :param pres_scale: [in] A multiplicative factor to convert pressure into Pa. :callto: :f:func:`tfreeze_linear ` :callto: :f:func:`tfreeze_millero ` :callto: :f:func:`tfreeze_teos10 ` .. f:subroutine:: subroutine calculate_density_derivs_array(T, S, pressure, drho_dT, drho_dS, start, npts, EOS, scale) Calls the appropriate subroutine to calculate density derivatives for 1-D array inputs. :param t: [in] Potential temperature referenced to the surface [degC] :param s: [in] Salinity [ppt] :param pressure: [in] Pressure [Pa] or [R L2 T-2 ~> Pa] :param drho_dt: [inout] The partial derivative of density with potential temperature [kg m-3 degC-1] or [R degC-1 ~> kg m-3 degC-1] :param drho_ds: [inout] The partial derivative of density with salinity, in [kg m-3 ppt-1] or [R degC-1 ~> kg m-3 ppt-1] :param start: [in] Starting index within the array :param npts: [in] The number of values to calculate :param eos: Equation of state structure :param scale: [in] A multiplicative factor by which to scale density in combination with scaling given by US [various] :callto: :f:func:`eos_linear ` :callto: :f:func:`eos_nemo ` :callto: :f:func:`eos_teos10 ` :callto: :f:func:`eos_unesco ` :callto: :f:func:`eos_wright ` :calledfrom: :f:func:`calculate_density_derivs_1d ` .. f:subroutine:: subroutine calculate_density_derivs_1d(T, S, pressure, drho_dT, drho_dS, EOS, dom, scale) Calls the appropriate subroutine to calculate density derivatives for 1-D array inputs. :param t: [in] Potential temperature referenced to the surface [degC] :param s: [in] Salinity [ppt] :param pressure: [in] Pressure [R L2 T-2 ~> Pa] :param drho_dt: [inout] The partial derivative of density with potential temperature [R degC-1 ~> kg m-3 degC-1] :param drho_ds: [inout] The partial derivative of density with salinity [R degC-1 ~> kg m-3 ppt-1] :param eos: Equation of state structure :param dom: [in] The domain of indices to work on, taking into account that arrays start at 1. :param scale: [in] A multiplicative factor by which to scale density in combination with scaling given by US [various] :callto: :f:func:`calculate_density_derivs_array ` .. f:subroutine:: subroutine calculate_density_derivs_scalar(T, S, pressure, drho_dT, drho_dS, EOS, scale) Calls the appropriate subroutines to calculate density derivatives by promoting a scalar to a one-element array. :param t: [in] Potential temperature referenced to the surface [degC] :param s: [in] Salinity [ppt] :param pressure: [in] Pressure [Pa] or [R L2 T-2 ~> Pa] :param drho_dt: [out] The partial derivative of density with potential temperature [kg m-3 degC-1] or [R degC-1 ~> kg m-3 degC-1] :param drho_ds: [out] The partial derivative of density with salinity, in [kg m-3 ppt-1] or [R ppt-1 ~> kg m-3 ppt-1] :param eos: Equation of state structure :param scale: [in] A multiplicative factor by which to scale density in combination with scaling given by US [various] :callto: :f:func:`eos_linear ` :callto: :f:func:`eos_teos10 ` :callto: :f:func:`eos_wright ` .. f:subroutine:: subroutine calculate_density_second_derivs_array(T, S, pressure, drho_dS_dS, drho_dS_dT, drho_dT_dT, drho_dS_dP, drho_dT_dP, start, npts, EOS, scale) Calls the appropriate subroutine to calculate density second derivatives for 1-D array inputs. :param t: [in] Potential temperature referenced to the surface [degC] :param s: [in] Salinity [ppt] :param pressure: [in] Pressure [Pa] or [R L2 T-2 ~> Pa] :param drho_ds_ds: [inout] Partial derivative of beta with respect to S [kg m-3 ppt-2] or [R ppt-2 ~> kg m-3 ppt-2] :param drho_ds_dt: [inout] Partial derivative of beta with respect to T [kg m-3 ppt-1 degC-1] or [R ppt-1 degC-1 ~> kg m-3 ppt-1 degC-1] :param drho_dt_dt: [inout] Partial derivative of alpha with respect to T [kg m-3 degC-2] or [R degC-2 ~> kg m-3 degC-2] :param drho_ds_dp: [inout] Partial derivative of beta with respect to pressure [kg m-3 ppt-1 Pa-1] or [R ppt-1 Pa-1 ~> kg m-3 ppt-1 Pa-1] :param drho_dt_dp: [inout] Partial derivative of alpha with respect to pressure [kg m-3 degC-1 Pa-1] or [R degC-1 Pa-1 ~> kg m-3 degC-1 Pa-1] :param start: [in] Starting index within the array :param npts: [in] The number of values to calculate :param eos: Equation of state structure :param scale: [in] A multiplicative factor by which to scale density in combination with scaling given by US [various] :callto: :f:func:`eos_linear ` :callto: :f:func:`eos_teos10 ` :callto: :f:func:`eos_wright ` .. f:subroutine:: subroutine calculate_density_second_derivs_scalar(T, S, pressure, drho_dS_dS, drho_dS_dT, drho_dT_dT, drho_dS_dP, drho_dT_dP, EOS, scale) Calls the appropriate subroutine to calculate density second derivatives for scalar nputs. :param t: [in] Potential temperature referenced to the surface [degC] :param s: [in] Salinity [ppt] :param pressure: [in] Pressure [Pa] or [R L2 T-2 ~> Pa] :param drho_ds_ds: [out] Partial derivative of beta with respect to S [kg m-3 ppt-2] or [R ppt-2 ~> kg m-3 ppt-2] :param drho_ds_dt: [out] Partial derivative of beta with respect to T [kg m-3 ppt-1 degC-1] or [R ppt-1 degC-1 ~> kg m-3 ppt-1 degC-1] :param drho_dt_dt: [out] Partial derivative of alpha with respect to T [kg m-3 degC-2] or [R degC-2 ~> kg m-3 degC-2] :param drho_ds_dp: [out] Partial derivative of beta with respect to pressure [kg m-3 ppt-1 Pa-1] or [R ppt-1 Pa-1 ~> kg m-3 ppt-1 Pa-1] :param drho_dt_dp: [out] Partial derivative of alpha with respect to pressure [kg m-3 degC-1 Pa-1] or [R degC-1 Pa-1 ~> kg m-3 degC-1 Pa-1] :param eos: Equation of state structure :param scale: [in] A multiplicative factor by which to scale density in combination with scaling given by US [various] :callto: :f:func:`eos_linear ` :callto: :f:func:`eos_teos10 ` :callto: :f:func:`eos_wright ` .. f:subroutine:: subroutine calculate_spec_vol_derivs_array(T, S, pressure, dSV_dT, dSV_dS, start, npts, EOS) Calls the appropriate subroutine to calculate specific volume derivatives for an array. :param t: [in] Potential temperature referenced to the surface [degC] :param s: [in] Salinity [ppt] :param pressure: [in] Pressure [Pa] :param dsv_dt: [inout] The partial derivative of specific volume with potential temperature [m3 kg-1 degC-1] :param dsv_ds: [inout] The partial derivative of specific volume with salinity [m3 kg-1 ppt-1] :param start: [in] Starting index within the array :param npts: [in] The number of values to calculate :param eos: Equation of state structure :callto: :f:func:`eos_linear ` :callto: :f:func:`eos_nemo ` :callto: :f:func:`eos_teos10 ` :callto: :f:func:`eos_unesco ` :callto: :f:func:`eos_wright ` :calledfrom: :f:func:`calc_spec_vol_derivs_1d ` .. f:subroutine:: subroutine calc_spec_vol_derivs_1d(T, S, pressure, dSV_dT, dSV_dS, EOS, dom, scale) Calls the appropriate subroutine to calculate specific volume derivatives for 1-d array inputs, potentially limiting the domain of indices that are worked on. :param t: [in] Potential temperature referenced to the surface [degC] :param s: [in] Salinity [ppt] :param pressure: [in] Pressure [R L2 T-2 ~> Pa] :param dsv_dt: [inout] The partial derivative of specific volume with potential temperature [R-1 degC-1 ~> m3 kg-1 degC-1] :param dsv_ds: [inout] The partial derivative of specific volume with salinity [R-1 ppt-1 ~> m3 kg-1 ppt-1] :param eos: Equation of state structure :param dom: [in] The domain of indices to work on, taking into account that arrays start at 1. :param scale: [in] A multiplicative factor by which to scale specific volume in combination with scaling given by US [various] :callto: :f:func:`calculate_spec_vol_derivs_array ` .. f:subroutine:: subroutine calculate_compress_array(T, S, press, rho, drho_dp, start, npts, EOS) Calls the appropriate subroutine to calculate the density and compressibility for 1-D array inputs. If US is present, the units of the inputs and outputs are rescaled. :param t: [in] Potential temperature referenced to the surface [degC] :param s: [in] Salinity [PSU] :param press: [in] Pressure [Pa] or [R L2 T-2 ~> Pa] :param rho: [inout] In situ density [kg m-3] or [R ~> kg m-3] :param drho_dp: [inout] The partial derivative of density with pressure (also the inverse of the square of sound speed) [s2 m-2] or [T2 L-2] :param start: [in] Starting index within the array :param npts: [in] The number of values to calculate :param eos: Equation of state structure :callto: :f:func:`eos_linear ` :callto: :f:func:`eos_nemo ` :callto: :f:func:`eos_teos10 ` :callto: :f:func:`eos_unesco ` :callto: :f:func:`eos_wright ` :calledfrom: :f:func:`calculate_compress_scalar ` .. f:subroutine:: subroutine calculate_compress_scalar(T, S, pressure, rho, drho_dp, EOS) Calculate density and compressibility for a scalar. This just promotes the scalar to an array with a singleton dimension and calls calculate_compress_array. If US is present, the units of the inputs and outputs are rescaled. :param t: [in] Potential temperature referenced to the surface [degC] :param s: [in] Salinity [ppt] :param pressure: [in] Pressure [Pa] or [R L2 T-2 ~> Pa] :param rho: [out] In situ density [kg m-3] or [R ~> kg m-3] :param drho_dp: [out] The partial derivative of density with pressure (also the inverse of the square of sound speed) [s2 m-2] or [T2 L-2] :param eos: Equation of state structure :callto: :f:func:`calculate_compress_array ` .. f:function:: integer function eos_domain(HI, halo) This subroutine returns a two point integer array indicating the domain of i-indices to work on in EOS calls based on information from a hor_index type. :param hi: [in] The horizontal index structure :param halo: [in] The halo size to work on; missing is equivalent to 0. :returns undefined: The index domain that the EOS will work on, taking into account that the arrays inside the EOS routines will start at 1. .. f:subroutine:: subroutine analytic_int_specific_vol_dp(T, S, p_t, p_b, alpha_ref, HI, EOS, dza, intp_dza, intx_dza, inty_dza, halo_size, bathyP, dP_tiny, useMassWghtInterp) Calls the appropriate subroutine to calculate analytical and nearly-analytical integrals in pressure across layers of geopotential anomalies, which are required for calculating the finite-volume form pressure accelerations in a non-Boussinesq model. There are essentially no free assumptions, apart from the use of Boole's rule to do the horizontal integrals, and from a truncation in the series for log(1-eps/1+eps) that assumes that |eps| < 0.34. :param hi: [in] The horizontal index structure :param t: [in] Potential temperature referenced to the surface [degC] :param s: [in] Salinity [ppt] :param p_t: [in] Pressure at the top of the layer [R L2 T-2 ~> Pa] or [Pa] :param p_b: [in] Pressure at the bottom of the layer [R L2 T-2 ~> Pa] or [Pa] :param alpha_ref: [in] A mean specific volume that is subtracted out to reduce the magnitude of each of the integrals [R-1 ~> m3 kg-1] The calculation is mathematically identical with different values of alpha_ref, but this reduces the effects of roundoff. :param eos: Equation of state structure :param dza: [inout] The change in the geopotential anomaly across :param intp_dza: [inout] The integral in pressure through the layer of the :param intx_dza: [inout] The integral in x of the difference between the :param inty_dza: [inout] The integral in y of the difference between the :param halo_size: [in] The width of halo points on which to calculate dza. :param bathyp: [in] The pressure at the bathymetry [R L2 T-2 ~> Pa] or [Pa] :param dp_tiny: [in] A miniscule pressure change with the same units as p_t [R L2 T-2 ~> Pa] or [Pa] :param usemasswghtinterp: [in] If true, uses mass weighting to interpolate T/S for top and bottom integrals. :callto: :f:func:`eos_linear ` :callto: :f:func:`eos_wright ` .. f:subroutine:: subroutine analytic_int_density_dz(T, S, z_t, z_b, rho_ref, rho_0, G_e, HI, EOS, dpa, intz_dpa, intx_dpa, inty_dpa, bathyT, dz_neglect, useMassWghtInterp) This subroutine calculates analytical and nearly-analytical integrals of pressure anomalies across layers, which are required for calculating the finite-volume form pressure accelerations in a Boussinesq model. :param hi: [in] Ocean horizontal index structure :param t: [in] Potential temperature referenced to the surface [degC] :param s: [in] Salinity [ppt] :param z_t: [in] Height at the top of the layer in depth units [Z ~> m] :param z_b: [in] Height at the bottom of the layer [Z ~> m] :param rho_ref: [in] A mean density [R ~> kg m-3] or [kg m-3], that is subtracted out to reduce the magnitude of each of the integrals. :param rho_0: [in] A density [R ~> kg m-3] or [kg m-3], that is used to calculate the pressure (as p~=-z*rho_0*G_e) used in the equation of state. :param g_e: [in] The Earth's gravitational acceleration [L2 Z-1 T-2 ~> m s-2] or [m2 Z-1 s-2 ~> m s-2] :param eos: Equation of state structure :param dpa: [inout] The change in the pressure anomaly :param intz_dpa: [inout] The integral through the thickness of the :param intx_dpa: [inout] The integral in x of the difference between :param inty_dpa: [inout] The integral in y of the difference between :param bathyt: [in] The depth of the bathymetry [Z ~> m] :param dz_neglect: [in] A miniscule thickness change [Z ~> m] :param usemasswghtinterp: [in] If true, uses mass weighting to interpolate T/S for top and bottom integrals. :callto: :f:func:`eos_linear ` :callto: :f:func:`eos_wright ` .. f:function:: logical function query_compressible(EOS) Returns true if the equation of state is compressible (i.e. has pressure dependence) :param eos: Equation of state structure .. f:subroutine:: subroutine eos_init(param_file, EOS, US) Initializes EOS_type by allocating and reading parameters. :param param_file: [in] Parameter file structure :param eos: Equation of state structure :param us: [in] A dimensional unit scaling type :callto: :f:func:`eos_allocate ` :callto: :f:func:`eos_default ` :callto: :f:func:`eos_linear ` :callto: :f:func:`eos_linear_string ` :callto: :f:func:`eos_nemo ` :callto: :f:func:`eos_nemo_string ` :callto: :f:func:`eos_teos10 ` :callto: :f:func:`eos_teos10_string ` :callto: :f:func:`eos_unesco ` :callto: :f:func:`eos_unesco_string ` :callto: :f:func:`eos_wright ` :callto: :f:func:`eos_wright_string ` :callto: :f:func:`tfreeze_default ` :callto: :f:func:`tfreeze_linear ` :callto: :f:func:`tfreeze_linear_string ` :callto: :f:func:`tfreeze_millero ` :callto: :f:func:`tfreeze_millero_string ` :callto: :f:func:`tfreeze_teos10 ` :callto: :f:func:`tfreeze_teos10_string ` :calledfrom: :f:func:`mom_ice_shelf::initialize_ice_shelf ` .. f:subroutine:: subroutine eos_manual_init(EOS, form_of_EOS, form_of_TFreeze, EOS_quadrature, Compressible, Rho_T0_S0, drho_dT, dRho_dS, TFr_S0_P0, dTFr_dS, dTFr_dp) Manually initialized an EOS type (intended for unit testing of routines which need a specific EOS) :param eos: Equation of state structure :param form_of_eos: [in] A coded integer indicating the equation of state to use. :param form_of_tfreeze: [in] A coded integer indicating the expression for the potential temperature of the freezing point. :param eos_quadrature: [in] If true, always use the generic (quadrature) code for the integrals of density. :param compressible: [in] If true, in situ density is a function of pressure. :param rho_t0_s0: [in] Density at T=0 degC and S=0 ppt [kg m-3] :param drho_dt: [in] Partial derivative of density with temperature in [kg m-3 degC-1] :param drho_ds: [in] Partial derivative of density with salinity in [kg m-3 ppt-1] :param tfr_s0_p0: [in] The freezing potential temperature at S=0, P=0 [degC] :param dtfr_ds: [in] The derivative of freezing point with salinity in [degC ppt-1] :param dtfr_dp: [in] The derivative of freezing point with pressure in [degC Pa-1] .. f:subroutine:: subroutine eos_allocate(EOS) Allocates EOS_type. :param eos: Equation of state structure :calledfrom: :f:func:`eos_init ` .. f:subroutine:: subroutine eos_end(EOS) Deallocates EOS_type. :param eos: Equation of state structure .. f:subroutine:: subroutine eos_use_linear(Rho_T0_S0, dRho_dT, dRho_dS, EOS, use_quadrature) Set equation of state structure (EOS) to linear with given coefficients. :param rho_t0_s0: [in] Density at T=0 degC and S=0 ppt [kg m-3] :param drho_dt: [in] Partial derivative of density with temperature [kg m-3 degC-1] :param drho_ds: [in] Partial derivative of density with salinity [kg m-3 ppt-1] :param use_quadrature: [in] If true, always use the generic (quadrature) code for the integrals of density. :param eos: Equation of state structure :callto: :f:func:`eos_linear ` .. f:subroutine:: subroutine convert_temp_salt_for_teos10(T, S, HI, kd, mask_z, EOS) Convert T&S to Absolute Salinity and Conservative Temperature if using TEOS10. :param kd: [in] The number of layers to work on :param hi: [in] The horizontal index structure :param t: [inout] Potential temperature referenced to the surface [degC] :param s: [inout] Salinity [ppt] :param mask_z: [in] 3d mask regulating which points to convert. :param eos: Equation of state structure :callto: :f:func:`eos_nemo ` :callto: :f:func:`eos_teos10 ` .. f:function:: logical function eos_quadrature(EOS) Return value of EOS_quadrature. :param eos: Equation of state structure .. f:subroutine:: subroutine extract_member_eos(EOS, form_of_EOS, form_of_TFreeze, EOS_quadrature, Compressible, Rho_T0_S0, drho_dT, dRho_dS, TFr_S0_P0, dTFr_dS, dTFr_dp) Extractor routine for the EOS type if the members need to be accessed outside this module. :param eos: Equation of state structure :param form_of_eos: [out] A coded integer indicating the equation of state to use. :param form_of_tfreeze: [out] A coded integer indicating the expression for the potential temperature of the freezing point. :param eos_quadrature: [out] If true, always use the generic (quadrature) code for the integrals of density. :param compressible: [out] If true, in situ density is a function of pressure. :param rho_t0_s0: [out] Density at T=0 degC and S=0 ppt [kg m-3] :param drho_dt: [out] Partial derivative of density with temperature in [kg m-3 degC-1] :param drho_ds: [out] Partial derivative of density with salinity in [kg m-3 ppt-1] :param tfr_s0_p0: [out] The freezing potential temperature at S=0, P=0 [degC] :param dtfr_ds: [out] The derivative of freezing point with salinity [degC PSU-1] :param dtfr_dp: [out] The derivative of freezing point with pressure [degC Pa-1] [debug] xpath(./compounddef/compoundname[text()="mom_eos::eos_type"]/..) match([('id', 'structmom__eos_1_1eos__type'), ('kind', 'type'), ('language', 'Fortran'), ('prot', 'public')]) [debug] DoxygenModuleDocumenter format_signature called [debug] verbosity = 3 [debug] Setting build mode: latex [debug] method=visit_para [app] emitting event: 'autodoc-process-docstring'('doxymodule', 'mom_eos::eos_type', , {}, ['', 'A control str [app] emitting event: 'autodoc-process-docstring'('doxymodule', 'mom_eos::eos_type', , {}, ['`More... , {}, ['', 'A control str [debug] DoxygenMethodDocumenter format_signature called ((T, S, pressure, rho, EOS, rho_ref, scale)) [debug] verbosity = 3 [debug] Setting build mode: latex [debug] method=visit_para [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'mom_eos::calculate_density_scalar', , {}, ['', [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'mom_eos::calculate_density_scalar', , {}, ['', [debug] DoxygenMethodDocumenter format_signature called ((T, S, pressure, Tvar, TScov, Svar, rho, EOS, rho_ref, scale)) [debug] verbosity = 3 [debug] Setting build mode: latex [debug] method=visit_para [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'mom_eos::calculate_stanley_density_scalar', , { [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'mom_eos::calculate_stanley_density_scalar', , { [debug] DoxygenMethodDocumenter format_signature called ((T, S, pressure, rho, start, npts, EOS, rho_ref, scale)) [debug] verbosity = 3 [debug] Setting build mode: latex [debug] method=visit_para [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'mom_eos::calculate_density_array', , {}, ['', ' [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'mom_eos::calculate_density_array', , {}, ['', ' [debug] DoxygenMethodDocumenter format_signature called ((T, S, pressure, Tvar, TScov, Svar, rho, start, npts, EOS, rho_ref, scale)) [debug] verbosity = 3 [debug] Setting build mode: latex [debug] method=visit_para [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'mom_eos::calculate_stanley_density_array', , {} [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'mom_eos::calculate_stanley_density_array', , {} [debug] DoxygenMethodDocumenter format_signature called ((T, S, pressure, rho, EOS, dom, rho_ref, scale)) [debug] verbosity = 3 [debug] Setting build mode: latex [debug] method=visit_para [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'mom_eos::calculate_density_1d', , {}, ['', 'Cal [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'mom_eos::calculate_density_1d', , {}, ['', 'Cal [debug] DoxygenMethodDocumenter format_signature called ((T, S, pressure, Tvar, TScov, Svar, rho, EOS, dom, rho_ref, scale)) [debug] verbosity = 3 [debug] Setting build mode: latex [debug] method=visit_para [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'mom_eos::calculate_stanley_density_1d', , {}, [ [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'mom_eos::calculate_stanley_density_1d', , {}, [ [debug] DoxygenMethodDocumenter format_signature called ((T, S, pressure, specvol, start, npts, EOS, spv_ref, scale)) [debug] verbosity = 3 [debug] Setting build mode: latex [debug] method=visit_para [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'mom_eos::calculate_spec_vol_array', , {}, ['', [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'mom_eos::calculate_spec_vol_array', , {}, ['', [debug] DoxygenMethodDocumenter format_signature called ((T, S, pressure, specvol, EOS, spv_ref, scale)) [debug] verbosity = 3 [debug] Setting build mode: latex [debug] method=visit_para [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'mom_eos::calc_spec_vol_scalar', , {}, ['', 'Cal [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'mom_eos::calc_spec_vol_scalar', , {}, ['', 'Cal [debug] DoxygenMethodDocumenter format_signature called ((T, S, pressure, specvol, EOS, dom, spv_ref, scale)) [debug] verbosity = 3 [debug] Setting build mode: latex [debug] method=visit_para [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'mom_eos::calc_spec_vol_1d', , {}, ['', 'Calls t [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'mom_eos::calc_spec_vol_1d', , {}, ['', 'Calls t [debug] DoxygenMethodDocumenter format_signature called ((S, pressure, T_fr, EOS, pres_scale)) [debug] verbosity = 3 [debug] Setting build mode: latex [debug] method=visit_para [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'mom_eos::calculate_tfreeze_scalar', , {}, ['', [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'mom_eos::calculate_tfreeze_scalar', , {}, ['', [debug] DoxygenMethodDocumenter format_signature called ((S, pressure, T_fr, start, npts, EOS, pres_scale)) [debug] verbosity = 3 [debug] Setting build mode: latex [debug] method=visit_para [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'mom_eos::calculate_tfreeze_array', , {}, ['', ' [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'mom_eos::calculate_tfreeze_array', , {}, ['', ' [debug] DoxygenMethodDocumenter format_signature called ((T, S, pressure, drho_dT, drho_dS, start, npts, EOS, scale)) [debug] verbosity = 3 [debug] Setting build mode: latex [debug] method=visit_para [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'mom_eos::calculate_density_derivs_array', , {}, [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'mom_eos::calculate_density_derivs_array', , {}, [debug] DoxygenMethodDocumenter format_signature called ((T, S, pressure, drho_dT, drho_dS, EOS, dom, scale)) [debug] verbosity = 3 [debug] Setting build mode: latex [debug] method=visit_para [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'mom_eos::calculate_density_derivs_1d', , {}, [' [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'mom_eos::calculate_density_derivs_1d', , {}, [' [debug] DoxygenMethodDocumenter format_signature called ((T, S, pressure, drho_dT, drho_dS, EOS, scale)) [debug] verbosity = 3 [debug] Setting build mode: latex [debug] method=visit_para [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'mom_eos::calculate_density_derivs_scalar', , {} [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'mom_eos::calculate_density_derivs_scalar', , {} [debug] DoxygenMethodDocumenter format_signature called ((T, S, pressure, drho_dS_dS, drho_dS_dT, drho_dT_dT, drho_dS_dP, drho_dT_dP, start, npts, EOS, scale)) [debug] verbosity = 3 [debug] Setting build mode: latex [debug] method=visit_para [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'mom_eos::calculate_density_second_derivs_array', , {} [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'mom_eos::calculate_spec_vol_derivs_array', , {} [debug] DoxygenMethodDocumenter format_signature called ((T, S, pressure, dSV_dT, dSV_dS, EOS, dom, scale)) [debug] verbosity = 3 [debug] Setting build mode: latex [debug] method=visit_para [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'mom_eos::calc_spec_vol_derivs_1d', , {}, ['', ' [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'mom_eos::calc_spec_vol_derivs_1d', , {}, ['', ' [debug] DoxygenMethodDocumenter format_signature called ((T, S, press, rho, drho_dp, start, npts, EOS)) [debug] verbosity = 3 [debug] Setting build mode: latex [debug] method=visit_para [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'mom_eos::calculate_compress_array', , {}, ['', [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'mom_eos::calculate_compress_array', , {}, ['', [debug] DoxygenMethodDocumenter format_signature called ((T, S, pressure, rho, drho_dp, EOS)) [debug] verbosity = 3 [debug] Setting build mode: latex [debug] method=visit_para [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'mom_eos::calculate_compress_scalar', , {}, ['', [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'mom_eos::calculate_compress_scalar', , {}, ['', [debug] DoxygenMethodDocumenter format_signature called ((HI, halo)) [debug] verbosity = 3 [debug] Setting build mode: latex [debug] method=visit_para [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'mom_eos::eos_domain', , {}, ['', 'This subrouti [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'mom_eos::eos_domain', , {}, ['', 'This subrouti [debug] DoxygenMethodDocumenter format_signature called ((T, S, p_t, p_b, alpha_ref, HI, EOS, dza, intp_dza, intx_dza, inty_dza, halo_size, bathyP, dP_tiny, useMassWghtInterp)) [debug] verbosity = 3 [debug] Setting build mode: latex [debug] method=visit_para [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'mom_eos::analytic_int_specific_vol_dp', , {}, [ [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'mom_eos::analytic_int_specific_vol_dp', , {}, [ [debug] DoxygenMethodDocumenter format_signature called ((T, S, z_t, z_b, rho_ref, rho_0, G_e, HI, EOS, dpa, intz_dpa, intx_dpa, inty_dpa, bathyT, dz_neglect, useMassWghtInterp)) [debug] verbosity = 3 [debug] Setting build mode: latex [debug] method=visit_para [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'mom_eos::analytic_int_density_dz', , {}, ['', ' [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'mom_eos::analytic_int_density_dz', , {}, ['', ' [debug] DoxygenMethodDocumenter format_signature called ((EOS)) [debug] verbosity = 3 [debug] Setting build mode: latex [debug] method=visit_para [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'mom_eos::query_compressible', , {}, ['', 'Retur [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'mom_eos::query_compressible', , {}, ['', 'Retur [debug] DoxygenMethodDocumenter format_signature called ((param_file, EOS, US)) [debug] verbosity = 3 [debug] Setting build mode: latex [debug] method=visit_para [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'mom_eos::eos_init', , {}, ['', 'Initializes EOS [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'mom_eos::eos_init', , {}, ['', 'Initializes EOS [debug] DoxygenMethodDocumenter format_signature called ((EOS, form_of_EOS, form_of_TFreeze, EOS_quadrature, Compressible, Rho_T0_S0, drho_dT, dRho_dS, TFr_S0_P0, dTFr_dS, dTFr_dp)) [debug] verbosity = 3 [debug] Setting build mode: latex [debug] method=visit_para [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'mom_eos::eos_manual_init', , {}, ['', 'Manually [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'mom_eos::eos_manual_init', , {}, ['', 'Manually [debug] DoxygenMethodDocumenter format_signature called ((EOS)) [debug] verbosity = 3 [debug] Setting build mode: latex [debug] method=visit_para [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'mom_eos::eos_allocate', , {}, ['', 'Allocates E [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'mom_eos::eos_allocate', , {}, ['', 'Allocates E [debug] DoxygenMethodDocumenter format_signature called ((EOS)) [debug] verbosity = 3 [debug] Setting build mode: latex [debug] method=visit_para [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'mom_eos::eos_end', , {}, ['', 'Deallocates EOS_ [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'mom_eos::eos_end', , {}, ['', 'Deallocates EOS_ [debug] DoxygenMethodDocumenter format_signature called ((Rho_T0_S0, dRho_dT, dRho_dS, EOS, use_quadrature)) [debug] verbosity = 3 [debug] Setting build mode: latex [debug] method=visit_para [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'mom_eos::eos_use_linear', , {}, ['', 'Set equat [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'mom_eos::eos_use_linear', , {}, ['', 'Set equat [debug] DoxygenMethodDocumenter format_signature called ((T, S, HI, kd, mask_z, EOS)) [debug] verbosity = 3 [debug] Setting build mode: latex [debug] method=visit_para [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'mom_eos::convert_temp_salt_for_teos10', , {}, [ [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'mom_eos::convert_temp_salt_for_teos10', , {}, [ [debug] DoxygenMethodDocumenter format_signature called ((EOS)) [debug] verbosity = 3 [debug] Setting build mode: latex [debug] method=visit_para [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'mom_eos::eos_quadrature', , {}, ['', 'Return va [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'mom_eos::eos_quadrature', , {}, ['', 'Return va [debug] DoxygenMethodDocumenter format_signature called ((EOS, form_of_EOS, form_of_TFreeze, EOS_quadrature, Compressible, Rho_T0_S0, drho_dT, dRho_dS, TFr_S0_P0, dTFr_dS, dTFr_dp)) [debug] verbosity = 3 [debug] Setting build mode: latex [debug] method=visit_para [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'mom_eos::extract_member_eos', , {}, ['', 'Extra [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'mom_eos::extract_member_eos', , {}, ['', 'Extra [fd] run(.. f:type:: eos_type) [fd] sig(eos_type) [fd] ftype(None) objtype(None) modname(None) typename() name(eos_type) arglist(None) [fd] fullname(mom_eos/eos_type) ftype(None) [fd] name(('mom_eos/eos_type', None)) sig(eos_type) signode(type mom_eos/eos_type) [fd] run(.. f:subroutine:: subroutine calculate_density_scalar(T, S, pressure, rho, EOS, rho_ref, scale)) [fd] sig(subroutine calculate_density_scalar(T, S, pressure, rho, EOS, rho_ref, scale)) [fd] ftype(None) objtype(subroutine) modname(None) typename() name(calculate_density_scalar) arglist(T, S, pressure, rho, EOS, rho_ref, scale) [fd] fullname(mom_eos/calculate_density_scalar) ftype(None) [fd] name(('mom_eos/calculate_density_scalar', None)) sig(subroutine calculate_density_scalar(T, S, pressure, rho, EOS, rho_ref, scale)) signode(subroutine mom_eos/calculate_density_scalarTSpressurerhoEOSrho_refscale) [fd] run(.. f:subroutine:: subroutine calculate_stanley_density_scalar(T, S, pressure, Tvar, TScov, Svar, rho, EOS, rho_ref, scale)) [fd] sig(subroutine calculate_stanley_density_scalar(T, S, pressure, Tvar, TScov, Svar, rho, EOS, rho_ref, scale)) [fd] ftype(None) objtype(subroutine) modname(None) typename() name(calculate_stanley_density_scalar) arglist(T, S, pressure, Tvar, TScov, Svar, rho, EOS, rho_ref, scale) [fd] fullname(mom_eos/calculate_stanley_density_scalar) ftype(None) [fd] name(('mom_eos/calculate_stanley_density_scalar', None)) sig(subroutine calculate_stanley_density_scalar(T, S, pressure, Tvar, TScov, Svar, rho, EOS, rho_ref, scale)) signode(subroutine mom_eos/calculate_stanley_density_scalarTSpressureTvarTScovSvarrhoEOSrho_refscale) [fd] run(.. f:subroutine:: subroutine calculate_density_array(T, S, pressure, rho, start, npts, EOS, rho_ref, scale)) [fd] sig(subroutine calculate_density_array(T, S, pressure, rho, start, npts, EOS, rho_ref, scale)) [fd] ftype(None) objtype(subroutine) modname(None) typename() name(calculate_density_array) arglist(T, S, pressure, rho, start, npts, EOS, rho_ref, scale) [fd] fullname(mom_eos/calculate_density_array) ftype(None) [fd] name(('mom_eos/calculate_density_array', None)) sig(subroutine calculate_density_array(T, S, pressure, rho, start, npts, EOS, rho_ref, scale)) signode(subroutine mom_eos/calculate_density_arrayTSpressurerhostartnptsEOSrho_refscale) [fd] run(.. f:subroutine:: subroutine calculate_stanley_density_array(T, S, pressure, Tvar, TScov, Svar, rho, start, npts, EOS, rho_ref, scale)) [fd] sig(subroutine calculate_stanley_density_array(T, S, pressure, Tvar, TScov, Svar, rho, start, npts, EOS, rho_ref, scale)) [fd] ftype(None) objtype(subroutine) modname(None) typename() name(calculate_stanley_density_array) arglist(T, S, pressure, Tvar, TScov, Svar, rho, start, npts, EOS, rho_ref, scale) [fd] fullname(mom_eos/calculate_stanley_density_array) ftype(None) [fd] name(('mom_eos/calculate_stanley_density_array', None)) sig(subroutine calculate_stanley_density_array(T, S, pressure, Tvar, TScov, Svar, rho, start, npts, EOS, rho_ref, scale)) signode(subroutine mom_eos/calculate_stanley_density_arrayTSpressureTvarTScovSvarrhostartnptsEOSrho_refscale) [fd] run(.. f:subroutine:: subroutine calculate_density_1d(T, S, pressure, rho, EOS, dom, rho_ref, scale)) [fd] sig(subroutine calculate_density_1d(T, S, pressure, rho, EOS, dom, rho_ref, scale)) [fd] ftype(None) objtype(subroutine) modname(None) typename() name(calculate_density_1d) arglist(T, S, pressure, rho, EOS, dom, rho_ref, scale) [fd] fullname(mom_eos/calculate_density_1d) ftype(None) [fd] name(('mom_eos/calculate_density_1d', None)) sig(subroutine calculate_density_1d(T, S, pressure, rho, EOS, dom, rho_ref, scale)) signode(subroutine mom_eos/calculate_density_1dTSpressurerhoEOSdomrho_refscale) [fd] run(.. f:subroutine:: subroutine calculate_stanley_density_1d(T, S, pressure, Tvar, TScov, Svar, rho, EOS, dom, rho_ref, scale)) [fd] sig(subroutine calculate_stanley_density_1d(T, S, pressure, Tvar, TScov, Svar, rho, EOS, dom, rho_ref, scale)) [fd] ftype(None) objtype(subroutine) modname(None) typename() name(calculate_stanley_density_1d) arglist(T, S, pressure, Tvar, TScov, Svar, rho, EOS, dom, rho_ref, scale) [fd] fullname(mom_eos/calculate_stanley_density_1d) ftype(None) [fd] name(('mom_eos/calculate_stanley_density_1d', None)) sig(subroutine calculate_stanley_density_1d(T, S, pressure, Tvar, TScov, Svar, rho, EOS, dom, rho_ref, scale)) signode(subroutine mom_eos/calculate_stanley_density_1dTSpressureTvarTScovSvarrhoEOSdomrho_refscale) [fd] run(.. f:subroutine:: subroutine calculate_spec_vol_array(T, S, pressure, specvol, start, npts, EOS, spv_ref, scale)) [fd] sig(subroutine calculate_spec_vol_array(T, S, pressure, specvol, start, npts, EOS, spv_ref, scale)) [fd] ftype(None) objtype(subroutine) modname(None) typename() name(calculate_spec_vol_array) arglist(T, S, pressure, specvol, start, npts, EOS, spv_ref, scale) [fd] fullname(mom_eos/calculate_spec_vol_array) ftype(None) [fd] name(('mom_eos/calculate_spec_vol_array', None)) sig(subroutine calculate_spec_vol_array(T, S, pressure, specvol, start, npts, EOS, spv_ref, scale)) signode(subroutine mom_eos/calculate_spec_vol_arrayTSpressurespecvolstartnptsEOSspv_refscale) [fd] run(.. f:subroutine:: subroutine calc_spec_vol_scalar(T, S, pressure, specvol, EOS, spv_ref, scale)) [fd] sig(subroutine calc_spec_vol_scalar(T, S, pressure, specvol, EOS, spv_ref, scale)) [fd] ftype(None) objtype(subroutine) modname(None) typename() name(calc_spec_vol_scalar) arglist(T, S, pressure, specvol, EOS, spv_ref, scale) [fd] fullname(mom_eos/calc_spec_vol_scalar) ftype(None) [fd] name(('mom_eos/calc_spec_vol_scalar', None)) sig(subroutine calc_spec_vol_scalar(T, S, pressure, specvol, EOS, spv_ref, scale)) signode(subroutine mom_eos/calc_spec_vol_scalarTSpressurespecvolEOSspv_refscale) [fd] run(.. f:subroutine:: subroutine calc_spec_vol_1d(T, S, pressure, specvol, EOS, dom, spv_ref, scale)) [fd] sig(subroutine calc_spec_vol_1d(T, S, pressure, specvol, EOS, dom, spv_ref, scale)) [fd] ftype(None) objtype(subroutine) modname(None) typename() name(calc_spec_vol_1d) arglist(T, S, pressure, specvol, EOS, dom, spv_ref, scale) [fd] fullname(mom_eos/calc_spec_vol_1d) ftype(None) [fd] name(('mom_eos/calc_spec_vol_1d', None)) sig(subroutine calc_spec_vol_1d(T, S, pressure, specvol, EOS, dom, spv_ref, scale)) signode(subroutine mom_eos/calc_spec_vol_1dTSpressurespecvolEOSdomspv_refscale) [fd] run(.. f:subroutine:: subroutine calculate_tfreeze_scalar(S, pressure, T_fr, EOS, pres_scale)) [fd] sig(subroutine calculate_tfreeze_scalar(S, pressure, T_fr, EOS, pres_scale)) [fd] ftype(None) objtype(subroutine) modname(None) typename() name(calculate_tfreeze_scalar) arglist(S, pressure, T_fr, EOS, pres_scale) [fd] fullname(mom_eos/calculate_tfreeze_scalar) ftype(None) [fd] name(('mom_eos/calculate_tfreeze_scalar', None)) sig(subroutine calculate_tfreeze_scalar(S, pressure, T_fr, EOS, pres_scale)) signode(subroutine mom_eos/calculate_tfreeze_scalarSpressureT_frEOSpres_scale) [fd] run(.. f:subroutine:: subroutine calculate_tfreeze_array(S, pressure, T_fr, start, npts, EOS, pres_scale)) [fd] sig(subroutine calculate_tfreeze_array(S, pressure, T_fr, start, npts, EOS, pres_scale)) [fd] ftype(None) objtype(subroutine) modname(None) typename() name(calculate_tfreeze_array) arglist(S, pressure, T_fr, start, npts, EOS, pres_scale) [fd] fullname(mom_eos/calculate_tfreeze_array) ftype(None) [fd] name(('mom_eos/calculate_tfreeze_array', None)) sig(subroutine calculate_tfreeze_array(S, pressure, T_fr, start, npts, EOS, pres_scale)) signode(subroutine mom_eos/calculate_tfreeze_arraySpressureT_frstartnptsEOSpres_scale) [fd] run(.. f:subroutine:: subroutine calculate_density_derivs_array(T, S, pressure, drho_dT, drho_dS, start, npts, EOS, scale)) [fd] sig(subroutine calculate_density_derivs_array(T, S, pressure, drho_dT, drho_dS, start, npts, EOS, scale)) [fd] ftype(None) objtype(subroutine) modname(None) typename() name(calculate_density_derivs_array) arglist(T, S, pressure, drho_dT, drho_dS, start, npts, EOS, scale) [fd] fullname(mom_eos/calculate_density_derivs_array) ftype(None) [fd] name(('mom_eos/calculate_density_derivs_array', None)) sig(subroutine calculate_density_derivs_array(T, S, pressure, drho_dT, drho_dS, start, npts, EOS, scale)) signode(subroutine mom_eos/calculate_density_derivs_arrayTSpressuredrho_dTdrho_dSstartnptsEOSscale) [fd] run(.. f:subroutine:: subroutine calculate_density_derivs_1d(T, S, pressure, drho_dT, drho_dS, EOS, dom, scale)) [fd] sig(subroutine calculate_density_derivs_1d(T, S, pressure, drho_dT, drho_dS, EOS, dom, scale)) [fd] ftype(None) objtype(subroutine) modname(None) typename() name(calculate_density_derivs_1d) arglist(T, S, pressure, drho_dT, drho_dS, EOS, dom, scale) [fd] fullname(mom_eos/calculate_density_derivs_1d) ftype(None) [fd] name(('mom_eos/calculate_density_derivs_1d', None)) sig(subroutine calculate_density_derivs_1d(T, S, pressure, drho_dT, drho_dS, EOS, dom, scale)) signode(subroutine mom_eos/calculate_density_derivs_1dTSpressuredrho_dTdrho_dSEOSdomscale) [fd] run(.. f:subroutine:: subroutine calculate_density_derivs_scalar(T, S, pressure, drho_dT, drho_dS, EOS, scale)) [fd] sig(subroutine calculate_density_derivs_scalar(T, S, pressure, drho_dT, drho_dS, EOS, scale)) [fd] ftype(None) objtype(subroutine) modname(None) typename() name(calculate_density_derivs_scalar) arglist(T, S, pressure, drho_dT, drho_dS, EOS, scale) [fd] fullname(mom_eos/calculate_density_derivs_scalar) ftype(None) [fd] name(('mom_eos/calculate_density_derivs_scalar', None)) sig(subroutine calculate_density_derivs_scalar(T, S, pressure, drho_dT, drho_dS, EOS, scale)) signode(subroutine mom_eos/calculate_density_derivs_scalarTSpressuredrho_dTdrho_dSEOSscale) [fd] run(.. f:subroutine:: subroutine calculate_density_second_derivs_array(T, S, pressure, drho_dS_dS, drho_dS_dT, drho_dT_dT, drho_dS_dP, drho_dT_dP, start, npts, EOS, scale)) [fd] sig(subroutine calculate_density_second_derivs_array(T, S, pressure, drho_dS_dS, drho_dS_dT, drho_dT_dT, drho_dS_dP, drho_dT_dP, start, npts, EOS, scale)) [fd] ftype(None) objtype(subroutine) modname(None) typename() name(calculate_density_second_derivs_array) arglist(T, S, pressure, drho_dS_dS, drho_dS_dT, drho_dT_dT, drho_dS_dP, drho_dT_dP, start, npts, EOS, scale) [fd] fullname(mom_eos/calculate_density_second_derivs_array) ftype(None) [fd] name(('mom_eos/calculate_density_second_derivs_array', None)) sig(subroutine calculate_density_second_derivs_array(T, S, pressure, drho_dS_dS, drho_dS_dT, drho_dT_dT, drho_dS_dP, drho_dT_dP, start, npts, EOS, scale)) signode(subroutine mom_eos/calculate_density_second_derivs_arrayTSpressuredrho_dS_dSdrho_dS_dTdrho_dT_dTdrho_dS_dPdrho_dT_dPstartnptsEOSscale) [fd] run(.. f:subroutine:: subroutine calculate_density_second_derivs_scalar(T, S, pressure, drho_dS_dS, drho_dS_dT, drho_dT_dT, drho_dS_dP, drho_dT_dP, EOS, scale)) [fd] sig(subroutine calculate_density_second_derivs_scalar(T, S, pressure, drho_dS_dS, drho_dS_dT, drho_dT_dT, drho_dS_dP, drho_dT_dP, EOS, scale)) [fd] ftype(None) objtype(subroutine) modname(None) typename() name(calculate_density_second_derivs_scalar) arglist(T, S, pressure, drho_dS_dS, drho_dS_dT, drho_dT_dT, drho_dS_dP, drho_dT_dP, EOS, scale) [fd] fullname(mom_eos/calculate_density_second_derivs_scalar) ftype(None) [fd] name(('mom_eos/calculate_density_second_derivs_scalar', None)) sig(subroutine calculate_density_second_derivs_scalar(T, S, pressure, drho_dS_dS, drho_dS_dT, drho_dT_dT, drho_dS_dP, drho_dT_dP, EOS, scale)) signode(subroutine mom_eos/calculate_density_second_derivs_scalarTSpressuredrho_dS_dSdrho_dS_dTdrho_dT_dTdrho_dS_dPdrho_dT_dPEOSscale) [fd] run(.. f:subroutine:: subroutine calculate_spec_vol_derivs_array(T, S, pressure, dSV_dT, dSV_dS, start, npts, EOS)) [fd] sig(subroutine calculate_spec_vol_derivs_array(T, S, pressure, dSV_dT, dSV_dS, start, npts, EOS)) [fd] ftype(None) objtype(subroutine) modname(None) typename() name(calculate_spec_vol_derivs_array) arglist(T, S, pressure, dSV_dT, dSV_dS, start, npts, EOS) [fd] fullname(mom_eos/calculate_spec_vol_derivs_array) ftype(None) [fd] name(('mom_eos/calculate_spec_vol_derivs_array', None)) sig(subroutine calculate_spec_vol_derivs_array(T, S, pressure, dSV_dT, dSV_dS, start, npts, EOS)) signode(subroutine mom_eos/calculate_spec_vol_derivs_arrayTSpressuredSV_dTdSV_dSstartnptsEOS) [fd] run(.. f:subroutine:: subroutine calc_spec_vol_derivs_1d(T, S, pressure, dSV_dT, dSV_dS, EOS, dom, scale)) [fd] sig(subroutine calc_spec_vol_derivs_1d(T, S, pressure, dSV_dT, dSV_dS, EOS, dom, scale)) [fd] ftype(None) objtype(subroutine) modname(None) typename() name(calc_spec_vol_derivs_1d) arglist(T, S, pressure, dSV_dT, dSV_dS, EOS, dom, scale) [fd] fullname(mom_eos/calc_spec_vol_derivs_1d) ftype(None) [fd] name(('mom_eos/calc_spec_vol_derivs_1d', None)) sig(subroutine calc_spec_vol_derivs_1d(T, S, pressure, dSV_dT, dSV_dS, EOS, dom, scale)) signode(subroutine mom_eos/calc_spec_vol_derivs_1dTSpressuredSV_dTdSV_dSEOSdomscale) [fd] run(.. f:subroutine:: subroutine calculate_compress_array(T, S, press, rho, drho_dp, start, npts, EOS)) [fd] sig(subroutine calculate_compress_array(T, S, press, rho, drho_dp, start, npts, EOS)) [fd] ftype(None) objtype(subroutine) modname(None) typename() name(calculate_compress_array) arglist(T, S, press, rho, drho_dp, start, npts, EOS) [fd] fullname(mom_eos/calculate_compress_array) ftype(None) [fd] name(('mom_eos/calculate_compress_array', None)) sig(subroutine calculate_compress_array(T, S, press, rho, drho_dp, start, npts, EOS)) signode(subroutine mom_eos/calculate_compress_arrayTSpressrhodrho_dpstartnptsEOS) [fd] run(.. f:subroutine:: subroutine calculate_compress_scalar(T, S, pressure, rho, drho_dp, EOS)) [fd] sig(subroutine calculate_compress_scalar(T, S, pressure, rho, drho_dp, EOS)) [fd] ftype(None) objtype(subroutine) modname(None) typename() name(calculate_compress_scalar) arglist(T, S, pressure, rho, drho_dp, EOS) [fd] fullname(mom_eos/calculate_compress_scalar) ftype(None) [fd] name(('mom_eos/calculate_compress_scalar', None)) sig(subroutine calculate_compress_scalar(T, S, pressure, rho, drho_dp, EOS)) signode(subroutine mom_eos/calculate_compress_scalarTSpressurerhodrho_dpEOS) [fd] run(.. f:function:: integer function eos_domain(HI, halo)) [fd] sig(integer function eos_domain(HI, halo)) [fd] ftype(integer) objtype(function) modname(None) typename() name(eos_domain) arglist(HI, halo) [fd] fullname(mom_eos/eos_domain) ftype(integer) [fd] name(('mom_eos/eos_domain', 'integer')) sig(integer function eos_domain(HI, halo)) signode(function mom_eos/eos_domainHIhalo [integer]) [fd] run(.. f:subroutine:: subroutine analytic_int_specific_vol_dp(T, S, p_t, p_b, alpha_ref, HI, EOS, dza, intp_dza, intx_dza, inty_dza, halo_size, bathyP, dP_tiny, useMassWghtInterp)) [fd] sig(subroutine analytic_int_specific_vol_dp(T, S, p_t, p_b, alpha_ref, HI, EOS, dza, intp_dza, intx_dza, inty_dza, halo_size, bathyP, dP_tiny, useMassWghtInterp)) [fd] ftype(None) objtype(subroutine) modname(None) typename() name(analytic_int_specific_vol_dp) arglist(T, S, p_t, p_b, alpha_ref, HI, EOS, dza, intp_dza, intx_dza, inty_dza, halo_size, bathyP, dP_tiny, useMassWghtInterp) [fd] fullname(mom_eos/analytic_int_specific_vol_dp) ftype(None) [fd] name(('mom_eos/analytic_int_specific_vol_dp', None)) sig(subroutine analytic_int_specific_vol_dp(T, S, p_t, p_b, alpha_ref, HI, EOS, dza, intp_dza, intx_dza, inty_dza, halo_size, bathyP, dP_tiny, useMassWghtInterp)) signode(subroutine mom_eos/analytic_int_specific_vol_dpTSp_tp_balpha_refHIEOSdzaintp_dzaintx_dzainty_dzahalo_sizebathyPdP_tinyuseMassWghtInterp) [fd] run(.. f:subroutine:: subroutine analytic_int_density_dz(T, S, z_t, z_b, rho_ref, rho_0, G_e, HI, EOS, dpa, intz_dpa, intx_dpa, inty_dpa, bathyT, dz_neglect, useMassWghtInterp)) [fd] sig(subroutine analytic_int_density_dz(T, S, z_t, z_b, rho_ref, rho_0, G_e, HI, EOS, dpa, intz_dpa, intx_dpa, inty_dpa, bathyT, dz_neglect, useMassWghtInterp)) [fd] ftype(None) objtype(subroutine) modname(None) typename() name(analytic_int_density_dz) arglist(T, S, z_t, z_b, rho_ref, rho_0, G_e, HI, EOS, dpa, intz_dpa, intx_dpa, inty_dpa, bathyT, dz_neglect, useMassWghtInterp) [fd] fullname(mom_eos/analytic_int_density_dz) ftype(None) [fd] name(('mom_eos/analytic_int_density_dz', None)) sig(subroutine analytic_int_density_dz(T, S, z_t, z_b, rho_ref, rho_0, G_e, HI, EOS, dpa, intz_dpa, intx_dpa, inty_dpa, bathyT, dz_neglect, useMassWghtInterp)) signode(subroutine mom_eos/analytic_int_density_dzTSz_tz_brho_refrho_0G_eHIEOSdpaintz_dpaintx_dpainty_dpabathyTdz_neglectuseMassWghtInterp) [fd] run(.. f:function:: logical function query_compressible(EOS)) [fd] sig(logical function query_compressible(EOS)) [fd] ftype(logical) objtype(function) modname(None) typename() name(query_compressible) arglist(EOS) [fd] fullname(mom_eos/query_compressible) ftype(logical) [fd] name(('mom_eos/query_compressible', 'logical')) sig(logical function query_compressible(EOS)) signode(function mom_eos/query_compressibleEOS [logical]) [fd] run(.. f:subroutine:: subroutine eos_init(param_file, EOS, US)) [fd] sig(subroutine eos_init(param_file, EOS, US)) [fd] ftype(None) objtype(subroutine) modname(None) typename() name(eos_init) arglist(param_file, EOS, US) [fd] fullname(mom_eos/eos_init) ftype(None) [fd] name(('mom_eos/eos_init', None)) sig(subroutine eos_init(param_file, EOS, US)) signode(subroutine mom_eos/eos_initparam_fileEOSUS) [fd] run(.. f:subroutine:: subroutine eos_manual_init(EOS, form_of_EOS, form_of_TFreeze, EOS_quadrature, Compressible, Rho_T0_S0, drho_dT, dRho_dS, TFr_S0_P0, dTFr_dS, dTFr_dp)) [fd] sig(subroutine eos_manual_init(EOS, form_of_EOS, form_of_TFreeze, EOS_quadrature, Compressible, Rho_T0_S0, drho_dT, dRho_dS, TFr_S0_P0, dTFr_dS, dTFr_dp)) [fd] ftype(None) objtype(subroutine) modname(None) typename() name(eos_manual_init) arglist(EOS, form_of_EOS, form_of_TFreeze, EOS_quadrature, Compressible, Rho_T0_S0, drho_dT, dRho_dS, TFr_S0_P0, dTFr_dS, dTFr_dp) [fd] fullname(mom_eos/eos_manual_init) ftype(None) [fd] name(('mom_eos/eos_manual_init', None)) sig(subroutine eos_manual_init(EOS, form_of_EOS, form_of_TFreeze, EOS_quadrature, Compressible, Rho_T0_S0, drho_dT, dRho_dS, TFr_S0_P0, dTFr_dS, dTFr_dp)) signode(subroutine mom_eos/eos_manual_initEOSform_of_EOSform_of_TFreezeEOS_quadratureCompressibleRho_T0_S0drho_dTdRho_dSTFr_S0_P0dTFr_dSdTFr_dp) [fd] run(.. f:subroutine:: subroutine eos_allocate(EOS)) [fd] sig(subroutine eos_allocate(EOS)) [fd] ftype(None) objtype(subroutine) modname(None) typename() name(eos_allocate) arglist(EOS) [fd] fullname(mom_eos/eos_allocate) ftype(None) [fd] name(('mom_eos/eos_allocate', None)) sig(subroutine eos_allocate(EOS)) signode(subroutine mom_eos/eos_allocateEOS) [fd] run(.. f:subroutine:: subroutine eos_end(EOS)) [fd] sig(subroutine eos_end(EOS)) [fd] ftype(None) objtype(subroutine) modname(None) typename() name(eos_end) arglist(EOS) [fd] fullname(mom_eos/eos_end) ftype(None) [fd] name(('mom_eos/eos_end', None)) sig(subroutine eos_end(EOS)) signode(subroutine mom_eos/eos_endEOS) [fd] run(.. f:subroutine:: subroutine eos_use_linear(Rho_T0_S0, dRho_dT, dRho_dS, EOS, use_quadrature)) [fd] sig(subroutine eos_use_linear(Rho_T0_S0, dRho_dT, dRho_dS, EOS, use_quadrature)) [fd] ftype(None) objtype(subroutine) modname(None) typename() name(eos_use_linear) arglist(Rho_T0_S0, dRho_dT, dRho_dS, EOS, use_quadrature) [fd] fullname(mom_eos/eos_use_linear) ftype(None) [fd] name(('mom_eos/eos_use_linear', None)) sig(subroutine eos_use_linear(Rho_T0_S0, dRho_dT, dRho_dS, EOS, use_quadrature)) signode(subroutine mom_eos/eos_use_linearRho_T0_S0dRho_dTdRho_dSEOSuse_quadrature) [fd] run(.. f:subroutine:: subroutine convert_temp_salt_for_teos10(T, S, HI, kd, mask_z, EOS)) [fd] sig(subroutine convert_temp_salt_for_teos10(T, S, HI, kd, mask_z, EOS)) [fd] ftype(None) objtype(subroutine) modname(None) typename() name(convert_temp_salt_for_teos10) arglist(T, S, HI, kd, mask_z, EOS) [fd] fullname(mom_eos/convert_temp_salt_for_teos10) ftype(None) [fd] name(('mom_eos/convert_temp_salt_for_teos10', None)) sig(subroutine convert_temp_salt_for_teos10(T, S, HI, kd, mask_z, EOS)) signode(subroutine mom_eos/convert_temp_salt_for_teos10TSHIkdmask_zEOS) [fd] run(.. f:function:: logical function eos_quadrature(EOS)) [fd] sig(logical function eos_quadrature(EOS)) [fd] ftype(logical) objtype(function) modname(None) typename() name(eos_quadrature) arglist(EOS) [fd] fullname(mom_eos/eos_quadrature) ftype(logical) [fd] name(('mom_eos/eos_quadrature', 'logical')) sig(logical function eos_quadrature(EOS)) signode(function mom_eos/eos_quadratureEOS [logical]) [fd] run(.. f:subroutine:: subroutine extract_member_eos(EOS, form_of_EOS, form_of_TFreeze, EOS_quadrature, Compressible, Rho_T0_S0, drho_dT, dRho_dS, TFr_S0_P0, dTFr_dS, dTFr_dp)) [fd] sig(subroutine extract_member_eos(EOS, form_of_EOS, form_of_TFreeze, EOS_quadrature, Compressible, Rho_T0_S0, drho_dT, dRho_dS, TFr_S0_P0, dTFr_dS, dTFr_dp)) [fd] ftype(None) objtype(subroutine) modname(None) typename() name(extract_member_eos) arglist(EOS, form_of_EOS, form_of_TFreeze, EOS_quadrature, Compressible, Rho_T0_S0, drho_dT, dRho_dS, TFr_S0_P0, dTFr_dS, dTFr_dp) [fd] fullname(mom_eos/extract_member_eos) ftype(None) [fd] name(('mom_eos/extract_member_eos', None)) sig(subroutine extract_member_eos(EOS, form_of_EOS, form_of_TFreeze, EOS_quadrature, Compressible, Rho_T0_S0, drho_dT, dRho_dS, TFr_S0_P0, dTFr_dS, dTFr_dp)) signode(subroutine mom_eos/extract_member_eosEOSform_of_EOSform_of_TFreezeEOS_quadratureCompressibleRho_T0_S0drho_dTdRho_dSTFr_S0_P0dTFr_dSdTFr_dp) [i18n] PATCH: 'docutils.nodes.field_name' to have source and line: Type fields [i18n] PATCH: 'docutils.nodes.field_name' to have source and line: Parameters [i18n] PATCH: 'docutils.nodes.field_name' to have source and line: Call to [i18n] PATCH: 'docutils.nodes.field_name' to have source and line: Parameters [i18n] PATCH: 'docutils.nodes.field_name' to have source and line: Call to [i18n] PATCH: 'docutils.nodes.field_name' to have source and line: Parameters [i18n] PATCH: 'docutils.nodes.field_name' to have source and line: Call to [i18n] PATCH: 'docutils.nodes.field_name' to have source and line: Called from [i18n] PATCH: 'docutils.nodes.field_name' to have source and line: Parameters [i18n] PATCH: 'docutils.nodes.field_name' to have source and line: Call to [i18n] PATCH: 'docutils.nodes.field_name' to have source and line: Parameters [i18n] PATCH: 'docutils.nodes.field_name' to have source and line: Call to [i18n] PATCH: 'docutils.nodes.field_name' to have source and line: Parameters [i18n] PATCH: 'docutils.nodes.field_name' to have source and line: Call to [i18n] PATCH: 'docutils.nodes.field_name' to have source and line: Parameters [i18n] PATCH: 'docutils.nodes.field_name' to have source and line: Call to [i18n] PATCH: 'docutils.nodes.field_name' to have source and line: Called from [i18n] PATCH: 'docutils.nodes.field_name' to have source and line: Parameters [i18n] PATCH: 'docutils.nodes.field_name' to have source and line: Call to [i18n] PATCH: 'docutils.nodes.field_name' to have source and line: Parameters [i18n] PATCH: 'docutils.nodes.field_name' to have source and line: Call to [i18n] PATCH: 'docutils.nodes.field_name' to have source and line: Parameters [i18n] PATCH: 'docutils.nodes.field_name' to have source and line: Call to [i18n] PATCH: 'docutils.nodes.field_name' to have source and line: Parameters [i18n] PATCH: 'docutils.nodes.field_name' to have source and line: Call to [i18n] PATCH: 'docutils.nodes.field_name' to have source and line: Parameters [i18n] PATCH: 'docutils.nodes.field_name' to have source and line: Call to [i18n] PATCH: 'docutils.nodes.field_name' to have source and line: Called from [i18n] PATCH: 'docutils.nodes.field_name' to have source and line: Parameters [i18n] PATCH: 'docutils.nodes.field_name' to have source and line: Call to [i18n] PATCH: 'docutils.nodes.field_name' to have source and line: Parameters [i18n] PATCH: 'docutils.nodes.field_name' to have source and line: Call to [i18n] PATCH: 'docutils.nodes.field_name' to have source and line: Parameters [i18n] PATCH: 'docutils.nodes.field_name' to have source and line: Call to [i18n] PATCH: 'docutils.nodes.field_name' to have source and line: Parameters [i18n] PATCH: 'docutils.nodes.field_name' to have source and line: Call to [i18n] PATCH: 'docutils.nodes.field_name' to have source and line: Parameters [i18n] PATCH: 'docutils.nodes.field_name' to have source and line: Call to [i18n] PATCH: 'docutils.nodes.field_name' to have source and line: Called from [i18n] PATCH: 'docutils.nodes.field_name' to have source and line: Parameters [i18n] PATCH: 'docutils.nodes.field_name' to have source and line: Call to [i18n] PATCH: 'docutils.nodes.field_name' to have source and line: Parameters [i18n] PATCH: 'docutils.nodes.field_name' to have source and line: Call to [i18n] PATCH: 'docutils.nodes.field_name' to have source and line: Called from [i18n] PATCH: 'docutils.nodes.field_name' to have source and line: Parameters [i18n] PATCH: 'docutils.nodes.field_name' to have source and line: Call to [i18n] PATCH: 'docutils.nodes.field_name' to have source and line: Parameters [i18n] PATCH: 'docutils.nodes.field_name' to have source and line: Return [i18n] PATCH: 'docutils.nodes.field_name' to have source and line: Parameters [i18n] PATCH: 'docutils.nodes.field_name' to have source and line: Call to [i18n] PATCH: 'docutils.nodes.field_name' to have source and line: Parameters [i18n] PATCH: 'docutils.nodes.field_name' to have source and line: Call to [i18n] PATCH: 'docutils.nodes.field_name' to have source and line: Parameters [i18n] PATCH: 'docutils.nodes.field_name' to have source and line: Parameters [i18n] PATCH: 'docutils.nodes.field_name' to have source and line: Call to [i18n] PATCH: 'docutils.nodes.field_name' to have source and line: Called from [i18n] PATCH: 'docutils.nodes.field_name' to have source and line: Parameters [i18n] PATCH: 'docutils.nodes.field_name' to have source and line: Parameters [i18n] PATCH: 'docutils.nodes.field_name' to have source and line: Called from [i18n] PATCH: 'docutils.nodes.field_name' to have source and line: Parameters [i18n] PATCH: 'docutils.nodes.field_name' to have source and line: Parameters [i18n] PATCH: 'docutils.nodes.field_name' to have source and line: Call to [i18n] PATCH: 'docutils.nodes.field_name' to have source and line: Parameters [i18n] PATCH: 'docutils.nodes.field_name' to have source and line: Call to [i18n] PATCH: 'docutils.nodes.field_name' to have source and line: Parameters [i18n] PATCH: 'docutils.nodes.field_name' to have source and line: Parameters [app] emitting event: 'doctree-read'(>,) reading sources... [ 9%] api/generated/modules/mom_ice_shelf [app] emitting event: 'env-purge-doc'(, 'api/generated/modules/mom_ice_shel [app] emitting event: 'source-read'('api/generated/modules/mom_ice_shelf', ['.. autodoxymodule:: mom_ice_shelf\n :members:\n :metho [autodoc] /home/cermak/src/MOM6/docs/api/generated/modules/mom_ice_shelf.rst:1: input: .. autodoxymodule:: mom_ice_shelf :members: :methods: :types: ---------- Data Types ---------- .. autodoxysummary:: :kind: type ~mom_ice_shelf::ice_shelf_cs --------------------- Functions/Subroutines --------------------- .. autodoxysummary:: :kind: func ~mom_ice_shelf::shelf_calc_flux ~mom_ice_shelf::change_thickness_using_melt ~mom_ice_shelf::add_shelf_forces ~mom_ice_shelf::add_shelf_pressure ~mom_ice_shelf::add_shelf_flux ~mom_ice_shelf::initialize_ice_shelf ~mom_ice_shelf::initialize_shelf_mass ~mom_ice_shelf::update_shelf_mass ~mom_ice_shelf::ice_shelf_save_restart ~mom_ice_shelf::ice_shelf_end ~mom_ice_shelf::solo_step_ice_shelf [debug] xpath(./compounddef/compoundname[text()="mom_ice_shelf"]/..) match([('id', 'namespacemom__ice__shelf'), ('kind', 'namespace'), ('language', 'Fortran')]) [debug] add_title:mom_ice_shelf module reference [debug] verbosity = 3 [debug] Setting build mode: latex [debug] method=visit_para [app] emitting event: 'autodoc-process-docstring'('doxymodule', 'mom_ice_shelf', , {'members': , {'members': , {'members': )]) [autodoc] module analyzer failed: error importing 'mom_ice_shelf' (exception was: ModuleNotFoundError("No module named 'mom_ice_shelf'")) [app] emitting event: 'autodoc-process-signature'('doxytype', 'mom_ice_shelf::ice_shelf_cs', , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': ), ('change_thickness_using_melt', ), ('add_shelf_forces', ), ('add_shelf_pressure', ), ('add_shelf_flux', ), ('initialize_ice_shelf', ), ('initialize_shelf_mass', ), ('update_shelf_mass', ), ('ice_shelf_save_restart', ), ('ice_shelf_end', ), ('solo_step_ice_shelf', )]) [autodoc] module analyzer failed: error importing 'mom_ice_shelf' (exception was: ModuleNotFoundError("No module named 'mom_ice_shelf'")) [debug] DoxygenMethodDocumenter format_signature called ((sfc_state, fluxes, Time, time_step, CS, forces)) [debug] add_directive_header sig((sfc_state, fluxes, Time, time_step, CS, forces)) [debug] DoxygenMethodDocumenter directive(subroutine) name(subroutine shelf_calc_flux) [debug] verbosity = 3 [debug] Setting build mode: latex [debug] method=visit_para [debug] method=visit_ref [debug] refid(namespacemom__ice__shelf_1section_ICE_SHELF_equations) kindref(member) ref([]) [debug] ref([('id', 'namespacemom__ice__shelf_1section_ICE_SHELF_equations')]) [debug] refid2(section_ICE_SHELF_equations) reftext(ICE_SHELF equations) [debug] verbosity = 3 [debug] Setting build mode: latex [debug] method=visit_para [debug] method=visit_parameterlist [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'shelf_calc_flux', , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': `_ ---------- Data Types ---------- .. autodoxysummary:: :kind: type ~mom_ice_shelf::ice_shelf_cs --------------------- Functions/Subroutines --------------------- .. autodoxysummary:: :kind: func ~mom_ice_shelf::shelf_calc_flux ~mom_ice_shelf::change_thickness_using_melt ~mom_ice_shelf::add_shelf_forces ~mom_ice_shelf::add_shelf_pressure ~mom_ice_shelf::add_shelf_flux ~mom_ice_shelf::initialize_ice_shelf ~mom_ice_shelf::initialize_shelf_mass ~mom_ice_shelf::update_shelf_mass ~mom_ice_shelf::ice_shelf_save_restart ~mom_ice_shelf::ice_shelf_end ~mom_ice_shelf::solo_step_ice_shelf .. _DETAmom_ice_shelf: -------------------- Detailed Description -------------------- .. _namespacemom__ice__shelf_1section_ICE_SHELF: section_ICE_SHELF ================= This module implements the thermodynamic aspects of ocean/ice-shelf inter-actions using the MOM framework and coding style. Derived from code by Chris Little, early 2010. The ice-sheet dynamics subroutines do the following: initialize_shelf_mass - Initializes the ice shelf mass distribution. * Initializes h_shelf, h_mask, area_shelf_h * CURRENTLY: initializes mass_shelf as well, but this is unnecessary, as mass_shelf is initialized based on h_shelf and density_ice immediately afterwards. Possibly subroutine should be renamed update_shelf_mass - updates ice shelf mass via netCDF file USER_update_shelf_mass (TODO). solo_step_ice_shelf - called only in ice-only mode. shelf_calc_flux - after melt rate & fluxes are calculated, ice dynamics are done. currently mass_shelf is updated immediately after ice_shelf_advect in fully dynamic mode. NOTES: be aware that hmask(:,:) has a number of functions; it is used for front advancement, for subroutines in the velocity solve, and for thickness boundary conditions (this last one may be removed). in other words, interfering with its updates will have implications you might not expect. Overall issues: Many variables need better documentation and units and the subgrid on which they are discretized. .. _namespacemom__ice__shelf_1section_ICE_SHELF_equations: ICE_SHELF equations ------------------- The three fundamental equations are: Heat flux .. math:: \qquad \rho_w C_{pw} \gamma_T (T_w - T_b) = \rho_i \dot{m} L_f Salt flux .. math:: \qquad \rho_w \gamma_s (S_w - S_b) = \rho_i \dot{m} S_b Freezing temperature .. math:: \qquad T_b = a S_b + b + c P where .... .. _namespacemom__ice__shelf_1section_ICE_SHELF_references: References ---------- Asay-Davis, Xylar S., Stephen L. Cornford, Benjamin K. Galton-Fenzi, Rupert M. Gladstone, G. Hilmar Gudmundsson, David M. Holland, Paul R. Holland, and Daniel F. Martin. Experimental design for three interrelated marine ice sheet and ocean model intercomparison projects: MISMIP v. 3 (MISMIP+), ISOMIP v. 2 (ISOMIP+) and MISOMIP v. 1 (MISOMIP1). Geoscientific Model Development 9, no. 7 (2016): 2471. Goldberg, D. N., et al. Investigation of land ice-ocean interaction with a fully coupled ice-ocean model: 1. Model description and behavior. Journal of Geophysical Research: Earth Surface 117.F2 (2012). Goldberg, D. N., et al. Investigation of land ice-ocean interaction with a fully coupled ice-ocean model: 2. Sensitivity to external forcings. Journal of Geophysical Research: Earth Surface 117.F2 (2012). Holland, David M., and Adrian Jenkins. Modeling thermodynamic ice-ocean interactions at the base of an ice shelf. Journal of Physical Oceanography 29.8 (1999): 1787-1800. ------------------ Type Documentation ------------------ .. f:type:: ice_shelf_cs Control structure that contains ice shelf parameters and diagnostics handles. :typefield integer id_melt: Diagnostic handles. :typefield integer id_exch_vel_s: Diagnostic handles. :typefield integer id_exch_vel_t: Diagnostic handles. :typefield integer id_tfreeze: Diagnostic handles. :typefield integer id_tfl_shelf: Diagnostic handles. :typefield integer id_thermal_driving: Diagnostic handles. :typefield integer id_haline_driving: Diagnostic handles. :typefield integer id_u_ml: Diagnostic handles. :typefield integer id_v_ml: Diagnostic handles. :typefield integer id_sbdry: Diagnostic handles. :typefield integer id_h_shelf: Diagnostic handles. :typefield integer id_h_mask: Diagnostic handles. :typefield integer id_surf_elev: Diagnostic handles. :typefield integer id_bathym: Diagnostic handles. :typefield integer id_area_shelf_h: Diagnostic handles. :typefield integer id_ustar_shelf: Diagnostic handles. :typefield integer id_shelf_mass: Diagnostic handles. :typefield integer id_mass_flux: Diagnostic handles. :typefield type(mom_restart_cs) restart_csp [pointer]: A pointer to the restart control structure for the ice shelves. :typefield type(ocean_grid_type) grid: Grid for the ice-shelf model. :typefield type(unit_scale_type) us [pointer]: A structure containing various unit conversion factors. :typefield type(ocean_grid_type) ocn_grid [pointer]: A pointer to the ocean model grid The rest is private. :typefield real flux_factor: A factor that can be used to turn off ice shelf melting (flux_factor = 0) [nondim]. :typefield character(len=128) restart_output_dir: The directory in which to write restart files. :typefield type(ice_shelf_state) iss [pointer]: A structure with elements that describe the ice-shelf state. :typefield type(ice_shelf_dyn_cs) dcs [pointer]: The control structure for the ice-shelf dynamics. :typefield real(\:,\:) utide [pointer]: An unresolved tidal velocity [L T-1 ~> m s-1]. :typefield real ustar_bg: A minimum value for ustar under ice shelves [Z T-1 ~> m s-1]. :typefield real cdrag: drag coefficient under ice shelves [nondim]. :typefield real g_earth: The gravitational acceleration [L2 Z-1 T-2 ~> m s-2]. :typefield real cp: The heat capacity of sea water [Q degC-1 ~> J kg-1 degC-1]. :typefield real rho_ocn: A reference ocean density [R ~> kg m-3]. :typefield real cp_ice: The heat capacity of fresh ice [Q degC-1 ~> J kg-1 degC-1]. :typefield real gamma_t: The (fixed) turbulent exchange velocity in the 2-equation formulation [Z T-1 ~> m s-1]. :typefield real salin_ice: The salinity of shelf ice [ppt]. :typefield real temp_ice: The core temperature of shelf ice [degC]. :typefield real kv_ice: The viscosity of ice [L4 Z-2 T-1 ~> m2 s-1]. :typefield real density_ice: A typical density of ice [R ~> kg m-3]. :typefield real kv_molec: The molecular kinematic viscosity of sea water [Z2 T-1 ~> m2 s-1]. :typefield real kd_molec_salt: The molecular diffusivity of salt [Z2 T-1 ~> m2 s-1]. :typefield real kd_molec_temp: The molecular diffusivity of heat [Z2 T-1 ~> m2 s-1]. :typefield real lat_fusion: The latent heat of fusion [Q ~> J kg-1]. :typefield real gamma_t_3eq: Nondimensional heat-transfer coefficient, used in the 3Eq. formulation. :typefield real gamma_s_3eq: Nondimensional salt-transfer coefficient, used in the 3Eq. formulation This number should be specified by the user. :typefield real col_mass_melt_threshold: An ocean column mass below the iceshelf below which melting does not occur [R Z ~> kg m-2]. :typefield logical mass_from_file: Read the ice shelf mass from a file every dt. :typefield real time_step: this is the shortest timestep that the ice shelf sees, and is equal to the forcing timestep (it is passed in when the shelf is initialized - so need to reorganize MOM driver. it will be the prognistic timestep ... maybe. :typefield logical solo_ice_sheet: whether the ice model is running without being coupled to the ocean :typefield logical gl_regularize: whether to regularize the floatation condition at the grounding line a la Goldberg Holland Schoof 2009 :typefield logical gl_couple: whether to let the floatation condition be determined by ocean column thickness means update_OD_ffrac will be called (note: GL_regularize and GL_couple should be exclusive) :typefield logical calve_to_mask: If true, calve any ice that passes outside of a masked area. :typefield real min_thickness_simple_calve: min. ice shelf thickness criteria for calving [Z ~> m]. :typefield real t0: temperature at ocean surface in the restoring region [degC] :typefield real s0: Salinity at ocean surface in the restoring region [ppt]. :typefield real input_flux: Ice volume flux at an upstream open boundary [m3 s-1]. :typefield real input_thickness: Ice thickness at an upstream open boundary [m]. :typefield type(time_type) time: The component's time. :typefield type(eos_type) eqn_of_state [pointer]: Type that indicates the equation of state to use. :typefield logical active_shelf_dynamics: True if the ice shelf mass changes as a result the dynamic ice-shelf model. :typefield logical override_shelf_movement: If true, user code specifies the shelf movement instead of using the dynamic ice-shelf mode. :typefield logical isthermo: True if the ice shelf can exchange heat and mass with the underlying ocean. :typefield logical threeeq: If true, the 3 equation consistency equations are used to calculate the flux at the ocean-ice interface. :typefield logical insulator: If true, ice shelf is a perfect insulator. :typefield logical const_gamma: If true, gamma_T is specified by the user. :typefield logical constant_sea_level: if true, apply an evaporative, heat and salt fluxes. It will avoid large increase in sea level. :typefield real min_ocean_mass_float: The minimum ocean mass per unit area before the ice shelf is considered to float when constant_sea_level is used [R Z ~> kg m-2]. :typefield real cutoff_depth: Depth above which melt is set to zero (>= 0) [Z ~> m]. :typefield logical find_salt_root: If true, if true find Sbdry using a quadratic eq. :typefield real tfr_0_0: The freezing point at 0 pressure and 0 salinity [degC]. :typefield real dtfr_ds: Partial derivative of freezing temperature with salinity [degC ppt-1]. :typefield real dtfr_dp: Partial derivative of freezing temperature with pressure [degC T2 R-1 L-2 ~> degC Pa-1]. :typefield integer id_read_mass: An integer handle used in time interpolation of the ice shelf mass read from a file. :typefield integer id_read_area: An integer handle used in time interpolation of the ice shelf mass read from a file. :typefield type(diag_ctrl) diag [pointer]: A structure that is used to control diagnostic output. :typefield type(user_ice_shelf_cs) user_cs [pointer]: A pointer to the control structure for user-supplied modifications to the ice shelf code. :typefield logical debug: If true, write verbose checksums for debugging purposes and use reproducible sums. --------------------------------- Function/Subroutine Documentation --------------------------------- .. f:subroutine:: subroutine shelf_calc_flux(sfc_state, fluxes, Time, time_step, CS, forces) Calculates fluxes between the ocean and ice-shelf using the three-equations formulation (optional to use just two equations). See :ref:`ICE_SHELF equations` . :param sfc_state: [inout] A structure containing fields that describe the surface state of the ocean. The intent is only inout to allow for halo updates. :param fluxes: [inout] structure containing pointers to any possible thermodynamic or mass-flux forcing fields. :param time: [in] Start time of the fluxes. :param time_step: [in] Length of time over which these fluxes will be applied [s]. :param cs: A pointer to the control structure returned by a previous call to initialize_ice_shelf. :param forces: [inout] A structure with the driving mechanical forces :callto: :f:func:`add_shelf_flux ` :callto: :f:func:`add_shelf_forces ` :callto: :f:func:`change_thickness_using_melt ` :callto: :f:func:`id_clock_pass ` :callto: :f:func:`id_clock_shelf ` :callto: :f:func:`update_shelf_mass ` .. f:subroutine:: subroutine change_thickness_using_melt(ISS, G, US, time_step, fluxes, density_ice, debug) Changes the thickness (mass) of the ice shelf based on sub-ice-shelf melting. :param g: [inout] The ocean's grid structure. :param iss: [inout] A structure with elements that describe the ice-shelf state :param us: [in] A dimensional unit scaling type :param time_step: [in] The time step for this update [T ~> s]. :param fluxes: [inout] structure containing pointers to any possible thermodynamic or mass-flux forcing fields. :param density_ice: [in] The density of ice-shelf ice [R ~> kg m-3]. :param debug: [in] If present and true, write chksums :calledfrom: :f:func:`shelf_calc_flux ` .. f:subroutine:: subroutine add_shelf_forces(G, US, CS, forces, do_shelf_area) This subroutine adds the mechanical forcing fields and perhaps shelf areas, based on the ice state in ice_shelf_CS. :param g: [inout] The ocean's grid structure. :param us: [in] A dimensional unit scaling type :param cs: This module's control structure. :param forces: [inout] A structure with the driving mechanical forces :param do_shelf_area: [in] If true find the shelf-covered areas. :calledfrom: :f:func:`initialize_ice_shelf ` :calledfrom: :f:func:`shelf_calc_flux ` .. f:subroutine:: subroutine add_shelf_pressure(G, US, CS, fluxes) This subroutine adds the ice shelf pressure to the fluxes type. :param g: [inout] The ocean's grid structure. :param us: [in] A dimensional unit scaling type :param cs: [in] This module's control structure. :param fluxes: [inout] A structure of surface fluxes that may be updated. :calledfrom: :f:func:`add_shelf_flux ` :calledfrom: :f:func:`initialize_ice_shelf ` .. f:subroutine:: subroutine add_shelf_flux(G, US, CS, sfc_state, fluxes) Updates surface fluxes that are influenced by sub-ice-shelf melting. :param g: [inout] The ocean's grid structure. :param us: [in] A dimensional unit scaling type :param cs: This module's control structure. :param sfc_state: [inout] Surface ocean state :param fluxes: [inout] A structure of surface fluxes that may be used/updated. :callto: :f:func:`add_shelf_pressure ` :calledfrom: :f:func:`shelf_calc_flux ` .. f:subroutine:: subroutine initialize_ice_shelf(param_file, ocn_grid, Time, CS, diag, forces, fluxes, Time_in, solo_ice_sheet_in) Initializes shelf model data, parameters and diagnostics. :param param_file: [in] A structure to parse for run-time parameters :param ocn_grid: The calling ocean model's horizontal grid structure :param time: [inout] The clock that that will indicate the model time :param cs: A pointer to the ice shelf control structure :param diag: [in] A structure that is used to regulate the diagnostic output. :param fluxes: [inout] A structure containing pointers to any possible thermodynamic or mass-flux forcing fields. :param forces: [inout] A structure with the driving mechanical forces :param time_in: [in] The time at initialization. :param solo_ice_sheet_in: [in] If present, this indicates whether a solo ice-sheet driver. :callto: :f:func:`add_shelf_forces ` :callto: :f:func:`add_shelf_pressure ` :callto: :f:func:`mom_eos::eos_init ` :callto: :f:func:`mom_unit_scaling::fix_restart_unit_scaling ` :callto: :f:func:`id_clock_pass ` :callto: :f:func:`id_clock_shelf ` :callto: :f:func:`initialize_shelf_mass ` :callto: :f:func:`mom_unit_scaling::unit_scaling_init ` .. f:subroutine:: subroutine initialize_shelf_mass(G, param_file, CS, ISS, new_sim) Initializes shelf mass based on three options (file, zero and user) :param g: [in] The ocean's grid structure. :param param_file: [in] A structure to parse for run-time parameters :param cs: A pointer to the ice shelf control structure :param iss: [inout] The ice shelf state type that is being updated :param new_sim: [in] If present and false, this run is being restarted :calledfrom: :f:func:`initialize_ice_shelf ` .. f:subroutine:: subroutine update_shelf_mass(G, US, CS, ISS, Time) Updates the ice shelf mass using data from a file. :param g: [inout] The ocean's grid structure. :param us: [in] A dimensional unit scaling type :param cs: [in] A pointer to the ice shelf control structure :param iss: [inout] The ice shelf state type that is being updated :param time: [in] The current model time :calledfrom: :f:func:`shelf_calc_flux ` .. f:subroutine:: subroutine ice_shelf_save_restart(CS, Time, directory, time_stamped, filename_suffix) Save the ice shelf restart file. :param cs: ice shelf control structure :param time: [in] model time at this call :param directory: [in] An optional directory into which to write these restart files. :param time_stamped: [in] f true, the restart file names include a unique time stamp. The default is false. :param filename_suffix: [in] An optional suffix (e.g., a time-stamp) to append to the restart file names. .. f:subroutine:: subroutine ice_shelf_end(CS) Deallocates all memory associated with this module. :param cs: A pointer to the ice shelf control structure .. f:subroutine:: subroutine solo_step_ice_shelf(CS, time_interval, nsteps, Time, min_time_step_in) This routine is for stepping a stand-alone ice shelf model without an ocean. :param cs: A pointer to the ice shelf control structure :param time_interval: [in] The time interval for this update [s]. :param nsteps: [inout] The running number of ice shelf steps. :param time: [inout] The current model time :param min_time_step_in: [in] The minimum permitted time step [T ~> s]. [debug] xpath(./compounddef/compoundname[text()="mom_ice_shelf::ice_shelf_cs"]/..) match([('id', 'structmom__ice__shelf_1_1ice__shelf__cs'), ('kind', 'type'), ('language', 'Fortran'), ('prot', 'public')]) [debug] DoxygenModuleDocumenter format_signature called [debug] verbosity = 3 [debug] Setting build mode: latex [debug] method=visit_para [app] emitting event: 'autodoc-process-docstring'('doxymodule', 'mom_ice_shelf::ice_shelf_cs', , {}, ['', 'Con [app] emitting event: 'autodoc-process-docstring'('doxymodule', 'mom_ice_shelf::ice_shelf_cs', , {}, ['`More.. [app] emitting event: 'autodoc-process-docstring'('doxymodule', 'mom_ice_shelf::ice_shelf_cs', , {}, ['', 'Con [debug] DoxygenMethodDocumenter format_signature called ((sfc_state, fluxes, Time, time_step, CS, forces)) [debug] verbosity = 3 [debug] Setting build mode: latex [debug] method=visit_para [debug] method=visit_ref [debug] refid(namespacemom__ice__shelf_1section_ICE_SHELF_equations) kindref(member) ref([]) [debug] ref([('id', 'namespacemom__ice__shelf_1section_ICE_SHELF_equations')]) [debug] refid2(section_ICE_SHELF_equations) reftext(ICE_SHELF equations) [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'mom_ice_shelf::shelf_calc_flux', , {}, ['', 'Ca [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'mom_ice_shelf::shelf_calc_flux', , {}, ['', 'Ca [debug] DoxygenMethodDocumenter format_signature called ((ISS, G, US, time_step, fluxes, density_ice, debug)) [debug] verbosity = 3 [debug] Setting build mode: latex [debug] method=visit_para [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'mom_ice_shelf::change_thickness_using_melt', , [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'mom_ice_shelf::change_thickness_using_melt', , [debug] DoxygenMethodDocumenter format_signature called ((G, US, CS, forces, do_shelf_area)) [debug] verbosity = 3 [debug] Setting build mode: latex [debug] method=visit_para [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'mom_ice_shelf::add_shelf_forces', , {}, ['', 'T [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'mom_ice_shelf::add_shelf_forces', , {}, ['', 'T [debug] DoxygenMethodDocumenter format_signature called ((G, US, CS, fluxes)) [debug] verbosity = 3 [debug] Setting build mode: latex [debug] method=visit_para [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'mom_ice_shelf::add_shelf_pressure', , {}, ['', [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'mom_ice_shelf::add_shelf_pressure', , {}, ['', [debug] DoxygenMethodDocumenter format_signature called ((G, US, CS, sfc_state, fluxes)) [debug] verbosity = 3 [debug] Setting build mode: latex [debug] method=visit_para [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'mom_ice_shelf::add_shelf_flux', , {}, ['', 'Upd [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'mom_ice_shelf::add_shelf_flux', , {}, ['', 'Upd [debug] DoxygenMethodDocumenter format_signature called ((param_file, ocn_grid, Time, CS, diag, forces, fluxes, Time_in, solo_ice_sheet_in)) [debug] verbosity = 3 [debug] Setting build mode: latex [debug] method=visit_para [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'mom_ice_shelf::initialize_ice_shelf', , {}, ['' [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'mom_ice_shelf::initialize_ice_shelf', , {}, ['' [debug] DoxygenMethodDocumenter format_signature called ((G, param_file, CS, ISS, new_sim)) [debug] verbosity = 3 [debug] Setting build mode: latex [debug] method=visit_para [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'mom_ice_shelf::initialize_shelf_mass', , {}, [' [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'mom_ice_shelf::initialize_shelf_mass', , {}, [' [debug] DoxygenMethodDocumenter format_signature called ((G, US, CS, ISS, Time)) [debug] verbosity = 3 [debug] Setting build mode: latex [debug] method=visit_para [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'mom_ice_shelf::update_shelf_mass', , {}, ['', ' [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'mom_ice_shelf::update_shelf_mass', , {}, ['', ' [debug] DoxygenMethodDocumenter format_signature called ((CS, Time, directory, time_stamped, filename_suffix)) [debug] verbosity = 3 [debug] Setting build mode: latex [debug] method=visit_para [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'mom_ice_shelf::ice_shelf_save_restart', , {}, [ [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'mom_ice_shelf::ice_shelf_save_restart', , {}, [ [debug] DoxygenMethodDocumenter format_signature called ((CS)) [debug] verbosity = 3 [debug] Setting build mode: latex [debug] method=visit_para [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'mom_ice_shelf::ice_shelf_end', , {}, ['', 'Deal [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'mom_ice_shelf::ice_shelf_end', , {}, ['', 'Deal [debug] DoxygenMethodDocumenter format_signature called ((CS, time_interval, nsteps, Time, min_time_step_in)) [debug] verbosity = 3 [debug] Setting build mode: latex [debug] method=visit_para [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'mom_ice_shelf::solo_step_ice_shelf', , {}, ['', [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'mom_ice_shelf::solo_step_ice_shelf', , {}, ['', [fd] run(.. f:type:: ice_shelf_cs) [fd] sig(ice_shelf_cs) [fd] ftype(None) objtype(None) modname(None) typename() name(ice_shelf_cs) arglist(None) [fd] fullname(mom_ice_shelf/ice_shelf_cs) ftype(None) [fd] name(('mom_ice_shelf/ice_shelf_cs', None)) sig(ice_shelf_cs) signode(type mom_ice_shelf/ice_shelf_cs) [fd] run(.. f:subroutine:: subroutine shelf_calc_flux(sfc_state, fluxes, Time, time_step, CS, forces)) [fd] sig(subroutine shelf_calc_flux(sfc_state, fluxes, Time, time_step, CS, forces)) [fd] ftype(None) objtype(subroutine) modname(None) typename() name(shelf_calc_flux) arglist(sfc_state, fluxes, Time, time_step, CS, forces) [fd] fullname(mom_ice_shelf/shelf_calc_flux) ftype(None) [fd] name(('mom_ice_shelf/shelf_calc_flux', None)) sig(subroutine shelf_calc_flux(sfc_state, fluxes, Time, time_step, CS, forces)) signode(subroutine mom_ice_shelf/shelf_calc_fluxsfc_statefluxesTimetime_stepCSforces) [fd] run(.. f:subroutine:: subroutine change_thickness_using_melt(ISS, G, US, time_step, fluxes, density_ice, debug)) [fd] sig(subroutine change_thickness_using_melt(ISS, G, US, time_step, fluxes, density_ice, debug)) [fd] ftype(None) objtype(subroutine) modname(None) typename() name(change_thickness_using_melt) arglist(ISS, G, US, time_step, fluxes, density_ice, debug) [fd] fullname(mom_ice_shelf/change_thickness_using_melt) ftype(None) [fd] name(('mom_ice_shelf/change_thickness_using_melt', None)) sig(subroutine change_thickness_using_melt(ISS, G, US, time_step, fluxes, density_ice, debug)) signode(subroutine mom_ice_shelf/change_thickness_using_meltISSGUStime_stepfluxesdensity_icedebug) [fd] run(.. f:subroutine:: subroutine add_shelf_forces(G, US, CS, forces, do_shelf_area)) [fd] sig(subroutine add_shelf_forces(G, US, CS, forces, do_shelf_area)) [fd] ftype(None) objtype(subroutine) modname(None) typename() name(add_shelf_forces) arglist(G, US, CS, forces, do_shelf_area) [fd] fullname(mom_ice_shelf/add_shelf_forces) ftype(None) [fd] name(('mom_ice_shelf/add_shelf_forces', None)) sig(subroutine add_shelf_forces(G, US, CS, forces, do_shelf_area)) signode(subroutine mom_ice_shelf/add_shelf_forcesGUSCSforcesdo_shelf_area) [fd] run(.. f:subroutine:: subroutine add_shelf_pressure(G, US, CS, fluxes)) [fd] sig(subroutine add_shelf_pressure(G, US, CS, fluxes)) [fd] ftype(None) objtype(subroutine) modname(None) typename() name(add_shelf_pressure) arglist(G, US, CS, fluxes) [fd] fullname(mom_ice_shelf/add_shelf_pressure) ftype(None) [fd] name(('mom_ice_shelf/add_shelf_pressure', None)) sig(subroutine add_shelf_pressure(G, US, CS, fluxes)) signode(subroutine mom_ice_shelf/add_shelf_pressureGUSCSfluxes) [fd] run(.. f:subroutine:: subroutine add_shelf_flux(G, US, CS, sfc_state, fluxes)) [fd] sig(subroutine add_shelf_flux(G, US, CS, sfc_state, fluxes)) [fd] ftype(None) objtype(subroutine) modname(None) typename() name(add_shelf_flux) arglist(G, US, CS, sfc_state, fluxes) [fd] fullname(mom_ice_shelf/add_shelf_flux) ftype(None) [fd] name(('mom_ice_shelf/add_shelf_flux', None)) sig(subroutine add_shelf_flux(G, US, CS, sfc_state, fluxes)) signode(subroutine mom_ice_shelf/add_shelf_fluxGUSCSsfc_statefluxes) [fd] run(.. f:subroutine:: subroutine initialize_ice_shelf(param_file, ocn_grid, Time, CS, diag, forces, fluxes, Time_in, solo_ice_sheet_in)) [fd] sig(subroutine initialize_ice_shelf(param_file, ocn_grid, Time, CS, diag, forces, fluxes, Time_in, solo_ice_sheet_in)) [fd] ftype(None) objtype(subroutine) modname(None) typename() name(initialize_ice_shelf) arglist(param_file, ocn_grid, Time, CS, diag, forces, fluxes, Time_in, solo_ice_sheet_in) [fd] fullname(mom_ice_shelf/initialize_ice_shelf) ftype(None) [fd] name(('mom_ice_shelf/initialize_ice_shelf', None)) sig(subroutine initialize_ice_shelf(param_file, ocn_grid, Time, CS, diag, forces, fluxes, Time_in, solo_ice_sheet_in)) signode(subroutine mom_ice_shelf/initialize_ice_shelfparam_fileocn_gridTimeCSdiagforcesfluxesTime_insolo_ice_sheet_in) [fd] run(.. f:subroutine:: subroutine initialize_shelf_mass(G, param_file, CS, ISS, new_sim)) [fd] sig(subroutine initialize_shelf_mass(G, param_file, CS, ISS, new_sim)) [fd] ftype(None) objtype(subroutine) modname(None) typename() name(initialize_shelf_mass) arglist(G, param_file, CS, ISS, new_sim) [fd] fullname(mom_ice_shelf/initialize_shelf_mass) ftype(None) [fd] name(('mom_ice_shelf/initialize_shelf_mass', None)) sig(subroutine initialize_shelf_mass(G, param_file, CS, ISS, new_sim)) signode(subroutine mom_ice_shelf/initialize_shelf_massGparam_fileCSISSnew_sim) [fd] run(.. f:subroutine:: subroutine update_shelf_mass(G, US, CS, ISS, Time)) [fd] sig(subroutine update_shelf_mass(G, US, CS, ISS, Time)) [fd] ftype(None) objtype(subroutine) modname(None) typename() name(update_shelf_mass) arglist(G, US, CS, ISS, Time) [fd] fullname(mom_ice_shelf/update_shelf_mass) ftype(None) [fd] name(('mom_ice_shelf/update_shelf_mass', None)) sig(subroutine update_shelf_mass(G, US, CS, ISS, Time)) signode(subroutine mom_ice_shelf/update_shelf_massGUSCSISSTime) [fd] run(.. f:subroutine:: subroutine ice_shelf_save_restart(CS, Time, directory, time_stamped, filename_suffix)) [fd] sig(subroutine ice_shelf_save_restart(CS, Time, directory, time_stamped, filename_suffix)) [fd] ftype(None) objtype(subroutine) modname(None) typename() name(ice_shelf_save_restart) arglist(CS, Time, directory, time_stamped, filename_suffix) [fd] fullname(mom_ice_shelf/ice_shelf_save_restart) ftype(None) [fd] name(('mom_ice_shelf/ice_shelf_save_restart', None)) sig(subroutine ice_shelf_save_restart(CS, Time, directory, time_stamped, filename_suffix)) signode(subroutine mom_ice_shelf/ice_shelf_save_restartCSTimedirectorytime_stampedfilename_suffix) [fd] run(.. f:subroutine:: subroutine ice_shelf_end(CS)) [fd] sig(subroutine ice_shelf_end(CS)) [fd] ftype(None) objtype(subroutine) modname(None) typename() name(ice_shelf_end) arglist(CS) [fd] fullname(mom_ice_shelf/ice_shelf_end) ftype(None) [fd] name(('mom_ice_shelf/ice_shelf_end', None)) sig(subroutine ice_shelf_end(CS)) signode(subroutine mom_ice_shelf/ice_shelf_endCS) [fd] run(.. f:subroutine:: subroutine solo_step_ice_shelf(CS, time_interval, nsteps, Time, min_time_step_in)) [fd] sig(subroutine solo_step_ice_shelf(CS, time_interval, nsteps, Time, min_time_step_in)) [fd] ftype(None) objtype(subroutine) modname(None) typename() name(solo_step_ice_shelf) arglist(CS, time_interval, nsteps, Time, min_time_step_in) [fd] fullname(mom_ice_shelf/solo_step_ice_shelf) ftype(None) [fd] name(('mom_ice_shelf/solo_step_ice_shelf', None)) sig(subroutine solo_step_ice_shelf(CS, time_interval, nsteps, Time, min_time_step_in)) signode(subroutine mom_ice_shelf/solo_step_ice_shelfCStime_intervalnstepsTimemin_time_step_in) [i18n] PATCH: 'docutils.nodes.field_name' to have source and line: Type fields [i18n] PATCH: 'docutils.nodes.field_name' to have source and line: Parameters [i18n] PATCH: 'docutils.nodes.field_name' to have source and line: Call to [i18n] PATCH: 'docutils.nodes.field_name' to have source and line: Parameters [i18n] PATCH: 'docutils.nodes.field_name' to have source and line: Called from [i18n] PATCH: 'docutils.nodes.field_name' to have source and line: Parameters [i18n] PATCH: 'docutils.nodes.field_name' to have source and line: Called from [i18n] PATCH: 'docutils.nodes.field_name' to have source and line: Parameters [i18n] PATCH: 'docutils.nodes.field_name' to have source and line: Called from [i18n] PATCH: 'docutils.nodes.field_name' to have source and line: Parameters [i18n] PATCH: 'docutils.nodes.field_name' to have source and line: Call to [i18n] PATCH: 'docutils.nodes.field_name' to have source and line: Called from [i18n] PATCH: 'docutils.nodes.field_name' to have source and line: Parameters [i18n] PATCH: 'docutils.nodes.field_name' to have source and line: Call to [i18n] PATCH: 'docutils.nodes.field_name' to have source and line: Parameters [i18n] PATCH: 'docutils.nodes.field_name' to have source and line: Called from [i18n] PATCH: 'docutils.nodes.field_name' to have source and line: Parameters [i18n] PATCH: 'docutils.nodes.field_name' to have source and line: Called from [i18n] PATCH: 'docutils.nodes.field_name' to have source and line: Parameters [i18n] PATCH: 'docutils.nodes.field_name' to have source and line: Parameters [i18n] PATCH: 'docutils.nodes.field_name' to have source and line: Parameters [app] emitting event: 'doctree-read'(>,) reading sources... [ 10%] api/generated/modules/mom_meke [app] emitting event: 'env-purge-doc'(, 'api/generated/modules/mom_meke') [app] emitting event: 'source-read'('api/generated/modules/mom_meke', ['.. autodoxymodule:: mom_meke\n :members:\n :methods:\n :t [autodoc] /home/cermak/src/MOM6/docs/api/generated/modules/mom_meke.rst:1: input: .. autodoxymodule:: mom_meke :members: :methods: :types: ---------- Data Types ---------- .. autodoxysummary:: :kind: type ~mom_meke::meke_cs --------------------- Functions/Subroutines --------------------- .. autodoxysummary:: :kind: func ~mom_meke::step_forward_meke ~mom_meke::meke_equilibrium ~mom_meke::meke_equilibrium_restoring ~mom_meke::meke_lengthscales ~mom_meke::meke_lengthscales_0d ~mom_meke::meke_init ~mom_meke::meke_alloc_register_restart ~mom_meke::meke_end [debug] xpath(./compounddef/compoundname[text()="mom_meke"]/..) match([('id', 'namespacemom__meke'), ('kind', 'namespace'), ('language', 'Fortran')]) [debug] add_title:mom_meke module reference [debug] verbosity = 3 [debug] Setting build mode: latex [debug] method=visit_para [app] emitting event: 'autodoc-process-docstring'('doxymodule', 'mom_meke', , {'members': , {'members': ]) [debug] ref([('id', 'namespacemom__meke_1section_MEKE_diffusivity')]) [debug] refid2(section_MEKE_diffusivity) reftext(Diffusivity derived from MEKE) [debug] method=visit_formula [debug] method=visit_sect2 [debug] visit_sect id(namespacemom__meke_1section_MEKE_diffusivity) title(Diffusivity derived from MEKE) [debug] method=visit_title [debug] method=visit_para [debug] method=visit_formula [debug] method=visit_para [debug] method=visit_formula [debug] method=visit_para [debug] method=visit_formula [debug] method=visit_para [debug] method=visit_formula [debug] method=visit_para [debug] method=visit_formula [debug] method=visit_formula [debug] method=visit_formula [debug] method=visit_formula [debug] method=visit_para [debug] method=visit_para [debug] method=visit_formula [debug] method=visit_para [debug] method=visit_para [debug] method=visit_formula [debug] method=visit_para [debug] method=visit_formula [debug] method=visit_formula [debug] method=visit_formula [debug] method=visit_formula [debug] method=visit_formula [debug] method=visit_formula [debug] method=visit_para [debug] method=visit_formula [debug] method=visit_formula [debug] method=visit_formula [debug] method=visit_formula [debug] method=visit_formula [debug] method=visit_formula [debug] method=visit_formula [debug] method=visit_formula [debug] method=visit_formula [debug] method=visit_para [debug] method=visit_formula [debug] method=visit_formula [debug] method=visit_sect2 [debug] visit_sect id(namespacemom__meke_1section_MEKE_viscosity) title(Viscosity derived from MEKE) [debug] method=visit_title [debug] method=visit_para [debug] method=visit_formula [debug] method=visit_para [debug] method=visit_formula [debug] method=visit_para [debug] method=visit_para [debug] method=visit_formula [debug] method=visit_sect2 [debug] visit_sect id(namespacemom__meke_1section_MEKE_limit_case) title(Limit cases for local source-dissipative balance) [debug] method=visit_title [debug] method=visit_para [debug] method=visit_formula [debug] method=visit_formula [debug] method=visit_formula [debug] method=visit_para [debug] method=visit_formula [debug] method=visit_formula [debug] method=visit_para [debug] method=visit_formula [debug] method=visit_formula [debug] method=visit_sect3 [debug] visit_sect id(namespacemom__meke_1section_MEKE_module_parameters) title(MEKE module parameters) [debug] method=visit_title [debug] method=visit_para [debug] method=visit_table [debug] method=visit_para [debug] method=visit_para [debug] method=visit_para [debug] method=visit_para [debug] method=visit_computeroutput [debug] method=visit_para [debug] method=visit_formula [debug] method=visit_para [debug] method=visit_computeroutput [debug] method=visit_para [debug] method=visit_formula [debug] method=visit_para [debug] method=visit_computeroutput [debug] method=visit_para [debug] method=visit_formula [debug] method=visit_para [debug] method=visit_computeroutput [debug] method=visit_para [debug] method=visit_formula [debug] method=visit_para [debug] method=visit_computeroutput [debug] method=visit_para [debug] method=visit_formula [debug] method=visit_para [debug] method=visit_computeroutput [debug] method=visit_para [debug] method=visit_formula [debug] method=visit_para [debug] method=visit_computeroutput [debug] method=visit_para [debug] method=visit_formula [debug] method=visit_para [debug] method=visit_computeroutput [debug] method=visit_para [debug] method=visit_formula [debug] method=visit_para [debug] method=visit_computeroutput [debug] method=visit_para [debug] method=visit_formula [debug] method=visit_para [debug] method=visit_computeroutput [debug] method=visit_para [debug] method=visit_formula [debug] method=visit_para [debug] method=visit_computeroutput [debug] method=visit_para [debug] method=visit_formula [debug] method=visit_para [debug] method=visit_computeroutput [debug] method=visit_para [debug] method=visit_formula [debug] method=visit_para [debug] method=visit_computeroutput [debug] method=visit_para [debug] method=visit_formula [debug] method=visit_para [debug] method=visit_computeroutput [debug] method=visit_para [debug] method=visit_formula [debug] method=visit_para [debug] method=visit_computeroutput [debug] method=visit_para [debug] method=visit_formula [debug] method=visit_para [debug] method=visit_computeroutput [debug] method=visit_para [debug] method=visit_formula [debug] method=visit_para [debug] method=visit_computeroutput [debug] method=visit_para [debug] method=visit_formula [debug] method=visit_para [debug] method=visit_computeroutput [debug] method=visit_para [debug] method=visit_formula [debug] method=visit_para [debug] method=visit_computeroutput [debug] method=visit_para [debug] method=visit_formula [debug] method=visit_para [debug] method=visit_computeroutput [debug] method=visit_para [debug] method=visit_formula [debug] method=visit_para [debug] method=visit_computeroutput [debug] method=visit_para [debug] method=visit_formula [debug] method=visit_para [debug] method=visit_computeroutput [debug] method=visit_para [debug] method=visit_formula [debug] method=visit_para [debug] method=visit_computeroutput [debug] method=visit_para [debug] method=visit_formula [debug] method=visit_para [debug] method=visit_computeroutput [debug] method=visit_para [debug] method=visit_para [debug] method=visit_computeroutput [debug] method=visit_para [debug] method=visit_para [debug] method=visit_computeroutput [debug] method=visit_table [debug] method=visit_para [debug] method=visit_para [debug] method=visit_para [debug] method=visit_formula [debug] method=visit_para [debug] method=visit_computeroutput [debug] method=visit_sect2 [debug] visit_sect id(namespacemom__meke_1section_MEKE_references) title(References) [debug] method=visit_title [debug] method=visit_para [debug] method=visit_ndash [debug] method=visit_ulink [debug] method=visit_para [debug] method=visit_ndash [debug] method=visit_ulink [app] emitting event: 'autodoc-process-docstring'('doxymodule', 'mom_meke', , {'members': )]) [autodoc] module analyzer failed: error importing 'mom_meke' (exception was: ModuleNotFoundError("No module named 'mom_meke'")) [app] emitting event: 'autodoc-process-signature'('doxytype', 'mom_meke::meke_cs', , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': ), ('meke_equilibrium', ), ('meke_equilibrium_restoring', ), ('meke_lengthscales', ), ('meke_lengthscales_0d', ), ('meke_init', ), ('meke_alloc_register_restart', ), ('meke_end', )]) [autodoc] module analyzer failed: error importing 'mom_meke' (exception was: ModuleNotFoundError("No module named 'mom_meke'")) [debug] DoxygenMethodDocumenter format_signature called ((MEKE, h, SN_u, SN_v, visc, dt, G, GV, US, CS, hu, hv)) [debug] add_directive_header sig((MEKE, h, SN_u, SN_v, visc, dt, G, GV, US, CS, hu, hv)) [debug] DoxygenMethodDocumenter directive(subroutine) name(subroutine step_forward_meke) [debug] verbosity = 3 [debug] Setting build mode: latex [debug] method=visit_para [debug] method=visit_ref [debug] refid(namespacemom__meke_1section_MEKE_equations) kindref(member) ref([]) [debug] ref([('id', 'namespacemom__meke_1section_MEKE_equations')]) [debug] refid2(section_MEKE_equations) reftext(MEKE equations) [debug] verbosity = 3 [debug] Setting build mode: latex [debug] method=visit_para [debug] method=visit_parameterlist [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'step_forward_meke', , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': ]) [debug] ref([('id', 'namespacemom__meke_1section_MEKE_equations')]) [debug] refid2(section_MEKE_equations) reftext(MEKE equations) [debug] verbosity = 3 [debug] Setting build mode: latex [debug] method=visit_para [debug] method=visit_parameterlist [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'meke_lengthscales', , {'members': , {'members': , {'members': , {'members': ]) [debug] ref([('id', 'namespacemom__meke_1section_MEKE_equations')]) [debug] refid2(section_MEKE_equations) reftext(MEKE equations) [debug] verbosity = 3 [debug] Setting build mode: latex [debug] method=visit_para [debug] method=visit_parameterlist [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'meke_lengthscales_0d', , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': `_ ---------- Data Types ---------- .. autodoxysummary:: :kind: type ~mom_meke::meke_cs --------------------- Functions/Subroutines --------------------- .. autodoxysummary:: :kind: func ~mom_meke::step_forward_meke ~mom_meke::meke_equilibrium ~mom_meke::meke_equilibrium_restoring ~mom_meke::meke_lengthscales ~mom_meke::meke_lengthscales_0d ~mom_meke::meke_init ~mom_meke::meke_alloc_register_restart ~mom_meke::meke_end .. _DETAmom_meke: -------------------- Detailed Description -------------------- .. _namespacemom__meke_1section_MEKE: The Mesoscale Eddy Kinetic Energy (MEKE) framework ================================================== The MEKE framework accounts for the mean potential energy removed by the first order closures used to parameterize mesoscale eddies. It requires closure at the second order, namely dissipation and transport of eddy energy. Monitoring the sub-grid scale eddy energy budget provides a means to predict a sub-grid eddy-velocity scale which can be used in the lower order closures. .. _namespacemom__meke_1section_MEKE_equations: MEKE equations -------------- The eddy kinetic energy equation is: .. math:: \partial_{\tilde{t}} E = \overbrace{ \dot{E}_b + \gamma_\eta \dot{E}_\eta + \gamma_v \dot{E}_v }^\text{sources} - \overbrace{ ( \lambda + C_d | U_d | \gamma_b^2 ) E }^\text{local dissipation} + \overbrace{ \nabla \cdot ( ( \kappa_E + \gamma_M \kappa_M ) \nabla E - \kappa_4 \nabla^3 E ) }^\text{smoothing} where :math:`E` is the eddy kinetic energy (variable ``MEKE`` ) with units of m :superscript:`2`\ s :superscript:`-2`\ , and :math:`\tilde{t} = a t` is a scaled time. The non-dimensional factor :math:`a\geq 1` is used to accelerate towards equilibrium. The MEKE equation is two-dimensional and obtained by depth averaging the the three-dimensional eddy energy equation. In the following expressions :math:`\left< \phi \right> = \frac{1}{H} \int^\eta_{-D} \phi \, dz` maps three dimensional terms into the two-dimensional quantities needed. .. _namespacemom__meke_1section_MEKE_source_terms: MEKE source terms ^^^^^^^^^^^^^^^^^ The source term :math:`\dot{E}_b` is a constant background source of energy intended to avoid the limit :math:`E\rightarrow 0` . The "GM" source term .. math:: \dot{E}_\eta = - \left< \overline{w^\prime b^\prime} \right> = \left< \kappa_h N^2S^2 \right> \approx \left< \kappa_h g\prime |\nabla_\sigma \eta|^2 \right> equals the mean potential energy removed by the Gent-McWilliams closure, and is excluded/included in the MEKE budget by the efficiency parameter :math:`\gamma_\eta \in [0,1]` . The "frictional" source term .. math:: \dot{E}_{v} = \left< \partial_i u_j \tau_{ij} \right> equals the mean kinetic energy removed by lateral viscous fluxes, and is excluded/included in the MEKE budget by the efficiency parameter :math:`\gamma_v \in [0,1]` . .. _namespacemom__meke_1section_MEKE_dissipation_terms: MEKE dissipation terms ^^^^^^^^^^^^^^^^^^^^^^ The local dissipation of :math:`E` is parameterized through a linear damping, :math:`\lambda` , and bottom drag, :math:`C_d | U_d | \gamma_b^2` . The :math:`\gamma_b` accounts for the weak projection of the column-mean eddy velocty to the bottom. In other words, the bottom velocity is estimated as :math:`\gamma_b U_e` . The bottom drag coefficient, :math:`C_d` is the same as that used in the bottom friction in the mean model equations. The bottom drag velocity scale, :math:`U_d` , has contributions from the resolved state and :math:`E` : .. math:: U_d = \sqrt{ U_b^2 + |u|^2_{z=-D} + |\gamma_b U_e|^2 } . where the eddy velocity scale, :math:`U_e` , is given by: .. math:: U_e = \sqrt{ 2 E } . :math:`U_b` is a constant background bottom velocity scale and is typically not used (i.e. set to zero). Following Jansen et al., 2015, the projection of eddy energy on to the bottom is given by the ratio of bottom energy to column mean energy: .. math:: \gamma_b^2 = \frac{E_b}{E} = \gamma_{d0} + \left( 1 + c_{b} \frac{L_d}{L_f} \right)^{-\frac{4}{5}} , .. math:: \gamma_b^2 \leftarrow \max{\left( \gamma_b^2, \gamma_{min}^2 \right)} . .. _namespacemom__meke_1section_MEKE_smoothing: MEKE smoothing terms -------------------- :math:`E` is laterally diffused by a diffusivity :math:`\kappa_E + \gamma_M \kappa_M` where :math:`\kappa_E` is a constant diffusivity and the term :math:`\gamma_M \kappa_M` is a "self diffusion" using the diffusivity calculated in the section :ref:`Diffusivity derived from MEKE` . :math:`\kappa_4` is a constant bi-harmonic diffusivity. .. _namespacemom__meke_1section_MEKE_diffusivity: Diffusivity derived from MEKE ----------------------------- The predicted eddy velocity scale, :math:`U_e` , can be combined with a mixing length scale to form a diffusivity. The primary use of a MEKE derived diffusivity is for use in thickness diffusion (module mom_thickness_diffuse) and optionally in along isopycnal mixing of tracers (module mom_tracer_hor_diff). The original form used (enabled with MEKE_OLD_LSCALE=True): .. math:: \kappa_M = \gamma_\kappa \sqrt{ \gamma_t^2 U_e^2 A_\Delta } where :math:`A_\Delta` is the area of the grid cell. Following Jansen et al., 2015, we now use .. math:: \kappa_M = \gamma_\kappa l_M \sqrt{ \gamma_t^2 U_e^2 } where :math:`\gamma_\kappa \in [0,1]` is a non-dimensional factor and, following Jansen et al., 2015, :math:`\gamma_t^2` is the ratio of barotropic eddy energy to column mean eddy energy given by .. math:: \gamma_t^2 = \frac{E_t}{E} = \left( 1 + c_{t} \frac{L_d}{L_f} \right)^{-\frac{1}{4}} , .. math:: \gamma_t^2 \leftarrow \max{\left( \gamma_t^2, \gamma_{min}^2 \right)} . The length-scale is a configurable combination of multiple length scales: .. math:: l_M = \left( \frac{\alpha_d}{L_d} + \frac{\alpha_f}{L_f} + \frac{\alpha_R}{L_R} + \frac{\alpha_e}{L_e} + \frac{\alpha_\Delta}{L_\Delta} + \frac{\delta[L_c]}{L_c} \right)^{-1} where .. math:: \begin{eqnarray*} L_d & = & \sqrt{\frac{c_g^2}{f^2+2\beta c_g}} \sim \frac{ c_g }{f} \\\\ L_R & = & \sqrt{\frac{U_e}{\beta^*}} \\\\ L_e & = & \frac{U_e}{|S| N} \\\\ L_f & = & \frac{H}{c_d} \\\\ L_\Delta & = & \sqrt{A_\Delta} . \end{eqnarray*} :math:`L_c` is a constant and :math:`\delta[L_c]` is the impulse function so that the term :math:`\frac{\delta[L_c]}{L_c}` evaluates to :math:`\frac{1}{L_c}` when :math:`L_c` is non-zero but is dropped if :math:`L_c=0` . :math:`\beta^*` is the effective :math:`\beta` that combines both the planetary vorticity gradient (i.e. :math:`\beta=\nabla f` ) and the topographic :math:`\beta` effect, with the latter weighed by a weighting constant, :math:`c_\beta` , that varies from 0 to 1, so that :math:`c_\beta=0` means the topographic :math:`\beta` effect is ignored, while :math:`c_\beta=1` means it is fully considered. The new :math:`\beta^*` therefore takes the form of .. math:: \beta^* = \sqrt{( \partial_xf - c_\beta\frac{f}{D}\partial_xD )^2 + ( \partial_yf - c_\beta\frac{f}{D}\partial_yD )^2} where :math:`D` is water column depth at T points. .. _namespacemom__meke_1section_MEKE_viscosity: Viscosity derived from MEKE --------------------------- As for :math:`\kappa_M` , the predicted eddy velocity scale can be used to form a harmonic eddy viscosity, .. math:: \kappa_u = \gamma_u \sqrt{ U_e^2 A_\Delta } as well as a biharmonic eddy viscosity, .. math:: \kappa_4 = \gamma_4 \sqrt{ U_e^2 A_\Delta^3 } .. _namespacemom__meke_1section_MEKE_limit_case: Limit cases for local source-dissipative balance ------------------------------------------------ Note that in steady-state (or when :math:`a>>1` ) and there is no diffusion of :math:`E` then .. math:: \overline{E} \approx \frac{ \dot{E}_b + \gamma_\eta \dot{E}_\eta + \gamma_v \dot{E}_v }{ \lambda + C_d|U_d|\gamma_b^2 } . In the linear drag limit, where :math:`U_e << \min(U_b, |u|_{z=-D}, C_d^{-1}\lambda)` , the equilibrium becomes :math:`\overline{E} \approx \frac{ \dot{E}_b + \gamma_\eta \dot{E}_\eta + \gamma_v \dot{E}_v }{ \lambda + C_d \sqrt{ U_b^2 + |u|^2_{z=-D} } }` . In the nonlinear drag limit, where :math:`U_e >> \max(U_b, |u|_{z=-D}, C_d^{-1}\lambda)` , the equilibrium becomes :math:`\overline{E} \approx \left( \frac{ \dot{E}_b + \gamma_\eta \dot{E}_\eta + \gamma_v \dot{E}_v }{ \sqrt{2} C_d \gamma_b^3 } \right)^\frac{2}{3}` . .. _namespacemom__meke_1section_MEKE_module_parameters: MEKE module parameters ^^^^^^^^^^^^^^^^^^^^^^ +-------------------------+-------------------------------+ | | | | Symbol | Module parameter | | | | +=========================+===============================+ | | ``USE_MEKE`` | | - | | | | | +-------------------------+-------------------------------+ | | ``MEKE_DTSCALE`` | | :math:`a` | | | | | +-------------------------+-------------------------------+ | | ``MEKE_BGSRC`` | | :math:`\dot{E}_b` | | | | | +-------------------------+-------------------------------+ | | ``MEKE_GMCOEFF`` | | :math:`\gamma_\eta` | | | | | +-------------------------+-------------------------------+ | | ``MEKE_FrCOEFF`` | | :math:`\gamma_v` | | | | | +-------------------------+-------------------------------+ | | ``MEKE_DAMPING`` | | :math:`\lambda` | | | | | +-------------------------+-------------------------------+ | | ``MEKE_USCALE`` | | :math:`U_b` | | | | | +-------------------------+-------------------------------+ | | ``MEKE_CD_SCALE`` | | :math:`\gamma_{d0}` | | | | | +-------------------------+-------------------------------+ | | ``MEKE_CB`` | | :math:`c_{b}` | | | | | +-------------------------+-------------------------------+ | | ``MEKE_CT`` | | :math:`c_{t}` | | | | | +-------------------------+-------------------------------+ | | ``MEKE_KH`` | | :math:`\kappa_E` | | | | | +-------------------------+-------------------------------+ | | ``MEKE_K4`` | | :math:`\kappa_4` | | | | | +-------------------------+-------------------------------+ | | ``MEKE_KHCOEFF`` | | :math:`\gamma_\kappa` | | | | | +-------------------------+-------------------------------+ | | ``MEKE_KHMEKE_FAC`` | | :math:`\gamma_M` | | | | | +-------------------------+-------------------------------+ | | ``MEKE_VISCOSITY_COEFF_KU`` | | :math:`\gamma_u` | | | | | +-------------------------+-------------------------------+ | | ``MEKE_VISCOSITY_COEFF_AU`` | | :math:`\gamma_4` | | | | | +-------------------------+-------------------------------+ | | ``MEKE_MIN_GAMMA2`` | | :math:`\gamma_{min}^2` | | | | | +-------------------------+-------------------------------+ | | ``MEKE_ALPHA_DEFORM`` | | :math:`\alpha_d` | | | | | +-------------------------+-------------------------------+ | | ``MEKE_ALPHA_FRICT`` | | :math:`\alpha_f` | | | | | +-------------------------+-------------------------------+ | | ``MEKE_ALPHA_RHINES`` | | :math:`\alpha_R` | | | | | +-------------------------+-------------------------------+ | | ``MEKE_ALPHA_EADY`` | | :math:`\alpha_e` | | | | | +-------------------------+-------------------------------+ | | ``MEKE_ALPHA_GRID`` | | :math:`\alpha_\Delta` | | | | | +-------------------------+-------------------------------+ | | ``MEKE_FIXED_MIXING_LENGTH`` | | :math:`L_c` | | | | | +-------------------------+-------------------------------+ | | ``MEKE_TOPOGRAPHIC_BETA`` | | :math:`c_\beta` | | | | | +-------------------------+-------------------------------+ | | ``MEKE_KHTH_FAC`` | | - | | | | | +-------------------------+-------------------------------+ | | ``MEKE_KHTR_FAC`` | | - | | | | | +-------------------------+-------------------------------+ +--------------+-------------------+ | Symbol | | | | Model parameter | | | | +==============+===================+ | | ``CDRAG`` | | :math:`C_d` | | | | | +--------------+-------------------+ .. _namespacemom__meke_1section_MEKE_references: References ---------- Jansen, M. F., A. J. Adcroft, R. Hallberg, and I. M. Held, 2015: Parameterization of eddy fluxes based on a mesoscale energy budget. Ocean Modelling, 92, 28 41, `http://doi.org/10.1016/j.ocemod.2015.05.007 `_. Marshall, D. P., and A. J. Adcroft, 2010: Parameterization of ocean eddies: Potential vorticity mixing, energetics and Arnold first stability theorem. Ocean Modelling, 32, 188 204, `http://doi.org/10.1016/j.ocemod.2010.02.001 `_. ------------------ Type Documentation ------------------ .. f:type:: meke_cs Control structure that contains MEKE parameters and diagnostics handles. :typefield integer id_meke: Diagnostic handles. :typefield integer id_ue: Diagnostic handles. :typefield integer id_kh: Diagnostic handles. :typefield integer id_src: Diagnostic handles. :typefield integer id_ub: Diagnostic handles. :typefield integer id_ut: Diagnostic handles. :typefield integer id_gm_src: Diagnostic handles. :typefield integer id_mom_src: Diagnostic handles. :typefield integer id_gme_snk: Diagnostic handles. :typefield integer id_decay: Diagnostic handles. :typefield integer id_khmeke_u: Diagnostic handles. :typefield integer id_khmeke_v: Diagnostic handles. :typefield integer id_ku: Diagnostic handles. :typefield integer id_au: Diagnostic handles. :typefield integer id_le: Diagnostic handles. :typefield integer id_gamma_b: Diagnostic handles. :typefield integer id_gamma_t: Diagnostic handles. :typefield integer id_lrhines: Diagnostic handles. :typefield integer id_leady: Diagnostic handles. :typefield integer id_meke_equilibrium: Diagnostic handles. :typefield real(\:,\:) equilibrium_value [pointer]: The equilbrium value of MEKE to be calculated at each time step [L2 T-2 ~> m2 s-2]. :typefield real meke_frcoeff: Efficiency of conversion of ME into MEKE [nondim]. :typefield real meke_gmcoeff: Efficiency of conversion of PE into MEKE [nondim]. :typefield real meke_gmecoeff: Efficiency of conversion of MEKE into ME by GME [nondim]. :typefield real meke_damping: Local depth-independent MEKE dissipation rate [T-1 ~> s-1]. :typefield real meke_cd_scale: The ratio of the bottom eddy velocity to the column mean eddy velocity, i.e. sqrt(2*MEKE). This should be less than 1 to account for the surface intensification of MEKE. :typefield real meke_cb: Coefficient in the :typefield real meke_min_gamma: Minimum value of gamma_b^2 allowed [nondim]. :typefield real meke_ct: Coefficient in the :typefield logical visc_drag: If true use the vertvisc_type to calculate bottom drag. :typefield logical meke_geometric: If true, uses the GM coefficient formulation from the GEOMETRIC framework (Marshall et al., 2012) :typefield real meke_geometric_alpha: The nondimensional coefficient governing the efficiency of the GEOMETRIC thickness diffusion. :typefield logical meke_equilibrium_alt: If true, use an alternative calculation for the equilibrium value of MEKE. :typefield logical meke_equilibrium_restoring: If true, restore MEKE back to its equilibrium value, which is calculated at each time step. :typefield logical gm_src_alt: If true, use the GM energy conversion form S^2*N^2*kappa rather than the streamfunction for the MEKE GM source term. :typefield logical rd_as_max_scale: If true the length scale can not exceed the first baroclinic deformation radius. :typefield logical use_old_lscale: Use the old formula for mixing length scale. :typefield logical use_min_lscale: Use simple minimum for mixing length scale. :typefield real cdrag: The bottom drag coefficient for MEKE [nondim]. :typefield real meke_bgsrc: Background energy source for MEKE [L2 T-3 ~> W kg-1] (= m2 s-3). :typefield real meke_dtscale: Scale factor to accelerate time-stepping [nondim]. :typefield real meke_khcoeff: Scaling factor to convert MEKE into Kh [nondim]. :typefield real meke_uscale: MEKE velocity scale for bottom drag [L T-1 ~> m s-1]. :typefield real meke_kh: Background lateral diffusion of MEKE [L2 T-1 ~> m2 s-1]. :typefield real meke_k4: Background bi-harmonic diffusivity (of MEKE) [L4 T-1 ~> m4 s-1]. :typefield real khmeke_fac: A factor relating MEKEKh to the diffusivity used for MEKE itself [nondim]. :typefield real viscosity_coeff_ku: The scaling coefficient in the expression for viscosity used to parameterize lateral harmonic momentum mixing by unresolved eddies represented by MEKE. :typefield real viscosity_coeff_au: The scaling coefficient in the expression for viscosity used to parameterize lateral biharmonic momentum mixing by unresolved eddies represented by MEKE. :typefield real lfixed: Fixed mixing length scale [L ~> m]. :typefield real adeform: Weighting towards deformation scale of mixing length [nondim]. :typefield real arhines: Weighting towards Rhines scale of mixing length [nondim]. :typefield real africt: Weighting towards frictional arrest scale of mixing length [nondim]. :typefield real aeady: Weighting towards Eady scale of mixing length [nondim]. :typefield real agrid: Weighting towards grid scale of mixing length [nondim]. :typefield real meke_advection_factor: A scaling in front of the advection of MEKE [nondim]. :typefield real meke_topographic_beta: Weight for how much topographic beta is considered when computing beta in Rhines scale [nondim]. :typefield real meke_restoring_rate: Inverse of the timescale used to nudge MEKE toward its equilibrium value [s-1]. :typefield logical kh_flux_enabled: If true, lateral diffusive MEKE flux is enabled. :typefield logical initialize: If True, invokes a steady state solver to calculate MEKE. :typefield logical debug: If true, write out checksums of data for debugging. :typefield type(diag_ctrl) diag [pointer]: A type that regulates diagnostics output. :typefield integer id_clock_pass: Clock for group pass calls. :typefield type(group_pass_type) pass_meke: Group halo pass handle for MEKEMEKE and maybe MEKEKh_diff. :typefield type(group_pass_type) pass_kh: Group halo pass handle for MEKEKh, MEKEKu, and/or MEKEAu. --------------------------------- Function/Subroutine Documentation --------------------------------- .. f:subroutine:: subroutine step_forward_meke(MEKE, h, SN_u, SN_v, visc, dt, G, GV, US, CS, hu, hv) Integrates forward-in-time the MEKE eddy energy equation. See :ref:`MEKE equations` . :param meke: MEKE data. :param g: [inout] Ocean grid. :param gv: [in] Ocean vertical grid structure. :param us: [in] A dimensional unit scaling type :param h: [in] Layer thickness [H ~> m or kg m-2]. :param sn_u: [in] Eady growth rate at u-points [T-1 ~> s-1]. :param sn_v: [in] Eady growth rate at v-points [T-1 ~> s-1]. :param visc: [in] The vertical viscosity type. :param dt: [in] Model(baroclinic) time-step [T ~> s]. :param cs: MEKE control structure. :param hu: [in] Accumlated zonal mass flux [H L2 ~> m3 or kg]. :param hv: [in] Accumlated meridional mass flux [H L2 ~> m3 or kg] :callto: :f:func:`meke_equilibrium ` :callto: :f:func:`meke_equilibrium_restoring ` :callto: :f:func:`meke_lengthscales ` .. f:subroutine:: subroutine meke_equilibrium(CS, MEKE, G, GV, US, SN_u, SN_v, drag_rate_visc, I_mass) Calculates the equilibrium solutino where the source depends only on MEKE diffusivity and there is no lateral diffusion of MEKE. Results is in MEKEMEKE. :param g: [inout] Ocean grid. :param gv: [in] Ocean vertical grid structure. :param us: [in] A dimensional unit scaling type :param cs: MEKE control structure. :param meke: A structure with MEKE data. :param sn_u: [in] Eady growth rate at u-points [T-1 ~> s-1]. :param sn_v: [in] Eady growth rate at v-points [T-1 ~> s-1]. :param drag_rate_visc: [in] Mean flow velocity contribution to the MEKE drag rate [L T-1 ~> m s-1] :param i_mass: [in] Inverse of column mass [R-1 Z-1 ~> m2 kg-1]. :callto: :f:func:`meke_lengthscales_0d ` :calledfrom: :f:func:`step_forward_meke ` .. f:subroutine:: subroutine meke_equilibrium_restoring(CS, G, US, SN_u, SN_v) :param g: [inout] Ocean grid. :param us: [in] A dimensional unit scaling type. :param cs: MEKE control structure. :param sn_u: [in] Eady growth rate at u-points [T-1 ~> s-1]. :param sn_v: [in] Eady growth rate at v-points [T-1 ~> s-1]. :calledfrom: :f:func:`step_forward_meke ` .. f:subroutine:: subroutine meke_lengthscales(CS, MEKE, G, GV, US, SN_u, SN_v, EKE, bottomFac2, barotrFac2, LmixScale) Calculates the eddy mixing length scale and :math:`\gamma_b` and :math:`\gamma_t` functions that are ratios of either bottom or barotropic eddy energy to the column eddy energy, respectively. See :ref:`MEKE equations` . :param cs: MEKE control structure. :param meke: MEKE data. :param g: [inout] Ocean grid. :param gv: [in] Ocean vertical grid structure. :param us: [in] A dimensional unit scaling type :param sn_u: [in] Eady growth rate at u-points [T-1 ~> s-1]. :param sn_v: [in] Eady growth rate at v-points [T-1 ~> s-1]. :param eke: [in] Eddy kinetic energy [L2 T-2 ~> m2 s-2]. :param bottomfac2: [out] gamma_b^2 :param barotrfac2: [out] gamma_t^2 :param lmixscale: [out] Eddy mixing length [L ~> m]. :callto: :f:func:`meke_lengthscales_0d ` :calledfrom: :f:func:`step_forward_meke ` .. f:subroutine:: subroutine meke_lengthscales_0d(CS, US, area, beta, depth, Rd_dx, SN, EKE, bottomFac2, barotrFac2, LmixScale, Lrhines, Leady) Calculates the eddy mixing length scale and :math:`\gamma_b` and :math:`\gamma_t` functions that are ratios of either bottom or barotropic eddy energy to the column eddy energy, respectively. See :ref:`MEKE equations` . :param cs: MEKE control structure. :param us: [in] A dimensional unit scaling type :param area: [in] Grid cell area [L2 ~> m2] :param beta: [in] Planetary beta = |grad F| [T-1 L-1 ~> s-1 m-1] :param depth: [in] Ocean depth [Z ~> m] :param rd_dx: [in] Resolution Ld/dx [nondim]. :param sn: [in] Eady growth rate [T-1 ~> s-1]. :param eke: [in] Eddy kinetic energy [L2 T-2 ~> m2 s-2]. :param bottomfac2: [out] gamma_b^2 :param barotrfac2: [out] gamma_t^2 :param lmixscale: [out] Eddy mixing length [L ~> m]. :param lrhines: [out] Rhines length scale [L ~> m]. :param leady: [out] Eady length scale [L ~> m]. :calledfrom: :f:func:`meke_equilibrium ` :calledfrom: :f:func:`meke_lengthscales ` .. f:function:: logical function meke_init(Time, G, US, param_file, diag, CS, MEKE, restart_CS) Initializes the MOM_MEKE module and reads parameters. Returns True if module is to be used, otherwise returns False. :param time: [in] The current model time. :param g: [inout] The ocean's grid structure. :param us: [in] A dimensional unit scaling type :param param_file: [in] Parameter file parser structure. :param diag: [inout] Diagnostics structure. :param cs: MEKE control structure. :param meke: MEKE-related fields. :param restart_cs: Restart control structure for MOM_MEKE. .. f:subroutine:: subroutine meke_alloc_register_restart(HI, param_file, MEKE, restart_CS) Allocates memory and register restart fields for the MOM_MEKE module. :param hi: [in] Horizontal index structure :param param_file: [in] Parameter file parser structure. :param meke: A structure with MEKE-related fields. :param restart_cs: Restart control structure for MOM_MEKE. .. f:subroutine:: subroutine meke_end(MEKE, CS) Deallocates any variables allocated in MEKE_init or MEKE_alloc_register_restart. :param meke: A structure with MEKE-related fields. :param cs: The control structure for MOM_MEKE. [debug] xpath(./compounddef/compoundname[text()="mom_meke::meke_cs"]/..) match([('id', 'structmom__meke_1_1meke__cs'), ('kind', 'type'), ('language', 'Fortran'), ('prot', 'public')]) [debug] DoxygenModuleDocumenter format_signature called [debug] verbosity = 3 [debug] Setting build mode: latex [debug] method=visit_para [app] emitting event: 'autodoc-process-docstring'('doxymodule', 'mom_meke::meke_cs', , {}, ['', 'Control struc [app] emitting event: 'autodoc-process-docstring'('doxymodule', 'mom_meke::meke_cs', , {}, ['`More... , {}, ['', 'Control struc [debug] DoxygenMethodDocumenter format_signature called ((MEKE, h, SN_u, SN_v, visc, dt, G, GV, US, CS, hu, hv)) [debug] verbosity = 3 [debug] Setting build mode: latex [debug] method=visit_para [debug] method=visit_ref [debug] refid(namespacemom__meke_1section_MEKE_equations) kindref(member) ref([]) [debug] ref([('id', 'namespacemom__meke_1section_MEKE_equations')]) [debug] refid2(section_MEKE_equations) reftext(MEKE equations) [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'mom_meke::step_forward_meke', , {}, ['', 'Integ [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'mom_meke::step_forward_meke', , {}, ['', 'Integ [debug] DoxygenMethodDocumenter format_signature called ((CS, MEKE, G, GV, US, SN_u, SN_v, drag_rate_visc, I_mass)) [debug] verbosity = 3 [debug] Setting build mode: latex [debug] method=visit_para [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'mom_meke::meke_equilibrium', , {}, ['', 'Calcul [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'mom_meke::meke_equilibrium', , {}, ['', 'Calcul [debug] DoxygenMethodDocumenter format_signature called ((CS, G, US, SN_u, SN_v)) [debug] verbosity = 3 [debug] Setting build mode: latex [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'mom_meke::meke_equilibrium_restoring', , {}, [' [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'mom_meke::meke_equilibrium_restoring', , {}, [' [debug] DoxygenMethodDocumenter format_signature called ((CS, MEKE, G, GV, US, SN_u, SN_v, EKE, bottomFac2, barotrFac2, LmixScale)) [debug] verbosity = 3 [debug] Setting build mode: latex [debug] method=visit_para [debug] method=visit_formula [debug] method=visit_formula [debug] method=visit_ref [debug] refid(namespacemom__meke_1section_MEKE_equations) kindref(member) ref([]) [debug] ref([('id', 'namespacemom__meke_1section_MEKE_equations')]) [debug] refid2(section_MEKE_equations) reftext(MEKE equations) [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'mom_meke::meke_lengthscales', , {}, ['', 'Calcu [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'mom_meke::meke_lengthscales', , {}, ['', 'Calcu [debug] DoxygenMethodDocumenter format_signature called ((CS, US, area, beta, depth, Rd_dx, SN, EKE, bottomFac2, barotrFac2, LmixScale, Lrhines, Leady)) [debug] verbosity = 3 [debug] Setting build mode: latex [debug] method=visit_para [debug] method=visit_formula [debug] method=visit_formula [debug] method=visit_ref [debug] refid(namespacemom__meke_1section_MEKE_equations) kindref(member) ref([]) [debug] ref([('id', 'namespacemom__meke_1section_MEKE_equations')]) [debug] refid2(section_MEKE_equations) reftext(MEKE equations) [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'mom_meke::meke_lengthscales_0d', , {}, ['', 'Ca [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'mom_meke::meke_lengthscales_0d', , {}, ['', 'Ca [debug] DoxygenMethodDocumenter format_signature called ((Time, G, US, param_file, diag, CS, MEKE, restart_CS)) [debug] verbosity = 3 [debug] Setting build mode: latex [debug] method=visit_para [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'mom_meke::meke_init', , {}, ['', 'Initializes t [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'mom_meke::meke_init', , {}, ['', 'Initializes t [debug] DoxygenMethodDocumenter format_signature called ((HI, param_file, MEKE, restart_CS)) [debug] verbosity = 3 [debug] Setting build mode: latex [debug] method=visit_para [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'mom_meke::meke_alloc_register_restart', , {}, [ [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'mom_meke::meke_alloc_register_restart', , {}, [ [debug] DoxygenMethodDocumenter format_signature called ((MEKE, CS)) [debug] verbosity = 3 [debug] Setting build mode: latex [debug] method=visit_para [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'mom_meke::meke_end', , {}, ['', 'Deallocates an [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'mom_meke::meke_end', , {}, ['', 'Deallocates an [fd] run(.. f:type:: meke_cs) [fd] sig(meke_cs) [fd] ftype(None) objtype(None) modname(None) typename() name(meke_cs) arglist(None) [fd] fullname(mom_meke/meke_cs) ftype(None) [fd] name(('mom_meke/meke_cs', None)) sig(meke_cs) signode(type mom_meke/meke_cs) [fd] run(.. f:subroutine:: subroutine step_forward_meke(MEKE, h, SN_u, SN_v, visc, dt, G, GV, US, CS, hu, hv)) [fd] sig(subroutine step_forward_meke(MEKE, h, SN_u, SN_v, visc, dt, G, GV, US, CS, hu, hv)) [fd] ftype(None) objtype(subroutine) modname(None) typename() name(step_forward_meke) arglist(MEKE, h, SN_u, SN_v, visc, dt, G, GV, US, CS, hu, hv) [fd] fullname(mom_meke/step_forward_meke) ftype(None) [fd] name(('mom_meke/step_forward_meke', None)) sig(subroutine step_forward_meke(MEKE, h, SN_u, SN_v, visc, dt, G, GV, US, CS, hu, hv)) signode(subroutine mom_meke/step_forward_mekeMEKEhSN_uSN_vviscdtGGVUSCShuhv) [fd] run(.. f:subroutine:: subroutine meke_equilibrium(CS, MEKE, G, GV, US, SN_u, SN_v, drag_rate_visc, I_mass)) [fd] sig(subroutine meke_equilibrium(CS, MEKE, G, GV, US, SN_u, SN_v, drag_rate_visc, I_mass)) [fd] ftype(None) objtype(subroutine) modname(None) typename() name(meke_equilibrium) arglist(CS, MEKE, G, GV, US, SN_u, SN_v, drag_rate_visc, I_mass) [fd] fullname(mom_meke/meke_equilibrium) ftype(None) [fd] name(('mom_meke/meke_equilibrium', None)) sig(subroutine meke_equilibrium(CS, MEKE, G, GV, US, SN_u, SN_v, drag_rate_visc, I_mass)) signode(subroutine mom_meke/meke_equilibriumCSMEKEGGVUSSN_uSN_vdrag_rate_viscI_mass) [fd] run(.. f:subroutine:: subroutine meke_equilibrium_restoring(CS, G, US, SN_u, SN_v)) [fd] sig(subroutine meke_equilibrium_restoring(CS, G, US, SN_u, SN_v)) [fd] ftype(None) objtype(subroutine) modname(None) typename() name(meke_equilibrium_restoring) arglist(CS, G, US, SN_u, SN_v) [fd] fullname(mom_meke/meke_equilibrium_restoring) ftype(None) [fd] name(('mom_meke/meke_equilibrium_restoring', None)) sig(subroutine meke_equilibrium_restoring(CS, G, US, SN_u, SN_v)) signode(subroutine mom_meke/meke_equilibrium_restoringCSGUSSN_uSN_v) [fd] run(.. f:subroutine:: subroutine meke_lengthscales(CS, MEKE, G, GV, US, SN_u, SN_v, EKE, bottomFac2, barotrFac2, LmixScale)) [fd] sig(subroutine meke_lengthscales(CS, MEKE, G, GV, US, SN_u, SN_v, EKE, bottomFac2, barotrFac2, LmixScale)) [fd] ftype(None) objtype(subroutine) modname(None) typename() name(meke_lengthscales) arglist(CS, MEKE, G, GV, US, SN_u, SN_v, EKE, bottomFac2, barotrFac2, LmixScale) [fd] fullname(mom_meke/meke_lengthscales) ftype(None) [fd] name(('mom_meke/meke_lengthscales', None)) sig(subroutine meke_lengthscales(CS, MEKE, G, GV, US, SN_u, SN_v, EKE, bottomFac2, barotrFac2, LmixScale)) signode(subroutine mom_meke/meke_lengthscalesCSMEKEGGVUSSN_uSN_vEKEbottomFac2barotrFac2LmixScale) [fd] run(.. f:subroutine:: subroutine meke_lengthscales_0d(CS, US, area, beta, depth, Rd_dx, SN, EKE, bottomFac2, barotrFac2, LmixScale, Lrhines, Leady)) [fd] sig(subroutine meke_lengthscales_0d(CS, US, area, beta, depth, Rd_dx, SN, EKE, bottomFac2, barotrFac2, LmixScale, Lrhines, Leady)) [fd] ftype(None) objtype(subroutine) modname(None) typename() name(meke_lengthscales_0d) arglist(CS, US, area, beta, depth, Rd_dx, SN, EKE, bottomFac2, barotrFac2, LmixScale, Lrhines, Leady) [fd] fullname(mom_meke/meke_lengthscales_0d) ftype(None) [fd] name(('mom_meke/meke_lengthscales_0d', None)) sig(subroutine meke_lengthscales_0d(CS, US, area, beta, depth, Rd_dx, SN, EKE, bottomFac2, barotrFac2, LmixScale, Lrhines, Leady)) signode(subroutine mom_meke/meke_lengthscales_0dCSUSareabetadepthRd_dxSNEKEbottomFac2barotrFac2LmixScaleLrhinesLeady) [fd] run(.. f:function:: logical function meke_init(Time, G, US, param_file, diag, CS, MEKE, restart_CS)) [fd] sig(logical function meke_init(Time, G, US, param_file, diag, CS, MEKE, restart_CS)) [fd] ftype(logical) objtype(function) modname(None) typename() name(meke_init) arglist(Time, G, US, param_file, diag, CS, MEKE, restart_CS) [fd] fullname(mom_meke/meke_init) ftype(logical) [fd] name(('mom_meke/meke_init', 'logical')) sig(logical function meke_init(Time, G, US, param_file, diag, CS, MEKE, restart_CS)) signode(function mom_meke/meke_initTimeGUSparam_filediagCSMEKErestart_CS [logical]) [fd] run(.. f:subroutine:: subroutine meke_alloc_register_restart(HI, param_file, MEKE, restart_CS)) [fd] sig(subroutine meke_alloc_register_restart(HI, param_file, MEKE, restart_CS)) [fd] ftype(None) objtype(subroutine) modname(None) typename() name(meke_alloc_register_restart) arglist(HI, param_file, MEKE, restart_CS) [fd] fullname(mom_meke/meke_alloc_register_restart) ftype(None) [fd] name(('mom_meke/meke_alloc_register_restart', None)) sig(subroutine meke_alloc_register_restart(HI, param_file, MEKE, restart_CS)) signode(subroutine mom_meke/meke_alloc_register_restartHIparam_fileMEKErestart_CS) [fd] run(.. f:subroutine:: subroutine meke_end(MEKE, CS)) [fd] sig(subroutine meke_end(MEKE, CS)) [fd] ftype(None) objtype(subroutine) modname(None) typename() name(meke_end) arglist(MEKE, CS) [fd] fullname(mom_meke/meke_end) ftype(None) [fd] name(('mom_meke/meke_end', None)) sig(subroutine meke_end(MEKE, CS)) signode(subroutine mom_meke/meke_endMEKECS) [i18n] PATCH: 'docutils.nodes.field_name' to have source and line: Type fields [i18n] PATCH: 'docutils.nodes.field_name' to have source and line: Parameters [i18n] PATCH: 'docutils.nodes.field_name' to have source and line: Call to [i18n] PATCH: 'docutils.nodes.field_name' to have source and line: Parameters [i18n] PATCH: 'docutils.nodes.field_name' to have source and line: Call to [i18n] PATCH: 'docutils.nodes.field_name' to have source and line: Called from [i18n] PATCH: 'docutils.nodes.field_name' to have source and line: Parameters [i18n] PATCH: 'docutils.nodes.field_name' to have source and line: Called from [i18n] PATCH: 'docutils.nodes.field_name' to have source and line: Parameters [i18n] PATCH: 'docutils.nodes.field_name' to have source and line: Call to [i18n] PATCH: 'docutils.nodes.field_name' to have source and line: Called from [i18n] PATCH: 'docutils.nodes.field_name' to have source and line: Parameters [i18n] PATCH: 'docutils.nodes.field_name' to have source and line: Called from [i18n] PATCH: 'docutils.nodes.field_name' to have source and line: Parameters [i18n] PATCH: 'docutils.nodes.field_name' to have source and line: Parameters [i18n] PATCH: 'docutils.nodes.field_name' to have source and line: Parameters [app] emitting event: 'doctree-read'(>,) reading sources... [ 12%] api/generated/modules/mom_unit_scaling [app] emitting event: 'env-purge-doc'(, 'api/generated/modules/mom_unit_sca [app] emitting event: 'source-read'('api/generated/modules/mom_unit_scaling', ['.. autodoxymodule:: mom_unit_scaling\n :members:\n [autodoc] /home/cermak/src/MOM6/docs/api/generated/modules/mom_unit_scaling.rst:1: input: .. autodoxymodule:: mom_unit_scaling :members: :methods: :types: ---------- Data Types ---------- .. autodoxysummary:: :kind: type ~mom_unit_scaling::unit_scale_type --------------------- Functions/Subroutines --------------------- .. autodoxysummary:: :kind: func ~mom_unit_scaling::unit_scaling_init ~mom_unit_scaling::fix_restart_unit_scaling ~mom_unit_scaling::unit_scaling_end [debug] xpath(./compounddef/compoundname[text()="mom_unit_scaling"]/..) match([('id', 'namespacemom__unit__scaling'), ('kind', 'namespace'), ('language', 'Fortran')]) [debug] add_title:mom_unit_scaling module reference [debug] verbosity = 3 [debug] Setting build mode: latex [debug] method=visit_para [app] emitting event: 'autodoc-process-docstring'('doxymodule', 'mom_unit_scaling', , {'members': , {'members': , {'members': )]) [autodoc] module analyzer failed: error importing 'mom_unit_scaling' (exception was: ModuleNotFoundError("No module named 'mom_unit_scaling'")) [app] emitting event: 'autodoc-process-signature'('doxytype', 'mom_unit_scaling::unit_scale_type', , {'members [debug] verbosity = 3 [debug] Setting build mode: latex [debug] method=visit_para [app] emitting event: 'autodoc-process-docstring'('doxytype', 'mom_unit_scaling::unit_scale_type', , {'members [app] emitting event: 'autodoc-process-docstring'('doxytype', 'mom_unit_scaling::unit_scale_type', , {'members [app] emitting event: 'autodoc-process-docstring'('doxytype', 'mom_unit_scaling::unit_scale_type', , {'members [app] emitting event: 'autodoc-process-docstring'('doxytype', 'mom_unit_scaling::unit_scale_type', , {'members [app] emitting event: 'autodoc-process-docstring'('doxytype', 'mom_unit_scaling::unit_scale_type', , {'members [app] emitting event: 'autodoc-process-docstring'('doxytype', 'mom_unit_scaling::unit_scale_type', , {'members [app] emitting event: 'autodoc-process-docstring'('doxytype', 'mom_unit_scaling::unit_scale_type', , {'members [app] emitting event: 'autodoc-process-docstring'('doxytype', 'mom_unit_scaling::unit_scale_type', , {'members [app] emitting event: 'autodoc-process-docstring'('doxytype', 'mom_unit_scaling::unit_scale_type', , {'members [app] emitting event: 'autodoc-process-docstring'('doxytype', 'mom_unit_scaling::unit_scale_type', , {'members [app] emitting event: 'autodoc-process-docstring'('doxytype', 'mom_unit_scaling::unit_scale_type', , {'members [app] emitting event: 'autodoc-process-docstring'('doxytype', 'mom_unit_scaling::unit_scale_type', , {'members [app] emitting event: 'autodoc-process-docstring'('doxytype', 'mom_unit_scaling::unit_scale_type', , {'members [app] emitting event: 'autodoc-process-docstring'('doxytype', 'mom_unit_scaling::unit_scale_type', , {'members [app] emitting event: 'autodoc-process-docstring'('doxytype', 'mom_unit_scaling::unit_scale_type', , {'members [app] emitting event: 'autodoc-process-docstring'('doxytype', 'mom_unit_scaling::unit_scale_type', , {'members [app] emitting event: 'autodoc-process-docstring'('doxytype', 'mom_unit_scaling::unit_scale_type', , {'members [app] emitting event: 'autodoc-process-docstring'('doxytype', 'mom_unit_scaling::unit_scale_type', , {'members [app] emitting event: 'autodoc-process-docstring'('doxytype', 'mom_unit_scaling::unit_scale_type', , {'members [app] emitting event: 'autodoc-process-docstring'('doxytype', 'mom_unit_scaling::unit_scale_type', , {'members [app] emitting event: 'autodoc-process-docstring'('doxytype', 'mom_unit_scaling::unit_scale_type', , {'members [app] emitting event: 'autodoc-process-docstring'('doxytype', 'mom_unit_scaling::unit_scale_type', , {'members [app] emitting event: 'autodoc-process-docstring'('doxytype', 'mom_unit_scaling::unit_scale_type', , {'members [app] emitting event: 'autodoc-process-docstring'('doxytype', 'mom_unit_scaling::unit_scale_type', , {'members [app] emitting event: 'autodoc-process-docstring'('doxytype', 'mom_unit_scaling::unit_scale_type', , {'members [app] emitting event: 'autodoc-process-docstring'('doxytype', 'mom_unit_scaling::unit_scale_type', , {'members [app] emitting event: 'autodoc-process-docstring'('doxytype', 'mom_unit_scaling::unit_scale_type', , {'members [app] emitting event: 'autodoc-process-docstring'('doxytype', 'mom_unit_scaling::unit_scale_type', , {'members [app] emitting event: 'autodoc-process-docstring'('doxytype', 'mom_unit_scaling::unit_scale_type', , {'members [app] emitting event: 'autodoc-process-docstring'('doxytype', 'mom_unit_scaling::unit_scale_type', , {'members [app] emitting event: 'autodoc-process-docstring'('doxytype', 'mom_unit_scaling::unit_scale_type', , {'members [debug] members([('unit_scaling_init', ), ('fix_restart_unit_scaling', ), ('unit_scaling_end', )]) [autodoc] module analyzer failed: error importing 'mom_unit_scaling' (exception was: ModuleNotFoundError("No module named 'mom_unit_scaling'")) [debug] DoxygenMethodDocumenter format_signature called ((param_file, US)) [debug] add_directive_header sig((param_file, US)) [debug] DoxygenMethodDocumenter directive(subroutine) name(subroutine unit_scaling_init) [debug] verbosity = 3 [debug] Setting build mode: latex [debug] method=visit_para [debug] verbosity = 3 [debug] Setting build mode: latex [debug] method=visit_para [debug] method=visit_parameterlist [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'unit_scaling_init', , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': , {'members': `_ ---------- Data Types ---------- .. autodoxysummary:: :kind: type ~mom_unit_scaling::unit_scale_type --------------------- Functions/Subroutines --------------------- .. autodoxysummary:: :kind: func ~mom_unit_scaling::unit_scaling_init ~mom_unit_scaling::fix_restart_unit_scaling ~mom_unit_scaling::unit_scaling_end .. _DETAmom_unit_scaling: -------------------- Detailed Description -------------------- Provides a transparent unit rescaling type to facilitate dimensional consistency testing. ------------------ Type Documentation ------------------ .. f:type:: unit_scale_type Describes various unit conversion factors. :typefield real m_to_z: A constant that translates distances in meters to the units of depth. :typefield real z_to_m: A constant that translates distances in the units of depth to meters. :typefield real m_to_l: A constant that translates lengths in meters to the units of horizontal lengths. :typefield real l_to_m: A constant that translates lengths in the units of horizontal lengths to meters. :typefield real s_to_t: A constant that translates time intervals in seconds to the units of time. :typefield real t_to_s: A constant that translates the units of time to seconds. :typefield real r_to_kg_m3: A constant that translates the units of density to kilograms per meter cubed. :typefield real kg_m3_to_r: A constant that translates kilograms per meter cubed to the units of density. :typefield real q_to_j_kg: A constant that translates the units of enthalpy to Joules per kilogram. :typefield real j_kg_to_q: A constant that translates Joules per kilogram to the units of enthalpy. :typefield real z_to_l: Convert vertical distances to lateral lengths. :typefield real l_to_z: Convert lateral lengths to vertical distances. :typefield real l_t_to_m_s: Convert lateral velocities from L T-1 to m s-1. :typefield real m_s_to_l_t: Convert lateral velocities from m s-1 to L T-1. :typefield real l_t2_to_m_s2: Convert lateral accelerations from L T-2 to m s-2. :typefield real z2_t_to_m2_s: Convert vertical diffusivities from Z2 T-1 to m2 s-1. :typefield real m2_s_to_z2_t: Convert vertical diffusivities from m2 s-1 to Z2 T-1. :typefield real w_m2_to_qrz_t: Convert heat fluxes from W m-2 to Q R Z T-1. :typefield real qrz_t_to_w_m2: Convert heat fluxes from Q R Z T-1 to W m-2. :typefield real rz_to_kg_m2: Convert mass loads from R Z to kg m-2. :typefield real kg_m2s_to_rz_t: Convert mass fluxes from kg m-2 s-1 to R Z T-1. :typefield real rz_t_to_kg_m2s: Convert mass fluxes from R Z T-1 to kg m-2 s-1. :typefield real rz3_t3_to_w_m2: Convert turbulent kinetic energy fluxes from R Z3 T-3 to W m-2. :typefield real w_m2_to_rz3_t3: Convert turbulent kinetic energy fluxes from W m-2 to R Z3 T-3. :typefield real rl2_t2_to_pa: Convert pressures from R L2 T-2 to Pa. :typefield real m_to_z_restart: A copy of the m_to_Z that is used in restart files. :typefield real m_to_l_restart: A copy of the m_to_L that is used in restart files. :typefield real s_to_t_restart: A copy of the s_to_T that is used in restart files. :typefield real kg_m3_to_r_restart: A copy of the kg_m3_to_R that is used in restart files. :typefield real j_kg_to_q_restart: A copy of the J_kg_to_Q that is used in restart files. --------------------------------- Function/Subroutine Documentation --------------------------------- .. f:subroutine:: subroutine unit_scaling_init(param_file, US) Allocates and initializes the ocean model unit scaling type. :param param_file: [in] Parameter file handle/type :param us: A dimensional unit scaling type :calledfrom: :f:func:`mom_ice_shelf::initialize_ice_shelf ` .. f:subroutine:: subroutine fix_restart_unit_scaling(US) Set the unit scaling factors for output to restart files to the unit scaling factors for this run. :param us: [inout] A dimensional unit scaling type :calledfrom: :f:func:`mom_ice_shelf::initialize_ice_shelf ` .. f:subroutine:: subroutine unit_scaling_end(US) Deallocates a unit scaling structure. :param us: A dimensional unit scaling type [debug] xpath(./compounddef/compoundname[text()="mom_unit_scaling::unit_scale_type"]/..) match([('id', 'structmom__unit__scaling_1_1unit__scale__type'), ('kind', 'type'), ('language', 'Fortran'), ('prot', 'public')]) [debug] DoxygenModuleDocumenter format_signature called [debug] verbosity = 3 [debug] Setting build mode: latex [debug] method=visit_para [app] emitting event: 'autodoc-process-docstring'('doxymodule', 'mom_unit_scaling::unit_scale_type', , {}, ['' [app] emitting event: 'autodoc-process-docstring'('doxymodule', 'mom_unit_scaling::unit_scale_type', , {}, ['` [app] emitting event: 'autodoc-process-docstring'('doxymodule', 'mom_unit_scaling::unit_scale_type', , {}, ['' [debug] DoxygenMethodDocumenter format_signature called ((param_file, US)) [debug] verbosity = 3 [debug] Setting build mode: latex [debug] method=visit_para [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'mom_unit_scaling::unit_scaling_init', , {}, ['' [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'mom_unit_scaling::unit_scaling_init', , {}, ['' [debug] DoxygenMethodDocumenter format_signature called ((US)) [debug] verbosity = 3 [debug] Setting build mode: latex [debug] method=visit_para [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'mom_unit_scaling::fix_restart_unit_scaling', , [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'mom_unit_scaling::fix_restart_unit_scaling', , [debug] DoxygenMethodDocumenter format_signature called ((US)) [debug] verbosity = 3 [debug] Setting build mode: latex [debug] method=visit_para [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'mom_unit_scaling::unit_scaling_end', , {}, ['', [app] emitting event: 'autodoc-process-docstring'('doxymethod', 'mom_unit_scaling::unit_scaling_end', , {}, ['', [fd] run(.. f:type:: unit_scale_type) [fd] sig(unit_scale_type) [fd] ftype(None) objtype(None) modname(None) typename() name(unit_scale_type) arglist(None) [fd] fullname(mom_unit_scaling/unit_scale_type) ftype(None) [fd] name(('mom_unit_scaling/unit_scale_type', None)) sig(unit_scale_type) signode(type mom_unit_scaling/unit_scale_type) [fd] run(.. f:subroutine:: subroutine unit_scaling_init(param_file, US)) [fd] sig(subroutine unit_scaling_init(param_file, US)) [fd] ftype(None) objtype(subroutine) modname(None) typename() name(unit_scaling_init) arglist(param_file, US) [fd] fullname(mom_unit_scaling/unit_scaling_init) ftype(None) [fd] name(('mom_unit_scaling/unit_scaling_init', None)) sig(subroutine unit_scaling_init(param_file, US)) signode(subroutine mom_unit_scaling/unit_scaling_initparam_fileUS) [fd] run(.. f:subroutine:: subroutine fix_restart_unit_scaling(US)) [fd] sig(subroutine fix_restart_unit_scaling(US)) [fd] ftype(None) objtype(subroutine) modname(None) typename() name(fix_restart_unit_scaling) arglist(US) [fd] fullname(mom_unit_scaling/fix_restart_unit_scaling) ftype(None) [fd] name(('mom_unit_scaling/fix_restart_unit_scaling', None)) sig(subroutine fix_restart_unit_scaling(US)) signode(subroutine mom_unit_scaling/fix_restart_unit_scalingUS) [fd] run(.. f:subroutine:: subroutine unit_scaling_end(US)) [fd] sig(subroutine unit_scaling_end(US)) [fd] ftype(None) objtype(subroutine) modname(None) typename() name(unit_scaling_end) arglist(US) [fd] fullname(mom_unit_scaling/unit_scaling_end) ftype(None) [fd] name(('mom_unit_scaling/unit_scaling_end', None)) sig(subroutine unit_scaling_end(US)) signode(subroutine mom_unit_scaling/unit_scaling_endUS) [i18n] PATCH: 'docutils.nodes.field_name' to have source and line: Type fields [i18n] PATCH: 'docutils.nodes.field_name' to have source and line: Parameters [i18n] PATCH: 'docutils.nodes.field_name' to have source and line: Called from [i18n] PATCH: 'docutils.nodes.field_name' to have source and line: Parameters [i18n] PATCH: 'docutils.nodes.field_name' to have source and line: Called from [i18n] PATCH: 'docutils.nodes.field_name' to have source and line: Parameters [app] emitting event: 'doctree-read'(>,) reading sources... [ 13%] api/generated/pages/ALE [app] emitting event: 'env-purge-doc'(, 'api/generated/pages/ALE') [app] emitting event: 'source-read'('api/generated/pages/ALE', ['.. _ALE:\n\n===\nALE\n===\n\n\nBasics of the Vertical Lagrangian-Remap [app] emitting event: 'doctree-read'(
>,) /home/cermak/src/MOM6/docs/api/generated/pages/ALE.rst:5: (INFO/1) Duplicate implicit target name: β€œale”. [filtered system message] reading sources... [ 15%] api/generated/pages/ALE_Timestep [app] emitting event: 'env-purge-doc'(, 'api/generated/pages/ALE_Timestep') [app] emitting event: 'source-read'('api/generated/pages/ALE_Timestep', [".. _ALE_Timestep:\n\n============\nALE Timestep\n============ [i18n] PATCH: 'docutils.nodes.image' to have source, line: [i18n] PATCH: 'docutils.nodes.image' to have source, line: [i18n] PATCH: 'docutils.nodes.image' to have source, line: [app] emitting event: 'doctree-read'(
>,) reading sources... [ 16%] api/generated/pages/Baroclinic_Momentum_Equations [app] emitting event: 'env-purge-doc'(, 'api/generated/pages/Baroclinic_Mom [app] emitting event: 'source-read'('api/generated/pages/Baroclinic_Momentum_Equations', ['.. _Baroclinic_Momentum_Equations:\n\n====== [i18n] PATCH: 'docutils.nodes.image' to have source, line: [i18n] PATCH: 'docutils.nodes.image' to have source, line: [app] emitting event: 'doctree-read'(
,) reading sources... [ 18%] api/generated/pages/Barotropic_Baroclinic_Coupling [app] emitting event: 'env-purge-doc'(, 'api/generated/pages/Barotropic_Bar [app] emitting event: 'source-read'('api/generated/pages/Barotropic_Baroclinic_Coupling', [".. _Barotropic_Baroclinic_Coupling:\n\n==== [i18n] PATCH: 'docutils.nodes.image' to have source, line: [i18n] PATCH: 'docutils.nodes.image' to have source, line: [i18n] PATCH: 'docutils.nodes.image' to have source, line: [i18n] PATCH: 'docutils.nodes.image' to have source, line: [app] emitting event: 'doctree-read'(
,) reading sources... [ 19%] api/generated/pages/Barotropic_Momentum_Equations [app] emitting event: 'env-purge-doc'(, 'api/generated/pages/Barotropic_Mom [app] emitting event: 'source-read'('api/generated/pages/Barotropic_Momentum_Equations', ['.. _Barotropic_Momentum_Equations:\n\n====== [app] emitting event: 'doctree-read'(
,) reading sources... [ 21%] api/generated/pages/CVMix_KPP [app] emitting event: 'env-purge-doc'(, 'api/generated/pages/CVMix_KPP') [app] emitting event: 'source-read'('api/generated/pages/CVMix_KPP', ['.. _CVMix_KPP:\n\n==============================\nThe K-Profile [app] emitting event: 'doctree-read'(
,) reading sources... [ 22%] api/generated/pages/Diagnostics [app] emitting event: 'env-purge-doc'(, 'api/generated/pages/Diagnostics') [app] emitting event: 'source-read'('api/generated/pages/Diagnostics', ['.. _Diagnostics:\n\n===========\nDiagnostics\n===========\n\n\ [app] emitting event: 'doctree-read'(
>,) /home/cermak/src/MOM6/docs/api/generated/pages/Diagnostics.rst:5: (INFO/1) Duplicate implicit target name: β€œdiagnostics”. [filtered system message] /home/cermak/src/MOM6/docs/api/generated/pages/Diagnostics.rst:177: (INFO/1) Possible title underline, too short for the title. Treating it as ordinary text because it’s so short. [filtered system message] /home/cermak/src/MOM6/docs/api/generated/pages/Diagnostics.rst:187: (INFO/1) Possible title underline, too short for the title. Treating it as ordinary text because it’s so short. [filtered system message] /home/cermak/src/MOM6/docs/api/generated/pages/Diagnostics.rst:239: (INFO/1) Possible title underline, too short for the title. Treating it as ordinary text because it’s so short. [filtered system message] /home/cermak/src/MOM6/docs/api/generated/pages/Diagnostics.rst:253: (INFO/1) Possible title underline, too short for the title. Treating it as ordinary text because it’s so short. [filtered system message] reading sources... [ 24%] api/generated/pages/Discrete_Coriolis [app] emitting event: 'env-purge-doc'(, 'api/generated/pages/Discrete_Corio [app] emitting event: 'source-read'('api/generated/pages/Discrete_Coriolis', [".. _Discrete_Coriolis:\n\n======================\nDiscre [app] emitting event: 'doctree-read'(
,) reading sources... [ 25%] api/generated/pages/Discrete_Grids [app] emitting event: 'env-purge-doc'(, 'api/generated/pages/Discrete_Grids [app] emitting event: 'source-read'('api/generated/pages/Discrete_Grids', ['.. _Discrete_Grids:\n\n==================================== [i18n] PATCH: 'docutils.nodes.image' to have source, line: [i18n] PATCH: 'docutils.nodes.image' to have source, line: [i18n] PATCH: 'docutils.nodes.image' to have source, line: [app] emitting event: 'doctree-read'(
,) reading sources... [ 27%] api/generated/pages/Discrete_OBC [app] emitting event: 'env-purge-doc'(, 'api/generated/pages/Discrete_OBC') [app] emitting event: 'source-read'('api/generated/pages/Discrete_OBC', ['.. _Discrete_OBC:\n\n=================================\nDiscr [app] emitting event: 'doctree-read'(
,) reading sources... [ 28%] api/generated/pages/Discrete_PG [app] emitting event: 'env-purge-doc'(, 'api/generated/pages/Discrete_PG') [app] emitting event: 'source-read'('api/generated/pages/Discrete_PG', [".. _Discrete_PG:\n\n===============================\nDiscrete [i18n] PATCH: 'docutils.nodes.image' to have source, line: [app] emitting event: 'doctree-read'(
,) reading sources... [ 30%] api/generated/pages/Discrete_Tracer [app] emitting event: 'env-purge-doc'(, 'api/generated/pages/Discrete_Trace [app] emitting event: 'source-read'('api/generated/pages/Discrete_Tracer', ['.. _Discrete_Tracer:\n\n================================== [app] emitting event: 'doctree-read'(
,) reading sources... [ 31%] api/generated/pages/Domain_Decomposition [app] emitting event: 'env-purge-doc'(, 'api/generated/pages/Domain_Decompo [app] emitting event: 'source-read'('api/generated/pages/Domain_Decomposition', [".. _Domain_Decomposition:\n\n====================\nDo [app] emitting event: 'doctree-read'(
>,) /home/cermak/src/MOM6/docs/api/generated/pages/Domain_Decomposition.rst:11: (INFO/1) Duplicate implicit target name: β€œdomain decomposition”. [filtered system message] reading sources... [ 33%] api/generated/pages/Energetic_Consistency [app] emitting event: 'env-purge-doc'(, 'api/generated/pages/Energetic_Cons [app] emitting event: 'source-read'('api/generated/pages/Energetic_Consistency', ['.. _Energetic_Consistency:\n\n=====================\ [app] emitting event: 'doctree-read'(
,) reading sources... [ 34%] api/generated/pages/Equation_of_State [app] emitting event: 'env-purge-doc'(, 'api/generated/pages/Equation_of_St [app] emitting event: 'source-read'('api/generated/pages/Equation_of_State', ['.. _Equation_of_State:\n\n=================\nEquation of [app] emitting event: 'doctree-read'(
,) /home/cermak/src/MOM6/docs/api/generated/pages/Equation_of_State.rst:36: (INFO/1) Possible title underline, too short for the title. Treating it as ordinary text because it’s so short. [filtered system message] /home/cermak/src/MOM6/docs/api/generated/pages/Equation_of_State.rst:44: (INFO/1) Possible title underline, too short for the title. Treating it as ordinary text because it’s so short. [filtered system message] reading sources... [ 36%] api/generated/pages/Finite_Difference_Operators [app] emitting event: 'env-purge-doc'(, 'api/generated/pages/Finite_Differe [app] emitting event: 'source-read'('api/generated/pages/Finite_Difference_Operators', ['.. _Finite_Difference_Operators:\n\n========== [app] emitting event: 'doctree-read'(
,) reading sources... [ 37%] api/generated/pages/General_Coordinate [app] emitting event: 'env-purge-doc'(, 'api/generated/pages/General_Coordi [app] emitting event: 'source-read'('api/generated/pages/General_Coordinate', [".. _General_Coordinate:\n\n============================ [app] emitting event: 'doctree-read'(
,) reading sources... [ 39%] api/generated/pages/Global_Grids [app] emitting event: 'env-purge-doc'(, 'api/generated/pages/Global_Grids') [app] emitting event: 'source-read'('api/generated/pages/Global_Grids', ['.. _Global_Grids:\n\n=======================\nGlobal Orthogon [app] emitting event: 'doctree-read'(
,) reading sources... [ 40%] api/generated/pages/Governing_Equations [app] emitting event: 'env-purge-doc'(, 'api/generated/pages/Governing_Equa [app] emitting event: 'source-read'('api/generated/pages/Governing_Equations', ['.. _Governing_Equations:\n\n===================\nGover [app] emitting event: 'doctree-read'(
,) reading sources... [ 42%] api/generated/pages/Horizontal_Diffusion [app] emitting event: 'env-purge-doc'(, 'api/generated/pages/Horizontal_Dif [app] emitting event: 'source-read'('api/generated/pages/Horizontal_Diffusion', [".. _Horizontal_Diffusion:\n\n====================\nHo [i18n] PATCH: 'docutils.nodes.image' to have source, line: [i18n] PATCH: 'docutils.nodes.image' to have source, line: [i18n] PATCH: 'docutils.nodes.image' to have source, line: [i18n] PATCH: 'docutils.nodes.image' to have source, line: [i18n] PATCH: 'docutils.nodes.image' to have source, line: [i18n] PATCH: 'docutils.nodes.image' to have source, line: [i18n] PATCH: 'docutils.nodes.image' to have source, line: [i18n] PATCH: 'docutils.nodes.image' to have source, line: [i18n] PATCH: 'docutils.nodes.image' to have source, line: [app] emitting event: 'doctree-read'(
,) reading sources... [ 43%] api/generated/pages/Horizontal_Indexing [app] emitting event: 'env-purge-doc'(, 'api/generated/pages/Horizontal_Ind [app] emitting event: 'source-read'('api/generated/pages/Horizontal_Indexing', ['.. _Horizontal_Indexing:\n\n========================== [i18n] PATCH: 'docutils.nodes.image' to have source, line: [i18n] PATCH: 'docutils.nodes.image' to have source, line: [i18n] PATCH: 'docutils.nodes.image' to have source, line: [app] emitting event: 'doctree-read'(
,) reading sources... [ 45%] api/generated/pages/Notation [app] emitting event: 'env-purge-doc'(, 'api/generated/pages/Notation') [app] emitting event: 'source-read'('api/generated/pages/Notation', ['.. _Notation:\n\n======================\nNotation for equations\n [app] emitting event: 'doctree-read'(
>,) reading sources... [ 46%] api/generated/pages/PPM [app] emitting event: 'env-purge-doc'(, 'api/generated/pages/PPM') [app] emitting event: 'source-read'('api/generated/pages/PPM', [".. _PPM:\n\n====================\nPPM Advection Scheme\n============== [i18n] PATCH: 'docutils.nodes.image' to have source, line: [app] emitting event: 'doctree-read'(
>,) reading sources... [ 48%] api/generated/pages/Parallel_IO [app] emitting event: 'env-purge-doc'(, 'api/generated/pages/Parallel_IO') [app] emitting event: 'source-read'('api/generated/pages/Parallel_IO', ['.. _Parallel_IO:\n\n============\nParallel I/O\n============\n [app] emitting event: 'doctree-read'(
>,) reading sources... [ 50%] api/generated/pages/Passive_Tracers [app] emitting event: 'env-purge-doc'(, 'api/generated/pages/Passive_Tracer [app] emitting event: 'source-read'('api/generated/pages/Passive_Tracers', ['.. _Passive_Tracers:\n\n================================== [app] emitting event: 'doctree-read'(
,) reading sources... [ 51%] api/generated/pages/Regional_Grids [app] emitting event: 'env-purge-doc'(, 'api/generated/pages/Regional_Grids [app] emitting event: 'source-read'('api/generated/pages/Regional_Grids', ['.. _Regional_Grids:\n\n=========================\nRegional [app] emitting event: 'doctree-read'(
,) reading sources... [ 53%] api/generated/pages/Runtime_Parameter_System [app] emitting event: 'env-purge-doc'(, 'api/generated/pages/Runtime_Parame [app] emitting event: 'source-read'('api/generated/pages/Runtime_Parameter_System', ['.. _Runtime_Parameter_System:\n\n================ [app] emitting event: 'doctree-read'(
,) /home/cermak/src/MOM6/docs/api/generated/pages/Runtime_Parameter_System.rst:55: (INFO/1) Possible title underline, too short for the title. Treating it as ordinary text because it’s so short. [filtered system message] /home/cermak/src/MOM6/docs/api/generated/pages/Runtime_Parameter_System.rst:69: (INFO/1) Possible title underline, too short for the title. Treating it as ordinary text because it’s so short. [filtered system message] /home/cermak/src/MOM6/docs/api/generated/pages/Runtime_Parameter_System.rst:101: (INFO/1) Possible title underline, too short for the title. Treating it as ordinary text because it’s so short. [filtered system message] reading sources... [ 54%] api/generated/pages/Sea_Ice [app] emitting event: 'env-purge-doc'(, 'api/generated/pages/Sea_Ice') [app] emitting event: 'source-read'('api/generated/pages/Sea_Ice', ['.. _Sea_Ice:\n\n======================\nSea Ice Considerations\n== [app] emitting event: 'doctree-read'(
>,) reading sources... [ 56%] api/generated/pages/Solar_Radiation [app] emitting event: 'env-purge-doc'(, 'api/generated/pages/Solar_Radiatio [app] emitting event: 'source-read'('api/generated/pages/Solar_Radiation', ['.. _Solar_Radiation:\n\n===============\nSolar Radiation\n [app] emitting event: 'doctree-read'(
>,) reading sources... [ 57%] api/generated/pages/Specifics [app] emitting event: 'env-purge-doc'(, 'api/generated/pages/Specifics') [app] emitting event: 'source-read'('api/generated/pages/Specifics', ['.. _Specifics:\n\n=========\nSpecifics\n=========\n\n\nSpecifics [app] emitting event: 'doctree-read'(
>,) /home/cermak/src/MOM6/docs/api/generated/pages/Specifics.rst:5: (INFO/1) Duplicate implicit target name: β€œspecifics”. [filtered system message] /home/cermak/src/MOM6/docs/api/generated/pages/Specifics.rst:11: (INFO/1) Possible title underline, too short for the title. Treating it as ordinary text because it’s so short. [filtered system message] reading sources... [ 59%] api/generated/pages/Testing [app] emitting event: 'env-purge-doc'(, 'api/generated/pages/Testing') [app] emitting event: 'source-read'('api/generated/pages/Testing', ['.. _Testing:\n\n=======\nTesting\n=======\n\n\nMOM6 Validation and [i18n] PATCH: 'docutils.nodes.image' to have source, line: [i18n] PATCH: 'docutils.nodes.image' to have source, line: [app] emitting event: 'doctree-read'(
>,) /home/cermak/src/MOM6/docs/api/generated/pages/Testing.rst:5: (INFO/1) Duplicate implicit target name: β€œtesting”. [filtered system message] /home/cermak/src/MOM6/docs/api/generated/pages/Testing.rst:123: (INFO/1) Possible title underline, too short for the title. Treating it as ordinary text because it’s so short. [filtered system message] /home/cermak/src/MOM6/docs/api/generated/pages/Testing.rst:129: (INFO/1) Possible title underline, too short for the title. Treating it as ordinary text because it’s so short. [filtered system message] /home/cermak/src/MOM6/docs/api/generated/pages/Testing.rst:135: (INFO/1) Possible title underline, too short for the title. Treating it as ordinary text because it’s so short. [filtered system message] reading sources... [ 60%] api/generated/pages/Time_Filtering [app] emitting event: 'env-purge-doc'(, 'api/generated/pages/Time_Filtering [app] emitting event: 'source-read'('api/generated/pages/Time_Filtering', ['.. _Time_Filtering:\n\n===================\nFiltering Times [app] emitting event: 'doctree-read'(
,) reading sources... [ 62%] api/generated/pages/Tracer_Advection [app] emitting event: 'env-purge-doc'(, 'api/generated/pages/Tracer_Advecti [app] emitting event: 'source-read'('api/generated/pages/Tracer_Advection', [".. _Tracer_Advection:\n\n================\nTracer Advecti [app] emitting event: 'doctree-read'(
>,) reading sources... [ 63%] api/generated/pages/Tracer_Fluxes [app] emitting event: 'env-purge-doc'(, 'api/generated/pages/Tracer_Fluxes' [app] emitting event: 'source-read'('api/generated/pages/Tracer_Fluxes', ['.. _Tracer_Fluxes:\n\n=============\nTracer Fluxes\n======== [app] emitting event: 'doctree-read'(
>,) /home/cermak/src/MOM6/docs/api/generated/pages/Tracer_Fluxes.rst:13: (INFO/1) Duplicate implicit target name: β€œtracer fluxes”. [filtered system message] reading sources... [ 65%] api/generated/pages/Tracer_Timestep [app] emitting event: 'env-purge-doc'(, 'api/generated/pages/Tracer_Timeste [app] emitting event: 'source-read'('api/generated/pages/Tracer_Timestep', ['.. _Tracer_Timestep:\n\n===============\nTracer Timestep\n [app] emitting event: 'doctree-read'(
>,) /home/cermak/src/MOM6/docs/api/generated/pages/Tracer_Timestep.rst:24: (INFO/1) Possible title underline, too short for the title. Treating it as ordinary text because it’s so short. [filtered system message] reading sources... [ 66%] api/generated/pages/Tracer_Transport_Equations [app] emitting event: 'env-purge-doc'(, 'api/generated/pages/Tracer_Transpo [app] emitting event: 'source-read'('api/generated/pages/Tracer_Transport_Equations', ['.. _Tracer_Transport_Equations:\n\n============ [i18n] PATCH: 'docutils.nodes.image' to have source, line: [app] emitting event: 'doctree-read'(
,) reading sources... [ 68%] api/generated/pages/Vertical_Diffusion [app] emitting event: 'env-purge-doc'(, 'api/generated/pages/Vertical_Diffu [app] emitting event: 'source-read'('api/generated/pages/Vertical_Diffusion', ['.. _Vertical_Diffusion:\n\n==================\nVertical [app] emitting event: 'doctree-read'(
,) reading sources... [ 69%] api/generated/pages/Vertical_Grids [app] emitting event: 'env-purge-doc'(, 'api/generated/pages/Vertical_Grids [app] emitting event: 'source-read'('api/generated/pages/Vertical_Grids', ['.. _Vertical_Grids:\n\n=========================\nVertical [app] emitting event: 'doctree-read'(
,) reading sources... [ 71%] api/generated/pages/citelist [app] emitting event: 'env-purge-doc'(, 'api/generated/pages/citelist') [app] emitting event: 'source-read'('api/generated/pages/citelist', [".. _citelist:\n\n============\nBibliography\n============\n\n\n.. [app] emitting event: 'doctree-read'(
>,) reading sources... [ 72%] api/modules [app] emitting event: 'env-purge-doc'(, 'api/modules') [app] emitting event: 'source-read'('api/modules', ['.. _Modules:\n\n=======\nModules\n=======\n\n.. autodoxysummary::\n :toctree: ge [debug] xpath(./compounddef/compoundname[text()="mom"]/..) match([('id', 'namespacemom'), ('kind', 'namespace'), ('language', 'Fortran')]) [debug] DoxygenModuleDocumenter format_signature called [debug] verbosity = 3 [debug] Setting build mode: latex [debug] method=visit_para [app] emitting event: 'autodoc-process-docstring'('doxymodule', 'mom', , {}, ['', 'The central module of the M [app] emitting event: 'autodoc-process-docstring'('doxymodule', 'mom', , {}, ['`More... `_', '']) [app] emitting event: 'autodoc-process-docstring'('doxymodule', 'mom', , {}, ['', 'The central module of the M [debug] xpath(./compounddef/compoundname[text()="mom_ale"]/..) match([('id', 'namespacemom__ale'), ('kind', 'namespace'), ('language', 'Fortran')]) [debug] DoxygenModuleDocumenter format_signature called [debug] verbosity = 3 [debug] Setting build mode: latex [debug] method=visit_para [app] emitting event: 'autodoc-process-docstring'('doxymodule', 'mom_ale', , {}, ['', 'This module contains th [app] emitting event: 'autodoc-process-docstring'('doxymodule', 'mom_ale', , {}, ['`More... `_', [app] emitting event: 'autodoc-process-docstring'('doxymodule', 'mom_ale', , {}, ['', 'This module contains th [debug] xpath(./compounddef/compoundname[text()="mom_eos"]/..) match([('id', 'namespacemom__eos'), ('kind', 'namespace'), ('language', 'Fortran')]) [debug] DoxygenModuleDocumenter format_signature called [debug] verbosity = 3 [debug] Setting build mode: latex [debug] method=visit_para [app] emitting event: 'autodoc-process-docstring'('doxymodule', 'mom_eos', , {}, ['', 'Provides subroutines fo [app] emitting event: 'autodoc-process-docstring'('doxymodule', 'mom_eos', , {}, ['`More... `_', [app] emitting event: 'autodoc-process-docstring'('doxymodule', 'mom_eos', , {}, ['', 'Provides subroutines fo [debug] xpath(./compounddef/compoundname[text()="mom_ice_shelf"]/..) match([('id', 'namespacemom__ice__shelf'), ('kind', 'namespace'), ('language', 'Fortran')]) [debug] DoxygenModuleDocumenter format_signature called [debug] verbosity = 3 [debug] Setting build mode: latex [debug] method=visit_para [app] emitting event: 'autodoc-process-docstring'('doxymodule', 'mom_ice_shelf', , {}, ['', 'Implements the th [app] emitting event: 'autodoc-process-docstring'('doxymodule', 'mom_ice_shelf', , {}, ['`More... , {}, ['', 'Implements the th [debug] xpath(./compounddef/compoundname[text()="mom_meke"]/..) match([('id', 'namespacemom__meke'), ('kind', 'namespace'), ('language', 'Fortran')]) [debug] DoxygenModuleDocumenter format_signature called [debug] verbosity = 3 [debug] Setting build mode: latex [debug] method=visit_para [app] emitting event: 'autodoc-process-docstring'('doxymodule', 'mom_meke', , {}, ['', 'Implements the Mesosca [app] emitting event: 'autodoc-process-docstring'('doxymodule', 'mom_meke', , {}, ['`More... `_ [app] emitting event: 'autodoc-process-docstring'('doxymodule', 'mom_meke', , {}, ['', 'Implements the Mesosca [debug] xpath(./compounddef/compoundname[text()="mom_unit_scaling"]/..) match([('id', 'namespacemom__unit__scaling'), ('kind', 'namespace'), ('language', 'Fortran')]) [debug] DoxygenModuleDocumenter format_signature called [debug] verbosity = 3 [debug] Setting build mode: latex [debug] method=visit_para [app] emitting event: 'autodoc-process-docstring'('doxymodule', 'mom_unit_scaling', , {}, ['', 'Provides a tra [app] emitting event: 'autodoc-process-docstring'('doxymodule', 'mom_unit_scaling', , {}, ['`More... , {}, ['', 'Provides a tra [app] emitting event: 'doctree-read'(
>,) /home/cermak/src/MOM6/docs/api/modules.rst:5: (INFO/1) Duplicate implicit target name: β€œmodules”. [filtered system message] reading sources... [ 74%] api/pages [app] emitting event: 'env-purge-doc'(, 'api/pages') [app] emitting event: 'source-read'('api/pages', ['.. _Pages:\n\n=====\nPages\n=====\n\n.. autodoxysummary::\n :toctree: generated/pa [app] emitting event: 'doctree-read'(
>,) /home/cermak/src/MOM6/docs/api/pages.rst:5: (INFO/1) Duplicate implicit target name: β€œpages”. [filtered system message] reading sources... [ 75%] apiref [app] emitting event: 'env-purge-doc'(, 'apiref') [app] emitting event: 'source-read'('apiref', ['.. _API_Reference:\n\nAPI Reference\n=============\n\nThis API reference is a partial i [app] emitting event: 'doctree-read'(
>,) reading sources... [ 77%] code_organization [app] emitting event: 'env-purge-doc'(, 'code_organization') [app] emitting event: 'source-read'('code_organization', ['Organization of the code\n========================\n\nThe MOM6 source code i [i18n] PATCH: 'docutils.nodes.term' to have rawsource: src/ [i18n] PATCH: 'docutils.nodes.term' to have rawsource: config_src/ [i18n] PATCH: 'docutils.nodes.term' to have rawsource: pkg/ [i18n] PATCH: 'docutils.nodes.term' to have rawsource: docs/ [i18n] PATCH: 'docutils.nodes.term' to have rawsource: .testing/ [i18n] PATCH: 'docutils.nodes.term' to have rawsource: dynamic/, dynamic_symm... [i18n] PATCH: 'docutils.nodes.term' to have rawsource: solo_driver/ [i18n] PATCH: 'docutils.nodes.term' to have rawsource: coupled_driver/ [i18n] PATCH: 'docutils.nodes.term' to have rawsource: core/ [i18n] PATCH: 'docutils.nodes.term' to have rawsource: ALE/ [i18n] PATCH: 'docutils.nodes.term' to have rawsource: diagnostics/ [i18n] PATCH: 'docutils.nodes.term' to have rawsource: equation_of_state/ [i18n] PATCH: 'docutils.nodes.term' to have rawsource: framework/ [i18n] PATCH: 'docutils.nodes.term' to have rawsource: initialization/ [i18n] PATCH: 'docutils.nodes.term' to have rawsource: parameterizations/lateral [i18n] PATCH: 'docutils.nodes.term' to have rawsource: parameterizations/vertical [i18n] PATCH: 'docutils.nodes.term' to have rawsource: tracer/ [i18n] PATCH: 'docutils.nodes.term' to have rawsource: user/ [app] emitting event: 'doctree-read'(>,) reading sources... [ 78%] discrete_space [app] emitting event: 'env-purge-doc'(, 'discrete_space') [app] emitting event: 'source-read'('discrete_space', ['Spatial Discretization\n======================\n\nThe model equations are the l [app] emitting event: 'doctree-read'(>,) reading sources... [ 80%] discrete_time [app] emitting event: 'env-purge-doc'(, 'discrete_time') [app] emitting event: 'source-read'('discrete_time', ['Time Discretization\n===================\n\nIn MOM6, it is possible to have at l [app] emitting event: 'doctree-read'(>,) reading sources... [ 81%] equations [app] emitting event: 'env-purge-doc'(, 'equations') [app] emitting event: 'source-read'('equations', ['Equations\n=========\n\nThe model equations are the layer-integrated vector-invarian [app] emitting event: 'doctree-read'(>,) reading sources... [ 83%] forcing [app] emitting event: 'env-purge-doc'(, 'forcing') [app] emitting event: 'source-read'('forcing', ['Forcing\n=======\n\n.. toctree::\n :maxdepth: 2\n\n api/generated/pages/Solar_Ra [app] emitting event: 'doctree-read'(>,) reading sources... [ 84%] grids [app] emitting event: 'env-purge-doc'(, 'grids') [app] emitting event: 'source-read'('grids', ['Grids\n=====\n\nWe love grids.\n\n.. toctree::\n :maxdepth: 2\n\n api/generated/pa [app] emitting event: 'doctree-read'(>,) reading sources... [ 86%] index [app] emitting event: 'env-purge-doc'(, 'index') [app] emitting event: 'source-read'('index', [".. MOM6 documentation master file, created by\n sphinx-quickstart on Sun Jan 22 11:40: [app] emitting event: 'doctree-read'(
,) reading sources... [ 87%] other_physics [app] emitting event: 'env-purge-doc'(, 'other_physics') [app] emitting event: 'source-read'('other_physics', ['Other Physics\n=============\n\n.. toctree::\n :maxdepth: 2\n\n api/genera [app] emitting event: 'doctree-read'(>,) reading sources... [ 89%] parallel [app] emitting event: 'env-purge-doc'(, 'parallel') [app] emitting event: 'source-read'('parallel', ['Parallel Implementation\n=======================\n\n.. toctree::\n :maxdepth: 2\n\ [app] emitting event: 'doctree-read'(>,) reading sources... [ 90%] parameterizations [app] emitting event: 'env-purge-doc'(, 'parameterizations') [app] emitting event: 'source-read'('parameterizations', ['Parameterizations\n=================\n\nSub-grid scale parameterizations are [app] emitting event: 'doctree-read'(>,) reading sources... [ 92%] parameterizations_lateral [app] emitting event: 'env-purge-doc'(, 'parameterizations_lateral') [app] emitting event: 'source-read'('parameterizations_lateral', ['Lateral Parameterizations\n=========================\n\nThe followin [app] emitting event: 'doctree-read'(>,) reading sources... [ 93%] parameterizations_vertical [app] emitting event: 'env-purge-doc'(, 'parameterizations_vertical') [app] emitting event: 'source-read'('parameterizations_vertical', ['Vertical Parameterizations\n==========================\n\nThe follo [i18n] PATCH: 'docutils.nodes.term' to have rawsource: K-profile parameterization (KPP) [i18n] PATCH: 'docutils.nodes.term' to have rawsource: Energetic Planetary Boundary Layer (ePBL) [i18n] PATCH: 'docutils.nodes.term' to have rawsource: Bulk mixed layer (BML) [i18n] PATCH: 'docutils.nodes.term' to have rawsource: Kappa-shear [i18n] PATCH: 'docutils.nodes.term' to have rawsource: Internal-tide driven mixing [i18n] PATCH: 'docutils.nodes.term' to have rawsource: Opacity [i18n] PATCH: 'docutils.nodes.term' to have rawsource: Short-wave absorption [app] emitting event: 'doctree-read'(>,) reading sources... [ 95%] testing [app] emitting event: 'env-purge-doc'(, 'testing') [app] emitting event: 'source-read'('testing', ['Testing of MOM6\n=================\n\n.. toctree::\n :maxdepth: 1\n\n api/genera [app] emitting event: 'doctree-read'(>,) reading sources... [ 96%] tracers [app] emitting event: 'env-purge-doc'(, 'tracers') [app] emitting event: 'source-read'('tracers', ['Tracers in MOM6\n=================\n\n.. toctree::\n :maxdepth: 1\n\n api/genera [app] emitting event: 'doctree-read'(>,) reading sources... [ 98%] working_with_MOM6 [app] emitting event: 'env-purge-doc'(, 'working_with_MOM6') [app] emitting event: 'source-read'('working_with_MOM6', ['Working with MOM6\n=================\n\n.. toctree::\n :maxdepth: 1\n\n [app] emitting event: 'doctree-read'(>,) reading sources... [100%] zzbibliography [app] emitting event: 'env-purge-doc'(, 'zzbibliography') [app] emitting event: 'source-read'('zzbibliography', ['Bibliography\n============\n\n.. bibliography:: ocean.bib references.bib zotero checking for /home/cermak/src/MOM6/docs/ocean.bib in bibtex cache... not found parsing bibtex file /home/cermak/src/MOM6/docs/ocean.bib... parsed 7 entries checking for /home/cermak/src/MOM6/docs/references.bib in bibtex cache... not found parsing bibtex file /home/cermak/src/MOM6/docs/references.bib... parsed 11 entries checking for /home/cermak/src/MOM6/docs/zotero.bib in bibtex cache... not found parsing bibtex file /home/cermak/src/MOM6/docs/zotero.bib... parsed 169 entries [app] emitting event: 'doctree-read'(>,) [app] emitting event: 'env-updated'(,) /home/cermak/venv/esmg/lib/python3.8/site-packages/Sphinx-3.3.0.dev20201027-py3.8.egg/sphinx/ext/autodoc/__init__.py:302: RemovedInSphinx40Warning: Autosummary.genopt is deprecated self.options = directive.genopt /home/cermak/venv/esmg/lib/python3.8/site-packages/Sphinx-3.3.0.dev20201027-py3.8.egg/sphinx/ext/autodoc/__init__.py:335: RemovedInSphinx40Warning: Autosummary.result is deprecated self.directive.result.append('', source, *lineno) /home/cermak/venv/esmg/lib/python3.8/site-packages/Sphinx-3.3.0.dev20201027-py3.8.egg/sphinx/ext/autodoc/__init__.py:333: RemovedInSphinx40Warning: Autosummary.result is deprecated self.directive.result.append(self.indent + line, source, *lineno) docstring of mom::mom_diag_ids:1: WARNING: Unknown target name: "step_mom_dyn". docstring of mom::mom_diag_ids:1: WARNING: Unknown target name: "step_mom_dyn". docstring of step_mom:2: WARNING: Unknown target name: "step_mom_dyn". docstring of analytic_int_specific_vol_dp:2: WARNING: Undefined substitution referenced: "eps". docstring of meke_init:1: WARNING: Undefined substitution referenced: "grad F". /home/cermak/src/MOM6/docs/api/generated/pages/citelist.rst:8: WARNING: malformed hyperlink target. /home/cermak/src/MOM6/docs/api/generated/pages/citelist.rst:13: WARNING: malformed hyperlink target. /home/cermak/src/MOM6/docs/api/generated/pages/citelist.rst:18: WARNING: malformed hyperlink target. /home/cermak/src/MOM6/docs/api/generated/pages/citelist.rst:23: WARNING: malformed hyperlink target. /home/cermak/src/MOM6/docs/api/generated/pages/citelist.rst:28: WARNING: malformed hyperlink target. /home/cermak/src/MOM6/docs/api/generated/pages/citelist.rst:33: WARNING: malformed hyperlink target. /home/cermak/src/MOM6/docs/api/generated/pages/citelist.rst:38: WARNING: malformed hyperlink target. /home/cermak/src/MOM6/docs/api/generated/pages/citelist.rst:43: WARNING: malformed hyperlink target. /home/cermak/src/MOM6/docs/api/generated/pages/citelist.rst:48: WARNING: malformed hyperlink target. /home/cermak/src/MOM6/docs/api/generated/pages/citelist.rst:53: WARNING: malformed hyperlink target. /home/cermak/src/MOM6/docs/api/generated/pages/citelist.rst:58: WARNING: malformed hyperlink target. /home/cermak/src/MOM6/docs/api/generated/pages/citelist.rst:63: WARNING: malformed hyperlink target. /home/cermak/src/MOM6/docs/api/generated/pages/citelist.rst:68: WARNING: malformed hyperlink target. /home/cermak/src/MOM6/docs/api/generated/pages/citelist.rst:73: WARNING: malformed hyperlink target. /home/cermak/src/MOM6/docs/api/generated/pages/citelist.rst:78: WARNING: malformed hyperlink target. /home/cermak/src/MOM6/docs/api/generated/pages/citelist.rst:83: WARNING: malformed hyperlink target. /home/cermak/src/MOM6/docs/api/generated/pages/citelist.rst:88: WARNING: malformed hyperlink target. /home/cermak/src/MOM6/docs/api/generated/pages/citelist.rst:93: WARNING: malformed hyperlink target. /home/cermak/src/MOM6/docs/api/generated/pages/citelist.rst:98: WARNING: malformed hyperlink target. /home/cermak/src/MOM6/docs/api/generated/pages/citelist.rst:103: WARNING: malformed hyperlink target. /home/cermak/src/MOM6/docs/api/generated/pages/citelist.rst:108: WARNING: malformed hyperlink target. /home/cermak/src/MOM6/docs/api/generated/pages/citelist.rst:113: WARNING: malformed hyperlink target. /home/cermak/src/MOM6/docs/api/generated/pages/citelist.rst:122: WARNING: malformed hyperlink target. /home/cermak/src/MOM6/docs/api/generated/pages/citelist.rst:127: WARNING: malformed hyperlink target. /home/cermak/src/MOM6/docs/api/generated/pages/citelist.rst:132: WARNING: malformed hyperlink target. /home/cermak/src/MOM6/docs/api/generated/pages/citelist.rst:137: WARNING: malformed hyperlink target. /home/cermak/src/MOM6/docs/api/generated/pages/citelist.rst:142: WARNING: malformed hyperlink target. /home/cermak/src/MOM6/docs/api/generated/pages/citelist.rst:147: WARNING: malformed hyperlink target. /home/cermak/src/MOM6/docs/api/generated/pages/citelist.rst:152: WARNING: malformed hyperlink target. /home/cermak/src/MOM6/docs/api/generated/pages/citelist.rst:157: WARNING: malformed hyperlink target. /home/cermak/src/MOM6/docs/api/generated/pages/citelist.rst:162: WARNING: malformed hyperlink target. /home/cermak/src/MOM6/docs/api/generated/pages/citelist.rst:167: WARNING: malformed hyperlink target. /home/cermak/src/MOM6/docs/api/generated/pages/citelist.rst:172: WARNING: malformed hyperlink target. /home/cermak/src/MOM6/docs/api/generated/pages/citelist.rst:177: WARNING: malformed hyperlink target. /home/cermak/src/MOM6/docs/api/generated/pages/citelist.rst:182: WARNING: malformed hyperlink target. /home/cermak/src/MOM6/docs/api/generated/pages/citelist.rst:187: WARNING: malformed hyperlink target. /home/cermak/src/MOM6/docs/api/generated/pages/citelist.rst:192: WARNING: malformed hyperlink target. looking for now-outdated files... [app] emitting event: 'env-get-updated'(,) none found pickling environment... done checking consistency... /home/cermak/src/MOM6/docs/advection.rst: WARNING: document isn't included in any toctree /home/cermak/src/MOM6/docs/api/pages.rst: WARNING: document isn't included in any toctree [app] emitting event: 'env-check-consistency'(,) done processing MOM6.tex... index about equations api/generated/pages/Notation api/generated/pages/Governing_Equations api/generated/pages/General_Coordinate api/generated/pages/Specifics api/generated/pages/ALE discrete_space api/generated/pages/Discrete_Grids api/generated/pages/Finite_Difference_Operators api/generated/pages/PPM api/generated/pages/Discrete_Coriolis api/generated/pages/Discrete_PG api/generated/pages/Energetic_Consistency api/generated/pages/Discrete_OBC discrete_time api/generated/pages/Barotropic_Momentum_Equations api/generated/pages/Baroclinic_Momentum_Equations api/generated/pages/Barotropic_Baroclinic_Coupling api/generated/pages/Tracer_Timestep api/generated/pages/ALE_Timestep tracers api/generated/pages/Tracer_Advection api/generated/pages/Tracer_Transport_Equations api/generated/pages/Horizontal_Diffusion api/generated/pages/Vertical_Diffusion api/generated/pages/Passive_Tracers grids api/generated/pages/Global_Grids api/generated/pages/Regional_Grids api/generated/pages/Vertical_Grids parameterizations parameterizations_vertical parameterizations_lateral other_physics api/generated/pages/Equation_of_State api/generated/pages/Sea_Ice working_with_MOM6 code_organization api/generated/pages/Runtime_Parameter_System api/generated/pages/Diagnostics api/generated/pages/Horizontal_Indexing forcing api/generated/pages/Solar_Radiation api/generated/pages/Tracer_Fluxes parallel api/generated/pages/Domain_Decomposition api/generated/pages/Parallel_IO testing api/generated/pages/Testing apiref api/modules api/generated/modules/mom api/generated/modules/mom_ale api/generated/modules/mom_eos api/generated/modules/mom_ice_shelf api/generated/modules/mom_meke api/generated/modules/mom_unit_scaling zzbibliography resolving references... [app] emitting event: 'missing-reference'(, [app] emitting event: 'missing-reference'(, >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >, , >,
, 'index') done writing... done copying images... [ 3%] images/Arakawa_C_grid.png copying images... [ 7%] images/Grid_metrics.png copying images... [ 10%] images/cell_3d.png copying images... [ 14%] images/ppm_arc.png copying images... [ 17%] images/PG_loop.png copying images... [ 21%] images/timestep_MOM6.png copying images... [ 25%] images/timestep_ROMS.png copying images... [ 28%] images/h_PPM.png copying images... [ 32%] images/Newton_PPM.png copying images... [ 35%] images/bottom_drag.png copying images... [ 39%] images/bt_bc_thickness.png copying images... [ 42%] images/remapping1.png copying images... [ 46%] images/remapping2.png copying images... [ 50%] images/remapping3.png copying images... [ 53%] images/PPM_1d.png copying images... [ 57%] images/eddy_fluxes.png copying images... [ 60%] images/shao0.png copying images... [ 64%] images/shao1.png copying images... [ 67%] images/shao2.png copying images... [ 71%] images/shao3.png copying images... [ 75%] images/shao4.png copying images... [ 78%] images/shao5.png copying images... [ 82%] images/sbl1.png copying images... [ 85%] images/sbl2.png copying images... [ 89%] images/Horizontal_NE_indexing_nonsym.png copying images... [ 92%] images/Horizontal_NE_indexing_sym.png copying images... [ 96%] images/consortium.png copying images... [100%] images/Rotated_indices.png copying TeX support files... copying TeX support files... done build succeeded, 44 warnings. The LaTeX files are in _build/latex. Run 'make' in that directory to run these through (pdf)latex (use `make latexpdf' here to do that automatically). [app] emitting event: 'build-finished'(None,) Running LaTeX files through pdflatex... make -C _build/latex LATEXMKOPTS="-f -silent" all-pdf make[1]: Entering directory '/home/cermak/src/MOM6/docs/_build/latex' latexmk -pdf -dvi- -ps- -f -silent 'MOM6.tex' Latexmk: Run number 1 of rule 'pdflatex' This is pdfTeX, Version 3.14159265-2.6-1.40.20 (TeX Live 2019/Debian) (preloaded format=pdflatex) restricted \write18 enabled. entering extended mode Latexmk: Run number 1 of rule 'makeindex MOM6.idx' Latexmk: Run number 2 of rule 'pdflatex' This is pdfTeX, Version 3.14159265-2.6-1.40.20 (TeX Live 2019/Debian) (preloaded format=pdflatex) restricted \write18 enabled. entering extended mode Latexmk: Run number 3 of rule 'pdflatex' This is pdfTeX, Version 3.14159265-2.6-1.40.20 (TeX Live 2019/Debian) (preloaded format=pdflatex) restricted \write18 enabled. entering extended mode Collected error summary (may duplicate other messages): pdflatex: Command for 'pdflatex' gave return code 1 Refer to 'MOM6.log' for details make[1]: *** [Makefile:29: MOM6.pdf] Error 12 make[1]: Leaving directory '/home/cermak/src/MOM6/docs/_build/latex' make: *** [Makefile:131: latexpdf] Error 2