29 use mom_io, only : write_field, slasher
38 implicit none ;
private 40 #include <MOM_memory.h> 51 subroutine user_set_coord(Rlay, g_prime, GV, param_file, eqn_of_state)
54 real,
dimension(:),
intent(out) :: Rlay
55 real,
dimension(:),
intent(out) :: g_prime
60 type(
eos_type),
pointer :: eqn_of_state
64 "USER_initialization.F90, USER_set_coord: " // &
65 "Unmodified user routine called - you must edit the routine to use it")
76 real,
dimension(G%isd:G%ied,G%jsd:G%jed), &
79 real,
intent(in) :: max_depth
82 "USER_initialization.F90, USER_initialize_topography: " // &
83 "Unmodified user routine called - you must edit the routine to use it")
94 real,
intent(out),
dimension(SZI_(G),SZJ_(G),SZK_(G)) :: h
99 real,
intent(in),
dimension(SZI_(G),SZJ_(G), SZK_(G)) :: T
100 logical,
optional,
intent(in) :: just_read_params
106 "USER_initialization.F90, USER_initialize_thickness: " // &
107 "Unmodified user routine called - you must edit the routine to use it")
109 just_read = .false. ;
if (
present(just_read_params)) just_read = just_read_params
111 if (just_read)
return 122 real,
dimension(SZIB_(G), SZJ_(G), SZK_(G)),
intent(out) :: u
123 real,
dimension(SZI_(G), SZJB_(G), SZK_(G)),
intent(out) :: v
127 logical,
optional,
intent(in) :: just_read_params
133 "USER_initialization.F90, USER_initialize_velocity: " // &
134 "Unmodified user routine called - you must edit the routine to use it")
136 just_read = .false. ;
if (
present(just_read_params)) just_read = just_read_params
138 if (just_read)
return 151 real,
dimension(SZI_(G),SZJ_(G), SZK_(G)),
intent(out) :: T
152 real,
dimension(SZI_(G),SZJ_(G), SZK_(G)),
intent(out) :: S
156 type(
eos_type),
pointer :: eqn_of_state
158 logical,
optional,
intent(in) :: just_read_params
164 "USER_initialization.F90, USER_init_temperature_salinity: " // &
165 "Unmodified user routine called - you must edit the routine to use it")
167 just_read = .false. ;
if (
present(just_read_params)) just_read = just_read_params
169 if (just_read)
return 181 logical,
intent(in) :: use_temperature
193 real,
dimension(SZI_(G), SZJ_(G), SZK_(G)),
intent(in) :: h
195 "USER_initialization.F90, USER_initialize_sponges: " // &
196 "Unmodified user routine called - you must edit the routine to use it")
228 "USER_initialization.F90, USER_set_rotation: " // &
229 "Unmodified user routine called - you must edit the routine to use it")
242 #include "version_variable.h" 243 character(len=40) :: mdl =
"user_initialization" subroutine, public read_axis_data(filename, axis_name, var)
subroutine, public user_initialize_sponges(G, use_temperature, tv, param_file, CSp, h)
Set up the sponges.
integer, parameter, public obc_direction_s
Indicates the boundary is an effective southern boundary.
integer, parameter, public obc_direction_w
Indicates the boundary is an effective western boundary.
integer, parameter, public obc_direction_n
Indicates the boundary is an effective northern boundary.
Ocean grid type. See mom_grid for details.
subroutine, public user_init_temperature_salinity(T, S, G, param_file, eqn_of_state, just_read_params)
This function puts the initial layer temperatures and salinities into T(:,:,:) and S(:...
Calculates density of sea water from T, S and P.
Provides the ocean grid type.
This module contains I/O framework code.
By Robert Hallberg, April 1994 - June 2002 *This subroutine initializes the fields for the simulation...
integer, parameter, public obc_simple
This module contains the tracer_registry_type and the subroutines that handle registration of tracers...
subroutine, public calculate_density_derivs(T, S, pressure, drho_dT, drho_dS, start, npts, EOS)
Calls the appropriate subroutine to calculate density derivatives for 1-D array inputs.
subroutine, public initialize_sponge(Iresttime, int_height, G, param_file, CS, Iresttime_i_mean, int_height_i_mean)
subroutine write_user_log(param_file)
Write output about the parameter values being used.
subroutine, public set_up_sponge_field(sp_val, f_ptr, G, nlay, CS, sp_val_i_mean)
Type to carry basic tracer information.
subroutine, public user_set_obc_data(OBC, tv, G, param_file, tr_Reg)
This subroutine sets the properties of flow at open boundary conditions.
logical function, public is_root_pe()
subroutine, public add_tracer_obc_values(name, Reg, OBC_inflow, OBC_in_u, OBC_in_v)
This subroutine adds open boundary condition concentrations for a tracer that has previously been reg...
subroutine, public mom_mesg(message, verb, all_print)
Provides subroutines for quantities specific to the equation of state.
integer, parameter, public obc_direction_e
Indicates the boundary is an effective eastern boundary.
subroutine, public user_initialize_thickness(h, G, param_file, T, just_read_params)
initialize thicknesses.
The thermo_var_ptrs structure contains pointers to an assortment of thermodynamic fields that may be ...
subroutine, public user_set_coord(Rlay, g_prime, GV, param_file, eqn_of_state)
Set vertical coordinates.
integer, parameter, public obc_none
Controls where open boundary conditions are applied.
subroutine, public user_set_rotation(G, param_file)
subroutine, public mom_error(level, message, all_print)
subroutine, public user_initialize_topography(D, G, param_file, max_depth)
Initialize topography.
subroutine, public user_initialize_velocity(u, v, G, param_file, just_read_params)
initialize velocities.
A control structure for the equation of state.