Neko 1.99.6
A portable framework for high-order spectral element flow simulations
Loading...
Searching...
No Matches
lpt_output::lpt_output_t Type Reference
Collaboration diagram for lpt_output::lpt_output_t:

Public Member Functions

procedure, pass(thisinit (this, output_path, inertia, snapshots_per_file)
 Initialise the LPT output writer.
 
procedure, pass(thisfree (this)
 Free the output writer and reset file/output counters.
 
procedure, pass(thiswrite (this, local_data, n_local)
 Write one trajectory snapshot.
 

Public Attributes

type(file_toutput_file
 
character(len=1024) output_path = ""
 
logical hdf5_output = .false.
 
logical inertia = .false.
 
integer snapshots_per_file = 0
 
integer snapshots_in_file = 0
 
integer output_file_index = 1
 
integer hdf5_output_count = 0
 
integer n_data = 0
 

Private Member Functions

procedure, pass(this), private init_file (this)
 Initialise the currently active LPT output file.
 
procedure, pass(this), private current_path (this, output_path)
 Get the active output path, adding a file index when chunked output is on.
 
procedure, pass(this), private init_hdf5 (this, output_path, inertia)
 Initialise an HDF5 LPT trajectory file.
 
procedure, pass(this), private write_csv (this, local_data, n_local)
 Write one trajectory snapshot to CSV by gathering particle data to rank 0.
 
procedure, pass(this), private write_hdf5 (this, local_data, n_local)
 Append one local LPT trajectory snapshot to an HDF5 file.
 

Detailed Description

Definition at line 46 of file lpt_output.f90.

Member Function/Subroutine Documentation

◆ current_path()

procedure, pass(this), private lpt_output::lpt_output_t::current_path ( class(lpt_output_t), intent(in this,
character(len=*), intent(out output_path 
)
private
Parameters
output_pathPath selected for the current output file.

Definition at line 61 of file lpt_output.f90.

◆ free()

procedure, pass(this) lpt_output::lpt_output_t::free ( class(lpt_output_t), intent(inout this)

Definition at line 58 of file lpt_output.f90.

◆ init()

procedure, pass(this) lpt_output::lpt_output_t::init ( class(lpt_output_t), intent(inout this,
character(len=*), intent(in output_path,
logical, intent(in inertia,
integer, intent(in snapshots_per_file 
)
Parameters
output_pathBase output path, including csv/hdf5 suffix.
inertiaWhether particle records include diameter and density.
snapshots_per_fileNumber of snapshots per file, or 0 for all.

Definition at line 57 of file lpt_output.f90.

◆ init_file()

procedure, pass(this), private lpt_output::lpt_output_t::init_file ( class(lpt_output_t), intent(inout this)
private

Definition at line 60 of file lpt_output.f90.

◆ init_hdf5()

procedure, pass(this), private lpt_output::lpt_output_t::init_hdf5 ( class(lpt_output_t), intent(inout this,
character(len=*), intent(in output_path,
logical, intent(in inertia 
)
private
Parameters
output_pathHDF5 file path to initialise.
inertiaWhether particle records include diameter and density.

Definition at line 62 of file lpt_output.f90.

◆ write()

procedure, pass(this) lpt_output::lpt_output_t::write ( class(lpt_output_t), intent(inout this,
real(kind=rp), dimension(this%n_data, n_local), intent(in local_data,
integer, intent(in n_local 
)
Parameters
local_dataParticle data owned by this rank.
n_localNumber of local particles.

Definition at line 59 of file lpt_output.f90.

◆ write_csv()

procedure, pass(this), private lpt_output::lpt_output_t::write_csv ( class(lpt_output_t), intent(inout this,
real(kind=rp), dimension(this%n_data, n_local), intent(in local_data,
integer, intent(in n_local 
)
private
Parameters
local_dataParticle data owned by this rank.
n_localNumber of local particles.

Definition at line 63 of file lpt_output.f90.

◆ write_hdf5()

procedure, pass(this), private lpt_output::lpt_output_t::write_hdf5 ( class(lpt_output_t), intent(inout this,
real(kind=rp), dimension(this%n_data, n_local), intent(in local_data,
integer, intent(in n_local 
)
private
Parameters
local_dataParticle data owned by this rank.
n_localNumber of local particles.

Definition at line 64 of file lpt_output.f90.

Member Data Documentation

◆ hdf5_output

logical lpt_output::lpt_output_t::hdf5_output = .false.

Definition at line 49 of file lpt_output.f90.

◆ hdf5_output_count

integer lpt_output::lpt_output_t::hdf5_output_count = 0

Definition at line 54 of file lpt_output.f90.

◆ inertia

logical lpt_output::lpt_output_t::inertia = .false.

Definition at line 50 of file lpt_output.f90.

◆ n_data

integer lpt_output::lpt_output_t::n_data = 0

Definition at line 55 of file lpt_output.f90.

◆ output_file

type(file_t) lpt_output::lpt_output_t::output_file

Definition at line 47 of file lpt_output.f90.

◆ output_file_index

integer lpt_output::lpt_output_t::output_file_index = 1

Definition at line 53 of file lpt_output.f90.

◆ output_path

character(len=1024) lpt_output::lpt_output_t::output_path = ""

Definition at line 48 of file lpt_output.f90.

◆ snapshots_in_file

integer lpt_output::lpt_output_t::snapshots_in_file = 0

Definition at line 52 of file lpt_output.f90.

◆ snapshots_per_file

integer lpt_output::lpt_output_t::snapshots_per_file = 0

Definition at line 51 of file lpt_output.f90.


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