hdf5_module Module Reference

Module that contains necessary subroutines to write abundances to an hdf5 file. More...

Functions/Subroutines

subroutine, public init_hdf5_module ()
 Initialize the hdf5 module. More...
 
subroutine, private init_flow
 Initialize the flow output. More...
 
subroutine, private init_nu_loss_gain
 Initialize neutrino loss/gain output. More...
 
subroutine, public extend_nu_loss_gain (time, temp, dens, rad, the, heat, bet)
 Write neutrino gain and loss. More...
 
subroutine, private write_nu_loss_gain
 Write the neutrino loss/gain into the hdf5 file. More...
 
subroutine, private init_engen (include_decay)
 Initialize energy generation output. More...
 
subroutine, public extend_engen (time, engen_tot, heat, engen_ng_gn, engen_pg_gp, engen_ag_ga, engen_np_pn, engen_an_na, engen_ap_pa, engen_beta, engen_fiss, det_bet_engen, det_ag_engen, det_pg_engen, det_ng_engen, det_pn_engen, det_ap_engen, det_an_engen, det_other_engen, det_fiss_engen, det_tot_engen, include_decay)
 Subroutine to write the energy generation per reaction type. More...
 
subroutine, private write_engen (include_decay)
 Write energy generations and time into the hdf5 file. More...
 
subroutine, public extend_flow (time, temp, dens, flow, n_flows, Y)
 Extend the flow in the file With every call a new group is created and the flows are written in this group. The group is named after the calls (the third call is then located in flows/3) More...
 
subroutine, private init_snaps
 Initialize the snapshot hdf5 group. More...
 
subroutine, private init_mainout
 Initialize the mainout hdf5 group. More...
 
subroutine, private init_track_nuclei
 Initialize the tracked_nuclei hdf5 group. More...
 
subroutine, private init_av_timescales
 Initialize the timescales hdf5 group. More...
 
subroutine, private write_units ()
 Write the units of the individual entries into the hdf5 file. More...
 
subroutine, public write_finab (Y)
 Write final abundances into hdf5 file. More...
 
integer(hsize_t) function, private create_1d_dataset (dsetname, group_id)
 Gets a dataset name and creates it. More...
 
integer(hsize_t) function, private create_1d_int_dataset (dsetname, group_id)
 Gets a dataset name and creates an integer dataset. More...
 
subroutine, private create_constant_1d_int_arrays (length, data, dsetname, group_id)
 Create a hdf5 entry with constant values. More...
 
subroutine, private create_constant_1d_arrays (length, data, dsetname, group_id)
 Create a hdf5 entry with constant values. More...
 
subroutine, private extend_1d_dataset (dset_id, value, in_size, chunksize)
 Extend a previously created 1D - dataset. More...
 
subroutine, private extend_1d_int_dataset (dset_id, value, in_size, chunksize)
 Extend a previously created 1D integer - dataset. More...
 
subroutine, public extend_av_timescales (time, tau_ga, tau_ag, tau_ng, tau_gn, tau_pg, tau_gp, tau_np, tau_pn, tau_an, tau_na, tau_ap, tau_pa, tau_beta, tau_alpha, tau_nfiss, tau_sfiss, tau_bfiss)
 Subroutine to write the average timescales (1/s) into the hdf5. More...
 
subroutine, private write_av_timescales ()
 Write average timescales and time into the hdf5 file. More...
 
subroutine, public extend_track_nuclei (time, Y_array)
 Write tracked abundances and time into the hdf5 file. More...
 
subroutine, private write_track_data ()
 Write the abundances of track nuclei into a file. More...
 
subroutine, public extend_snaps (time, Y_array)
 Write abundances and time into the hdf5 file. More...
 
subroutine, private write_snaps ()
 Write the abundances of all nuclei into a file. More...
 
subroutine, public extend_mainout (cnt, time, temp, dens, entr, rad, Y)
 Write the mainout data to the hdf5. More...
 
subroutine, private write_mainout_data ()
 Write the mainout data into a file. More...
 
subroutine, private extend_hdf5_y (dset_id, Y_array, nr_nuc, old_size, chunksize)
 Extend the Y dataset for the net timestep. More...
 
subroutine, public hdf5_module_finalize ()
 Finalize the hdf5 module. More...
 

Variables

integer(hid_t), private file_id
 File identifier. More...
 
character(len=20), private hdf5_filename ="WinNet_data.h5"
 Name of the hdf5 file. More...
 
logical, private hdf5_output =.False.
 
character(len= *), parameter, private dsetname_u = "Units"
 Name of the units dataset. More...
 
integer(hsize_t), dimension(1), private dims_1d =(/1/)
 Helper variable to specify 1 dimension. More...
 
integer(hid_t), private dataspace
 Dataspace identifier. More...
 
integer(hid_t), private crp_list
 Dataset creation property identifier. More...
 
integer(hsize_t), dimension(1:2), private maxdims
 Maximum dimensions (later set to unlimited) More...
 
integer(hid_t), private snaps_group_id
 The ID of the group. More...
 
integer, private iter_snaps = 0
 Iteration count, how often was already extended to the datasets? More...
 
integer, private chunk_counter_snaps = 0
 How full is the chunk already? More...
 
integer, parameter, private chunk_size_snaps =200
 Chunk size. More...
 
real(r_kind), dimension(chunk_size_snaps), private chunk_store_snaps_time
 Storage for the chunk which is later written to the file. More...
 
real(r_kind), dimension(:,:), allocatable, private chunk_store_snaps_y
 Storage for the chunk which is later written to the file. More...
 
integer(hid_t), private dset_id_y
 Dataset identifier. More...
 
character(len= *), parameter, private dsetname_y = "Y"
 Name of the dataset. More...
 
integer(hsize_t), dimension(1:2), private dims_y
 Array dimensions (net_size) More...
 
character(len= *), parameter, private snaps_dsetname_t = "time"
 Name of the dataset. More...
 
integer(hid_t), private snaps_dset_id_t
 Dataset identifier. More...
 
integer(hid_t), private mainout_group_id
 The ID of the group. More...
 
integer, private iter_mainout = 0
 Iteration count, how often was already extended to the datasets? More...
 
integer, private chunk_counter_mainout = 0
 How full is the chunk already? More...
 
integer, parameter, private chunk_size_mainout =500
 Chunk size. More...
 
real(r_kind), dimension(chunk_size_mainout, 13), private chunk_store_mainout
 Storage for the chunk which is later written to the file. More...
 
integer, dimension(chunk_size_mainout), private chunk_store_int_mainout
 Storage for integers in chunk which is later written to the file. More...
 
character(len= *), parameter, private mainout_dsetname_iter = "iteration"
 Name of the dataset. More...
 
integer(hid_t), private mainout_dset_id_iter
 Dataset identifier. More...
 
character(len= *), parameter, private mainout_dsetname_t = "time"
 Name of the dataset. More...
 
integer(hid_t), private mainout_dset_id_t
 Dataset identifier. More...
 
character(len= *), parameter, private mainout_dsetname_temp = "temp"
 Name of the dataset. More...
 
integer(hid_t), private mainout_dset_id_temp
 Dataset identifier. More...
 
character(len= *), parameter, private mainout_dsetname_dens = "dens"
 Name of the dataset. More...
 
integer(hid_t), private mainout_dset_id_dens
 Dataset identifier. More...
 
character(len= *), parameter, private mainout_dsetname_entr = "entr"
 Name of the dataset. More...
 
integer(hid_t), private mainout_dset_id_entr
 Dataset identifier. More...
 
character(len= *), parameter, private mainout_dsetname_rad = "rad"
 Name of the dataset. More...
 
integer(hid_t), private mainout_dset_id_rad
 Dataset identifier. More...
 
character(len= *), parameter, private mainout_dsetname_ye = "ye"
 Name of the dataset. More...
 
integer(hid_t), private mainout_dset_id_ye
 Dataset identifier. More...
 
character(len= *), parameter, private mainout_dsetname_yn = "yn"
 Name of the dataset. More...
 
integer(hid_t), private mainout_dset_id_yn
 Dataset identifier. More...
 
character(len= *), parameter, private mainout_dsetname_yp = "yp"
 Name of the dataset. More...
 
integer(hid_t), private mainout_dset_id_yp
 Dataset identifier. More...
 
character(len= *), parameter, private mainout_dsetname_ya = "ya"
 Name of the dataset. More...
 
integer(hid_t), private mainout_dset_id_ya
 Dataset identifier. More...
 
character(len= *), parameter, private mainout_dsetname_ylight = "ylight"
 Name of the dataset. More...
 
integer(hid_t), private mainout_dset_id_ylight
 Dataset identifier. More...
 
character(len= *), parameter, private mainout_dsetname_yheavy = "yheavy"
 Name of the dataset. More...
 
integer(hid_t), private mainout_dset_id_yheavy
 Dataset identifier. More...
 
character(len= *), parameter, private mainout_dsetname_abar = "abar"
 Name of the dataset. More...
 
integer(hid_t), private mainout_dset_id_abar
 Dataset identifier. More...
 
character(len= *), parameter, private mainout_dsetname_zbar = "zbar"
 Name of the dataset. More...
 
integer(hid_t), private mainout_dset_id_zbar
 Dataset identifier. More...
 
integer(hid_t), private track_group_id
 The ID of the group. More...
 
integer, private iter_tracked = 0
 Iteration count, how often was already extended to the datasets? More...
 
integer, private chunk_counter_track = 0
 How full is the chunk already? More...
 
integer, parameter, private chunk_size_track =500
 Chunk size. More...
 
real(r_kind), dimension(:,:), allocatable, private chunk_store_track
 Temporary storage for tracked nuclei. More...
 
character(len= *), parameter, private tracked_dsetname_t = "time"
 Name of the dataset. More...
 
integer(hid_t), private tracked_dset_id_t
 Dataset identifier. More...
 
integer(hsize_t), dimension(1:2), private dims_track
 Array dimensions. More...
 
character(len=5), dimension(:), allocatable, private tracked_names
 Names of the tracked nuclei. More...
 
integer(hid_t), private tracked_abu_id
 Dataset identifier. More...
 
character(len= *), parameter, private tracked_dsetname_y = "Y"
 Name of the dataset. More...
 
integer(hid_t), private ts_group_id
 The ID of the group. More...
 
integer, private iter_ts = 0
 Iteration count, how often was already extended to the datasets? More...
 
integer, private chunk_counter_ts = 0
 How full is the chunk already? More...
 
integer, parameter, private chunk_size_ts =500
 Chunk size. More...
 
real(r_kind), dimension(chunk_size_ts, 18), private chunk_store_ts
 Temporary storage for average timescales. More...
 
character(len= *), parameter, private ts_dsetname_t = "time"
 Name of the dataset. More...
 
integer(hid_t), private ts_dset_id_t
 Dataset identifier. More...
 
character(len=9), dimension(17), private ts_names = (/"tau_ga ","tau_ag ","tau_ng ","tau_gn ","tau_pg ","tau_gp ","tau_np ", "tau_pn ","tau_an ","tau_na ","tau_ap ","tau_pa ","tau_beta ","tau_alpha", "tau_nfiss","tau_sfiss","tau_bfiss"/)
 Names of the timescales. More...
 
integer(hid_t), dimension(17), private ts_reac_ids
 Dataset identifier. More...
 
integer(hid_t), private en_group_id
 The ID of the group. More...
 
integer, private iter_en = 0
 Iteration count, how often was already extended to the datasets? More...
 
integer, private chunk_counter_en = 0
 How full is the chunk already? More...
 
integer, parameter, private chunk_size_en =500
 Chunk size. More...
 
real(r_kind), dimension(chunk_size_en, 11), private chunk_store_en
 Temporary storage for energy generation. More...
 
real(r_kind), dimension(:,:), allocatable, private chunk_store_en_bet
 
real(r_kind), dimension(:,:), allocatable, private chunk_store_en_ag
 
real(r_kind), dimension(:,:), allocatable, private chunk_store_en_pg
 
real(r_kind), dimension(:,:), allocatable, private chunk_store_en_ng
 
real(r_kind), dimension(:,:), allocatable, private chunk_store_en_pn
 
real(r_kind), dimension(:,:), allocatable, private chunk_store_en_ap
 
real(r_kind), dimension(:,:), allocatable, private chunk_store_en_an
 
real(r_kind), dimension(:,:), allocatable, private chunk_store_en_other
 
real(r_kind), dimension(:,:), allocatable, private chunk_store_en_fiss
 
real(r_kind), dimension(:,:), allocatable, private chunk_store_en_tot
 
character(len= *), parameter, private en_dsetname_t = "time"
 Name of the dataset. More...
 
integer(hid_t), private en_dset_id_t
 Dataset identifier. More...
 
character(len=11), dimension(10), private en_names = (/"engen_tot ","S_src ","engen_ng_gn","engen_pg_gp","engen_ag_ga", "engen_np_pn","engen_an_na","engen_ap_pa","engen_beta ", "engen_fiss "/)
 Name of the energy generations. More...
 
integer(hid_t), dimension(10), private en_reac_ids
 Dataset identifier. More...
 
character(len=14), private en_det_bet_name ="detailed decay"
 
character(len=14), private en_det_ag_name ="detailed (a,g)"
 
character(len=14), private en_det_pg_name ="detailed (p,g)"
 
character(len=14), private en_det_ng_name ="detailed (n,g)"
 
character(len=14), private en_det_pn_name ="detailed (p,n)"
 
character(len=14), private en_det_ap_name ="detailed (a,p)"
 
character(len=14), private en_det_an_name ="detailed (a,n)"
 
character(len=14), private en_det_other_name ="detailed other"
 
character(len=14), private en_det_fiss_name ="detailed fiss "
 
character(len=14), private en_det_tot_name ="detailed total"
 
integer(hid_t), private en_det_bet_id
 
integer(hid_t), private en_det_ag_id
 
integer(hid_t), private en_det_pg_id
 
integer(hid_t), private en_det_ng_id
 
integer(hid_t), private en_det_pn_id
 
integer(hid_t), private en_det_ap_id
 
integer(hid_t), private en_det_an_id
 
integer(hid_t), private en_det_other_id
 
integer(hid_t), private en_det_fiss_id
 
integer(hid_t), private en_det_tot_id
 
integer(hid_t), private flow_group_id
 The ID of the group. More...
 
integer, private iter_flow = 0
 Iteration count, how often was already extended to the datasets? More...
 
character(len= *), parameter, private flow_dsetname_t = "time"
 Name of the dataset. More...
 
integer(hid_t), private flow_dset_id_t
 Dataset identifier. More...
 
integer(hid_t), private nuloss_group_id
 The ID of the group. More...
 
integer, private iter_nuloss = 0
 Iteration count, how often was already extended to the datasets? More...
 
integer, private chunk_counter_nuloss = 0
 How full is the chunk already? More...
 
integer, parameter, private chunk_size_nuloss =500
 Chunk size. More...
 
real(r_kind), dimension(chunk_size_nuloss), private chunk_store_nuloss_t
 
real(r_kind), dimension(chunk_size_nuloss), private chunk_store_nuloss_temp
 
real(r_kind), dimension(chunk_size_nuloss), private chunk_store_nuloss_dens
 
real(r_kind), dimension(chunk_size_nuloss), private chunk_store_nuloss_rad
 
real(r_kind), dimension(chunk_size_nuloss), private chunk_store_nuloss_nut
 
real(r_kind), dimension(chunk_size_nuloss), private chunk_store_nuloss_bet
 
real(r_kind), dimension(chunk_size_nuloss), private chunk_store_nuloss_the
 
real(r_kind), dimension(chunk_size_nuloss), private chunk_store_nuloss_heat
 
character(len= *), parameter, private nuloss_dsetname_t = "time"
 Name of the dataset. More...
 
integer(hid_t), private nuloss_dset_id_t
 Dataset identifier. More...
 
character(len= *), parameter, private nuloss_dsetname_temp = "temp"
 Name of the dataset. More...
 
integer(hid_t), private nuloss_dset_id_temp
 Dataset identifier. More...
 
character(len= *), parameter, private nuloss_dsetname_dens = "dens"
 Name of the dataset. More...
 
integer(hid_t), private nuloss_dset_id_dens
 Dataset identifier. More...
 
character(len= *), parameter, private nuloss_dsetname_rad = "rad"
 Name of the dataset. More...
 
integer(hid_t), private nuloss_dset_id_rad
 Dataset identifier. More...
 
character(len= *), parameter, private nuloss_dsetname_nut = "nu_total"
 Name of the dataset. More...
 
integer(hid_t), private nuloss_dset_id_nut
 Dataset identifier. More...
 
character(len= *), parameter, private nuloss_dsetname_bet = "nu_beta"
 Name of the dataset. More...
 
integer(hid_t), private nuloss_dset_id_bet
 Dataset identifier. More...
 
character(len= *), parameter, private nuloss_dsetname_the = "nu_thermal"
 Name of the dataset. More...
 
integer(hid_t), private nuloss_dset_id_the
 Dataset identifier. More...
 
character(len= *), parameter, private nuloss_dsetname_heat = "nu_heat"
 Name of the dataset. More...
 
integer(hid_t), private nuloss_dset_id_heat
 Dataset identifier. More...
 
integer(hid_t), private finab_group_id
 The ID of the group. More...
 

Detailed Description

Module that contains necessary subroutines to write abundances to an hdf5 file.

It is only included when the compilerflag "USE_HDF5" is set. For more information about the hdf5 format see What is HDF5?. There is a tradeoff between having the data in the memory and making an IO operation. Therefore, each output is first stored in a temporary array of a specific size (or chunksize) to prevent too much IO going on.

Remarks
It is recommended, that the chunk sizes should be around the size of 1MB, however, here are written many 1d real(double) arrays and 1MB would be way more than storing the whole simulation temporary. Therefore the chunk sizes are smaller (in the order of a couple of hundreds).
Author
Moritz Reichert
Date
28.01.21

Function/Subroutine Documentation

◆ create_1d_dataset()

integer(hsize_t) function, private hdf5_module::create_1d_dataset ( character(len=*), intent(in)  dsetname,
integer(hid_t), intent(in)  group_id 
)
private

Gets a dataset name and creates it.

Creates a 1d dataset in the hdf5 and returns its dataset ID.

Author
Moritz Reichert
Date
28.01.21
Parameters
[in]dsetnameName of the dataset
[in]group_idGroup identifier
Returns
Dataset ID of the entry

Definition at line 1397 of file hdf5_module.f90.

Here is the call graph for this function:

◆ create_1d_int_dataset()

integer(hsize_t) function, private hdf5_module::create_1d_int_dataset ( character(len=*), intent(in)  dsetname,
integer(hid_t), intent(in)  group_id 
)
private

Gets a dataset name and creates an integer dataset.

Creates a 1d dataset in the hdf5 and returns its dataset ID.

Author
Moritz Reichert
Date
28.01.21
Parameters
[in]dsetnameName of the dataset
[in]group_idGroup identifier
Returns
Dataset ID of the entry

Definition at line 1459 of file hdf5_module.f90.

Here is the call graph for this function:

◆ create_constant_1d_arrays()

subroutine, private hdf5_module::create_constant_1d_arrays ( integer, intent(in)  length,
real(r_kind), dimension(length), intent(in)  data,
character(len=*), intent(in)  dsetname,
integer(hid_t)  group_id 
)
private

Create a hdf5 entry with constant values.

This is used for e.g., the flows

Author
Moritz Reichert
Date
28.01.21
Parameters
[in]lengthID of the dataset
[in]dataData values
[in]dsetnameName of the dataset
group_idID of the group

Definition at line 1576 of file hdf5_module.f90.

Here is the call graph for this function:

◆ create_constant_1d_int_arrays()

subroutine, private hdf5_module::create_constant_1d_int_arrays ( integer, intent(in)  length,
integer, dimension(length), intent(in)  data,
character(len=*), intent(in)  dsetname,
integer(hid_t)  group_id 
)
private

Create a hdf5 entry with constant values.

This is used for mass number, proton number, and neutron number.

Author
Moritz Reichert
Date
28.01.21
Parameters
[in]lengthID of the dataset
[in]dataData values
[in]dsetnameName of the dataset
group_idID of the group

Definition at line 1519 of file hdf5_module.f90.

Here is the call graph for this function:

◆ extend_1d_dataset()

subroutine, private hdf5_module::extend_1d_dataset ( integer(hid_t), intent(in)  dset_id,
real(r_kind), dimension(chunksize), intent(in)  value,
integer, intent(in)  in_size,
integer, intent(in)  chunksize 
)
private

Extend a previously created 1D - dataset.

The necessary input is the value and the id of the dataset only.

Author
Moritz Reichert
Date
28.01.21
Parameters
[in]chunksizeSize of the amount of variables written
[in]valueNew value that will get appended
[in]dset_idID of the dataset
[in]in_sizeNew size of the array

Definition at line 1634 of file hdf5_module.f90.

Here is the call graph for this function:

◆ extend_1d_int_dataset()

subroutine, private hdf5_module::extend_1d_int_dataset ( integer(hid_t), intent(in)  dset_id,
integer, dimension(chunksize), intent(in)  value,
integer, intent(in)  in_size,
integer, intent(in)  chunksize 
)
private

Extend a previously created 1D integer - dataset.

The necessary input is the value and the id of the dataset only.

Author
Moritz Reichert
Date
28.01.21
Parameters
[in]chunksizeSize of the amount of variables written
[in]valueNew value that will get appended
[in]dset_idID of the dataset
[in]in_sizeNew size of the array

Definition at line 1692 of file hdf5_module.f90.

Here is the call graph for this function:

◆ extend_av_timescales()

subroutine, public hdf5_module::extend_av_timescales ( real(r_kind), intent(in)  time,
real(r_kind), intent(in)  tau_ga,
real(r_kind), intent(in)  tau_ag,
real(r_kind), intent(in)  tau_ng,
real(r_kind), intent(in)  tau_gn,
real(r_kind), intent(in)  tau_pg,
real(r_kind), intent(in)  tau_gp,
real(r_kind), intent(in)  tau_np,
real(r_kind), intent(in)  tau_pn,
real(r_kind), intent(in)  tau_an,
real(r_kind), intent(in)  tau_na,
real(r_kind), intent(in)  tau_ap,
real(r_kind), intent(in)  tau_pa,
real(r_kind), intent(in)  tau_beta,
real(r_kind), intent(in)  tau_alpha,
real(r_kind), intent(in)  tau_nfiss,
real(r_kind), intent(in)  tau_sfiss,
real(r_kind), intent(in)  tau_bfiss 
)

Subroutine to write the average timescales (1/s) into the hdf5.

Author
Moritz Reichert
Date
5.02.21
Parameters
[in]timeTime [s]
[in]tau_npTimescales [1/s]
[in]tau_paTimescales [1/s]
[in]tau_alphaTimescales [1/s]
[in]tau_bfissTimescales [1/s]

Definition at line 1750 of file hdf5_module.f90.

Here is the call graph for this function:

◆ extend_engen()

subroutine, public hdf5_module::extend_engen ( real(r_kind), intent(in)  time,
real(r_kind), intent(in)  engen_tot,
real(r_kind), intent(in)  heat,
real(r_kind), intent(in)  engen_ng_gn,
real(r_kind), intent(in)  engen_pg_gp,
real(r_kind), intent(in)  engen_ag_ga,
real(r_kind), intent(in)  engen_np_pn,
real(r_kind), intent(in)  engen_an_na,
real(r_kind), intent(in)  engen_ap_pa,
real(r_kind), intent(in)  engen_beta,
real(r_kind), intent(in)  engen_fiss,
real(r_kind), dimension(net_size), intent(in)  det_bet_engen,
real(r_kind), dimension(net_size), intent(in)  det_ag_engen,
real(r_kind), dimension(net_size), intent(in)  det_pg_engen,
real(r_kind), dimension(net_size), intent(in)  det_ng_engen,
real(r_kind), dimension(net_size), intent(in)  det_pn_engen,
real(r_kind), dimension(net_size), intent(in)  det_ap_engen,
real(r_kind), dimension(net_size), intent(in)  det_an_engen,
real(r_kind), dimension(net_size), intent(in)  det_other_engen,
real(r_kind), dimension(net_size), intent(in)  det_fiss_engen,
real(r_kind), dimension(net_size), intent(in)  det_tot_engen,
logical, intent(in)  include_decay 
)

Subroutine to write the energy generation per reaction type.

Author
Moritz Reichert
Date
22.03.21
Parameters
[in]timeTime [s]
[in]engen_pg_gpEnergy generation [erg/g/s]
[in]engen_an_naEnergy generation [erg/g/s]
[in]engen_fissEnergy generation [erg/g/s]
[in]det_fiss_engenEnergy generation [erg/g/s]
[in]det_tot_engenEnergy generation [erg/g/s]
[in]include_decayWrite engen_decay_parents?

Definition at line 657 of file hdf5_module.f90.

Here is the call graph for this function:

◆ extend_flow()

subroutine, public hdf5_module::extend_flow ( real(r_kind), intent(in)  time,
real(r_kind), intent(in)  temp,
real(r_kind), intent(in)  dens,
type(flow_vector), dimension(n_flows), intent(in)  flow,
integer, intent(in)  n_flows,
real(r_kind), dimension(net_size), intent(in)  Y 
)

Extend the flow in the file With every call a new group is created and the flows are written in this group. The group is named after the calls (the third call is then located in flows/3)

Parameters
[in]timeValue of the time
[in]tempValue of the time
[in]densValue of the time
[in]n_flowsMaximum number of flows
[in]flowArray with already calculated flows
[in]yArray with abundances

Definition at line 761 of file hdf5_module.f90.

Here is the call graph for this function:

◆ extend_hdf5_y()

subroutine, private hdf5_module::extend_hdf5_y ( integer(hid_t), intent(in)  dset_id,
real(r_kind), dimension(nr_nuc,chunksize), intent(in)  Y_array,
integer, intent(in)  nr_nuc,
integer, intent(in)  old_size,
integer, intent(in)  chunksize 
)
private

Extend the Y dataset for the net timestep.

The dimension of this is given by global_class::net_size and the current iteration iter.

See also
extend_1d_dataset, extend_1d_int_dataset
Author
Moritz Reichert
Date
28.01.21
Parameters
[in]dset_idDataset identifier
[in]nr_nucAmount of abundances
[in]old_sizeOld length of arrays
[in]chunksizeSize of the chunk
[in]y_arrayAbundance array to store

Definition at line 2045 of file hdf5_module.f90.

◆ extend_mainout()

subroutine, public hdf5_module::extend_mainout ( integer, intent(in)  cnt,
real(r_kind), intent(in)  time,
real(r_kind), intent(in)  temp,
real(r_kind), intent(in)  dens,
real(r_kind), intent(in)  entr,
real(r_kind), intent(in)  rad,
real(r_kind), dimension(net_size), intent(in)  Y 
)

Write the mainout data to the hdf5.

This will write the iteration, time (s), temperature (GK), density (g/ccm), entropy(kB/nuc), radius (km), Ye, Yn, Yp, Ya, Ylight, Yheavy, abar, and zbar.

Author
Moritz Reichert
Date
5.02.21
Parameters
[in]cntIteration count
[in]timeTime [s]
[in]tempTemperature [GK]
[in]densDensity [g/ccm]
[in]entrEntropy [kB/nuc]
[in]radRadius [km]
[in]yAbundances

Definition at line 1916 of file hdf5_module.f90.

Here is the call graph for this function:

◆ extend_nu_loss_gain()

subroutine, public hdf5_module::extend_nu_loss_gain ( real(r_kind), intent(in)  time,
real(r_kind), intent(in)  temp,
real(r_kind), intent(in)  dens,
real(r_kind), intent(in)  rad,
real(r_kind), intent(in)  the,
real(r_kind), intent(in)  heat,
real(r_kind), intent(in)  bet 
)

Write neutrino gain and loss.

These values are stored in a separate group (called snapshots) that is initialized in init_hdf5_module.

Author
Moritz Reichert
Date
12.04.23
Parameters
[in]timeTime [s]
[in]tempTemperature [GK]
[in]densDensity [g/cm^3]
[in]radRadius [km]
[in]theNeutrino gain/loss thermal [MeV/baryon/s]
[in]heatNeutrino gain/loss heating [MeV/baryon/s]
[in]betNeutrino gain/loss beta decay [MeV/baryon/s]

Definition at line 414 of file hdf5_module.f90.

Here is the call graph for this function:

◆ extend_snaps()

subroutine, public hdf5_module::extend_snaps ( real(r_kind), intent(in)  time,
real(r_kind), dimension(net_size), intent(in)  Y_array 
)

Write abundances and time into the hdf5 file.

These values are stored in a separate group (called snapshots) that is initialized in init_hdf5_module.

Author
Moritz Reichert
Date
5.02.21
Parameters
[in]y_arrayAbundance to store
[in]timeTime [s]

Definition at line 1865 of file hdf5_module.f90.

Here is the call graph for this function:

◆ extend_track_nuclei()

subroutine, public hdf5_module::extend_track_nuclei ( real(r_kind), intent(in)  time,
real(r_kind), dimension(net_size), intent(in)  Y_array 
)

Write tracked abundances and time into the hdf5 file.

These values are stored in a separate group (called tracked_nuclei) that is initialized in init_hdf5_module.

Author
Moritz Reichert
Date
5.02.21
Parameters
[in]y_arrayAbundance to store
[in]timeTime [s]

Definition at line 1806 of file hdf5_module.f90.

Here is the call graph for this function:

◆ hdf5_module_finalize()

subroutine, public hdf5_module::hdf5_module_finalize

Finalize the hdf5 module.

This subroutine closes all datasets, dataspaces, files and other things.

Author
Moritz Reichert
Date
28.01.21

Definition at line 2090 of file hdf5_module.f90.

Here is the call graph for this function:

◆ init_av_timescales()

subroutine, private hdf5_module::init_av_timescales
private

Initialize the timescales hdf5 group.

This subroutine creates a timescales group and creates the dataspaces for all included timescales and the time.

Definition at line 1130 of file hdf5_module.f90.

Here is the call graph for this function:

◆ init_engen()

subroutine, private hdf5_module::init_engen ( logical, intent(in)  include_decay)
private

Initialize energy generation output.

Parameters
[in]include_decayFlag that determines if decay energy per parent is written

Definition at line 477 of file hdf5_module.f90.

Here is the call graph for this function:

◆ init_flow()

subroutine, private hdf5_module::init_flow
private

Initialize the flow output.

Definition at line 366 of file hdf5_module.f90.

Here is the call graph for this function:

◆ init_hdf5_module()

subroutine, public hdf5_module::init_hdf5_module

Initialize the hdf5 module.

Create the file and the datasets. Furthermore, initialize arrays.

Author
Moritz Reichert
Date
28.01.21

Definition at line 292 of file hdf5_module.f90.

Here is the call graph for this function:

◆ init_mainout()

subroutine, private hdf5_module::init_mainout
private

Initialize the mainout hdf5 group.

This subroutine creates a mainout group and creates the dataspaces for all included quantities.

Definition at line 987 of file hdf5_module.f90.

Here is the call graph for this function:

◆ init_nu_loss_gain()

subroutine, private hdf5_module::init_nu_loss_gain
private

Initialize neutrino loss/gain output.

Definition at line 382 of file hdf5_module.f90.

Here is the call graph for this function:

◆ init_snaps()

subroutine, private hdf5_module::init_snaps
private

Initialize the snapshot hdf5 group.

This subroutine creates a snapshot group and writes mass number proton number and neutron number into it. Furthermore, it creates a dataspace for the abundances and the time. In addition a array that stores the abundances is initialized. This array is used to create larger chunks and reduce the IO when writing to the file on the cost of memory usage.

Definition at line 883 of file hdf5_module.f90.

Here is the call graph for this function:

◆ init_track_nuclei()

subroutine, private hdf5_module::init_track_nuclei
private

Initialize the tracked_nuclei hdf5 group.

This subroutine creates a tracked_nuclei group and creates the dataspaces for all included abundances and the time. Furthermore, it allocates a array to store the abundances over several iterations.

Definition at line 1034 of file hdf5_module.f90.

Here is the call graph for this function:

◆ write_av_timescales()

subroutine, private hdf5_module::write_av_timescales
private

Write average timescales and time into the hdf5 file.

These values are stored in a separate group (called timescales) that is initialized in init_hdf5_module.

Author
Moritz Reichert
Date
5.02.21

Definition at line 1783 of file hdf5_module.f90.

Here is the call graph for this function:

◆ write_engen()

subroutine, private hdf5_module::write_engen ( logical, intent(in)  include_decay)
private

Write energy generations and time into the hdf5 file.

These values are stored in a separate group (called energy) that is initialized in init_hdf5_module.

Author
Moritz Reichert
Date
22.03.21
Parameters
[in]include_decayWrite engen_decay?

Definition at line 721 of file hdf5_module.f90.

Here is the call graph for this function:

◆ write_finab()

subroutine, public hdf5_module::write_finab ( real(r_kind), dimension(net_size), intent(in)  Y)

Write final abundances into hdf5 file.

This routine writes the final abundances of all nuclei (group:finab/finab), the final abundances summed over mass number (group:finab/finabsum), and the final abundances summed over equal proton numbers (group:finab/finabelem). These entries are similar to the ascii version the output (finabelem.dat,..)

Author
M. Reichert
Date
05.03.21
Parameters
[in]yAbundances

Definition at line 1216 of file hdf5_module.f90.

Here is the call graph for this function:

◆ write_mainout_data()

subroutine, private hdf5_module::write_mainout_data
private

Write the mainout data into a file.

When this subroutine is called depends on the chunk size.

Author
Moritz Reichert
Date
09.02.21

Definition at line 1984 of file hdf5_module.f90.

Here is the call graph for this function:

◆ write_nu_loss_gain()

subroutine, private hdf5_module::write_nu_loss_gain
private

Write the neutrino loss/gain into the hdf5 file.

These values are stored in a separate group (called nu_loss_gain) that is initialized in init_hdf5_module.

Author
Moritz Reichert
Date
12.04.23

Definition at line 453 of file hdf5_module.f90.

Here is the call graph for this function:

◆ write_snaps()

subroutine, private hdf5_module::write_snaps
private

Write the abundances of all nuclei into a file.

When this subroutine is called depends on the chunk size.

Author
Moritz Reichert
Date
09.02.21

Definition at line 1890 of file hdf5_module.f90.

Here is the call graph for this function:

◆ write_track_data()

subroutine, private hdf5_module::write_track_data
private

Write the abundances of track nuclei into a file.

When this subroutine is called depends on the chunk size.

Author
Moritz Reichert
Date
09.02.21

Definition at line 1838 of file hdf5_module.f90.

Here is the call graph for this function:

◆ write_units()

subroutine, private hdf5_module::write_units
private

Write the units of the individual entries into the hdf5 file.

For example:
Temperature - GK
Entropy - kB/nuc

Note
This subroutine is never used
Author
Moritz Reichert
Date
28.01.21

Definition at line 1162 of file hdf5_module.f90.

Variable Documentation

◆ chunk_counter_en

integer, private hdf5_module::chunk_counter_en = 0
private

How full is the chunk already?

Definition at line 178 of file hdf5_module.f90.

◆ chunk_counter_mainout

integer, private hdf5_module::chunk_counter_mainout = 0
private

How full is the chunk already?

Definition at line 80 of file hdf5_module.f90.

◆ chunk_counter_nuloss

integer, private hdf5_module::chunk_counter_nuloss = 0
private

How full is the chunk already?

Definition at line 226 of file hdf5_module.f90.

◆ chunk_counter_snaps

integer, private hdf5_module::chunk_counter_snaps = 0
private

How full is the chunk already?

Definition at line 57 of file hdf5_module.f90.

◆ chunk_counter_track

integer, private hdf5_module::chunk_counter_track = 0
private

How full is the chunk already?

Definition at line 137 of file hdf5_module.f90.

◆ chunk_counter_ts

integer, private hdf5_module::chunk_counter_ts = 0
private

How full is the chunk already?

Definition at line 156 of file hdf5_module.f90.

◆ chunk_size_en

integer, parameter, private hdf5_module::chunk_size_en =500
private

Chunk size.

Definition at line 179 of file hdf5_module.f90.

◆ chunk_size_mainout

integer, parameter, private hdf5_module::chunk_size_mainout =500
private

Chunk size.

Definition at line 81 of file hdf5_module.f90.

◆ chunk_size_nuloss

integer, parameter, private hdf5_module::chunk_size_nuloss =500
private

Chunk size.

Definition at line 227 of file hdf5_module.f90.

◆ chunk_size_snaps

integer, parameter, private hdf5_module::chunk_size_snaps =200
private

Chunk size.

Definition at line 58 of file hdf5_module.f90.

◆ chunk_size_track

integer, parameter, private hdf5_module::chunk_size_track =500
private

Chunk size.

Definition at line 138 of file hdf5_module.f90.

◆ chunk_size_ts

integer, parameter, private hdf5_module::chunk_size_ts =500
private

Chunk size.

Definition at line 157 of file hdf5_module.f90.

◆ chunk_store_en

real(r_kind), dimension(chunk_size_en,11), private hdf5_module::chunk_store_en
private

Temporary storage for energy generation.

Definition at line 180 of file hdf5_module.f90.

◆ chunk_store_en_ag

real(r_kind), dimension(:,:), allocatable, private hdf5_module::chunk_store_en_ag
private

Definition at line 182 of file hdf5_module.f90.

◆ chunk_store_en_an

real(r_kind), dimension(:,:), allocatable, private hdf5_module::chunk_store_en_an
private

Definition at line 182 of file hdf5_module.f90.

◆ chunk_store_en_ap

real(r_kind), dimension(:,:), allocatable, private hdf5_module::chunk_store_en_ap
private

Definition at line 182 of file hdf5_module.f90.

◆ chunk_store_en_bet

real(r_kind), dimension(:,:), allocatable, private hdf5_module::chunk_store_en_bet
private

Definition at line 182 of file hdf5_module.f90.

◆ chunk_store_en_fiss

real(r_kind), dimension(:,:), allocatable, private hdf5_module::chunk_store_en_fiss
private

Definition at line 182 of file hdf5_module.f90.

◆ chunk_store_en_ng

real(r_kind), dimension(:,:), allocatable, private hdf5_module::chunk_store_en_ng
private

Definition at line 182 of file hdf5_module.f90.

◆ chunk_store_en_other

real(r_kind), dimension(:,:), allocatable, private hdf5_module::chunk_store_en_other
private

Definition at line 182 of file hdf5_module.f90.

◆ chunk_store_en_pg

real(r_kind), dimension(:,:), allocatable, private hdf5_module::chunk_store_en_pg
private

Definition at line 182 of file hdf5_module.f90.

◆ chunk_store_en_pn

real(r_kind), dimension(:,:), allocatable, private hdf5_module::chunk_store_en_pn
private

Definition at line 182 of file hdf5_module.f90.

◆ chunk_store_en_tot

real(r_kind), dimension(:,:), allocatable, private hdf5_module::chunk_store_en_tot
private

Definition at line 182 of file hdf5_module.f90.

◆ chunk_store_int_mainout

integer, dimension(chunk_size_mainout), private hdf5_module::chunk_store_int_mainout
private

Storage for integers in chunk which is later written to the file.

Definition at line 85 of file hdf5_module.f90.

◆ chunk_store_mainout

real(r_kind), dimension(chunk_size_mainout,13), private hdf5_module::chunk_store_mainout
private

Storage for the chunk which is later written to the file.

Definition at line 82 of file hdf5_module.f90.

◆ chunk_store_nuloss_bet

real(r_kind), dimension(chunk_size_nuloss), private hdf5_module::chunk_store_nuloss_bet
private

Definition at line 228 of file hdf5_module.f90.

◆ chunk_store_nuloss_dens

real(r_kind), dimension(chunk_size_nuloss), private hdf5_module::chunk_store_nuloss_dens
private

Definition at line 228 of file hdf5_module.f90.

◆ chunk_store_nuloss_heat

real(r_kind), dimension(chunk_size_nuloss), private hdf5_module::chunk_store_nuloss_heat
private

Definition at line 228 of file hdf5_module.f90.

◆ chunk_store_nuloss_nut

real(r_kind), dimension(chunk_size_nuloss), private hdf5_module::chunk_store_nuloss_nut
private

Definition at line 228 of file hdf5_module.f90.

◆ chunk_store_nuloss_rad

real(r_kind), dimension(chunk_size_nuloss), private hdf5_module::chunk_store_nuloss_rad
private

Definition at line 228 of file hdf5_module.f90.

◆ chunk_store_nuloss_t

real(r_kind), dimension(chunk_size_nuloss), private hdf5_module::chunk_store_nuloss_t
private

Definition at line 228 of file hdf5_module.f90.

◆ chunk_store_nuloss_temp

real(r_kind), dimension(chunk_size_nuloss), private hdf5_module::chunk_store_nuloss_temp
private

Definition at line 228 of file hdf5_module.f90.

◆ chunk_store_nuloss_the

real(r_kind), dimension(chunk_size_nuloss), private hdf5_module::chunk_store_nuloss_the
private

Definition at line 228 of file hdf5_module.f90.

◆ chunk_store_snaps_time

real(r_kind), dimension(chunk_size_snaps), private hdf5_module::chunk_store_snaps_time
private

Storage for the chunk which is later written to the file.

Definition at line 59 of file hdf5_module.f90.

◆ chunk_store_snaps_y

real(r_kind), dimension(:,:), allocatable, private hdf5_module::chunk_store_snaps_y
private

Storage for the chunk which is later written to the file.

Definition at line 62 of file hdf5_module.f90.

◆ chunk_store_track

real(r_kind), dimension(:,:), allocatable, private hdf5_module::chunk_store_track
private

Temporary storage for tracked nuclei.

Definition at line 139 of file hdf5_module.f90.

◆ chunk_store_ts

real(r_kind), dimension(chunk_size_ts,18), private hdf5_module::chunk_store_ts
private

Temporary storage for average timescales.

Definition at line 158 of file hdf5_module.f90.

◆ crp_list

integer(hid_t), private hdf5_module::crp_list
private

Dataset creation property identifier.

Definition at line 48 of file hdf5_module.f90.

◆ dataspace

integer(hid_t), private hdf5_module::dataspace
private

Dataspace identifier.

Definition at line 47 of file hdf5_module.f90.

◆ dims_1d

integer(hsize_t), dimension(1), private hdf5_module::dims_1d =(/1/)
private

Helper variable to specify 1 dimension.

Definition at line 46 of file hdf5_module.f90.

◆ dims_track

integer(hsize_t), dimension(1:2), private hdf5_module::dims_track
private

Array dimensions.

Definition at line 146 of file hdf5_module.f90.

◆ dims_y

integer(hsize_t), dimension(1:2), private hdf5_module::dims_y
private

Array dimensions (net_size)

Definition at line 69 of file hdf5_module.f90.

◆ dset_id_y

integer(hid_t), private hdf5_module::dset_id_y
private

Dataset identifier.

Definition at line 67 of file hdf5_module.f90.

◆ dsetname_u

character(len=*), parameter, private hdf5_module::dsetname_u = "Units"
private

Name of the units dataset.

Definition at line 43 of file hdf5_module.f90.

◆ dsetname_y

character(len=*), parameter, private hdf5_module::dsetname_y = "Y"
private

Name of the dataset.

Definition at line 68 of file hdf5_module.f90.

◆ en_det_ag_id

integer(hid_t), private hdf5_module::en_det_ag_id
private

Definition at line 205 of file hdf5_module.f90.

◆ en_det_ag_name

character(len=14), private hdf5_module::en_det_ag_name ="detailed (a,g)"
private

Definition at line 199 of file hdf5_module.f90.

◆ en_det_an_id

integer(hid_t), private hdf5_module::en_det_an_id
private

Definition at line 205 of file hdf5_module.f90.

◆ en_det_an_name

character(len=14), private hdf5_module::en_det_an_name ="detailed (a,n)"
private

Definition at line 199 of file hdf5_module.f90.

◆ en_det_ap_id

integer(hid_t), private hdf5_module::en_det_ap_id
private

Definition at line 205 of file hdf5_module.f90.

◆ en_det_ap_name

character(len=14), private hdf5_module::en_det_ap_name ="detailed (a,p)"
private

Definition at line 199 of file hdf5_module.f90.

◆ en_det_bet_id

integer(hid_t), private hdf5_module::en_det_bet_id
private

Definition at line 205 of file hdf5_module.f90.

◆ en_det_bet_name

character(len=14), private hdf5_module::en_det_bet_name ="detailed decay"
private

Definition at line 199 of file hdf5_module.f90.

◆ en_det_fiss_id

integer(hid_t), private hdf5_module::en_det_fiss_id
private

Definition at line 205 of file hdf5_module.f90.

◆ en_det_fiss_name

character(len=14), private hdf5_module::en_det_fiss_name ="detailed fiss "
private

Definition at line 199 of file hdf5_module.f90.

◆ en_det_ng_id

integer(hid_t), private hdf5_module::en_det_ng_id
private

Definition at line 205 of file hdf5_module.f90.

◆ en_det_ng_name

character(len=14), private hdf5_module::en_det_ng_name ="detailed (n,g)"
private

Definition at line 199 of file hdf5_module.f90.

◆ en_det_other_id

integer(hid_t), private hdf5_module::en_det_other_id
private

Definition at line 205 of file hdf5_module.f90.

◆ en_det_other_name

character(len=14), private hdf5_module::en_det_other_name ="detailed other"
private

Definition at line 199 of file hdf5_module.f90.

◆ en_det_pg_id

integer(hid_t), private hdf5_module::en_det_pg_id
private

Definition at line 205 of file hdf5_module.f90.

◆ en_det_pg_name

character(len=14), private hdf5_module::en_det_pg_name ="detailed (p,g)"
private

Definition at line 199 of file hdf5_module.f90.

◆ en_det_pn_id

integer(hid_t), private hdf5_module::en_det_pn_id
private

Definition at line 205 of file hdf5_module.f90.

◆ en_det_pn_name

character(len=14), private hdf5_module::en_det_pn_name ="detailed (p,n)"
private

Definition at line 199 of file hdf5_module.f90.

◆ en_det_tot_id

integer(hid_t), private hdf5_module::en_det_tot_id
private

Definition at line 205 of file hdf5_module.f90.

◆ en_det_tot_name

character(len=14), private hdf5_module::en_det_tot_name ="detailed total"
private

Definition at line 199 of file hdf5_module.f90.

◆ en_dset_id_t

integer(hid_t), private hdf5_module::en_dset_id_t
private

Dataset identifier.

Definition at line 190 of file hdf5_module.f90.

◆ en_dsetname_t

character(len=*), parameter, private hdf5_module::en_dsetname_t = "time"
private

Name of the dataset.

Definition at line 189 of file hdf5_module.f90.

◆ en_group_id

integer(hid_t), private hdf5_module::en_group_id
private

The ID of the group.

Definition at line 174 of file hdf5_module.f90.

◆ en_names

character(len=11), dimension(10), private hdf5_module::en_names = (/"engen_tot ","S_src ","engen_ng_gn","engen_pg_gp","engen_ag_ga", "engen_np_pn","engen_an_na","engen_ap_pa","engen_beta ", "engen_fiss "/)
private

Name of the energy generations.

Definition at line 192 of file hdf5_module.f90.

◆ en_reac_ids

integer(hid_t), dimension(10), private hdf5_module::en_reac_ids
private

Dataset identifier.

Definition at line 197 of file hdf5_module.f90.

◆ file_id

integer(hid_t), private hdf5_module::file_id
private

File identifier.

Definition at line 37 of file hdf5_module.f90.

◆ finab_group_id

integer(hid_t), private hdf5_module::finab_group_id
private

The ID of the group.

Definition at line 264 of file hdf5_module.f90.

◆ flow_dset_id_t

integer(hid_t), private hdf5_module::flow_dset_id_t
private

Dataset identifier.

Definition at line 218 of file hdf5_module.f90.

◆ flow_dsetname_t

character(len=*), parameter, private hdf5_module::flow_dsetname_t = "time"
private

Name of the dataset.

Definition at line 217 of file hdf5_module.f90.

◆ flow_group_id

integer(hid_t), private hdf5_module::flow_group_id
private

The ID of the group.

Definition at line 212 of file hdf5_module.f90.

◆ hdf5_filename

character(len=20), private hdf5_module::hdf5_filename ="WinNet_data.h5"
private

Name of the hdf5 file.

Definition at line 38 of file hdf5_module.f90.

◆ hdf5_output

logical, private hdf5_module::hdf5_output =.False.
private

Definition at line 41 of file hdf5_module.f90.

◆ iter_en

integer, private hdf5_module::iter_en = 0
private

Iteration count, how often was already extended to the datasets?

Definition at line 175 of file hdf5_module.f90.

◆ iter_flow

integer, private hdf5_module::iter_flow = 0
private

Iteration count, how often was already extended to the datasets?

Definition at line 213 of file hdf5_module.f90.

◆ iter_mainout

integer, private hdf5_module::iter_mainout = 0
private

Iteration count, how often was already extended to the datasets?

Definition at line 77 of file hdf5_module.f90.

◆ iter_nuloss

integer, private hdf5_module::iter_nuloss = 0
private

Iteration count, how often was already extended to the datasets?

Definition at line 223 of file hdf5_module.f90.

◆ iter_snaps

integer, private hdf5_module::iter_snaps = 0
private

Iteration count, how often was already extended to the datasets?

Definition at line 54 of file hdf5_module.f90.

◆ iter_tracked

integer, private hdf5_module::iter_tracked = 0
private

Iteration count, how often was already extended to the datasets?

Definition at line 134 of file hdf5_module.f90.

◆ iter_ts

integer, private hdf5_module::iter_ts = 0
private

Iteration count, how often was already extended to the datasets?

Definition at line 153 of file hdf5_module.f90.

◆ mainout_dset_id_abar

integer(hid_t), private hdf5_module::mainout_dset_id_abar
private

Dataset identifier.

Definition at line 126 of file hdf5_module.f90.

◆ mainout_dset_id_dens

integer(hid_t), private hdf5_module::mainout_dset_id_dens
private

Dataset identifier.

Definition at line 99 of file hdf5_module.f90.

◆ mainout_dset_id_entr

integer(hid_t), private hdf5_module::mainout_dset_id_entr
private

Dataset identifier.

Definition at line 102 of file hdf5_module.f90.

◆ mainout_dset_id_iter

integer(hid_t), private hdf5_module::mainout_dset_id_iter
private

Dataset identifier.

Definition at line 90 of file hdf5_module.f90.

◆ mainout_dset_id_rad

integer(hid_t), private hdf5_module::mainout_dset_id_rad
private

Dataset identifier.

Definition at line 105 of file hdf5_module.f90.

◆ mainout_dset_id_t

integer(hid_t), private hdf5_module::mainout_dset_id_t
private

Dataset identifier.

Definition at line 93 of file hdf5_module.f90.

◆ mainout_dset_id_temp

integer(hid_t), private hdf5_module::mainout_dset_id_temp
private

Dataset identifier.

Definition at line 96 of file hdf5_module.f90.

◆ mainout_dset_id_ya

integer(hid_t), private hdf5_module::mainout_dset_id_ya
private

Dataset identifier.

Definition at line 117 of file hdf5_module.f90.

◆ mainout_dset_id_ye

integer(hid_t), private hdf5_module::mainout_dset_id_ye
private

Dataset identifier.

Definition at line 108 of file hdf5_module.f90.

◆ mainout_dset_id_yheavy

integer(hid_t), private hdf5_module::mainout_dset_id_yheavy
private

Dataset identifier.

Definition at line 123 of file hdf5_module.f90.

◆ mainout_dset_id_ylight

integer(hid_t), private hdf5_module::mainout_dset_id_ylight
private

Dataset identifier.

Definition at line 120 of file hdf5_module.f90.

◆ mainout_dset_id_yn

integer(hid_t), private hdf5_module::mainout_dset_id_yn
private

Dataset identifier.

Definition at line 111 of file hdf5_module.f90.

◆ mainout_dset_id_yp

integer(hid_t), private hdf5_module::mainout_dset_id_yp
private

Dataset identifier.

Definition at line 114 of file hdf5_module.f90.

◆ mainout_dset_id_zbar

integer(hid_t), private hdf5_module::mainout_dset_id_zbar
private

Dataset identifier.

Definition at line 129 of file hdf5_module.f90.

◆ mainout_dsetname_abar

character(len=*), parameter, private hdf5_module::mainout_dsetname_abar = "abar"
private

Name of the dataset.

Definition at line 125 of file hdf5_module.f90.

◆ mainout_dsetname_dens

character(len=*), parameter, private hdf5_module::mainout_dsetname_dens = "dens"
private

Name of the dataset.

Definition at line 98 of file hdf5_module.f90.

◆ mainout_dsetname_entr

character(len=*), parameter, private hdf5_module::mainout_dsetname_entr = "entr"
private

Name of the dataset.

Definition at line 101 of file hdf5_module.f90.

◆ mainout_dsetname_iter

character(len=*), parameter, private hdf5_module::mainout_dsetname_iter = "iteration"
private

Name of the dataset.

Definition at line 89 of file hdf5_module.f90.

◆ mainout_dsetname_rad

character(len=*), parameter, private hdf5_module::mainout_dsetname_rad = "rad"
private

Name of the dataset.

Definition at line 104 of file hdf5_module.f90.

◆ mainout_dsetname_t

character(len=*), parameter, private hdf5_module::mainout_dsetname_t = "time"
private

Name of the dataset.

Definition at line 92 of file hdf5_module.f90.

◆ mainout_dsetname_temp

character(len=*), parameter, private hdf5_module::mainout_dsetname_temp = "temp"
private

Name of the dataset.

Definition at line 95 of file hdf5_module.f90.

◆ mainout_dsetname_ya

character(len=*), parameter, private hdf5_module::mainout_dsetname_ya = "ya"
private

Name of the dataset.

Definition at line 116 of file hdf5_module.f90.

◆ mainout_dsetname_ye

character(len=*), parameter, private hdf5_module::mainout_dsetname_ye = "ye"
private

Name of the dataset.

Definition at line 107 of file hdf5_module.f90.

◆ mainout_dsetname_yheavy

character(len=*), parameter, private hdf5_module::mainout_dsetname_yheavy = "yheavy"
private

Name of the dataset.

Definition at line 122 of file hdf5_module.f90.

◆ mainout_dsetname_ylight

character(len=*), parameter, private hdf5_module::mainout_dsetname_ylight = "ylight"
private

Name of the dataset.

Definition at line 119 of file hdf5_module.f90.

◆ mainout_dsetname_yn

character(len=*), parameter, private hdf5_module::mainout_dsetname_yn = "yn"
private

Name of the dataset.

Definition at line 110 of file hdf5_module.f90.

◆ mainout_dsetname_yp

character(len=*), parameter, private hdf5_module::mainout_dsetname_yp = "yp"
private

Name of the dataset.

Definition at line 113 of file hdf5_module.f90.

◆ mainout_dsetname_zbar

character(len=*), parameter, private hdf5_module::mainout_dsetname_zbar = "zbar"
private

Name of the dataset.

Definition at line 128 of file hdf5_module.f90.

◆ mainout_group_id

integer(hid_t), private hdf5_module::mainout_group_id
private

The ID of the group.

Definition at line 76 of file hdf5_module.f90.

◆ maxdims

integer(hsize_t), dimension(1:2), private hdf5_module::maxdims
private

Maximum dimensions (later set to unlimited)

Definition at line 49 of file hdf5_module.f90.

◆ nuloss_dset_id_bet

integer(hid_t), private hdf5_module::nuloss_dset_id_bet
private

Dataset identifier.

Definition at line 254 of file hdf5_module.f90.

◆ nuloss_dset_id_dens

integer(hid_t), private hdf5_module::nuloss_dset_id_dens
private

Dataset identifier.

Definition at line 245 of file hdf5_module.f90.

◆ nuloss_dset_id_heat

integer(hid_t), private hdf5_module::nuloss_dset_id_heat
private

Dataset identifier.

Definition at line 260 of file hdf5_module.f90.

◆ nuloss_dset_id_nut

integer(hid_t), private hdf5_module::nuloss_dset_id_nut
private

Dataset identifier.

Definition at line 251 of file hdf5_module.f90.

◆ nuloss_dset_id_rad

integer(hid_t), private hdf5_module::nuloss_dset_id_rad
private

Dataset identifier.

Definition at line 248 of file hdf5_module.f90.

◆ nuloss_dset_id_t

integer(hid_t), private hdf5_module::nuloss_dset_id_t
private

Dataset identifier.

Definition at line 239 of file hdf5_module.f90.

◆ nuloss_dset_id_temp

integer(hid_t), private hdf5_module::nuloss_dset_id_temp
private

Dataset identifier.

Definition at line 242 of file hdf5_module.f90.

◆ nuloss_dset_id_the

integer(hid_t), private hdf5_module::nuloss_dset_id_the
private

Dataset identifier.

Definition at line 257 of file hdf5_module.f90.

◆ nuloss_dsetname_bet

character(len=*), parameter, private hdf5_module::nuloss_dsetname_bet = "nu_beta"
private

Name of the dataset.

Definition at line 253 of file hdf5_module.f90.

◆ nuloss_dsetname_dens

character(len=*), parameter, private hdf5_module::nuloss_dsetname_dens = "dens"
private

Name of the dataset.

Definition at line 244 of file hdf5_module.f90.

◆ nuloss_dsetname_heat

character(len=*), parameter, private hdf5_module::nuloss_dsetname_heat = "nu_heat"
private

Name of the dataset.

Definition at line 259 of file hdf5_module.f90.

◆ nuloss_dsetname_nut

character(len=*), parameter, private hdf5_module::nuloss_dsetname_nut = "nu_total"
private

Name of the dataset.

Definition at line 250 of file hdf5_module.f90.

◆ nuloss_dsetname_rad

character(len=*), parameter, private hdf5_module::nuloss_dsetname_rad = "rad"
private

Name of the dataset.

Definition at line 247 of file hdf5_module.f90.

◆ nuloss_dsetname_t

character(len=*), parameter, private hdf5_module::nuloss_dsetname_t = "time"
private

Name of the dataset.

Definition at line 238 of file hdf5_module.f90.

◆ nuloss_dsetname_temp

character(len=*), parameter, private hdf5_module::nuloss_dsetname_temp = "temp"
private

Name of the dataset.

Definition at line 241 of file hdf5_module.f90.

◆ nuloss_dsetname_the

character(len=*), parameter, private hdf5_module::nuloss_dsetname_the = "nu_thermal"
private

Name of the dataset.

Definition at line 256 of file hdf5_module.f90.

◆ nuloss_group_id

integer(hid_t), private hdf5_module::nuloss_group_id
private

The ID of the group.

Definition at line 222 of file hdf5_module.f90.

◆ snaps_dset_id_t

integer(hid_t), private hdf5_module::snaps_dset_id_t
private

Dataset identifier.

Definition at line 72 of file hdf5_module.f90.

◆ snaps_dsetname_t

character(len=*), parameter, private hdf5_module::snaps_dsetname_t = "time"
private

Name of the dataset.

Definition at line 71 of file hdf5_module.f90.

◆ snaps_group_id

integer(hid_t), private hdf5_module::snaps_group_id
private

The ID of the group.

Definition at line 53 of file hdf5_module.f90.

◆ track_group_id

integer(hid_t), private hdf5_module::track_group_id
private

The ID of the group.

Definition at line 133 of file hdf5_module.f90.

◆ tracked_abu_id

integer(hid_t), private hdf5_module::tracked_abu_id
private

Dataset identifier.

Definition at line 148 of file hdf5_module.f90.

◆ tracked_dset_id_t

integer(hid_t), private hdf5_module::tracked_dset_id_t
private

Dataset identifier.

Definition at line 144 of file hdf5_module.f90.

◆ tracked_dsetname_t

character(len=*), parameter, private hdf5_module::tracked_dsetname_t = "time"
private

Name of the dataset.

Definition at line 143 of file hdf5_module.f90.

◆ tracked_dsetname_y

character(len=*), parameter, private hdf5_module::tracked_dsetname_y = "Y"
private

Name of the dataset.

Definition at line 149 of file hdf5_module.f90.

◆ tracked_names

character(len=5), dimension(:), allocatable, private hdf5_module::tracked_names
private

Names of the tracked nuclei.

Definition at line 147 of file hdf5_module.f90.

◆ ts_dset_id_t

integer(hid_t), private hdf5_module::ts_dset_id_t
private

Dataset identifier.

Definition at line 163 of file hdf5_module.f90.

◆ ts_dsetname_t

character(len=*), parameter, private hdf5_module::ts_dsetname_t = "time"
private

Name of the dataset.

Definition at line 162 of file hdf5_module.f90.

◆ ts_group_id

integer(hid_t), private hdf5_module::ts_group_id
private

The ID of the group.

Definition at line 152 of file hdf5_module.f90.

◆ ts_names

character(len=9), dimension(17), private hdf5_module::ts_names = (/"tau_ga ","tau_ag ","tau_ng ","tau_gn ","tau_pg ","tau_gp ","tau_np ", "tau_pn ","tau_an ","tau_na ","tau_ap ","tau_pa ","tau_beta ","tau_alpha", "tau_nfiss","tau_sfiss","tau_bfiss"/)
private

Names of the timescales.

Definition at line 165 of file hdf5_module.f90.

◆ ts_reac_ids

integer(hid_t), dimension(17), private hdf5_module::ts_reac_ids
private

Dataset identifier.

Definition at line 170 of file hdf5_module.f90.