marray_compound_mod Module Reference

derived class for compound of mesh arrays More...

Data Types

type  compound_item
 
interface  marray_compound
 data types and methods More...
 

Functions/Subroutines

type(marray_compound) function createmarray_compound (n)
 constructor for compound of mesh arrays More...
 
subroutine assignpointers (this)
 assign pointers of different shapes to the 1D data More...
 
subroutine assignmarray_0 (this, ma)
 assigns one compound of mesh arrays to another compound of mesh arrays More...
 
subroutine appendmarray (this, ma)
 
type(compound_item) function, pointer firstitem (this)
 get the first item from the list of compound elements More...
 
type(compound_item) function, pointer lastitem (this)
 get the last item from the list of compound elements More...
 
type(compound_item) function, pointer nextitem (this, item)
 get the next item from the list of compound elements More...
 
type(marray_base) function, pointer getitem (this, list_entry)
 get pointer to the mesh array from a given item More...
 
subroutine appenditem (this, ma)
 append an item to the list of compound elements More...
 
subroutine destroy (this)
 deconstructor of the compound More...
 

Detailed Description

derived class for compound of mesh arrays

Author
Tobias Illenseer
Todo:
improve error handling for compound arrays

Function/Subroutine Documentation

◆ appenditem()

subroutine marray_compound_mod::appenditem ( class(marray_compound this,
type(marray_base), pointer  ma 
)
private

append an item to the list of compound elements

Definition at line 307 of file marray_compound.f90.

◆ appendmarray()

subroutine marray_compound_mod::appendmarray ( class(marray_compound), intent(inout)  this,
type(marray_base), pointer  ma 
)
private

Definition at line 177 of file marray_compound.f90.

◆ assignmarray_0()

subroutine marray_compound_mod::assignmarray_0 ( class(marray_compound), intent(inout)  this,
class(marray_base), intent(in)  ma 
)
private

assigns one compound of mesh arrays to another compound of mesh arrays

Definition at line 129 of file marray_compound.f90.

◆ assignpointers()

subroutine marray_compound_mod::assignpointers ( class(marray_compound), intent(inout)  this)

assign pointers of different shapes to the 1D data

Definition at line 102 of file marray_compound.f90.

◆ createmarray_compound()

type(marray_compound) function marray_compound_mod::createmarray_compound ( integer, intent(in), optional  n)
private

constructor for compound of mesh arrays

There exist two types of compounds differing by their rank:

  • rank 0 compounds are associated with rank 1 mesh arrays; hence they basically store one vector of arbitrary dimension in each cell and are mostly used for cell center data
  • rank 1 compounds are associated with rank 2 mesh arrays; they store an arbitrary number of vectors of arbitrary dimension in each cell and are mostly used for cell face data

Definition at line 79 of file marray_compound.f90.

◆ destroy()

subroutine marray_compound_mod::destroy ( class(marray_compound this)
private

deconstructor of the compound

Definition at line 348 of file marray_compound.f90.

◆ firstitem()

type(compound_item) function, pointer marray_compound_mod::firstitem ( class(marray_compound this)
private

get the first item from the list of compound elements

Definition at line 258 of file marray_compound.f90.

◆ getitem()

type(marray_base) function, pointer marray_compound_mod::getitem ( class(marray_compound this,
type(compound_item), pointer  list_entry 
)
private

get pointer to the mesh array from a given item

Definition at line 296 of file marray_compound.f90.

◆ lastitem()

type(compound_item) function, pointer marray_compound_mod::lastitem ( class(marray_compound this)
private

get the last item from the list of compound elements

Definition at line 268 of file marray_compound.f90.

◆ nextitem()

type(compound_item) function, pointer marray_compound_mod::nextitem ( class(marray_compound this,
type(compound_item), pointer  item 
)
private

get the next item from the list of compound elements

Definition at line 282 of file marray_compound.f90.