gps_mod¶
Dependency Diagrams:
Description
MODULE gps_mod (prefix=’gps’ category=’5. Observation operators’)
- Purpose
Code related to GPS-RO and ground-based GPS observation operators.
Quick access
- Types
- Variables
gps_bgckband
,gps_gb_dzmax
,gps_gb_dzmin
,gps_gb_irefopt
,gps_gb_iztdop
,gps_gb_l1obs
,gps_gb_lassmet
,gps_gb_lbevis
,gps_gb_llblmet
,gps_gb_ltestop
,gps_gb_maxdata
,gps_gb_numztd
,gps_gb_ysferrwgt
,gps_gb_yzderrwgt
,gps_gb_yztderr
,gps_hsfmin
,gps_htpmax
,gps_htpmaxer
,gps_level_ro
,gps_level_ro_bnd
,gps_level_ro_bndandref
,gps_level_ro_ref
,gps_ncvmx
,gps_numroprofiles
,gps_p_md
,gps_p_mw
,gps_p_wa
,gps_p_wb
,gps_ro_maxprfsize
,gps_robnorm
,gps_roerror
,gps_ronsigma
,gps_surfmin
,gps_vro_indexprf
,gps_wgps
,gps_ztd_index
- Routines
gps_bndopv1()
,gps_geopotential()
,gps_gravityalt()
,gps_gravitysrf()
,gps_iprofile_from_index()
,gps_iztd_from_index()
,gps_pw()
,gps_refopv()
,gps_setupgb()
,gps_setupro()
,gps_struct1sw()
,gps_struct1sw_v2()
,gps_structztd()
,gps_structztd_v2()
,gps_ztdopv()
,gpsbend()
,gpsbend1()
,gpsbendlayer()
,gpsbendunit()
,gpsbndopv()
,gpsbvf()
,gpsbvfopv()
,gpscmp()
,gpscompressibility()
,gpsden()
,gpsdiffacos()
,gpsdiffasfd()
,gpsdiffasff()
,gpsdiffatan()
,gpsdiffcos()
,gpsdiffdvdf()
,gpsdiffdvfd()
,gpsdiffdvff()
,gpsdiffdvfi()
,gpsdiffdvif()
,gpsdifferf()
,gpsdiffexp()
,gpsdifflog()
,gpsdiffmldf()
,gpsdiffmlfd()
,gpsdiffmlff()
,gpsdiffmlfi()
,gpsdiffmlif()
,gpsdiffpwdf()
,gpsdiffpwfd()
,gpsdiffpwff()
,gpsdiffpwfi()
,gpsdiffpwif()
,gpsdiffsbdf()
,gpsdiffsbfd()
,gpsdiffsbff()
,gpsdiffsbfi()
,gpsdiffsbif()
,gpsdiffsmdf()
,gpsdiffsmfd()
,gpsdiffsmff()
,gpsdiffsmfi()
,gpsdiffsmif()
,gpsdiffsqr()
,gpsdifftan()
,gpshgtopv()
,gpsradii()
,gpsro_eotvos_dh()
,gpstemopv()
,gpswmropv()
Needed modules
midasmpi_mod
: MODULE midasMpi_mod (prefix=’mmpi’ category=’8. Low-level utilities and constants’)
utilities_mod
: MODULE utilities_mod (prefix=’utl’ category=’8. Low-level utilities and constants’)
mathphysconstants_mod
: MODULE mathPhysConstants_mod (prefix=’mpc’ category=’8. Low-level utilities and constants’)
earthconstants_mod
: MODULE earthConstants_mod (prefix=’ec’ category=’8. Low-level utilities and constants’)Types
- type gps_mod/gps_profile¶
- Type fields
% ast (ngpssize+ngpsxlow) [gps_diff ]
% bbst [logical ]
% bst (ngpssize+ngpsxlow) [gps_diff ]
% dst (ngpssize) [gps_diff ]
% geoid [real ]
% gst (ngpssize) [gps_diff ]
% ngpslev [integer ]
% p0 [gps_diff ]
% pst (ngpssize) [gps_diff ]
% qst (ngpssize) [gps_diff ]
% rad [real ]
% radm [real ]
% radn [real ]
% razm [real ]
% rlat [real ]
% rlon [real ]
% rmt [real ]
% rst (ngpssize) [gps_diff ]
% tst (ngpssize) [gps_diff ]
- type gps_mod/gps_profilezd¶
- Type fields
% bpst [logical ]
% gst (ngpssize) [gps_diff ]
% ngpslev [integer ]
% p0 [gps_diff ]
% pst (ngpssize) [gps_diff ]
% qst (ngpssize) [gps_diff ]
% rlat [real ]
% rlon [real ]
% rmt [real ]
% rst (ngpssize) [gps_diff ]
% tst (ngpssize) [gps_diff ]
% ztd (ngpssize) [gps_diff ]
Variables
- gps_mod/gps_bgckband [real,public]¶
- gps_mod/gps_gb_dzmax [real,public]¶
need to give it a default value here in case setup not called
- gps_mod/gps_gb_dzmin [real,public]¶
- gps_mod/gps_gb_irefopt [integer,public]¶
- gps_mod/gps_gb_iztdop [integer,public]¶
- gps_mod/gps_gb_l1obs [logical,public]¶
- gps_mod/gps_gb_lassmet [logical,public]¶
- gps_mod/gps_gb_lbevis [logical,public]¶
- gps_mod/gps_gb_llblmet [logical,public]¶
- gps_mod/gps_gb_ltestop [logical,public]¶
- gps_mod/gps_gb_maxdata [integer,parameter/public]¶
(max_gps_sites) * (max_num_obs in 6h)
- gps_mod/gps_gb_numztd [integer,public]¶
number of ZTD data to be assimilated
- gps_mod/gps_gb_ysferrwgt [real,public]¶
- gps_mod/gps_gb_yzderrwgt [real,public]¶
- gps_mod/gps_gb_yztderr [real,public]¶
- gps_mod/gps_hsfmin [real,public]¶
- gps_mod/gps_htpmax [real,public]¶
- gps_mod/gps_htpmaxer [real,public]¶
- gps_mod/gps_level_ro [integer,public]¶
- gps_mod/gps_level_ro_bnd [integer,public/parameter]¶
- gps_mod/gps_level_ro_bndandref [integer,public/parameter]¶
- gps_mod/gps_level_ro_ref [integer,public/parameter]¶
- gps_mod/gps_ncvmx [integer,parameter/public]¶
- gps_mod/gps_numroprofiles [integer,public]¶
- gps_mod/gps_p_md [real,parameter/public]¶
From Aparicio(2011)
- gps_mod/gps_p_mw [real,parameter/public]¶
From Aparicio(2011)
- gps_mod/gps_p_wa [real,parameter/public]¶
- gps_mod/gps_p_wb [real,parameter/public]¶
- gps_mod/gps_ro_maxprfsize [integer,public]¶
- gps_mod/gps_robnorm [logical,public]¶
- gps_mod/gps_roerror [character,public]¶
- gps_mod/gps_ronsigma [real,public]¶
- gps_mod/gps_surfmin [real,public]¶
- gps_mod/gps_vro_indexprf (*,*) [integer,allocatable/public]¶
index for each profile
- gps_mod/gps_wgps (1024,4) [real,public]¶
- gps_mod/gps_ztd_index (*) [integer,allocatable/public]¶
INDEX_HEADER in CMA (ObsSpace) for each ZTD observation
Subroutines and functions
- function gps_mod/gps_gravitysrf(slat)¶
- Purpose
Normal gravity on ellipsoidal surface
- Arguments
slat [real ,in] :: sin(Latitude)
- Return
gps_gravitysrf [real ] :: Normal gravity (m/s2)
- Called from
gps_gravityalt()
,gps_struct1sw()
,gps_structztd()
,oer_seterrgpsro()
,setfgedif()
- function gps_mod/gps_gravityalt(slat, altitude)¶
- Purpose
Normal gravity above the ellipsoidal surface
- Arguments
slat [real ,in] :: sin(Latitude)
altitude [real ,in] :: Altitude (m)
- Return
gps_gravityalt [real ] :: Normal gravity (m/s2)
- Called from
gps_geopotential()
,gps_struct1sw()
,gps_structztd()
,gps_structztd_v2()
,gpsbvf()
,gps_ztdopv()
,gps_pw()
- Call to
- function gps_mod/gps_geopotential(latitude, altitude)¶
- Purpose
Geopotential energy at a given point. Result is based on the WGS84 approximate expression for the gravity acceleration as a function of latitude and altitude, integrated with the trapezoidal rule.
- Arguments
latitude [real ,in] :: (rad)
altitude [real ,in] ::
- Return
gps_geopotential [real ] :: Geopotential (m2/s2)
- Call to
- subroutine gps_mod/gpsradii(latitude, radn, radm)¶
- Arguments
latitude [real ,in]
radn [real ,out]
radm [real ,out]
- Called from
- subroutine gps_mod/gpsdiffasfd(gd1, d2)¶
- Arguments
gd1 [gps_diff ,out]
d2 [real ,in]
- subroutine gps_mod/gpsdiffasff(gd1, gd2)¶
- Arguments
gd1 [gps_diff ,out]
gd2 [gps_diff ,in]
- function gps_mod/gpsdiffsmfd(gd1, d2)¶
- Arguments
gd1 [gps_diff ,in]
d2 [real ,in]
- Return
gpsdiffsmfd [gps_diff ]
- function gps_mod/gpsdiffsmdf(d1, gd2)¶
- Arguments
d1 [real ,in]
gd2 [gps_diff ,in]
- Return
gpsdiffsmdf [gps_diff ]
- function gps_mod/gpsdiffsmfi(gd1, i2)¶
- Arguments
gd1 [gps_diff ,in]
i2 [integer ,in]
- Return
gpsdiffsmfi [gps_diff ]
- function gps_mod/gpsdiffsmif(i1, gd2)¶
- Arguments
i1 [integer ,in]
gd2 [gps_diff ,in]
- Return
gpsdiffsmif [gps_diff ]
- function gps_mod/gpsdiffsmff(gd1, gd2)¶
- Arguments
gd1 [gps_diff ,in]
gd2 [gps_diff ,in]
- Return
gpsdiffsmff [gps_diff ]
- function gps_mod/gpsdiffsbfd(gd1, d2)¶
- Arguments
gd1 [gps_diff ,in]
d2 [real ,in]
- Return
gpsdiffsbfd [gps_diff ]
- function gps_mod/gpsdiffsbdf(d1, gd2)¶
- Arguments
d1 [real ,in]
gd2 [gps_diff ,in]
- Return
gpsdiffsbdf [gps_diff ]
- function gps_mod/gpsdiffsbfi(gd1, i2)¶
- Arguments
gd1 [gps_diff ,in]
i2 [integer ,in]
- Return
gpsdiffsbfi [gps_diff ]
- function gps_mod/gpsdiffsbif(i1, gd2)¶
- Arguments
i1 [integer ,in]
gd2 [gps_diff ,in]
- Return
gpsdiffsbif [gps_diff ]
- function gps_mod/gpsdiffsbff(gd1, gd2)¶
- Arguments
gd1 [gps_diff ,in]
gd2 [gps_diff ,in]
- Return
gpsdiffsbff [gps_diff ]
- function gps_mod/gpsdiffmlfd(gd1, d2)¶
- Arguments
gd1 [gps_diff ,in]
d2 [real ,in]
- Return
gpsdiffmlfd [gps_diff ]
- function gps_mod/gpsdiffmldf(d1, gd2)¶
- Arguments
d1 [real ,in]
gd2 [gps_diff ,in]
- Return
gpsdiffmldf [gps_diff ]
- function gps_mod/gpsdiffmlfi(gd1, i2)¶
- Arguments
gd1 [gps_diff ,in]
i2 [integer ,in]
- Return
gpsdiffmlfi [gps_diff ]
- function gps_mod/gpsdiffmlif(i1, gd2)¶
- Arguments
i1 [integer ,in]
gd2 [gps_diff ,in]
- Return
gpsdiffmlif [gps_diff ]
- function gps_mod/gpsdiffmlff(gd1, gd2)¶
- Arguments
gd1 [gps_diff ,in]
gd2 [gps_diff ,in]
- Return
gpsdiffmlff [gps_diff ]
- function gps_mod/gpsdiffdvfd(gd1, d2)¶
- Arguments
gd1 [gps_diff ,in]
d2 [real ,in]
- Return
gpsdiffdvfd [gps_diff ]
- function gps_mod/gpsdiffdvdf(d1, gd2)¶
- Arguments
d1 [real ,in]
gd2 [gps_diff ,in]
- Return
gpsdiffdvdf [gps_diff ]
- function gps_mod/gpsdiffdvfi(gd1, i2)¶
- Arguments
gd1 [gps_diff ,in]
i2 [integer ,in]
- Return
gpsdiffdvfi [gps_diff ]
- function gps_mod/gpsdiffdvif(i1, gd2)¶
- Arguments
i1 [integer ,in]
gd2 [gps_diff ,in]
- Return
gpsdiffdvif [gps_diff ]
- function gps_mod/gpsdiffdvff(gd1, gd2)¶
- Arguments
gd1 [gps_diff ,in]
gd2 [gps_diff ,in]
- Return
gpsdiffdvff [gps_diff ]
- function gps_mod/gpsdiffpwfd(gd1, d2)¶
- Arguments
gd1 [gps_diff ,in]
d2 [real ,in]
- Return
gpsdiffpwfd [gps_diff ]
- function gps_mod/gpsdiffpwdf(d1, gd2)¶
- Arguments
d1 [real ,in]
gd2 [gps_diff ,in]
- Return
gpsdiffpwdf [gps_diff ]
- function gps_mod/gpsdiffpwfi(gd1, i2)¶
- Arguments
gd1 [gps_diff ,in]
i2 [integer ,in]
- Return
gpsdiffpwfi [gps_diff ]
- function gps_mod/gpsdiffpwif(i1, gd2)¶
- Arguments
i1 [integer ,in]
gd2 [gps_diff ,in]
- Return
gpsdiffpwif [gps_diff ]
- function gps_mod/gpsdiffpwff(gd1, gd2)¶
- Arguments
gd1 [gps_diff ,in]
gd2 [gps_diff ,in]
- Return
gpsdiffpwff [gps_diff ]
- function gps_mod/gpsdiffsqr(gd1)¶
- Arguments
gd1 [gps_diff ,in]
- Return
gpsdiffsqr [gps_diff ]
- function gps_mod/gpsdiffexp(gd1)¶
- Arguments
gd1 [gps_diff ,in]
- Return
gpsdiffexp [gps_diff ]
- function gps_mod/gpsdifflog(gd1)¶
- Arguments
gd1 [gps_diff ,in]
- Return
gpsdifflog [gps_diff ]
- function gps_mod/gpsdiffcos(gd1)¶
- Arguments
gd1 [gps_diff ,in]
- Return
gpsdiffcos [gps_diff ]
- function gps_mod/gpsdifftan(gd1)¶
- Arguments
gd1 [gps_diff ,in]
- Return
gpsdifftan [gps_diff ]
- function gps_mod/gpsdiffacos(gd1)¶
- Arguments
gd1 [gps_diff ,in]
- Return
gpsdiffacos [gps_diff ]
- function gps_mod/gpsdiffatan(gd1)¶
- Arguments
gd1 [gps_diff ,in]
- Return
gpsdiffatan [gps_diff ]
- function gps_mod/gpsdifferf(gd1)¶
- Arguments
gd1 [gps_diff ,in]
- Return
gpsdifferf [gps_diff ]
- subroutine gps_mod/gps_struct1sw(ngpslev, rlat, rlon, razm, rmt, rad, geoid, rp0, rpp, rdp, rtt, rhu, ruu, rvv, prf[, printheight_opt])¶
- Arguments
ngpslev [integer ,in]
rlat [real ,in]
rlon [real ,in]
razm [real ,in]
rmt [real ,in]
rad [real ,in]
geoid [real ,in]
rp0 [real ,in]
rpp (ngpssize) [real ,in]
rdp (ngpssize) [real ,in]
rtt (ngpssize) [real ,in]
rhu (ngpssize) [real ,in]
ruu (ngpssize) [real ,in]
rvv (ngpssize) [real ,in]
prf [gps_profile ,out]
- Options
printheight_opt [logical ,inout,]
- Called from
- Call to
gpsradii()
,gpscompressibility()
,gps_gravitysrf()
,gps_gravityalt()
- subroutine gps_mod/gps_struct1sw_v2(ngpslev, rlat, rlon, razm, rmt, rad, geoid, rp0, rpp, rtt, rhu, ruu, rvv, ralt, prf)¶
- Arguments
ngpslev [integer ,in]
rlat [real ,in]
rlon [real ,in]
razm [real ,in]
rmt [real ,in]
rad [real ,in]
geoid [real ,in]
rp0 [real ,in]
rpp (ngpssize) [real ,in]
rtt (ngpssize) [real ,in]
rhu (ngpssize) [real ,in]
ruu (ngpssize) [real ,in]
rvv (ngpssize) [real ,in]
ralt (ngpssize) [real ,in]
prf [gps_profile ,out]
- Called from
- Call to
- function gps_mod/gpscompressibility(p, t, q)¶
- Arguments
p [gps_diff ,in]
t [gps_diff ,in]
q [gps_diff ,in]
- Return
gpscompressibility [gps_diff ]
- Called from
calcheight_gsv_nl_vcode5xxx()
,calcpressure_gsv_nl_vcode2100x()
,calcpressure_col_nl_vcode2100x()
,calcheightcoeff_gsv()
,calcheightcoeff_col()
,gps_struct1sw()
,gps_struct1sw_v2()
- subroutine gps_mod/gpsro_eotvos_dh(ngpslev, rlat, ralt, ruu, rvv, ralt_e)¶
- Arguments
ngpslev [integer ,in,]
rlat [real ,in]
ralt (ngpslev) [real ,in]
ruu (ngpslev) [real ,in]
rvv (ngpslev) [real ,in]
ralt_e (ngpslev) [real ,out]
- Called from
- subroutine gps_mod/gps_structztd(ngpslev, rlat, rlon, rmt, rp0, rpp, rdp, rtt, rhu, lbevis, refopt, prf)¶
- Purpose
This subroutine fills GPS profiles of type gps_profilezd (for ZTD operator)
- Arguments
- Arguments
refopt [integer ,in] ::
=1 –> use conventional expression for refractivity N
=2 –> use new Aparicio & Laroche refractivity N
ngpslev [integer ,in] :: number of profile levels
rlat [real ,in] :: radians
rlon [real ,in] :: radians
rmt [real ,in] :: height (ASL) of model surface (m)
rp0 [real ,in] :: surface pressure (Pa)
rpp (ngpssize) [real ,in] :: pressure P at each level (Pa)
rdp (ngpssize) [real ,in] :: dP/dP0 at each level (Pa/Pa)
rtt (ngpssize) [real ,in] :: temperature T at each level (C)
rhu (ngpssize) [real ,in] :: q at each level
lbevis [logical ,in] :: determines which set of refractivity constants to use (Bevis or Rueger)
prf [gps_profilezd ,out]
- Call to
- subroutine gps_mod/gps_structztd_v2(ngpslev, rlat, rlon, rmt, rp0, rpp, rtt, rhu, ralt, lbevis, refopt, prf)¶
- Purpose
This subroutine fills GPS profiles of type gps_profilezd (for ZTD operator)
- Arguments
- Arguments
refopt [integer ,in] ::
1 –> use conventional expression for refractivity N
=2 –> use new Aparicio & Laroche refractivity N
ngpslev [integer ,in] :: number of profile levels
rlat [real ,in] :: radians
rlon [real ,in] :: radians
rmt [real ,in] :: height (ASL) of model surface (m)
rp0 [real ,in] :: surface pressure (Pa)
rpp (ngpssize) [real ,in] :: pressure P at each level (Pa)
rtt (ngpssize) [real ,in] :: temperature T at each level (C)
rhu (ngpssize) [real ,in] :: q at each level
ralt (ngpssize) [real ,in] :: altitude at each level
lbevis [logical ,in] :: determines which set of refractivity constants to use (Bevis or Rueger)
prf [gps_profilezd ,out]
- Called from
- Call to
- subroutine gps_mod/gpscmp(prf, cmp)¶
- Arguments
prf [gps_profile ,in]
cmp (*) [gps_diff ,out]
- Called from
- subroutine gps_mod/gpsden(prf, den)¶
- subroutine gps_mod/gpsbvf(prf, bvf)¶
- Arguments
prf [gps_profile ,in]
bvf (ngpssize) [gps_diff ,out]
- Called from
- Call to
- subroutine gps_mod/gps_refopv(hv, nval, prf, refopv)¶
- Purpose
GPSRO Refractivity operator
- Arguments
hv (*) [real ,in] :: an array of height values
nval [integer ,in]
prf [gps_profile ,in] :: local profile
refopv (*) [gps_diff ,out] :: an array of refractivity values (with derivatives)
- Called from
oer_seterrgpsro()
,oop_gpsro_nl()
,oop_calcgpsrojacobian()
,setfgedif()
- subroutine gps_mod/gpshgtopv(pr, prf, hgtopv)¶
- Arguments
pr [real ,in]
prf [gps_profile ,in]
hgtopv [gps_diff ,out]
- subroutine gps_mod/gpstemopv(pr, nval, prf, temopv)¶
- Arguments
pr (*) [real ,in]
nval [integer ,in]
prf [gps_profile ,in]
temopv (*) [gps_diff ,out]
- subroutine gps_mod/gpswmropv(pr, prf, wmropv)¶
- Arguments
pr (*) [real ,in]
prf [gps_profile ,in]
wmropv (*) [gps_diff ,out]
- subroutine gps_mod/gpsbvfopv(hv, nval, prf, bvfopv)¶
- Arguments
hv (*) [real ,in]
nval [integer ,in]
prf [gps_profile ,in]
bvfopv (*) [gps_diff ,out]
- Call to
- subroutine gps_mod/gps_ztdopv(hv, prf, lbevis, dzmin, ztdopv, rpobs, mode)¶
- Purpose
GB-GPS ZTD operator
- Arguments
- Arguments
dzmin [real ,in] :: Minimum DZ = Zobs-Zmod (m) for which DZ adjustment to ZTD will be made when Zobs < Zmod.
mode [integer ,in] ::
1 = normal mode: use stored ZTD profiles
- 2 = Vedel & Huang ZTD formulation: ZTD = ZHD(Pobs) + ZWD
Pobs computed from P0 using CMC hydrostatic extrapolation.
hv [real ,in] :: height of ZTD observation Zobs (m)
prf [gps_profilezd ,in] :: local model profile (type gps_profilezd)
lbevis [logical ,in] :: true/false –> use Bevis instead of Rueger k values
ztdopv [gps_diff ,out] :: ZTD (m) at height of observation (with derivatives)
rpobs [real ,out] :: Pressure (Pa) at height of observation
- Called from
- Call to
- subroutine gps_mod/gps_pw(prf, pw)¶
- Purpose
To compute lowest level PW (kg/m2) using layer mean Q and layer delta_p (Pa)
- Arguments
prf [gps_profilezd ,in]
pw [real ,out]
- Called from
- Call to
- subroutine gps_mod/gpsbend(prf)¶
- Arguments
prf [gps_profile ,inout]
- Called from
- subroutine gps_mod/gpsbend1(prf)¶
- Arguments
prf [gps_profile ,inout]
- Call to
- subroutine gps_mod/gpsbendlayer(ra, th, nu0, nexp, angle0, angle, bend, lok)¶
- Arguments
- Arguments
nu0 [gps_diff ,in] :: nexp: Refraction index coefs: n=1+nu0*exp(nexp*(r-ra));
nexp [gps_diff ,in] :: in in 1/m
ra [gps_diff ,in] :: Radius of inner shell (m)
th [gps_diff ,in] :: Shell thickness (m)
angle0 [gps_diff ,in] :: Ray angle above horizon at ra
angle [gps_diff ,out] :: Ray angle above horizon at rb
bend [gps_diff ,out] :: Accumulated bending over the layer
lok [logical ,out]
- Called from
- Call to
- subroutine gps_mod/gpsbendunit(ra, th, nu0, nexp, angle0, angle, bend, lok)¶
- Arguments
- Arguments
nu0 [gps_diff ,in] :: nexp: Refraction index coefs: n=1+nu0*exp(nexp*(r-ra));
nexp [gps_diff ,in] :: in 1/m
ra [gps_diff ,in] :: Radius of inner shell (m)
th [gps_diff ,in] :: Shell thickness (m)
angle0 [gps_diff ,in] :: Ray angle above horizon at ra
angle [gps_diff ,out] :: Ray angle above horizon at rb
bend [gps_diff ,inout] :: Accumulated bending over the layer
lok [logical ,out]
- Called from
- subroutine gps_mod/gpsbndopv(impv, azmv, nval, prf, bstv)¶
- Arguments
impv (*) [real ,in]
azmv (*) [real ,in]
nval [integer ,in]
prf [gps_profile ,inout]
bstv (*) [gps_diff ,out]
- Call to
- subroutine gps_mod/gps_bndopv1(impv, azmv, nval, prf, bstv)¶
- Purpose
Computation of the observation operator for Bending
- Note
The Operator is based from Assimilation experiments withCHAMP GPS radio occultation measurements (S. B. HEALY and J.-N. THEPAUT, 2005)
- Arguments
impv (*) [real ,in]
azmv (*) [real ,in]
nval [integer ,in]
prf [gps_profile ,in]
bstv (*) [gps_diff ,out]
- Called from
oer_seterrgpsro()
,oop_gpsro_nl()
,oop_calcgpsrojacobian()
,setfgedif()
- subroutine gps_mod/gps_setupro()¶
- Called from
- Call to
- function gps_mod/gps_iprofile_from_index(index_bn)¶
- Arguments
index_bn [integer ,in]
- Return
gps_iprofile_from_index [integer ]
- Called from
bgck_gpsro()
,oer_seterrgpsro()
,oop_gpsro_nl()
,oop_calcgpsrojacobian()
,setfgedif()
- subroutine gps_mod/gps_setupgb()¶
- Purpose
Initialisation of ground-based GPS - to read and to initialize GB-GPS namelist parameters and print information on options selected.
- Called from
- Call to
- function gps_mod/gps_iztd_from_index(index_bn)¶
- Arguments
index_bn [integer ,in]
- Return
gps_iztd_from_index [integer ]
- Called from