IPIM
 All Classes Files Functions Variables Pages
Public Member Functions | Public Attributes | List of all members
cdf_module Module Reference

Module for cdf writing. For inter hemispheric simulations, write an _s then _n variable for south and north hemisphere respectively. In cdf file, each hemisphere begins at the lowest altitude. For vertical simulations (Venus and Mars), only one variable is written. More...

Public Member Functions

subroutine init_cdf_module (nb_alt, nb_ntr, nb_ion, nb_eml)
 Allocate id_ni,id_ui,id_tip,id_tit,id_ti,id_qip,id_qit,id_qi,,id_pi,id_nn,id_eml, name_ion, name_ntr, name_eml. More...
 
subroutine init_cdf_file (file_name)
 Create file_name.cdf -> id_cdf
Attribut
UNITS -> id_unit
FIELDNAM-> id_name
COMMENT -> id_comment. More...
 
subroutine init_cdf_var_name (nb_alt, nb_ion, nb_ntr, nb_eml, sim_data)
 Adapt specie names with AMDA convention and store it in name_spc, name_ntr, name_eml.
For AMDA compatibility:

\[H^+ \rightarrow Hp\]


\[CO_2^{2+} \rightarrow CO2\{2p\}\]

. More...

 
subroutine init_cdf_var (nb_alt, nb_ion, nb_ntr, nb_eml)
 Create all variable in cdf file.
Must be called after initialisation of id_cdf (with open_CDF or init_cdf_file routines) and after init_cdf_var_name.
0d variable: id_time
Geometric 1d variable (one record): id_alt, id_curv, id_surf, id_vol, id_dz
Geometric 1d variable (multiple record): id_dip,id_longeo,id_latgeo,id_tmag,
id_lonmag,id_latmag,id_Rmag,id_kiangle,id_Bmag,id_stl
Ionic 1d variable: id_ni,id_ui,id_tip,id_tit,id_ti,id_qip,id_qit,id_qi,id_Pi
Neutral 1d variable: id_nn,id_tn,id_un,id_vn,id_wn
Light emission 1d variable: id_eml
. More...
 
subroutine construct_cdf (nb_alt, nb_ntr, nb_ion, nb_eml, irec, sim_data, pos_tube, ntr, ion, eml)
 Write the cdf variables.
Must be called after init_cdf_file, init_cdf_var_name and init_cdf_var. More...
 
subroutine denorm_heatflux (kb, mi, n, tp, tt, xp, xt, qp, qt)
 Denormalize heat flux. More...
 
subroutine close_cdf_file ()
 Close id_cdf unit. More...
 
subroutine close_cdf_module ()
 Deallocate variables from this module. More...
 

Public Attributes

integer(4) nhemisphere
 
integer(4) id_cdf
 
integer(4) id_unit
 
integer(4) id_name
 
integer(4) id_comment
 
integer(4) id_time
 
integer(4), dimension(:),
allocatable 
id_curv
 
integer(4), dimension(:),
allocatable 
id_alt
 
integer(4), dimension(:),
allocatable 
id_latgeo
 
integer(4), dimension(:),
allocatable 
id_longeo
 
integer(4), dimension(:),
allocatable 
id_tmag
 
integer(4), dimension(:),
allocatable 
id_lonmag
 
integer(4), dimension(:),
allocatable 
id_latmag
 
integer(4), dimension(:),
allocatable 
id_surf
 
integer(4), dimension(:),
allocatable 
id_vol
 
integer(4), dimension(:),
allocatable 
id_dz
 
integer(4), dimension(:),
allocatable 
id_dip
 
integer(4), dimension(:),
allocatable 
id_rmag
 
integer(4), dimension(:),
allocatable 
id_kiangle
 
integer(4), dimension(:),
allocatable 
id_bmag
 
integer(4), dimension(:),
allocatable 
id_stl
 
integer(4), dimension(:,:),
allocatable 
id_ni
 
integer(4), dimension(:,:),
allocatable 
id_ui
 
integer(4), dimension(:,:),
allocatable 
id_tip
 
integer(4), dimension(:,:),
allocatable 
id_tit
 
integer(4), dimension(:,:),
allocatable 
id_ti
 
integer(4), dimension(:,:),
allocatable 
id_qip
 
integer(4), dimension(:,:),
allocatable 
id_qit
 
integer(4), dimension(:,:),
allocatable 
id_qi
 
integer(4), dimension(:,:),
allocatable 
id_pi
 
integer(4), dimension(:,:),
allocatable 
id_nn
 
integer(4), dimension(:,:),
allocatable 
id_eml
 
integer(4), dimension(:),
allocatable 
id_tn
 
integer(4), dimension(:),
allocatable 
id_un
 
integer(4), dimension(:),
allocatable 
id_vn
 
integer(4), dimension(:),
allocatable 
id_wn
 
character(len=len_name),
dimension(:), allocatable 
name_ion
 
character(len=len_name),
dimension(:), allocatable 
name_ntr
 
character(len=len_name),
dimension(:), allocatable 
name_eml
 
character(len=len_name),
dimension(:), allocatable 
label_ext
 
character(len=len_name),
dimension(:), allocatable 
name_ext
 
integer(4), dimension(:),
allocatable 
dim_size
 
integer(4), dimension(:),
allocatable 
ialt_min
 
integer(4), dimension(:),
allocatable 
ialt_max
 
integer(4), dimension(:),
allocatable 
ialt_step
 
character(len=epoch_string_len) time_cdf
 
integer(4), dimension(7) time_int
 
real *8 time_real
 
character(len=cdf_statustext_len) message
 

Detailed Description

Module for cdf writing. For inter hemispheric simulations, write an _s then _n variable for south and north hemisphere respectively. In cdf file, each hemisphere begins at the lowest altitude. For vertical simulations (Venus and Mars), only one variable is written.

Member Function/Subroutine Documentation

subroutine cdf_module::close_cdf_file ( )

Close id_cdf unit.

Author
Mikel Indurain

Here is the caller graph for this function:

subroutine cdf_module::close_cdf_module ( )

Deallocate variables from this module.

Author
Mikel Indurain

Here is the caller graph for this function:

subroutine cdf_module::construct_cdf ( integer, intent(in)  nb_alt,
integer, intent(in)  nb_ntr,
integer, intent(in)  nb_ion,
integer, intent(in)  nb_eml,
integer, intent(in)  irec,
type(simulation_data), intent(in)  sim_data,
type(coordonnees), dimension(:,:), intent(in)  pos_tube,
type(neutral), dimension(:), intent(in)  ntr,
type(espece), dimension(:), intent(in)  ion,
type(emissions), intent(in)  eml 
)

Write the cdf variables.
Must be called after init_cdf_file, init_cdf_var_name and init_cdf_var.

Author
Mikel Indurain

Here is the call graph for this function:

Here is the caller graph for this function:

subroutine cdf_module::denorm_heatflux ( real, intent(in)  kb,
real, intent(in)  mi,
real, dimension(:), intent(in)  n,
real, dimension(:), intent(in)  tp,
real, dimension(:), intent(in)  tt,
real, dimension(:), intent(in)  xp,
real, dimension(:), intent(in)  xt,
real, dimension(:), intent(out)  qp,
real, dimension(:), intent(out)  qt 
)

Denormalize heat flux.

Author
Mikel Indurain

Here is the caller graph for this function:

subroutine cdf_module::init_cdf_file ( character(len=*)  file_name)

Create file_name.cdf -> id_cdf
Attribut
UNITS -> id_unit
FIELDNAM-> id_name
COMMENT -> id_comment.

Author
Mikel Indurain

Here is the caller graph for this function:

subroutine cdf_module::init_cdf_module ( integer, intent(in)  nb_alt,
integer, intent(in)  nb_ntr,
integer, intent(in)  nb_ion,
integer, intent(in)  nb_eml 
)

Allocate id_ni,id_ui,id_tip,id_tit,id_ti,id_qip,id_qit,id_qi,,id_pi,id_nn,id_eml, name_ion, name_ntr, name_eml.

Author
Mikel Indurain

Here is the caller graph for this function:

subroutine cdf_module::init_cdf_var ( integer, intent(in)  nb_alt,
integer, intent(in)  nb_ion,
integer, intent(in)  nb_ntr,
integer, intent(in)  nb_eml 
)

Create all variable in cdf file.
Must be called after initialisation of id_cdf (with open_CDF or init_cdf_file routines) and after init_cdf_var_name.
0d variable: id_time
Geometric 1d variable (one record): id_alt, id_curv, id_surf, id_vol, id_dz
Geometric 1d variable (multiple record): id_dip,id_longeo,id_latgeo,id_tmag,
id_lonmag,id_latmag,id_Rmag,id_kiangle,id_Bmag,id_stl
Ionic 1d variable: id_ni,id_ui,id_tip,id_tit,id_ti,id_qip,id_qit,id_qi,id_Pi
Neutral 1d variable: id_nn,id_tn,id_un,id_vn,id_wn
Light emission 1d variable: id_eml
.

Author
Mikel Indurain

Here is the caller graph for this function:

subroutine cdf_module::init_cdf_var_name ( integer, intent(in)  nb_alt,
integer, intent(in)  nb_ion,
integer, intent(in)  nb_ntr,
integer, intent(in)  nb_eml,
type(simulation_data), intent(in)  sim_data 
)

Adapt specie names with AMDA convention and store it in name_spc, name_ntr, name_eml.
For AMDA compatibility:

\[H^+ \rightarrow Hp\]


\[CO_2^{2+} \rightarrow CO2\{2p\}\]

.

Author
Mikel Indurain

Here is the caller graph for this function:


The documentation for this module was generated from the following file: