CAM
tracer_data Module Reference

Data Types

type  input2d
 
type  input3d
 
type  trfile
 
type  trfld
 

Functions/Subroutines

subroutine, public trcdata_init (specifier, filename, filelist, datapath, flds, file, rmv_file, data_cycle_yr, data_fixed_ymd, data_fixed_tod, data_type)
 
subroutine, public advance_trcdata (flds, file, state, pbuf2d)
 
subroutine, public get_fld_data (flds, field_name, data, ncol, lchnk, pbuf)
 
subroutine, public put_fld_data (flds, field_name, data, ncol, lchnk, pbuf)
 
subroutine, public get_fld_ndx (flds, field_name, idx)
 
subroutine get_model_time (file)
 
subroutine check_files (file, fids, itms, times_found)
 
character(len=shr_kind_cl) function, public incr_filename (filename, filenames_list, datapath, cyclical_list, list_cycled)
 
subroutine find_times (itms, fids, time, file, datatimem, datatimep, times_found)
 
subroutine read_next_trcdata (state, flds, file)
 
subroutine replace_aero_data (aerofulnam, spnam, aero_q_data, rho, pp, q_mix, ncoli)
 
subroutine ver_profile_aero (vertprof_aero)
 
subroutine read_2d_trc (fid, vid, loc_arr, strt, cnt, file, order)
 
subroutine read_za_trc (fid, vid, loc_arr, strt, cnt, file, order)
 
subroutine read_3d_trc (fid, vid, loc_arr, strt, cnt, file, order)
 
subroutine interpolate_trcdata (state, flds, file, pbuf2d)
 
subroutine get_dimension (fid, dname, dsize, dimid, data)
 
subroutine set_cycle_indices (fileid, cyc_ndx_beg, cyc_ndx_end, cyc_yr)
 
subroutine open_trc_datafile (fname, path, piofile, times, cyc_ndx_beg, cyc_ndx_end, cyc_yr)
 
subroutine specify_fields (specifier, fields)
 
subroutine, public init_trc_restart (whence, piofile, tr_file)
 
subroutine, public write_trc_restart (piofile, tr_file)
 
subroutine, public read_trc_restart (whence, piofile, tr_file)
 
subroutine vert_interp_mixrat (ncol, nsrc, ntrg, trg_x, src, trg, p0, ps, hyai, hybi)
 
subroutine vert_interp (ncol, levsiz, pin, pmid, datain, dataout)
 
subroutine vert_interp_ub (ncol, nlevs, plevs, datain, dataout)
 
subroutine advance_file (file)
 

Variables

integer, parameter, public maxtrcrs = 100
 
integer, parameter londim = 1
 
integer, parameter latdim = 2
 
integer, parameter levdim = 3
 
integer, parameter timdim = 4
 
integer, parameter ps_timdim = 3
 
integer, parameter za_latdim = 1
 
integer, parameter za_levdim = 2
 
integer, parameter za_timdim = 3
 
integer, parameter nm =1
 
integer, parameter np =2
 
integer plon
 
integer plat
 

Function/Subroutine Documentation

◆ advance_file()

subroutine tracer_data::advance_file ( type(trfile), intent(inout)  file)
Here is the call graph for this function:
Here is the caller graph for this function:

◆ advance_trcdata()

subroutine, public tracer_data::advance_trcdata ( type(trfld), dimension(:), intent(inout)  flds,
type(trfile), intent(inout)  file,
type(physics_state), dimension(begchunk:endchunk), intent(in)  state,
type(physics_buffer_desc), dimension(:,:), pointer  pbuf2d 
)
Here is the call graph for this function:
Here is the caller graph for this function:

◆ check_files()

subroutine tracer_data::check_files ( type(trfile), intent(inout)  file,
type(file_desc_t), dimension(2), intent(out)  fids,
integer, dimension(2), intent(out), optional  itms,
logical, intent(inout), optional  times_found 
)
private
Here is the call graph for this function:
Here is the caller graph for this function:

◆ find_times()

subroutine tracer_data::find_times ( integer, dimension(2), intent(out)  itms,
type(file_desc_t), dimension(2), intent(out)  fids,
real(r8), intent(in)  time,
type(trfile), intent(in)  file,
real(r8), intent(out)  datatimem,
real(r8), intent(out)  datatimep,
logical, intent(inout)  times_found 
)
Here is the call graph for this function:
Here is the caller graph for this function:

◆ get_dimension()

subroutine tracer_data::get_dimension ( type(file_desc_t), intent(inout)  fid,
character(*), intent(in)  dname,
integer, intent(out)  dsize,
integer, intent(out), optional  dimid,
real(r8), dimension(:), optional, pointer  data 
)
Here is the caller graph for this function:

◆ get_fld_data()

subroutine, public tracer_data::get_fld_data ( type(trfld), dimension(:), intent(inout)  flds,
character(len=*), intent(in)  field_name,
real(r8), dimension(:,:), intent(out)  data,
integer, intent(in)  ncol,
integer, intent(in)  lchnk,
type(physics_buffer_desc), dimension(:), pointer  pbuf 
)
Here is the caller graph for this function:

◆ get_fld_ndx()

subroutine, public tracer_data::get_fld_ndx ( type(trfld), dimension(:), intent(in)  flds,
character(len=*), intent(in)  field_name,
integer, intent(out)  idx 
)
Here is the caller graph for this function:

◆ get_model_time()

subroutine tracer_data::get_model_time ( type(trfile), intent(inout)  file)
private
Here is the call graph for this function:
Here is the caller graph for this function:

◆ incr_filename()

character(len=shr_kind_cl) function, public tracer_data::incr_filename ( character(len=*), intent(in)  filename,
character(len=*), intent(in), optional  filenames_list,
character(len=*), intent(in), optional  datapath,
logical, intent(in), optional  cyclical_list,
logical, intent(out), optional  list_cycled 
)
Here is the call graph for this function:
Here is the caller graph for this function:

◆ init_trc_restart()

subroutine, public tracer_data::init_trc_restart ( character(len=*), intent(in)  whence,
type(file_desc_t), intent(inout)  piofile,
type(trfile), intent(inout)  tr_file 
)
Here is the caller graph for this function:

◆ interpolate_trcdata()

subroutine tracer_data::interpolate_trcdata ( type(physics_state), dimension(begchunk:endchunk), intent(in)  state,
type (trfld), dimension(:), intent(inout)  flds,
type (trfile), intent(inout)  file,
type(physics_buffer_desc), dimension(:,:), pointer  pbuf2d 
)
Here is the call graph for this function:
Here is the caller graph for this function:

◆ open_trc_datafile()

subroutine tracer_data::open_trc_datafile ( character(*), intent(in)  fname,
character(*), intent(in)  path,
type(file_desc_t), intent(inout)  piofile,
real(r8), dimension(:), pointer  times,
integer, intent(out), optional  cyc_ndx_beg,
integer, intent(out), optional  cyc_ndx_end,
integer, intent(in), optional  cyc_yr 
)
private
Here is the call graph for this function:
Here is the caller graph for this function:

◆ put_fld_data()

subroutine, public tracer_data::put_fld_data ( type(trfld), dimension(:), intent(inout)  flds,
character(len=*), intent(in)  field_name,
real(r8), dimension(:,:), intent(in)  data,
integer, intent(in)  ncol,
integer, intent(in)  lchnk,
type(physics_buffer_desc), dimension(:), pointer  pbuf 
)
Here is the caller graph for this function:

◆ read_2d_trc()

subroutine tracer_data::read_2d_trc ( type(file_desc_t), intent(in)  fid,
type(var_desc_t), intent(in)  vid,
real(r8), dimension(:,:), intent(out)  loc_arr,
integer, dimension(:), intent(in)  strt,
integer, dimension(:), intent(in)  cnt,
type (trfile), intent(in)  file,
integer, dimension(2), intent(in)  order 
)
Here is the call graph for this function:
Here is the caller graph for this function:

◆ read_3d_trc()

subroutine tracer_data::read_3d_trc ( type(file_desc_t), intent(in)  fid,
type(var_desc_t), intent(in)  vid,
real(r8), dimension(:,:,:), intent(out)  loc_arr,
integer, dimension(:), intent(in)  strt,
integer, dimension(:), intent(in)  cnt,
type (trfile), intent(in)  file,
integer, dimension(3), intent(in)  order 
)
Here is the call graph for this function:
Here is the caller graph for this function:

◆ read_next_trcdata()

subroutine tracer_data::read_next_trcdata ( type(physics_state), dimension(begchunk:endchunk), intent(in)  state,
type (trfld), dimension(:), intent(inout)  flds,
type (trfile), intent(inout)  file 
)
private
Here is the call graph for this function:
Here is the caller graph for this function:

◆ read_trc_restart()

subroutine, public tracer_data::read_trc_restart ( character(len=*), intent(in)  whence,
type(file_desc_t), intent(inout)  piofile,
type(trfile), intent(inout)  tr_file 
)
Here is the caller graph for this function:

◆ read_za_trc()

subroutine tracer_data::read_za_trc ( type(file_desc_t), intent(in)  fid,
type(var_desc_t), intent(in)  vid,
real(r8), dimension(:,:,:), intent(out)  loc_arr,
integer, dimension(:), intent(in)  strt,
integer, dimension(:), intent(in)  cnt,
type (trfile), intent(in)  file,
integer, dimension(2), intent(in)  order 
)
Here is the call graph for this function:
Here is the caller graph for this function:

◆ replace_aero_data()

subroutine tracer_data::replace_aero_data ( character(len=32), intent(in)  aerofulnam,
character(len=3), intent(in)  spnam,
real(r8), dimension(pcols,pver,begchunk:endchunk), intent(inout)  aero_q_data,
real(r8), dimension(pcols,pver), intent(in)  rho,
real(r8), dimension(pver), intent(in)  pp,
real(r8), intent(in)  q_mix,
integer, intent(in)  ncoli 
)
Here is the caller graph for this function:

◆ set_cycle_indices()

subroutine tracer_data::set_cycle_indices ( type(file_desc_t), intent(inout)  fileid,
integer, intent(out)  cyc_ndx_beg,
integer, intent(out)  cyc_ndx_end,
integer, intent(in)  cyc_yr 
)
private
Here is the call graph for this function:
Here is the caller graph for this function:

◆ specify_fields()

subroutine tracer_data::specify_fields ( character(len=*), dimension(:), intent(in)  specifier,
type(trfld), dimension(:), pointer  fields 
)
Here is the caller graph for this function:

◆ trcdata_init()

subroutine, public tracer_data::trcdata_init ( character(len=*), dimension(:), intent(in)  specifier,
character(len=*), intent(in)  filename,
character(len=*), intent(in)  filelist,
character(len=*), intent(in)  datapath,
type(trfld), dimension(:), pointer  flds,
type(trfile), intent(inout)  file,
logical, intent(in)  rmv_file,
integer, intent(in)  data_cycle_yr,
integer, intent(in)  data_fixed_ymd,
integer, intent(in)  data_fixed_tod,
character(len=*), intent(in)  data_type 
)
Here is the call graph for this function:
Here is the caller graph for this function:

◆ ver_profile_aero()

subroutine tracer_data::ver_profile_aero ( real(r8), dimension(pver), intent(inout)  vertprof_aero)
Here is the caller graph for this function:

◆ vert_interp()

subroutine tracer_data::vert_interp ( integer, intent(in)  ncol,
integer, intent(in)  levsiz,
real(r8), dimension(pcols,levsiz), intent(in)  pin,
real(r8), dimension(pcols,pver), intent(in)  pmid,
real(r8), dimension(pcols,levsiz), intent(in)  datain,
real(r8), dimension(pcols,pver), intent(out)  dataout 
)
private
Here is the caller graph for this function:

◆ vert_interp_mixrat()

subroutine tracer_data::vert_interp_mixrat ( integer, intent(in)  ncol,
integer, intent(in)  nsrc,
integer, intent(in)  ntrg,
real(r8), dimension(pcols,ntrg+1), intent(in)  trg_x,
real(r8), dimension(pcols,nsrc), intent(in)  src,
real(r8), dimension(pcols,ntrg), intent(out)  trg,
real(r8)  p0,
real(r8), dimension(pcols)  ps,
real(r8), dimension(nsrc+1)  hyai,
real(r8), dimension(nsrc+1)  hybi 
)
private
Here is the caller graph for this function:

◆ vert_interp_ub()

subroutine tracer_data::vert_interp_ub ( integer, intent(in)  ncol,
integer, intent(in)  nlevs,
real(r8), dimension(nlevs), intent(in)  plevs,
real(r8), dimension(ncol,nlevs), intent(in)  datain,
real(r8), dimension(ncol), intent(out)  dataout 
)
private
Here is the caller graph for this function:

◆ write_trc_restart()

subroutine, public tracer_data::write_trc_restart ( type(file_desc_t), intent(inout)  piofile,
type(trfile), intent(inout)  tr_file 
)
Here is the caller graph for this function:

Variable Documentation

◆ latdim

integer, parameter tracer_data::latdim = 2
private

◆ levdim

integer, parameter tracer_data::levdim = 3
private

◆ londim

integer, parameter tracer_data::londim = 1
private

◆ maxtrcrs

integer, parameter, public tracer_data::maxtrcrs = 100

◆ nm

integer, parameter tracer_data::nm =1
private

◆ np

integer, parameter tracer_data::np =2
private

◆ plat

integer tracer_data::plat
private

◆ plon

integer tracer_data::plon
private

◆ ps_timdim

integer, parameter tracer_data::ps_timdim = 3
private

◆ timdim

integer, parameter tracer_data::timdim = 4
private

◆ za_latdim

integer, parameter tracer_data::za_latdim = 1
private

◆ za_levdim

integer, parameter tracer_data::za_levdim = 2
private

◆ za_timdim

integer, parameter tracer_data::za_timdim = 3
private