0.6.0
Loading...
Searching...
No Matches
mod_adios_schema::t_adios_schema Type Reference

Class to write a .bp file using ADIOS Visualization Schema. More...

Public Member Functions

procedure initialize (schema, filename, use_single_file)
 Initialize ADIOS Schema writer.
 
procedure open (schema, iteration, time)
 Open ADIOS Schema writer.
 
procedure close (schema)
 Close ADIOS Schema writer.
 
procedure add_group (schema, label)
 Add a group.
 
procedure define_rectilinear_mesh (schema, label)
 Define a rectilinear mesh.
 
procedure define_mof_mesh (schema, mesh_label, phase_id_label, mof_mesh)
 Define a MOF mesh.
 
procedure write_rectilinear_mesh (schema)
 Write a rectilinear mesh.
 
procedure write_mof_mesh (schema, mof_mesh)
 Write a MOF mesh.
 
generic define_field (schema, label, field)
 Define a field.
 
generic define_field (schema, label, field)
 Define a field.
 
generic define_field (schema, label, field)
 Define a field.
 
generic define_field (schema, list)
 Define a field.
 
generic write_field (schema, label, field)
 Write a field.
 
generic write_field (schema, label, field)
 Write a field.
 
generic write_field (schema, label, field)
 Write a field.
 
generic write_field (schema, list)
 Write a field.
 

Private Member Functions

procedure, private open_group_write (schema)
 Open a .bp file. Must be called before any adios_write call (internal use only)
 
procedure, private notus_adios_define_scalar_field (schema, label, field)
 Define a scalar field.
 
procedure, private notus_adios_define_vector_field (schema, label, field)
 Define a vector field.
 
procedure, private notus_adios_define_face_field (schema, label, field)
 Define a face field.
 
procedure, private notus_adios_define_field_list (schema, list)
 Define a field list.
 
procedure, private notus_adios_write_scalar_field (schema, label, field)
 Write a scalar field.
 
procedure, private notus_adios_write_vector_field (schema, label, field)
 Write a vector field.
 
procedure, private notus_adios_write_face_field (schema, label, field)
 Write a face field.
 
procedure, private notus_adios_write_field_list (schema, list)
 Write a field list.
 

Private Attributes

character(len=:), allocatable, private filename
 Prefix of the .bp file (without extension or iteration number)
 
character(len=:), allocatable, private output_file
 Effective name of the .bp file with full path.
 
integer, private iteration = 0
 Current iteration.
 
double precision, private time = 0d0
 Current time.
 
character(len=:), allocatable, private mesh_label
 Name of the current mesh.
 
character(len=:), allocatable, private group_label
 Name of the current group.
 
character(len=:), allocatable, private phase_id_label
 Name of the phase_id field in MOF.
 
logical, private is_initialized = .false.
 This flag is set to .true. if notus_adios_initialize is called.
 
logical, private is_new = .true.
 Flag used to determine if the .bp file must be created or appended.
 
logical, private is_open = .false.
 If this flag is set, adios_open was called and adios_close is not.
 
logical, private use_single_file = .true.
 If this flag is set, a new .bp file will be created at each iteration.
 
integer, private n_group = 0
 Group counter.
 
integer(kind=8), private handle
 Internal values for ADIOS.
 
integer(kind=8), private group_id
 

Detailed Description

Class to write a .bp file using ADIOS Visualization Schema.

Format documentation: https://users.nccs.gov/~pnorbert/ADIOS-VisualizationSchema-1.1.pdf

Member Function/Subroutine Documentation

◆ add_group()

procedure mod_adios_schema::t_adios_schema::add_group ( class(t_adios_schema), intent(inout) schema,
character(len=*), intent(in) label )

Add a group.

Parameters
[in,out]schemaADIOS Schema writer
[in]labellabel of the group

◆ close()

procedure mod_adios_schema::t_adios_schema::close ( class(t_adios_schema), intent(inout) schema)

Close ADIOS Schema writer.

Parameters
[in,out]schemaADIOS Schema writer

◆ define_field() [1/4]

generic mod_adios_schema::t_adios_schema::define_field ( class(t_adios_schema), intent(inout) schema,
character(len=*), intent(in) label,
double precision, dimension(:,:,:), intent(in) field )

Define a field.

A rectilinear mesh must be defined before this definition

Parameters
[in,out]schemaADIOS Schema writer
[in]labellabel of the field
[in]fieldscalar field

◆ define_field() [2/4]

generic mod_adios_schema::t_adios_schema::define_field ( class(t_adios_schema), intent(inout) schema,
character(len=*), intent(in) label,
double precision, dimension(:,:,:,:), intent(in) field )

Define a field.

A rectilinear mesh must be defined before this definition

Parameters
[in,out]schemaADIOS Schema writer
[in]labellabel of the field
[in]fieldvector field

◆ define_field() [3/4]

generic mod_adios_schema::t_adios_schema::define_field ( class(t_adios_schema), intent(inout) schema,
character(len=*), intent(in) label,
type(t_face_field), intent(in) field )

Define a field.

A rectilinear mesh must be defined before this definition

Parameters
[in,out]schemaADIOS Schema writer
[in]labellabel of the field
[in]fieldface field

◆ define_field() [4/4]

generic mod_adios_schema::t_adios_schema::define_field ( class(t_adios_schema), intent(inout) schema,
type(t_field_list), intent(in) list )

Define a field.

A rectilinear mesh must be defined before this definition

Parameters
[in,out]schemaADIOS Schema writer
[in]listlist of fields

◆ define_mof_mesh()

procedure mod_adios_schema::t_adios_schema::define_mof_mesh ( class(t_adios_schema), intent(inout) schema,
character(len=*), intent(in) mesh_label,
character(len=*), intent(in) phase_id_label,
type(t_mof_visualization_polygon), intent(in) mof_mesh )

Define a MOF mesh.

Warning
Only one mesh per group is allowed
Parameters
[in,out]schemaADIOS Schema writer
[in]mesh_labellabel of the mesh
[in]phase_id_labellabel of the phase_id field
[in]mof_meshMOF quadrangular mesh

◆ define_rectilinear_mesh()

procedure mod_adios_schema::t_adios_schema::define_rectilinear_mesh ( class(t_adios_schema), intent(inout) schema,
character(len=*), intent(in) label )

Define a rectilinear mesh.

Warning
Only one mesh per group is allowed
Parameters
[in,out]schemaADIOS Schema writer
[in]labellabel of the mesh

◆ initialize()

procedure mod_adios_schema::t_adios_schema::initialize ( class(t_adios_schema), intent(inout) schema,
character(len=*), intent(in) filename,
logical, intent(in) use_single_file )

Initialize ADIOS Schema writer.

Multiple call of this routine have not effect.

Parameters
[in,out]schemaADIOS Schema writer
[in]filenamebase name of the .bp file
[in]use_single_filewrite all the iterations into a single file

◆ notus_adios_define_face_field()

procedure, private mod_adios_schema::t_adios_schema::notus_adios_define_face_field ( class(t_adios_schema), intent(inout) schema,
character(len=*), intent(in) label,
type(t_face_field), intent(in) field )
private

Define a face field.

A rectilinear mesh must be defined before this definition

Parameters
[in,out]schemaADIOS Schema writer
[in]labellabel of the field
[in]fieldface field

◆ notus_adios_define_field_list()

procedure, private mod_adios_schema::t_adios_schema::notus_adios_define_field_list ( class(t_adios_schema), intent(inout) schema,
type(t_field_list), intent(in) list )
private

Define a field list.

A rectilinear mesh must be defined before this definition

Parameters
[in,out]schemaADIOS Schema writer
[in]listlist of fields

◆ notus_adios_define_scalar_field()

procedure, private mod_adios_schema::t_adios_schema::notus_adios_define_scalar_field ( class(t_adios_schema), intent(inout) schema,
character(len=*), intent(in) label,
double precision, dimension(:,:,:), intent(in) field )
private

Define a scalar field.

A rectilinear mesh must be defined before this definition

Parameters
[in,out]schemaADIOS Schema writer
[in]labellabel of the field
[in]fieldscalar field

◆ notus_adios_define_vector_field()

procedure, private mod_adios_schema::t_adios_schema::notus_adios_define_vector_field ( class(t_adios_schema), intent(inout) schema,
character(len=*), intent(in) label,
double precision, dimension(:,:,:,:), intent(in) field )
private

Define a vector field.

A rectilinear mesh must be defined before this definition

Parameters
[in,out]schemaADIOS Schema writer
[in]labellabel of the field
[in]fieldvector field

◆ notus_adios_write_face_field()

procedure, private mod_adios_schema::t_adios_schema::notus_adios_write_face_field ( class(t_adios_schema), intent(inout) schema,
character(len=*), intent(in) label,
type(t_face_field), intent(in) field )
private

Write a face field.

Parameters
[in,out]schemaADIOS Schema writer
[in]labellabel of the field
[in]fieldvector field

◆ notus_adios_write_field_list()

procedure, private mod_adios_schema::t_adios_schema::notus_adios_write_field_list ( class(t_adios_schema), intent(inout) schema,
type(t_field_list), intent(in) list )
private

Write a field list.

Parameters
[in,out]schemaADIOS Schema writer
[in]listlist of fields

◆ notus_adios_write_scalar_field()

procedure, private mod_adios_schema::t_adios_schema::notus_adios_write_scalar_field ( class(t_adios_schema), intent(inout) schema,
character(len=*), intent(in) label,
double precision, dimension(:,:,:), intent(in) field )
private

Write a scalar field.

Parameters
[in,out]schemaADIOS Schema writer
[in]labellabel of the field
[in]fieldscalar field

◆ notus_adios_write_vector_field()

procedure, private mod_adios_schema::t_adios_schema::notus_adios_write_vector_field ( class(t_adios_schema), intent(inout) schema,
character(len=*), intent(in) label,
double precision, dimension(:,:,:,:), intent(in) field )
private

Write a vector field.

Parameters
[in,out]schemaADIOS Schema writer
[in]labellabel of the field
[in]fieldvector field

◆ open()

procedure mod_adios_schema::t_adios_schema::open ( class(t_adios_schema), intent(inout) schema,
integer, intent(in) iteration,
double precision, intent(in) time )

Open ADIOS Schema writer.

Parameters
[in,out]schemaADIOS Schema writer
[in]iterationcurrent iteration
[in]timecurrent time

◆ open_group_write()

procedure, private mod_adios_schema::t_adios_schema::open_group_write ( class(t_adios_schema), intent(inout) schema)
private

Open a .bp file. Must be called before any adios_write call (internal use only)

Must be called before any adios_write call (internal use only).

Parameters
[in,out]schemaADIOS Schema writer

◆ write_field() [1/4]

generic mod_adios_schema::t_adios_schema::write_field ( class(t_adios_schema), intent(inout) schema,
character(len=*), intent(in) label,
double precision, dimension(:,:,:), intent(in) field )

Write a field.

Parameters
[in,out]schemaADIOS Schema writer
[in]labellabel of the field
[in]fieldscalar field

◆ write_field() [2/4]

generic mod_adios_schema::t_adios_schema::write_field ( class(t_adios_schema), intent(inout) schema,
character(len=*), intent(in) label,
double precision, dimension(:,:,:,:), intent(in) field )

Write a field.

Parameters
[in,out]schemaADIOS Schema writer
[in]labellabel of the field
[in]fieldvector field

◆ write_field() [3/4]

generic mod_adios_schema::t_adios_schema::write_field ( class(t_adios_schema), intent(inout) schema,
character(len=*), intent(in) label,
type(t_face_field), intent(in) field )

Write a field.

Parameters
[in,out]schemaADIOS Schema writer
[in]labellabel of the field
[in]fieldvector field

◆ write_field() [4/4]

generic mod_adios_schema::t_adios_schema::write_field ( class(t_adios_schema), intent(inout) schema,
type(t_field_list), intent(in) list )

Write a field.

Parameters
[in,out]schemaADIOS Schema writer
[in]listlist of fields

◆ write_mof_mesh()

procedure mod_adios_schema::t_adios_schema::write_mof_mesh ( class(t_adios_schema), intent(inout) schema,
type(t_mof_visualization_polygon), intent(in) mof_mesh )

Write a MOF mesh.

Parameters
[in,out]schemaADIOS Schema writer
[in]mof_meshMOF quadrangular mesh

◆ write_rectilinear_mesh()

procedure mod_adios_schema::t_adios_schema::write_rectilinear_mesh ( class(t_adios_schema), intent(inout) schema)

Write a rectilinear mesh.

Parameters
[in,out]schemaADIOS Schema writer

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