UFO
ufo_rttovonedvarcheck_minimize_utils_mod Module Reference

Fortran module containing subroutines used by both minimizers. More...

Functions/Subroutines

subroutine, public ufo_rttovonedvarcheck_geovals2profvec (geovals, profindex, ob, prof_x)
 Copy geovals data (and ob) to profile. More...
 
subroutine, public ufo_rttovonedvarcheck_profvec2geovals (geovals, profindex, ob, prof_x, UseQtsplitRain)
 Copy profile data to geovals (and ob). More...
 
subroutine, public ufo_rttovonedvarcheck_check_geovals (self, geovals, profindex, surface_type)
 Check the geovals are ready for the first iteration. More...
 
subroutine, public ufo_rttovonedvarcheck_costfunction (DeltaProf, b_inv, DeltaObs, r_matrix, Jcost)
 Calculate the cost function. More...
 
subroutine, public ufo_rttovonedvarcheck_checkiteration (self, geovals, profindex, profile, OutOfRange)
 Constrain profile humidity and check temperature values are okay. More...
 
subroutine, public ufo_rttovonedvarcheck_checkcloudyiteration (geovals, profindex, nlevels_1dvar, OutOfRange, OutLWP)
 Check cloud during iteration. More...
 
subroutine, public ufo_rttovonedvarcheck_printiterinfo (yob, hofx, channels, guessprofile, backprofile, diffprofile, binv, hmatrix)
 Print detailed information for each iteration for diagnostics. More...
 
subroutine, public ufo_rttovonedvarcheck_hofxdiags_levels (retrieval_vars, nlevels, ret_nlevs)
 

Variables

character(len=max_string) message
 

Detailed Description

Fortran module containing subroutines used by both minimizers.

Function/Subroutine Documentation

◆ ufo_rttovonedvarcheck_check_geovals()

subroutine, public ufo_rttovonedvarcheck_minimize_utils_mod::ufo_rttovonedvarcheck_check_geovals ( type(ufo_rttovonedvarcheck), intent(in)  self,
type(ufo_geovals), intent(inout)  geovals,
type(ufo_rttovonedvarcheck_profindex), intent(in)  profindex,
integer, intent(in)  surface_type 
)

Check the geovals are ready for the first iteration.

Heritage: Ops_SatRad_SetUpRTprofBg_RTTOV12.f90

Check the geovals profile is ready for the first iteration. The only check included at the moment if the first calculation for q total.

Author
Met Office
Date
09/06/2020: Created
Parameters
[in,out]geovalsmodel data at obs location
[in]profindexindex array for x vector
[in]surface_typesurface type for cold surface check

Definition at line 464 of file ufo_rttovonedvarcheck_minimize_utils_mod.f90.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ ufo_rttovonedvarcheck_checkcloudyiteration()

subroutine, public ufo_rttovonedvarcheck_minimize_utils_mod::ufo_rttovonedvarcheck_checkcloudyiteration ( type(ufo_geovals), intent(in)  geovals,
type(ufo_rttovonedvarcheck_profindex), intent(in)  profindex,
integer, intent(in)  nlevels_1dvar,
logical, intent(out)  OutOfRange,
real(kind_real), intent(out), optional  OutLWP 
)

Check cloud during iteration.

Heritage: Ops_SatRad_CheckCloudyIteration.f90

For a 1dvar profile using cloud variables, check that the liquid water path and the ice water path are sensible. if they are beyond sensible values stop 1dvar and reject profile

Author
Met Office
Date
09/06/2020: Created

Definition at line 1053 of file ufo_rttovonedvarcheck_minimize_utils_mod.f90.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ ufo_rttovonedvarcheck_checkiteration()

subroutine, public ufo_rttovonedvarcheck_minimize_utils_mod::ufo_rttovonedvarcheck_checkiteration ( type(ufo_rttovonedvarcheck), intent(in)  self,
type(ufo_geovals), intent(in)  geovals,
type(ufo_rttovonedvarcheck_profindex), intent(in)  profindex,
real(kind_real), dimension(:), intent(inout)  profile,
logical, intent(out)  OutOfRange 
)

Constrain profile humidity and check temperature values are okay.

Heritage: Ops_SatRad_CheckIteration.f90

Check humidity and temperature profiles.

Author
Met Office
Date
09/06/2020: Created

Definition at line 790 of file ufo_rttovonedvarcheck_minimize_utils_mod.f90.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ ufo_rttovonedvarcheck_costfunction()

subroutine, public ufo_rttovonedvarcheck_minimize_utils_mod::ufo_rttovonedvarcheck_costfunction ( real(kind_real), dimension(:), intent(in)  DeltaProf,
real(kind_real), dimension(:,:), intent(in)  b_inv,
real(kind_real), dimension(:), intent(in)  DeltaObs,
type(ufo_rttovonedvarcheck_rsubmatrix), intent(in)  r_matrix,
real(kind_real), dimension(3), intent(out)  Jcost 
)

Calculate the cost function.

Heritage: Ops_SatRad_CostFunction.f90

Calculate the cost function from the input delta's and error covariances.

Author
Met Office
Date
09/06/2020: Created

Definition at line 737 of file ufo_rttovonedvarcheck_minimize_utils_mod.f90.

Here is the caller graph for this function:

◆ ufo_rttovonedvarcheck_geovals2profvec()

subroutine, public ufo_rttovonedvarcheck_minimize_utils_mod::ufo_rttovonedvarcheck_geovals2profvec ( type(ufo_geovals), intent(in)  geovals,
type(ufo_rttovonedvarcheck_profindex), intent(in)  profindex,
type(ufo_rttovonedvarcheck_ob), intent(in)  ob,
real(kind_real), dimension(:), intent(out)  prof_x 
)

Copy geovals data (and ob) to profile.

Heritage: Ops_SatRad_RTprof2Vec_RTTOV12.f90

Convert profile data from the GeoVaLs format (and ob) into the minimisation format vector profile. We only copy fields that are being retrieved, as indicated by the profindex structure.

Author
Met Office
Date
09/06/2020: Created
Parameters
[in]geovalsmodel data at obs location
[in]profindexindex array for x vector
[in]obsatellite metadata
[out]prof_xx vector

Definition at line 54 of file ufo_rttovonedvarcheck_minimize_utils_mod.f90.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ ufo_rttovonedvarcheck_hofxdiags_levels()

subroutine, public ufo_rttovonedvarcheck_minimize_utils_mod::ufo_rttovonedvarcheck_hofxdiags_levels ( type(oops_variables), intent(in)  retrieval_vars,
integer, intent(in)  nlevels,
integer(c_size_t), dimension(:), intent(inout)  ret_nlevs 
)
Parameters
[in]retrieval_varsretrieval variables for 1D-Var
[in,out]ret_nlevsnumber of levels for each retreival val

Definition at line 1241 of file ufo_rttovonedvarcheck_minimize_utils_mod.f90.

Here is the caller graph for this function:

◆ ufo_rttovonedvarcheck_printiterinfo()

subroutine, public ufo_rttovonedvarcheck_minimize_utils_mod::ufo_rttovonedvarcheck_printiterinfo ( real(kind_real), dimension(:), intent(in)  yob,
real(kind_real), dimension(:), intent(in)  hofx,
integer, dimension(:), intent(in)  channels,
real(kind_real), dimension(:), intent(in)  guessprofile,
real(kind_real), dimension(:), intent(in)  backprofile,
real(kind_real), dimension(:), intent(in)  diffprofile,
real(kind_real), dimension(:,:), intent(in)  binv,
real(kind_real), dimension(:,:), intent(in)  hmatrix 
)

Print detailed information for each iteration for diagnostics.

Author
Met Office
Date
29/03/2021: Created

Definition at line 1179 of file ufo_rttovonedvarcheck_minimize_utils_mod.f90.

Here is the caller graph for this function:

◆ ufo_rttovonedvarcheck_profvec2geovals()

subroutine, public ufo_rttovonedvarcheck_minimize_utils_mod::ufo_rttovonedvarcheck_profvec2geovals ( type(ufo_geovals), intent(inout)  geovals,
type(ufo_rttovonedvarcheck_profindex), intent(in)  profindex,
type(ufo_rttovonedvarcheck_ob), intent(inout)  ob,
real(kind_real), dimension(:), intent(in)  prof_x,
logical, intent(in)  UseQtsplitRain 
)

Copy profile data to geovals (and ob).

Heritage: Ops_SatRad_Vec2RTprof_RTTOV12.f90

Convert profile data to the GeoVaLs (and ob) format. We only copy fields that are being retrieved, as indicated by the profindex structure.

Author
Met Office
Date
09/06/2020: Created
Parameters
[in,out]geovalsmodel data at obs location
[in]profindexindex array for x vector
[in,out]obsatellite metadata
[in]prof_xx vector
[in]useqtsplitrainflag to choose whether to split rain in qt

Definition at line 219 of file ufo_rttovonedvarcheck_minimize_utils_mod.f90.

Here is the call graph for this function:
Here is the caller graph for this function:

Variable Documentation

◆ message

character(len=max_string) ufo_rttovonedvarcheck_minimize_utils_mod::message
private

Definition at line 37 of file ufo_rttovonedvarcheck_minimize_utils_mod.f90.