FV3 Bundle
qg_obs_data Module Reference

Handle observations for the QG model. More...

Data Types

type  column_data
 A type to represent a linked list of observation columns. More...
 
type  group_data
 A type to represent a linked list of observation group data. More...
 
interface  obs_count
 Fortran generic. More...
 
type  obs_data
 A type to represent observation data. More...
 

Functions/Subroutines

subroutine, public obs_setup (fin, fout, self)
 Linked list implementation. More...
 
subroutine, public obs_delete (self)
 
subroutine, public obs_get (self, req, col, ovec)
 
subroutine, public obs_put (self, req, col, ovec)
 
subroutine obs_locations (c_key_self, lreq, c_req, c_t1, c_t2, c_key_locs)
 
subroutine obs_generate (c_key_self, lreq, c_req, c_conf, c_bgn, c_step, ktimes, kobs)
 
subroutine obs_nobs (c_key_self, lreq, c_req, kobs)
 
subroutine obs_time_get (self, req, col, t1, t2, ovec)
 
subroutine obs_count_time (self, req, t1, t2, kobs)
 
subroutine obs_count_indx (self, req, t1, t2, kobs)
 
subroutine obs_count_all (self, req, kobs)
 
subroutine obs_create (self, req, times, locs)
 
subroutine obs_read (self)
 
subroutine obs_write (self)
 
subroutine findgroup (self, req, find)
 
subroutine findcolumn (grp, col, find)
 

Variables

integer, parameter, public max_string =800
 
type(registry_t), public obs_data_registry
 Linked list interface - defines registry_t type. More...
 

Detailed Description

Handle observations for the QG model.

Function/Subroutine Documentation

◆ findcolumn()

subroutine qg_obs_data::findcolumn ( type(group_data), intent(in)  grp,
character(len=*), intent(in)  col,
type(column_data), intent(inout), pointer  find 
)
private

Definition at line 659 of file qg_obs_data.F90.

Here is the caller graph for this function:

◆ findgroup()

subroutine qg_obs_data::findgroup ( type(obs_data), intent(in)  self,
character(len=*), intent(in)  req,
type(group_data), intent(inout), pointer  find 
)
private

Definition at line 644 of file qg_obs_data.F90.

Here is the caller graph for this function:

◆ obs_count_all()

subroutine qg_obs_data::obs_count_all ( type(obs_data), intent(in)  self,
character(len=*), intent(in)  req,
integer, intent(inout)  kobs 
)
private

Definition at line 449 of file qg_obs_data.F90.

Here is the call graph for this function:

◆ obs_count_indx()

subroutine qg_obs_data::obs_count_indx ( type(obs_data), intent(in)  self,
character(len=*), intent(in)  req,
type(datetime), intent(in)  t1,
type(datetime), intent(in)  t2,
integer, dimension(:), intent(inout)  kobs 
)
private

Definition at line 422 of file qg_obs_data.F90.

Here is the call graph for this function:

◆ obs_count_time()

subroutine qg_obs_data::obs_count_time ( type(obs_data), intent(in)  self,
character(len=*), intent(in)  req,
type(datetime), intent(in)  t1,
type(datetime), intent(in)  t2,
integer, intent(inout)  kobs 
)
private

Definition at line 398 of file qg_obs_data.F90.

Here is the call graph for this function:

◆ obs_create()

subroutine qg_obs_data::obs_create ( type(obs_data), intent(inout)  self,
character(len=*), intent(in)  req,
type(datetime), dimension(:), intent(in)  times,
type(obs_vect), intent(in)  locs 
)
private

Definition at line 468 of file qg_obs_data.F90.

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

◆ obs_delete()

subroutine, public qg_obs_data::obs_delete ( type(obs_data), intent(inout)  self)

Definition at line 105 of file qg_obs_data.F90.

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

◆ obs_generate()

subroutine qg_obs_data::obs_generate ( integer(c_int), intent(in)  c_key_self,
integer(c_int), intent(in)  lreq,
character(kind=c_char,len=1), dimension(lreq+1), intent(in)  c_req,
type(c_ptr), intent(in)  c_conf,
type(c_ptr), intent(in)  c_bgn,
type(c_ptr), intent(in)  c_step,
integer(c_int), intent(in)  ktimes,
integer(c_int), intent(inout)  kobs 
)
private

Definition at line 281 of file qg_obs_data.F90.

Here is the call graph for this function:

◆ obs_get()

subroutine, public qg_obs_data::obs_get ( type(obs_data), intent(in)  self,
character(len=*), intent(in)  req,
character(len=*), intent(in)  col,
type(obs_vect), intent(inout)  ovec 
)

Definition at line 134 of file qg_obs_data.F90.

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

◆ obs_locations()

subroutine qg_obs_data::obs_locations ( integer(c_int), intent(in)  c_key_self,
integer(c_int), intent(in)  lreq,
character(kind=c_char,len=1), dimension(lreq+1), intent(in)  c_req,
type(c_ptr), intent(in)  c_t1,
type(c_ptr), intent(in)  c_t2,
integer(c_int), intent(in)  c_key_locs 
)
private

Definition at line 241 of file qg_obs_data.F90.

Here is the call graph for this function:

◆ obs_nobs()

subroutine qg_obs_data::obs_nobs ( integer(c_int), intent(in)  c_key_self,
integer(c_int), intent(in)  lreq,
character(kind=c_char,len=1), dimension(lreq+1), intent(in)  c_req,
integer(c_int), intent(inout)  kobs 
)
private

Definition at line 330 of file qg_obs_data.F90.

◆ obs_put()

subroutine, public qg_obs_data::obs_put ( type(obs_data), intent(inout)  self,
character(len=*), intent(in)  req,
character(len=*), intent(in)  col,
type(obs_vect), intent(in)  ovec 
)

Definition at line 187 of file qg_obs_data.F90.

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

◆ obs_read()

subroutine qg_obs_data::obs_read ( type(obs_data), intent(inout)  self)
private

Definition at line 517 of file qg_obs_data.F90.

Here is the caller graph for this function:

◆ obs_setup()

subroutine, public qg_obs_data::obs_setup ( character(len=*), intent(in)  fin,
character(len=*), intent(in)  fout,
type(obs_data), intent(inout)  self 
)

Linked list implementation.

Definition at line 89 of file qg_obs_data.F90.

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

◆ obs_time_get()

subroutine qg_obs_data::obs_time_get ( type(obs_data), intent(in)  self,
character(len=*), intent(in)  req,
character(len=*), intent(in)  col,
type(datetime), intent(in)  t1,
type(datetime), intent(in)  t2,
type(obs_vect), intent(inout)  ovec 
)
private

Definition at line 351 of file qg_obs_data.F90.

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

◆ obs_write()

subroutine qg_obs_data::obs_write ( type(obs_data), intent(in)  self)
private

Definition at line 585 of file qg_obs_data.F90.

Here is the caller graph for this function:

Variable Documentation

◆ max_string

integer, parameter, public qg_obs_data::max_string =800

Definition at line 33 of file qg_obs_data.F90.

◆ obs_data_registry

type(registry_t), public qg_obs_data::obs_data_registry

Linked list interface - defines registry_t type.

Global registry

Definition at line 49 of file qg_obs_data.F90.