ocean_da_types_mod module reference

Dummy aata structures and methods for ocean data assimilation.

More…

Data Types

ocean_control_struct

Example type for ocean ensemble DA state.

ocean_profile_type

Example of a profile type.

forward_operator_type

Example forward operator type.

grid_type

Grid type for DA.

Detailed Description

Dummy aata structures and methods for ocean data assimilation.

Type Documentation

type ocean_da_types_mod/ocean_control_struct

Example type for ocean ensemble DA state.

Type fields:
  • % ensemble_size [integer] :: ensemble size

  • % ssh [real(:,:,:),pointer] :: sea surface height across ensembles [m]

  • % h [real(:,:,:,:),pointer] :: layer thicknesses across ensembles [m or kg m-2]

  • % t [real(:,:,:,:),pointer] :: layer potential temperature across ensembles [degC]

  • % s [real(:,:,:,:),pointer] :: layer salinity across ensembles [ppt]

  • % u [real(:,:,:,:),pointer] :: layer zonal velocity across ensembles [m s-1]

  • % v [real(:,:,:,:),pointer] :: layer meridional velocity across ensembles [m s-1]

type ocean_da_types_mod/ocean_profile_type

Example of a profile type.

Type fields:
  • % inst_type [integer] :: A numeric code indicating the type of instrument (e.g. ARGO drifter, CTD, …)

  • % initialized [logical] :: a True value indicates that this profile has been allocated for use

  • % colocated [logical] :: a True value indicated that the measurements of (num_variables) data are co-located in space-time

  • % ensemble_size [integer] :: size of the ensemble of model states used in association with this profile

  • % num_variables [integer] :: number of measurement types associated with this profile.

  • % var_id [integer(:),pointer] :: variable ids are defined by the ocean_types module

  • % platform [integer] :: platform types are defined by platform class (e.g. MOORING, DROP, etc.) and instrument type (XBT, CDT, etc.)

  • % levels [integer] :: number of levels in the current profile

  • % basin_mask [integer] :: 1:Southern Ocean, 2:Atlantic Ocean, 3:Pacific Ocean, 4:Arctic Ocean, 5:Indian Ocean, 6:Mediterranean Sea, 7:Black Sea, 8:Hudson Bay, 9:Baltic Sea, 10:Red Sea, 11:Persian Gulf

  • % profile_flag [integer] :: an overall flag for the profile

  • % lat [real] :: latitude [degrees_N]

  • % lon [real] :: longitude [degrees_E]

  • % accepted [logical] :: logical flag to disable a profile

  • % time_window [type(time_type)] :: The time window associated with this profile.

  • % obs_error [real(:),pointer] :: The observation error by variable [various units].

  • % loc_dist [real] :: The impact radius of this observation [m].

  • % next [type( ocean_profile_type ),pointer] :: all profiles are stored as linked list.

  • % prev [type( ocean_profile_type ),pointer] :: previous

  • % cnext [type( ocean_profile_type ),pointer] :: current profiles are stored as linked list.

  • % cprev [type( ocean_profile_type ),pointer] :: previous

  • % nbr_xi [integer] :: x nearest neighbor model gridpoint for the profile

  • % nbr_yi [integer] :: y nearest neighbor model gridpoint for the profile

  • % nbr_dist [real] :: distance to nearest neighbor model gridpoint [m]

  • % compute [logical] :: profile is within current compute domain

  • % depth [real(:,:),pointer] :: depth of measurement [m]

  • % data [real(:,:),pointer] :: data by variable type [various units]

  • % flag [integer(:,:),pointer] :: flag by depth and variable type

  • % forecast [real(:,:,:),pointer] :: ensemble member first guess

  • % analysis [real(:,:,:),pointer] :: ensemble member analysis

  • % obs_def [type( forward_operator_type ),pointer] :: observation forward operator

  • % time [type(time_type)] :: profile time type

  • % i_index [real] :: model longitude indices respectively

  • % j_index [real] :: model latitude indices respectively

  • % k_index [real(:,:),pointer] :: model depth indices

  • % tdiff [type(time_type)] :: difference between model time and observation time

  • % filename [character (len=128)] :: a filename

type ocean_da_types_mod/forward_operator_type

Example forward operator type.

Type fields:
  • % num [integer] :: how many?

  • % state_size [integer(2)] :: for

  • % state_var_index [integer(:),pointer] :: for flattened data

  • % i_index [integer(:),pointer] :: i-dimension index

  • % j_index [integer(:),pointer] :: j-dimension index

  • % coef [real(:),pointer] :: coefficient

type ocean_da_types_mod/grid_type

Grid type for DA.

Type fields:
  • % x [real(:,:),pointer] :: x

  • % y [real(:,:),pointer] :: y

  • % z [real(:,:,:),pointer] :: z

  • % h [real(:,:,:),pointer] :: h

  • % basin_mask [real(:,:),pointer] :: basin mask

  • % mask [real(:,:,:),pointer] :: land mask?

  • % bathyt [real(:,:),pointer] :: bathymetry at T points [m]

  • % tripolar_n [logical] :: True for tripolar grids.

  • % ni [integer] :: ni

  • % nj [integer] :: nj

  • % nk [integer] :: nk