Neko 1.99.3
A portable framework for high-order spectral element flow simulations
Loading...
Searching...
No Matches
fld_file_data::fld_file_data_t Type Reference
Collaboration diagram for fld_file_data::fld_file_data_t:

Public Member Functions

procedure, pass(thisinit (this, nelv, offset_el)
 Initializes a fld_file_data object.
 
procedure, pass(thisfree (this)
 Deallocate fld file data type.
 
procedure, pass(thisscale (this, c)
 Scale the values stored in this fld_file_data.
 
procedure, pass(thisadd (this, other)
 Add the values in another fld file to this.
 
procedure, pass(thissize (this)
 Get the number of initialized fields in this fld file.
 
procedure, pass(thisget_list (this, ptr_list, n)
 Get a list with pointers to the fields in the fld file.
 
procedure, pass(thisinit_same (this, fld_file, n)
 Genereate same fields as in another fld_file.
 
procedure, pass(thisinit_n_fields (this, n_fields, n)
 Generate same fields as in another fld_file.
 
procedure, pass(thisgenerate_interpolator (this, global_interp, to_dof, to_msh, tolerance)
 Generates a global_interpolation object to interpolate the fld data.
 
procedure, pass(thisimport_fields (this, u, v, w, p, t, s_target_list, s_index_list, interpolate, tolerance)
 Reads an fld file and import fields, with/without interpolation.
 

Public Attributes

type(vector_tx
 x-coordinates.
 
type(vector_ty
 y-coordinates.
 
type(vector_tz
 z-coordinates.
 
type(vector_tu
 x-velocity field.
 
type(vector_tv
 y-velocity field.
 
type(vector_tw
 z-velocity field.
 
type(vector_tp
 Pressure field.
 
type(vector_tt
 Temperature field.
 
integer, dimension(:), allocatable idx
 element indices.
 
type(vector_t), dimension(:), allocatable s
 Numbered scalar fields.
 
integer gdim
 Spatial dimensions.
 
integer n_scalars = 0
 Number of numbered scalar fields.
 
real(kind=rp) time = 0.0
 Time of latest sample/read.
 
integer glb_nelv = 0
 Global number of elements.
 
integer nelv = 0
 Number of elements on this rank.
 
integer offset_el = 0
 Element offset for this rank.
 
integer lx = 0
 Number of GLL points in x.
 
integer ly = 0
 Number of GLL points in y.
 
integer lz = 0
 Number of GLL points in z.
 
integer t_counter = 0
 counter of samples.
 
integer meta_nsamples = 0
 Number of samples specified in .nek5000 file.
 
integer meta_start_counter = 0
 Index of the first field file.
 
character(len=1024) fld_series_fname
 name of fld series as specified in .nek5000 (meta) file.
 

Detailed Description

Definition at line 25 of file fld_file_data.f90.

Member Function/Subroutine Documentation

◆ add()

procedure, pass(this) fld_file_data::fld_file_data_t::add ( class(fld_file_data_t), intent(inout this,
class(fld_file_data_t), intent(in other 
)

Definition at line 56 of file fld_file_data.f90.

◆ free()

procedure, pass(this) fld_file_data::fld_file_data_t::free ( class(fld_file_data_t), intent(inout this)

Definition at line 54 of file fld_file_data.f90.

◆ generate_interpolator()

procedure, pass(this) fld_file_data::fld_file_data_t::generate_interpolator ( class(fld_file_data_t), intent(in this,
type(global_interpolation_t), intent(inout global_interp,
type(dofmap_t), intent(in), target  to_dof,
type(mesh_t), intent(in), target  to_msh,
real(kind=rp), intent(in tolerance 
)
Parameters
global_interpGlobal interpolation object which will be initialized and ready to be used for interpolation.
to_dofDofmap on which to interpolate.
to_mshMesh on which to interpolate.
toleranceTolerance for the newton iterations.

Definition at line 62 of file fld_file_data.f90.

◆ get_list()

procedure, pass(this) fld_file_data::fld_file_data_t::get_list ( class(fld_file_data_t), intent(in), target  this,
type(vector_ptr_t), dimension(n), intent(inout ptr_list,
integer, intent(in n 
)

Definition at line 58 of file fld_file_data.f90.

◆ import_fields()

procedure, pass(this) fld_file_data::fld_file_data_t::import_fields ( class(fld_file_data_t), intent(inout this,
type(field_t), intent(inout), optional, pointer  u,
type(field_t), intent(inout), optional, pointer  v,
type(field_t), intent(inout), optional, pointer  w,
type(field_t), intent(inout), optional, pointer  p,
type(field_t), intent(inout), optional, pointer  t,
type(field_list_t), intent(inout), optional  s_target_list,
integer, dimension(:), intent(in), optional  s_index_list,
logical, intent(in), optional  interpolate,
real(kind=rp), intent(in), optional  tolerance 
)
Parameters
thisfld_data object. Must already be initialized, no checks are done.
uThe field on which to import the u component of the fld data.
vThe field on which to import the v component of the fld data.
wThe field on which to import the w component of the fld data.
pThe field on which to import the pressure field of the fld data.
tThe field on which to import the temperature field of the fld data.
s_target_listField list containing the fields on which to import the scalar fields of the fld data. Unless a list of target indices is provided in s_index_list, assigns field at position i in the list to scalar i in the fld file.
s_index_listThe list of scalars indices from which to load the fields provided in s_target_list. Must have the same size as s_target_list. For example, s_index_list = (/2,3/) will load scalar #2 in s_target_listitems(1) and scalar #3 in s_target_listitems(2). Index 0 corresponds to temperature by default. Therefore using s_index_list = (/0/) is equivalent to using the argument t=....
interpolateWhether or not to interpolate the fld data.
toleranceIf interpolation is enabled, the tolerance to use for the point finding.
Note
If interpolation is disabled, space-to-space interpolation is still performed within each element to allow for seamless change of polynomial order for the same given mesh.
Attention
No data movement between CPU and GPU is done in this subroutine. The required data must be copied manually beforehand (see import_field_utils.f90).

Definition at line 65 of file fld_file_data.f90.

◆ init()

procedure, pass(this) fld_file_data::fld_file_data_t::init ( class(fld_file_data_t), intent(inout this,
integer, intent(in), optional  nelv,
integer, intent(in), optional  offset_el 
)
Parameters
nelvNumber of elements (on this rank).
offset_elElement offset for this rank.

Definition at line 53 of file fld_file_data.f90.

◆ init_n_fields()

procedure, pass(this) fld_file_data::fld_file_data_t::init_n_fields ( class(fld_file_data_t), intent(inout), target  this,
integer, intent(in n_fields,
integer, intent(in n 
)

Definition at line 60 of file fld_file_data.f90.

◆ init_same()

procedure, pass(this) fld_file_data::fld_file_data_t::init_same ( class(fld_file_data_t), intent(inout), target  this,
class(fld_file_data_t), intent(in), target  fld_file,
integer, intent(in n 
)

Definition at line 59 of file fld_file_data.f90.

◆ scale()

procedure, pass(this) fld_file_data::fld_file_data_t::scale ( class(fld_file_data_t), intent(inout this,
real(kind=rp), intent(in c 
)

Definition at line 55 of file fld_file_data.f90.

◆ size()

procedure, pass(this) fld_file_data::fld_file_data_t::size ( class(fld_file_data_t this)

Definition at line 57 of file fld_file_data.f90.

Member Data Documentation

◆ fld_series_fname

character(len=1024) fld_file_data::fld_file_data_t::fld_series_fname

Definition at line 51 of file fld_file_data.f90.

◆ gdim

integer fld_file_data::fld_file_data_t::gdim

Definition at line 36 of file fld_file_data.f90.

◆ glb_nelv

integer fld_file_data::fld_file_data_t::glb_nelv = 0

Definition at line 39 of file fld_file_data.f90.

◆ idx

integer, dimension(:), allocatable fld_file_data::fld_file_data_t::idx

Definition at line 34 of file fld_file_data.f90.

◆ lx

integer fld_file_data::fld_file_data_t::lx = 0

Definition at line 42 of file fld_file_data.f90.

◆ ly

integer fld_file_data::fld_file_data_t::ly = 0

Definition at line 43 of file fld_file_data.f90.

◆ lz

integer fld_file_data::fld_file_data_t::lz = 0

Definition at line 44 of file fld_file_data.f90.

◆ meta_nsamples

integer fld_file_data::fld_file_data_t::meta_nsamples = 0

Definition at line 48 of file fld_file_data.f90.

◆ meta_start_counter

integer fld_file_data::fld_file_data_t::meta_start_counter = 0

Definition at line 49 of file fld_file_data.f90.

◆ n_scalars

integer fld_file_data::fld_file_data_t::n_scalars = 0

Definition at line 37 of file fld_file_data.f90.

◆ nelv

integer fld_file_data::fld_file_data_t::nelv = 0

Definition at line 40 of file fld_file_data.f90.

◆ offset_el

integer fld_file_data::fld_file_data_t::offset_el = 0

Definition at line 41 of file fld_file_data.f90.

◆ p

type(vector_t) fld_file_data::fld_file_data_t::p

Definition at line 32 of file fld_file_data.f90.

◆ s

type(vector_t), dimension(:), allocatable fld_file_data::fld_file_data_t::s

Definition at line 35 of file fld_file_data.f90.

◆ t

type(vector_t) fld_file_data::fld_file_data_t::t

Definition at line 33 of file fld_file_data.f90.

◆ t_counter

integer fld_file_data::fld_file_data_t::t_counter = 0

Definition at line 45 of file fld_file_data.f90.

◆ time

real(kind=rp) fld_file_data::fld_file_data_t::time = 0.0

Definition at line 38 of file fld_file_data.f90.

◆ u

type(vector_t) fld_file_data::fld_file_data_t::u

Definition at line 29 of file fld_file_data.f90.

◆ v

type(vector_t) fld_file_data::fld_file_data_t::v

Definition at line 30 of file fld_file_data.f90.

◆ w

type(vector_t) fld_file_data::fld_file_data_t::w

Definition at line 31 of file fld_file_data.f90.

◆ x

type(vector_t) fld_file_data::fld_file_data_t::x

Definition at line 26 of file fld_file_data.f90.

◆ y

type(vector_t) fld_file_data::fld_file_data_t::y

Definition at line 27 of file fld_file_data.f90.

◆ z

type(vector_t) fld_file_data::fld_file_data_t::z

Definition at line 28 of file fld_file_data.f90.


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