MODULE obs_def_ocean_mod
Overview
obs_def_ocean_mod
module being described here is used by the program preprocess
to insert appropriate
definitions of ocean observations into the DEFAULT_obs_def_mod.f90
template and generate the source files
obs_def_mod.f90
and obs_kind_mod.f90
that are used by filter
and other DART programs.HFRADAR_RADIAL_VELOCITY
observations require a forward operator, as evidenced by the fact there is no
COMMON_CODE
in the third column of the type definitions table.
All other observations types map to quantities that must be available in the model state;
the observations types flagged with COMMON_CODE
will use the model_interpolate()
routine
as the forward operator.COMMON_CODE
will instruct the preprocess program to automatically generate all stubs and
code needed for this type. For observation types needing any special code or additional data, this word should not be
specified and the user must supply the code manually. One of the future extensions of this module will be to support
acoustic tomographic observations, which will necessitate specific support routines.Ocean variable types and their corresponding quantities
! BEGIN DART PREPROCESS TYPE DEFINITIONS
! SALINITY, QTY_SALINITY, COMMON_CODE
! TEMPERATURE, QTY_TEMPERATURE, COMMON_CODE
! U_CURRENT_COMPONENT, QTY_U_CURRENT_COMPONENT, COMMON_CODE
! V_CURRENT_COMPONENT, QTY_V_CURRENT_COMPONENT, COMMON_CODE
! SEA_SURFACE_HEIGHT, QTY_SEA_SURFACE_HEIGHT, COMMON_CODE
! SEA_SURFACE_PRESSURE, QTY_SEA_SURFACE_PRESSURE, COMMON_CODE
! ARGO_U_CURRENT_COMPONENT, QTY_U_CURRENT_COMPONENT, COMMON_CODE
! ARGO_V_CURRENT_COMPONENT, QTY_V_CURRENT_COMPONENT, COMMON_CODE
! ARGO_SALINITY, QTY_SALINITY, COMMON_CODE
! ARGO_TEMPERATURE, QTY_TEMPERATURE, COMMON_CODE
! ADCP_U_CURRENT_COMPONENT, QTY_U_CURRENT_COMPONENT, COMMON_CODE
! ADCP_V_CURRENT_COMPONENT, QTY_V_CURRENT_COMPONENT, COMMON_CODE
! ADCP_SALINITY, QTY_SALINITY, COMMON_CODE
! ADCP_TEMPERATURE, QTY_TEMPERATURE, COMMON_CODE
! FLOAT_SALINITY, QTY_SALINITY, COMMON_CODE
! FLOAT_TEMPERATURE, QTY_TEMPERATURE, COMMON_CODE
! DRIFTER_U_CURRENT_COMPONENT, QTY_U_CURRENT_COMPONENT, COMMON_CODE
! DRIFTER_V_CURRENT_COMPONENT, QTY_V_CURRENT_COMPONENT, COMMON_CODE
! DRIFTER_SALINITY, QTY_SALINITY, COMMON_CODE
! DRIFTER_TEMPERATURE, QTY_TEMPERATURE, COMMON_CODE
! GLIDER_U_CURRENT_COMPONENT, QTY_U_CURRENT_COMPONENT, COMMON_CODE
! GLIDER_V_CURRENT_COMPONENT, QTY_V_CURRENT_COMPONENT, COMMON_CODE
! GLIDER_SALINITY, QTY_SALINITY, COMMON_CODE
! GLIDER_TEMPERATURE, QTY_TEMPERATURE, COMMON_CODE
! MOORING_U_CURRENT_COMPONENT, QTY_U_CURRENT_COMPONENT, COMMON_CODE
! MOORING_V_CURRENT_COMPONENT, QTY_V_CURRENT_COMPONENT, COMMON_CODE
! MOORING_SALINITY, QTY_SALINITY, COMMON_CODE
! MOORING_TEMPERATURE, QTY_TEMPERATURE, COMMON_CODE
! MOORING_PRESSURE, QTY_PRESSURE, COMMON_CODE
! BOTTLE_SALINITY, QTY_SALINITY, COMMON_CODE
! BOTTLE_TEMPERATURE, QTY_TEMPERATURE, COMMON_CODE
! CTD_SALINITY, QTY_SALINITY, COMMON_CODE
! CTD_TEMPERATURE, QTY_TEMPERATURE, COMMON_CODE
! TCTD_SALINITY, QTY_SALINITY, COMMON_CODE
! TCTD_TEMPERATURE, QTY_TEMPERATURE, COMMON_CODE
! STD_SALINITY, QTY_SALINITY, COMMON_CODE
! STD_TEMPERATURE, QTY_TEMPERATURE, COMMON_CODE
! XCTD_SALINITY, QTY_SALINITY, COMMON_CODE
! XCTD_TEMPERATURE, QTY_TEMPERATURE, COMMON_CODE
! MBT_SALINITY, QTY_SALINITY, COMMON_CODE
! MBT_TEMPERATURE, QTY_TEMPERATURE, COMMON_CODE
! XBT_SALINITY, QTY_SALINITY, COMMON_CODE
! XBT_TEMPERATURE, QTY_TEMPERATURE, COMMON_CODE
! DBT_SALINITY, QTY_SALINITY, COMMON_CODE
! DBT_TEMPERATURE, QTY_TEMPERATURE, COMMON_CODE
! APB_SALINITY, QTY_SALINITY, COMMON_CODE
! APB_TEMPERATURE, QTY_TEMPERATURE, COMMON_CODE
! DOPPLER_U_CURRENT_COMPONENT, QTY_U_CURRENT_COMPONENT, COMMON_CODE
! DOPPLER_V_CURRENT_COMPONENT, QTY_V_CURRENT_COMPONENT, COMMON_CODE
! DOPPLER_W_CURRENT_COMPONENT, QTY_W_CURRENT_COMPONENT, COMMON_CODE
! SATELLITE_MICROWAVE_SST, QTY_TEMPERATURE, COMMON_CODE
! SATELLITE_INFRARED_SST, QTY_TEMPERATURE, COMMON_CODE
! SATELLITE_BLENDED_SST, QTY_TEMPERATURE, COMMON_CODE
! SATELLITE_SSH, QTY_SEA_SURFACE_HEIGHT, COMMON_CODE
! SATELLITE_SSS, QTY_SALINITY, COMMON_CODE
! J1_SEA_SURFACE_ANOMALY, QTY_SEA_SURFACE_ANOMALY, COMMON_CODE
! EN_SEA_SURFACE_ANOMALY, QTY_SEA_SURFACE_ANOMALY, COMMON_CODE
! GFO_SEA_SURFACE_ANOMALY, QTY_SEA_SURFACE_ANOMALY, COMMON_CODE
! DRY_LAND, QTY_DRY_LAND, COMMON_CODE
! OI_SEA_SURFACE_TEMPERATURE, QTY_TEMPERATURE, COMMON_CODE
! HFRADAR_U_CURRENT_COMPONENT, QTY_U_CURRENT_COMPONENT, COMMON_CODE
! HFRADAR_V_CURRENT_COMPONENT, QTY_V_CURRENT_COMPONENT, COMMON_CODE
! HFRADAR_RADIAL_VELOCITY, QTY_VELOCITY
! FERRYBOX_SALINITY, QTY_SALINITY, COMMON_CODE
! FERRYBOX_TEMPERATURE, QTY_TEMPERATURE, COMMON_CODE
! END DART PREPROCESS TYPE DEFINITIONS
New observation types may be added to this list with no loss of generality. Supporting the observations and actually
assimilating them are somewhat different and is controlled by the input.nml
&obs_kind_nml
assimilate_these_obs_types variable. This
provides the flexibility to have an observation sequence file containing many different observation types and being able
to selectively choose what types will be assimilated.
Other modules used
types_mod
utilities_mod
location_mod (threed_sphere)
assim_model_mod
obs_kind_mod
ensemble_manager_mod
obs_def_utilities_mod
Public interfaces
use obs_def_ocean_mod, only : |
read_hf_radial_vel |
write_hf_radial_vel |
|
interactive_hf_radial_vel |
|
get_expected_hf_radial_vel |
|
get_obs_def_hf_radial_vel |
|
set_hf_radial_vel |
Namelist
Namelist interface obs_def_ocean_nml
is read from file input.nml
.
Namelists start with an ampersand ‘&’ and terminate with a slash ‘/’.
Character strings that contain a ‘/’ must be enclosed in quotes to prevent
them from prematurely terminating the namelist.
&obs_def_ocean_nml
max_radial_vel_obs = 1000000
debug = .false.
/
Item |
Type |
Description |
---|---|---|
max_radial_vel_obs |
integer |
The maximum number of radial velocity observations to be read at one time. An error is thrown if more observations are encountered. Increase value and rerun. |
debug |
logical |
Switch to control how much run-time output is created.
|
Public components
none
Files
none
References
none
Private components
N/A