SABER
type_bump Module Reference

BUMP derived type. More...

Data Types

type  bump_type
 

Functions/Subroutines

subroutine bump_create (bump, comm, afunctionspace, fieldset, conf, grid)
 Create. More...
 
subroutine bump_create_deprecated_atlas (bump, comm, afunctionspace, afieldset, conf, grid)
 Create (deprecated) More...
 
subroutine bump_setup (bump, f_comm, afunctionspace, fieldset, nobs, lonobs, latobs, lunit, msvali, msvalr)
 Setup. More...
 
subroutine bump_run_drivers (bump)
 Run drivers. More...
 
subroutine bump_add_member (bump, fieldset, ie, iens)
 Add member into bumpens[1,2]. More...
 
subroutine bump_apply_vbal (bump, fieldset)
 Vertical balance application. More...
 
subroutine bump_apply_vbal_inv (bump, fieldset)
 Vertical balance application, inverse. More...
 
subroutine bump_apply_vbal_ad (bump, fieldset)
 Vertical balance application, adjoint. More...
 
subroutine bump_apply_vbal_inv_ad (bump, fieldset)
 Vertical balance application, inverse adjoint. More...
 
subroutine bump_apply_stddev (bump, fieldset)
 Standard-deviation application. More...
 
subroutine bump_apply_stddev_inv (bump, fieldset)
 Standard-deviation application, inverse. More...
 
subroutine bump_apply_nicas (bump, fieldset)
 NICAS application. More...
 
subroutine bump_apply_nicas_deprecated_atlas (bump, afieldset)
 NICAS application (deprecated. More...
 
subroutine bump_get_cv_size (bump, n)
 Get control variable size. More...
 
subroutine bump_apply_nicas_sqrt (bump, pcv, fieldset)
 NICAS square-root application. More...
 
subroutine bump_apply_nicas_sqrt_deprecated_atlas (bump, pcv, afieldset)
 NICAS square-root application (deprecated) More...
 
subroutine bump_apply_nicas_sqrt_ad (bump, fieldset, pcv)
 NICAS square-root adjoint application. More...
 
subroutine bump_randomize (bump, fieldset)
 NICAS randomization. More...
 
subroutine bump_apply_obsop (bump, fieldset, obs)
 Observation operator application. More...
 
subroutine bump_apply_obsop_deprecated_atlas (bump, afieldset, obs)
 Observation operator application (deprecated) More...
 
subroutine bump_apply_obsop_ad (bump, obs, fieldset)
 Observation operator adjoint application. More...
 
subroutine bump_apply_obsop_ad_deprecated_atlas (bump, obs, afieldset)
 Observation operator adjoint application (deprecated) More...
 
subroutine bump_get_parameter (bump, param, fieldset)
 Get a parameter. More...
 
subroutine bump_copy_to_field (bump, param, ib, fld_mga)
 Copy to field. More...
 
subroutine bump_test_get_parameter (bump)
 Test get_parameter. More...
 
subroutine bump_set_parameter (bump, param, fieldset)
 Set a parameter. More...
 
subroutine bump_set_parameter_deprecated_atlas (bump, param, afieldset)
 Set a parameter (deprecated) More...
 
subroutine bump_copy_from_field (bump, param, ib, fld_mga)
 Copy from field. More...
 
subroutine bump_test_set_parameter (bump)
 Test set_parameter. More...
 
subroutine bump_test_apply_interfaces (bump)
 Test BUMP apply interfaces. More...
 
subroutine bump_partial_dealloc (bump)
 Release memory (partial) More...
 
subroutine bump_dealloc (bump)
 Release memory (full) More...
 
subroutine dummy (bump)
 Dummy finalization. More...
 

Variables

integer, parameter dmsvali = -999
 
real(kind_real), parameter dmsvalr = -999.0
 
logical copy_ensemble = .false.
 
type(registry_t), public bump_registry
 

Detailed Description

BUMP derived type.

Function/Subroutine Documentation

◆ bump_add_member()

subroutine type_bump::bump_add_member ( class(bump_type), intent(inout)  bump,
type(fieldset_type), intent(in)  fieldset,
integer, intent(in)  ie,
integer, intent(in)  iens 
)
private

Add member into bumpens[1,2].

Parameters
[in]ieMember index
[in]iensEnsemble number

Definition at line 585 of file type_bump.F90.

◆ bump_apply_nicas()

subroutine type_bump::bump_apply_nicas ( class(bump_type), intent(inout)  bump,
type(fieldset_type), intent(inout)  fieldset 
)
private

NICAS application.

Definition at line 821 of file type_bump.F90.

Here is the caller graph for this function:

◆ bump_apply_nicas_deprecated_atlas()

subroutine type_bump::bump_apply_nicas_deprecated_atlas ( class(bump_type), intent(inout)  bump,
type(atlas_fieldset), intent(inout)  afieldset 
)
private

NICAS application (deprecated.

Parameters
[in,out]afieldsetATLAS fieldset

Definition at line 855 of file type_bump.F90.

Here is the caller graph for this function:

◆ bump_apply_nicas_sqrt()

subroutine type_bump::bump_apply_nicas_sqrt ( class(bump_type), intent(inout)  bump,
real(kind_real), dimension(:), intent(in)  pcv,
type(fieldset_type), intent(inout)  fieldset 
)
private

NICAS square-root application.

Parameters
[in]pcvPacked control variable

Definition at line 901 of file type_bump.F90.

Here is the caller graph for this function:

◆ bump_apply_nicas_sqrt_ad()

subroutine type_bump::bump_apply_nicas_sqrt_ad ( class(bump_type), intent(inout)  bump,
type(fieldset_type), intent(inout)  fieldset,
real(kind_real), dimension(:), intent(inout)  pcv 
)
private

NICAS square-root adjoint application.

Parameters
[in,out]pcvPacked control variable

Definition at line 966 of file type_bump.F90.

◆ bump_apply_nicas_sqrt_deprecated_atlas()

subroutine type_bump::bump_apply_nicas_sqrt_deprecated_atlas ( class(bump_type), intent(inout)  bump,
real(kind_real), dimension(:), intent(in)  pcv,
type(atlas_fieldset), intent(inout)  afieldset 
)
private

NICAS square-root application (deprecated)

Parameters
[in]pcvPacked control variable
[in,out]afieldsetATLAS Fieldset

Definition at line 942 of file type_bump.F90.

Here is the caller graph for this function:

◆ bump_apply_obsop()

subroutine type_bump::bump_apply_obsop ( class(bump_type), intent(inout)  bump,
type(fieldset_type), intent(inout)  fieldset,
real(kind_real), dimension(bump%obsop%nobsa,bump%geom%nl0), intent(out)  obs 
)
private

Observation operator application.

Parameters
[out]obsObservations columns

Definition at line 1035 of file type_bump.F90.

Here is the caller graph for this function:

◆ bump_apply_obsop_ad()

subroutine type_bump::bump_apply_obsop_ad ( class(bump_type), intent(inout)  bump,
real(kind_real), dimension(bump%obsop%nobsa,bump%geom%nl0), intent(in)  obs,
type(fieldset_type), intent(inout)  fieldset 
)
private

Observation operator adjoint application.

Parameters
[in]obsObservations columns

Definition at line 1091 of file type_bump.F90.

Here is the caller graph for this function:

◆ bump_apply_obsop_ad_deprecated_atlas()

subroutine type_bump::bump_apply_obsop_ad_deprecated_atlas ( class(bump_type), intent(inout)  bump,
real(kind_real), dimension(bump%obsop%nobsa,bump%geom%nl0), intent(in)  obs,
type(atlas_fieldset), intent(inout)  afieldset 
)
private

Observation operator adjoint application (deprecated)

Parameters
[in]obsObservations columns
[in,out]afieldsetATLAS fieldset

Definition at line 1123 of file type_bump.F90.

Here is the caller graph for this function:

◆ bump_apply_obsop_deprecated_atlas()

subroutine type_bump::bump_apply_obsop_deprecated_atlas ( class(bump_type), intent(inout)  bump,
type(atlas_fieldset), intent(inout)  afieldset,
real(kind_real), dimension(bump%obsop%nobsa,bump%geom%nl0), intent(out)  obs 
)
private

Observation operator application (deprecated)

Parameters
[in,out]afieldsetATLAS fieldset
[out]obsObservations columns

Definition at line 1067 of file type_bump.F90.

Here is the caller graph for this function:

◆ bump_apply_stddev()

subroutine type_bump::bump_apply_stddev ( class(bump_type), intent(inout)  bump,
type(fieldset_type), intent(inout)  fieldset 
)
private

Standard-deviation application.

Definition at line 761 of file type_bump.F90.

◆ bump_apply_stddev_inv()

subroutine type_bump::bump_apply_stddev_inv ( class(bump_type), intent(inout)  bump,
type(fieldset_type), intent(inout)  fieldset 
)
private

Standard-deviation application, inverse.

Definition at line 791 of file type_bump.F90.

◆ bump_apply_vbal()

subroutine type_bump::bump_apply_vbal ( class(bump_type), intent(inout)  bump,
type(fieldset_type), intent(inout)  fieldset 
)
private

Vertical balance application.

Definition at line 641 of file type_bump.F90.

◆ bump_apply_vbal_ad()

subroutine type_bump::bump_apply_vbal_ad ( class(bump_type), intent(inout)  bump,
type(fieldset_type), intent(inout)  fieldset 
)
private

Vertical balance application, adjoint.

Definition at line 701 of file type_bump.F90.

◆ bump_apply_vbal_inv()

subroutine type_bump::bump_apply_vbal_inv ( class(bump_type), intent(inout)  bump,
type(fieldset_type), intent(inout)  fieldset 
)
private

Vertical balance application, inverse.

Definition at line 671 of file type_bump.F90.

◆ bump_apply_vbal_inv_ad()

subroutine type_bump::bump_apply_vbal_inv_ad ( class(bump_type), intent(inout)  bump,
type(fieldset_type), intent(inout)  fieldset 
)
private

Vertical balance application, inverse adjoint.

Definition at line 731 of file type_bump.F90.

◆ bump_copy_from_field()

subroutine type_bump::bump_copy_from_field ( class(bump_type), intent(inout)  bump,
character(len=*), intent(in)  param,
integer, intent(in)  ib,
real(kind_real), dimension(bump%geom%nmga,bump%geom%nl0), intent(in)  fld_mga 
)
private

Copy from field.

Parameters
[in]paramParameter
[in]ibBlock index
[in]fld_mgaField

Definition at line 1527 of file type_bump.F90.

◆ bump_copy_to_field()

subroutine type_bump::bump_copy_to_field ( class(bump_type), intent(inout)  bump,
character(len=*), intent(in)  param,
integer, intent(in)  ib,
real(kind_real), dimension(bump%geom%nmga,bump%geom%nl0), intent(out)  fld_mga 
)
private

Copy to field.

Parameters
[in]paramParameter
[in]ibBlock index
[out]fld_mgaField

Definition at line 1209 of file type_bump.F90.

Here is the call graph for this function:

◆ bump_create()

subroutine type_bump::bump_create ( class(bump_type), intent(inout)  bump,
type(fckit_mpi_comm), intent(in)  comm,
type(atlas_functionspace), intent(in)  afunctionspace,
type(fieldset_type), intent(in)  fieldset,
type(fckit_configuration), intent(in)  conf,
type(fckit_configuration), intent(in)  grid 
)
private

Create.

Parameters
[in]commFCKIT MPI communicator wrapper
[in]afunctionspaceATLAS function space
[in]fieldsetFieldset containing geometry elements
[in]confFCKIT configuration
[in]gridFCKIT grid configuration

Definition at line 125 of file type_bump.F90.

Here is the caller graph for this function:

◆ bump_create_deprecated_atlas()

subroutine type_bump::bump_create_deprecated_atlas ( class(bump_type), intent(inout)  bump,
type(fckit_mpi_comm), intent(in)  comm,
type(atlas_functionspace), intent(in)  afunctionspace,
type(atlas_fieldset), intent(in)  afieldset,
type(fckit_configuration), intent(in)  conf,
type(fckit_configuration), intent(in)  grid 
)
private

Create (deprecated)

Parameters
[in]commFCKIT MPI communicator wrapper
[in]afunctionspaceATLAS function space
[in]afieldsetATLAS fieldset containing geometry elements
[in]confFCKIT configuration
[in]gridFCKIT grid configuration

Definition at line 169 of file type_bump.F90.

Here is the caller graph for this function:

◆ bump_dealloc()

subroutine type_bump::bump_dealloc ( class(bump_type), intent(inout)  bump)
private

Release memory (full)

Definition at line 1874 of file type_bump.F90.

◆ bump_get_cv_size()

subroutine type_bump::bump_get_cv_size ( class(bump_type), intent(inout)  bump,
integer, intent(out)  n 
)
private

Get control variable size.

Parameters
[out]nControl variable size

Definition at line 878 of file type_bump.F90.

◆ bump_get_parameter()

subroutine type_bump::bump_get_parameter ( class(bump_type), intent(inout)  bump,
character(len=*), intent(in)  param,
type(fieldset_type), intent(inout)  fieldset 
)
private

Get a parameter.

Parameters
[in]paramParameter

Definition at line 1147 of file type_bump.F90.

◆ bump_partial_dealloc()

subroutine type_bump::bump_partial_dealloc ( class(bump_type), intent(inout)  bump)
private

Release memory (partial)

Definition at line 1847 of file type_bump.F90.

◆ bump_randomize()

subroutine type_bump::bump_randomize ( class(bump_type), intent(inout)  bump,
type(fieldset_type), intent(inout)  fieldset 
)
private

NICAS randomization.

Definition at line 1004 of file type_bump.F90.

◆ bump_run_drivers()

subroutine type_bump::bump_run_drivers ( class(bump_type), intent(inout)  bump)
private

Run drivers.

Definition at line 357 of file type_bump.F90.

◆ bump_set_parameter()

subroutine type_bump::bump_set_parameter ( class(bump_type), intent(inout)  bump,
character(len=*), intent(in)  param,
type(fieldset_type), intent(inout)  fieldset 
)
private

Set a parameter.

Parameters
[in]paramParameter

Definition at line 1442 of file type_bump.F90.

Here is the caller graph for this function:

◆ bump_set_parameter_deprecated_atlas()

subroutine type_bump::bump_set_parameter_deprecated_atlas ( class(bump_type), intent(inout)  bump,
character(len=*), intent(in)  param,
type(atlas_fieldset), intent(inout)  afieldset 
)
private

Set a parameter (deprecated)

Parameters
[in]paramParameter
[in,out]afieldsetATLAS fieldset

Definition at line 1503 of file type_bump.F90.

Here is the caller graph for this function:

◆ bump_setup()

subroutine type_bump::bump_setup ( class(bump_type), intent(inout)  bump,
type(fckit_mpi_comm), intent(in)  f_comm,
type(atlas_functionspace), intent(in)  afunctionspace,
type(fieldset_type), intent(in), optional  fieldset,
integer, intent(in), optional  nobs,
real(kind_real), dimension(:), intent(in), optional  lonobs,
real(kind_real), dimension(:), intent(in), optional  latobs,
integer, intent(in), optional  lunit,
integer, intent(in), optional  msvali,
real(kind_real), intent(in), optional  msvalr 
)
private

Setup.

Parameters
[in]f_commFCKIT MPI communicator wrapper
[in]afunctionspaceATLAS functionspace
[in]fieldsetFieldset containing geometry elements
[in]nobsNumber of observations
[in]lonobsObservations longitude (in degrees)
[in]latobsObservations latitude (in degrees)
[in]lunitListing unit
[in]msvaliMissing value for integers
[in]msvalrMissing value for reals

Definition at line 196 of file type_bump.F90.

◆ bump_test_apply_interfaces()

subroutine type_bump::bump_test_apply_interfaces ( class(bump_type), intent(inout)  bump)
private

Test BUMP apply interfaces.

Definition at line 1701 of file type_bump.F90.

◆ bump_test_get_parameter()

subroutine type_bump::bump_test_get_parameter ( class(bump_type), intent(inout)  bump)
private

Test get_parameter.

Definition at line 1386 of file type_bump.F90.

◆ bump_test_set_parameter()

subroutine type_bump::bump_test_set_parameter ( class(bump_type), intent(inout)  bump)
private

Test set_parameter.

Definition at line 1624 of file type_bump.F90.

◆ dummy()

subroutine type_bump::dummy ( type(bump_type), intent(inout)  bump)
private

Dummy finalization.

Definition at line 1902 of file type_bump.F90.

Here is the caller graph for this function:

Variable Documentation

◆ bump_registry

type(registry_t), public type_bump::bump_registry

Definition at line 112 of file type_bump.F90.

◆ copy_ensemble

logical type_bump::copy_ensemble = .false.

Definition at line 99 of file type_bump.F90.

◆ dmsvali

integer, parameter type_bump::dmsvali = -999

Definition at line 97 of file type_bump.F90.

◆ dmsvalr

real(kind_real), parameter type_bump::dmsvalr = -999.0

Definition at line 98 of file type_bump.F90.