43 integer(c_int),
intent(inout) :: c_key_self
44 integer(c_int),
intent(in) :: c_key_geom
45 type(c_ptr),
intent(in) :: c_vars
47 type(fv3jedi_state),
pointer :: self
48 type(fv3jedi_geom),
pointer :: geom
49 type(fv3jedi_vars) :: vars
57 call create(self, geom, vars)
66 integer(c_int),
intent(inout) :: c_key_self
67 type(fv3jedi_state),
pointer :: self
82 integer(c_int),
intent(in) :: c_key_self
83 type(fv3jedi_state),
pointer :: self
95 integer(c_int),
intent(in) :: c_key_self
96 integer(c_int),
intent(in) :: c_key_rhs
98 type(fv3jedi_state),
pointer :: self
99 type(fv3jedi_state),
pointer :: rhs
109 subroutine fv3jedi_state_axpy_c(c_key_self,c_zz,c_key_rhs) bind(c,name='fv3jedi_state_axpy_f90')
112 integer(c_int),
intent(in) :: c_key_self
113 real(c_double),
intent(in) :: c_zz
114 integer(c_int),
intent(in) :: c_key_rhs
116 type(fv3jedi_state),
pointer :: self
117 type(fv3jedi_state),
pointer :: rhs
118 real(kind=kind_real) :: zz
124 call axpy(self,zz,rhs)
133 integer(c_int),
intent(in) :: c_key_geom
134 integer(c_int),
intent(in) :: c_key_self
135 integer(c_int),
intent(in) :: c_key_rhs
136 type(fv3jedi_geom),
pointer :: geom
137 type(fv3jedi_state),
pointer :: self
138 type(fv3jedi_increment),
pointer :: rhs
153 integer(c_int),
intent(in) :: c_key_state
154 integer(c_int),
intent(in) :: c_key_rhs
155 type(fv3jedi_state),
pointer :: state, rhs
169 integer(c_int),
intent(in) :: c_key_state
170 type(c_ptr),
intent(in) :: c_conf
171 type(c_ptr),
intent(inout) :: c_dt
172 integer(c_int),
intent(in) :: c_key_geom
174 type(fv3jedi_state),
pointer :: state
175 type(datetime) :: fdate
176 type(fv3jedi_geom),
pointer :: geom
180 call c_f_datetime(c_dt, fdate)
181 call read_file(geom, state, c_conf, fdate)
190 integer(c_int),
intent(in) :: c_key_state
191 integer(c_int),
intent(in) :: c_key_geom
192 type(c_ptr),
intent(in) :: c_conf
193 type(c_ptr),
intent(inout) :: c_dt
195 type(fv3jedi_state),
pointer :: state
196 type(fv3jedi_geom),
pointer :: geom
197 type(datetime) :: fdate
201 call c_f_datetime(c_dt, fdate)
211 integer(c_int),
intent(in) :: c_key_state
212 type(c_ptr),
intent(in) :: c_conf
213 type(c_ptr),
intent(in) :: c_dt
214 integer(c_int),
intent(in) :: c_key_geom
216 type(fv3jedi_state),
pointer :: state
217 type(datetime) :: fdate
218 type(fv3jedi_geom),
pointer :: geom
222 call c_f_datetime(c_dt, fdate)
232 integer(c_int),
intent(in) :: c_key_state
233 integer(c_int),
intent(in) :: kf
234 real(c_double),
intent(inout) :: pstat(3*kf)
236 type(fv3jedi_state),
pointer :: state
237 real(kind=kind_real) :: zstat(3, kf)
238 integer :: jj, js, jf
242 call gpnorm(state, kf, zstat)
247 pstat(jj) = zstat(js,jf)
258 integer(c_int),
intent(in) :: c_key_state
259 real(c_double),
intent(inout) :: prms
261 type(fv3jedi_state),
pointer :: state
262 real(kind=kind_real) :: zz
277 integer(c_int),
intent(in) :: c_key_state
278 integer(c_int),
intent(in) :: c_key_loc
279 type(c_ptr),
intent(in) :: c_vars
280 integer(c_int),
intent(in) :: c_key_gom
281 integer(c_int),
intent(in) :: c_key_geom
282 type(fv3jedi_state),
pointer :: state
283 type(ioda_locs),
pointer :: locs
284 type(ufo_geovals),
pointer :: gom
285 type(ufo_vars) :: vars
286 type(fv3jedi_geom),
pointer :: geom
295 call getvalues(geom, state, locs, vars, gom)
301 subroutine fv3jedi_state_getvalues_c(c_key_geom, c_key_state,c_key_loc,c_vars,c_key_gom,c_key_traj) bind(c,name='fv3jedi_state_getvalues_f90')
304 integer(c_int),
intent(in) :: c_key_state
305 integer(c_int),
intent(in) :: c_key_loc
306 type(c_ptr),
intent(in) :: c_vars
307 integer(c_int),
intent(in) :: c_key_gom
308 integer(c_int),
intent(in) :: c_key_traj
309 integer(c_int),
intent(in) :: c_key_geom
311 type(fv3jedi_state),
pointer :: state
312 type(ioda_locs),
pointer :: locs
313 type(ufo_geovals),
pointer :: gom
314 type(ufo_vars) :: vars
315 type(fv3jedi_getvalues_traj),
pointer :: traj
316 type(fv3jedi_geom),
pointer :: geom
326 call getvalues(geom, state, locs, vars, gom, traj)
335 integer(c_int),
intent(in) :: c_key_self
336 integer(c_int),
intent(inout) :: nx,ny,nv
337 type(fv3jedi_state),
pointer :: self
subroutine fv3jedi_state_getvalues_notraj_c(c_key_geom, c_key_state, c_key_loc, c_vars, c_key_gom)
subroutine, public gpnorm(inc, nf, pstat)
subroutine fv3jedi_state_copy_c(c_key_self, c_key_rhs)
subroutine, public staterms(state, prms)
type(registry_t), public fv3jedi_geom_registry
Linked list interface - defines registry_t type.
Fortran derived type to hold FV3JEDI increment.
subroutine fv3jedi_state_analytic_init_c(c_key_state, c_key_geom, c_conf, c_dt)
subroutine fv3jedi_state_add_incr_c(c_key_geom, c_key_self, c_key_rhs)
subroutine, public change_resol(inc, rhs)
subroutine, public write_file(geom, inc, c_conf, vdate)
subroutine, public copy(self, rhs)
Fortran module handling interpolation trajectory for the FV3 model.
subroutine fv3jedi_state_zero_c(c_key_self)
type(registry_t), public fv3jedi_increment_registry
Linked list interface - defines registry_t type.
type(registry_t), public fv3jedi_getvalues_traj_registry
Linked list interface - defines registry_t type.
subroutine fv3jedi_state_create_c(c_key_self, c_key_geom, c_vars)
subroutine fv3jedi_state_axpy_c(c_key_self, c_zz, c_key_rhs)
Fortran derived type to hold geometry data for the FV3JEDI model.
subroutine fv3jedi_state_delete_c(c_key_self)
subroutine fv3jedi_state_change_resol_c(c_key_state, c_key_rhs)
Fortran module to handle variables for the FV3JEDI model.
subroutine, public delete(self)
type(registry_t), public ioda_locs_registry
Linked list interface - defines registry_t type.
Handle state for the FV3JEDI odel.
subroutine fv3jedi_state_gpnorm_c(c_key_state, kf, pstat)
subroutine fv3jedi_state_sizes_c(c_key_self, nx, ny, nv)
subroutine, public fv3jedi_vars_create(c_vars, self)
subroutine, public add_incr(self, rhs)
type(registry_t), public ufo_geovals_registry
Linked list interface - defines registry_t type.
Utilities for increment for the FV3JEDI model.
Utilities for state for the FV3JEDI model.
subroutine fv3jedi_state_read_file_c(c_key_geom, c_key_state, c_conf, c_dt)
subroutine, public read_file(geom, inc, c_conf, vdate)
subroutine, public analytic_ic(state, geom, c_conf, vdate)
Analytic Initialization for the FV3 Model.
Fortran module handling geometry for the FV3 model.
subroutine fv3jedi_state_getvalues_c(c_key_geom, c_key_state, c_key_loc, c_vars, c_key_gom, c_key_traj)
type(registry_t), public fv3jedi_state_registry
Linked list interface - defines registry_t type.
subroutine, public zeros(self)
subroutine fv3jedi_state_rms_c(c_key_state, prms)
Fortran module handling observation locations.
subroutine, public axpy(self, zz, rhs)
subroutine, public create(self, geom, vars)
Fortran module handling geometry for the FV3 model.
subroutine fv3jedi_state_write_file_c(c_key_geom, c_key_state, c_conf, c_dt)
subroutine, public ufo_vars_setup(self, c_vars)