gridStateVectorFileIO_mod

link to source code

Dependency Diagrams:

gridStateVectorFileIO_mod.svg

Direct Dependency Diagram

gridStateVectorFileIO_mod_rev.svg

Reverse Dependency Diagram

Description

MODULE gridStateVectorFileIO_mod (prefix=’gio’ category=’4. Data Object transformations’)

Purpose

The grid-point state vector I/O methods for reading from and writing to files.

Quick access

Routines

gio_fileunitstostateunits(), gio_getmasklam(), gio_readfile(), gio_readfromfile(), gio_readmaskfromfile(), gio_readtrials(), gio_writetofile(), readfromfileandinterp1proc(), readfromfileandinterptotiles(), readfromfileandtransposetotiles(), readfromfileonly(), writetictactoc()

Needed modules

  • mpi

  • midasmpi_mod: MODULE midasMpi_mod (prefix=’mmpi’ category=’8. Low-level utilities and constants’)

  • gridstatevector_mod: MODULE gridStateVector_mod (prefix=’gsv’ category=’6. High-level data objects’)

  • interpolation_mod: MODULE interpolation_mod (prefix=’int’ category=’4. Data Object transformations’)

  • utilities_mod: MODULE utilities_mod (prefix=’utl’ category=’8. Low-level utilities and constants’)

  • verticalcoord_mod: MODULE verticalCoord_mod (prefix=’vco’ category=’7. Low-level data objects’)

  • horizontalcoord_mod: MODULE horizontalCoord_mod (prefix=’hco’ category=’7. Low-level data objects’)

  • oceanmask_mod: MODULE oceanMask_mod (prefix=’ocm’ category=’7. Low-level data objects’)

  • varnamelist_mod: MODULE varNameList_mod (prefix=’vnl’ category=’7. Low-level data objects’)

  • ramdisk_mod: MODULE ramDisk_mod (prefix=’ram’ category=’8. Low-level utilities and constants’)

  • timecoord_mod: MODULE timeCoord_mod (prefix=’tim’ category=’7. Low-level data objects’)

  • mathphysconstants_mod: MODULE mathPhysConstants_mod (prefix=’mpc’ category=’8. Low-level utilities and constants’)

  • codeprecision_mod: MODULE codePrecision_mod (prefix=’pre’ category=’8. Low-level utilities and constants’)

  • vgrid_descriptors

Variables

Subroutines and functions

subroutine  gridstatevectorfileio_mod/gio_readfromfile(statevector_out, filename, etiket_in, typvar_in[, stepindex_opt[, unitconversion_opt[, statevectorref_opt[, readheightsfc_opt[, containsfullfield_opt[, vcofilein_opt]]]]]])
Purpose

Read an RPN standard file and put the contents into a stateVector object. Main high level wrapper subroutine.

Arguments
  • statevector_out [struct_gsv ,inout]

  • filename [character ,in]

  • etiket_in [character ,in]

  • typvar_in [character ,in]

Options
  • stepindex_opt [integer ,in,]

  • unitconversion_opt [logical ,in,]

  • statevectorref_opt [struct_gsv ,in,] :: Reference statevector providing optional fields (P0, TT, HU)

  • readheightsfc_opt [logical ,in,]

  • containsfullfield_opt [logical ,in,]

  • vcofilein_opt [struct_vco ,in,pointer]

Called from

adv_setup(), aer_analysiserror(), aer_dayssincelastobs(), aer_propagateanalysiserror(), aer_propagatedslo(), bdiff_readbgstdfield(), ocebg_bgchecksst(), ocebg_getfgeamplification(), bcs_getradiosondeweight(), diff_setup(), epp_hybridrecentering(), calcfcsterror(), gbi_setup(), gio_getmasklam(), gio_readtrials(), omf_ominusfens(), oer_seterrbackscatanisice(), obgd_computesstrial(), obgd_getclimatology(), oobs_pseudosst(), sstb_computebias(), sstb_getgriddedbias(), sstb_applysatellitesstbiascorrection(), sstb_getbiasfrompreviousstate(), thn_radiosonde(), midas_enspostprocess, midas_ensembleh, midas_letkf, midas_randompert

Call to

utl_tmg_start(), utl_abort(), vco_setupfromfile(), gsv_varexist(), utl_varnamepresentinfile(), hco_setupfromfile(), vco_equal(), hco_equal(), readfromfileandinterptotiles(), readfromfileandinterp1proc(), readfromfileandtransposetotiles(), readfromfileonly(), utl_tmg_stop()

subroutine  gridstatevectorfileio_mod/readfromfileandinterptotiles(statevector_out, filename, vco_file, hco_file, etiket_in, typvar_in, stepindex, unitconversion, readheightsfc, containsfullfield[, statevectorref_opt])
Purpose

Read an RPN standard file and put the contents into a stateVector object. Wrapper subroutine that also proceed with distributed interpolation on MPI tiles.

Note

this routine currently only works correctly for reading FULL FIELDS, not increments or perturbations… because of the HU -> LQ conversion

Arguments
  • statevector_out [struct_gsv ,inout]

  • filename [character ,in]

  • vco_file [struct_vco ,in,pointer]

  • hco_file [struct_hco ,in,pointer]

  • etiket_in [character ,in]

  • typvar_in [character ,in]

  • stepindex [integer ,in]

  • unitconversion [logical ,in]

  • readheightsfc [logical ,in]

  • containsfullfield [logical ,in]

Options

statevectorref_opt [struct_gsv ,in,] :: Reference statevector providing optional fields (P0, TT, HU)

Called from

gio_readfromfile()

Call to

gsv_varnameslist(), gsv_allocate(), gio_readfile(), int_hinterp_gsv(), gsv_deallocate(), gio_fileunitstostateunits(), gsv_transposevarslevstotiles(), int_vinterp_gsv(), gsv_copy()

subroutine  gridstatevectorfileio_mod/readfromfileandtransposetotiles(statevector_out, filename, etiket_in, typvar_in, stepindex, unitconversion, readheightsfc, containsfullfield)
Purpose

Read an RPN standard file and put the contents into a stateVector object. Wrapper subroutine that also proceed with distributed transposition on MPI tiles.

Note

this routine currently only works correctly for reading FULL FIELDS, not increments or perturbations… because of the HU -> LQ conversion

Arguments
  • statevector_out [struct_gsv ,inout]

  • filename [character ,in]

  • etiket_in [character ,in]

  • typvar_in [character ,in]

  • stepindex [integer ,in]

  • unitconversion [logical ,in]

  • readheightsfc [logical ,in]

  • containsfullfield [logical ,in]

Called from

gio_readfromfile()

Call to

gsv_varnameslist(), gsv_allocate(), gio_readfile(), gio_fileunitstostateunits(), gsv_transposevarslevstotiles(), gsv_copy(), gsv_deallocate()

subroutine  gridstatevectorfileio_mod/readfromfileandinterp1proc(statevector_out_r4, filename, vco_file, hco_file, etiket_in, typvar_in, stepindex, unitconversion, readheightsfc, containsfullfield)
Purpose

Read an RPN standard file and put the contents into a stateVector object. Wrapper subroutine that also proceed with (serial) interpolation.

Arguments
  • statevector_out_r4 [struct_gsv ,inout]

  • filename [character ,in]

  • vco_file [struct_vco ,in,pointer]

  • hco_file [struct_hco ,in,pointer]

  • etiket_in [character ,in]

  • typvar_in [character ,in]

  • stepindex [integer ,in]

  • unitconversion [logical ,in]

  • readheightsfc [logical ,in]

  • containsfullfield [logical ,in]

Called from

gio_readfromfile()

Call to

gsv_varnameslist(), gsv_allocate(), gio_readfile(), int_hinterp_gsv(), gsv_deallocate(), gio_fileunitstostateunits(), int_vinterp_gsv(), gsv_copy()

subroutine  gridstatevectorfileio_mod/readfromfileonly(statevector_out, filename, etiket_in, typvar_in, stepindex, unitconversion, readheightsfc, containsfullfield)
Purpose

Read an RPN standard file and put the contents into a stateVector object. Wrapper subroutine

Arguments
  • statevector_out [struct_gsv ,inout]

  • filename [character ,in]

  • etiket_in [character ,in]

  • typvar_in [character ,in]

  • stepindex [integer ,in]

  • unitconversion [logical ,in]

  • readheightsfc [logical ,in]

  • containsfullfield [logical ,in]

Called from

gio_readfromfile()

Call to

gio_readfile(), gio_fileunitstostateunits()

subroutine  gridstatevectorfileio_mod/gio_readfile(statevector, filename, etiket_in, typvar_in, containsfullfield[, readheightsfc_opt[, stepindex_opt[, ignoredate_opt]]])
Purpose

Read an RPN standard file and put the contents into a stateVector object. Low level subroutine that does the actual file reading.

Arguments
  • statevector [struct_gsv ,inout]

  • filename [character ,in]

  • etiket_in [character ,in]

  • typvar_in [character ,in]

  • containsfullfield [logical ,in]

Options
  • readheightsfc_opt [logical ,in,]

  • stepindex_opt [integer ,in,]

  • ignoredate_opt [logical ,in,]

Called from

ens_readensemble(), readfromfileandinterptotiles(), readfromfileandtransposetotiles(), readfromfileandinterp1proc(), readfromfileonly()

Call to

readnml(), gsv_getvco(), utl_abort(), gsv_isassocheightsfc(), gsv_getheightsfc(), gsv_gethco(), gsv_varexist(), utl_varnamepresentinfile(), hco_setupfromfile(), vnl_isphysicsvar(), gsv_getvarnamefromk(), gsv_getlevfromk(), vnl_varlevelfromvarname(), vnl_varlistindex(), hco_deallocate(), gio_readmaskfromfile()

subroutine  gridstatevectorfileio_mod/gio_readmaskfromfile(statevector, filename)
Purpose

Check if any ocean mask fields exist. If so, read for the surface or all ocean depth levels.

Arguments
  • statevector [struct_gsv ,inout]

  • filename [character ,in]

Called from

simvar(), gio_readfile(), midas_var

Call to

ocm_readmaskfromfile(), gsv_gethco(), gsv_getvco()

subroutine  gridstatevectorfileio_mod/gio_getmasklam(statevector_mask, hco_ptr, vco_ptr[, hinterpolatedegree_opt])
Purpose

To read a LAM mask from a file (./analinc_mask by default).

Arguments
  • statevector_mask [struct_gsv ,inout]

  • hco_ptr [struct_hco ,in,pointer]

  • vco_ptr [struct_vco ,in,pointer]

Options

hinterpolatedegree_opt [character ,in,]

Called from

epp_postprocess(), inc_computehighresanalysis()

Call to

gsv_allocate(), gio_readfromfile()

subroutine  gridstatevectorfileio_mod/gio_readtrials(statevectortrialin)
Purpose

Reading trials

Arguments

statevectortrialin [struct_gsv ,inout,target]

Called from

gvt_setupreffromtrialfiles(), inc_analpostprocessing(), omf_ominusf(), midas_diaghbht, midas_gencoeff, midas_obsimpact, midas_obsselection, midas_var, midas_var1d

Call to

utl_tmg_start(), gsv_varexist(), gsv_allocate(), tim_getdatestamp(), gsv_zero(), gsv_varnameslist(), utl_abort(), gsv_modifydate(), ram_fullworkingpath(), gio_readfromfile(), ram_remove(), gsv_deallocate(), gsv_isallocated(), gsv_transposesteptovarslevs(), gsv_transposesteptotiles(), gsv_copy(), utl_tmg_stop()

subroutine  gridstatevectorfileio_mod/gio_writetofile(statevector_in, filename, etiket_in[, scalefactor_opt[, ip3_opt[, stepindex_opt[, typvar_opt[, hucontainslq_opt[, unitconversion_opt[, writeheightsfc_opt[, numbits_opt[, containsfullfield_opt]]]]]]]]])
Purpose

Write a statevector object to an RPN standard file.

Arguments
  • statevector_in [struct_gsv ,in,target]

  • filename [character ,in]

  • etiket_in [character ,in]

Options
  • scalefactor_opt [real ,in,]

  • ip3_opt [integer ,in,]

  • stepindex_opt [integer ,in,]

  • typvar_opt [character ,in,]

  • hucontainslq_opt [logical ,in,]

  • unitconversion_opt [logical ,in,]

  • writeheightsfc_opt [logical ,in,]

  • numbits_opt [integer ,in,]

  • containsfullfield_opt [logical ,in,]

Called from

aer_analysiserror(), aer_dayssincelastobs(), aer_propagatedslo(), ben_setuponeinstance(), ensemblediagnostic(), ocebg_getfgeamplification(), csg_toolbox(), writestddev(), writestddevbal(), horizcorrelfunction(), calclocalcorrelations(), calclocalvertcorrmatrix(), csl_toolbox(), writevarstats(), writediagstats(), epp_postprocess(), epp_writetoallmembers(), ens_writeensemble(), gbi_setup(), inc_writeincandanalhighres(), inc_writeincrement(), inc_writeanalysis(), obgd_computesstrial(), sstb_getgriddedbias(), sstb_getbiasfrompreviousstate(), midas_diagbmatrix, midas_randompert

Call to

utl_tmg_start(), readnml(), gsv_varnameslist(), gsv_allocate(), gsv_transposevarslevstotiles(), utl_abort(), writetictactoc(), gsv_isassocheightsfc(), gsv_getheightsfc(), gsv_varexist(), vnl_varlevelfromvarname(), vnl_varkindfromvarname(), vnl_varlistindex(), vnl_varmassfromvarname(), ocm_copytoint(), gsv_deallocate(), utl_tmg_stop()

subroutine  gridstatevectorfileio_mod/writetictactoc(statevector, iun, etiket)
Purpose

Write a statevector object grid descriptors to an RPN standard file.

Arguments
  • statevector [struct_gsv ,in]

  • iun [integer ,in]

  • etiket [character ,in]

Called from

gio_writetofile()

Call to

utl_fstecr(), utl_abort()

subroutine  gridstatevectorfileio_mod/gio_fileunitstostateunits(statevector, containsfullfield[, stepindex_opt])
Purpose

Unit conversion needed after reading RPN standard file

Arguments
  • statevector [struct_gsv ,inout]

  • containsfullfield [logical ,in]

Options

stepindex_opt [integer ,in,]

Called from

ens_readensemble(), readfromfileandinterptotiles(), readfromfileandtransposetotiles(), readfromfileandinterp1proc(), readfromfileonly()

Call to

gsv_getvarnamefromk(), vnl_varkindfromvarname(), vnl_varmassfromvarname(), vnl_varlistindex()

subroutine  gridstatevectorfileio_mod/readnml()
Purpose

Read the namelist NAMSTIO

Call to

utl_isnamelistpresent(), utl_abort()