Go to the documentation of this file.
20 use missing_values_mod
21 use fckit_log_module,
only : fckit_log
42 real(kind_real),
intent(inout) :: hofx(:)
43 type(c_ptr),
value,
intent(in) :: obss
46 character(len=*),
parameter :: myname_=
"ufo_gnssro_bndropp1d_simobs"
49 character(max_string) :: err_msg
50 integer :: nlev, nobs, iobs,nvprof, obss_nobs
51 type(
ufo_geoval),
pointer :: t, q, prs, gph, gph_sfc
52 real(kind_real),
allocatable :: obslat(:), obslon(:), obsimpp(:), obslocr(:), obsgeoid(:)
54 write(err_msg,*)
"TRACE: ufo_gnssro_bndropp1d_simobs_stub: begin"
55 call fckit_log%info(err_msg)
58 if (geovals%nlocs /=
size(hofx))
then
59 write(err_msg,*) myname_,
' error: nlocs inconsistent!'
60 call abor1_ftn(err_msg)
73 nobs = obsspace_get_nlocs(obss)
76 allocate(obslon(nobs))
77 allocate(obslat(nobs))
78 allocate(obsimpp(nobs))
79 allocate(obslocr(nobs))
80 allocate(obsgeoid(nobs))
82 call obsspace_get_db(obss,
"MetaData",
"longitude", obslon)
83 call obsspace_get_db(obss,
"MetaData",
"latitude", obslat)
84 call obsspace_get_db(obss,
"MetaData",
"impact_parameter", obsimpp)
85 call obsspace_get_db(obss,
"MetaData",
"earth_radius_of_curvature", obslocr)
86 call obsspace_get_db(obss,
"MetaData",
"geoid_height_above_reference_ellipsoid", obsgeoid)
94 write(err_msg,*)
"TRACE: ufo_gnssro_bndropp1d_simobs_stub: completed"
95 call fckit_log%info(err_msg)
integer, parameter max_string
Fortran module to prepare for Lagrange polynomial interpolation. based on GSI: lagmod....
Fortran derived type for gnssro trajectory.
Fortran module for gnssro bending angle ropp1d forward operator following the ROPP (2018 Aug) impleme...
subroutine, public lag_interp_smthweights(x, xt, aq, bq, w, dw, n)
Fortran module to perform linear interpolation.
subroutine ufo_gnssro_bndropp1d_simobs(self, geovals, hofx, obss)
character(len=maxvarlen), parameter, public var_sfc_geomz
subroutine, public lag_interp_const(q, x, n)
character(len=maxvarlen), parameter, public var_z
subroutine, public ufo_geovals_get_var(self, varname, geoval)
character(len=maxvarlen), parameter, public var_q
character(len=maxvarlen), parameter, public var_ts
type to hold interpolated fields required by the obs operators
type to hold interpolated field for one variable, one observation
character(len=maxvarlen), parameter, public var_prs
type(registry_t), public ufo_geovals_registry
Linked list interface - defines registry_t type.