Neko 1.99.2
A portable framework for high-order spectral element flow simulations
Loading...
Searching...
No Matches
registry Module Reference

Defines a registry for storing solution fields.

Data Types

type  registry_t
 

Functions/Subroutines

subroutine registry_init (this, size, expansion_size)
 Constructor.
 
subroutine registry_free (this)
 Destructor.
 
subroutine registry_expand (this)
 Expand the fields array so as to accommodate more fields.
 
subroutine registry_add_field (this, dof, name, ignore_existing)
 Add a field to the registry.
 
subroutine registry_add_vector (this, n, name, ignore_existing)
 Add a vector to the registry.
 
subroutine registry_add_matrix (this, nrows, ncols, name, ignore_existing)
 Add a matrix to the registry.
 
subroutine registry_add_alias (this, alias, name)
 Add an alias for an existing entry in the registry.
 
type(field_t) function, pointer registry_get_field_by_index (this, i)
 Get pointer to a stored field by index.
 
type(vector_t) function, pointer registry_get_vector_by_index (this, i)
 Get pointer to a stored vector by index.
 
type(matrix_t) function, pointer registry_get_matrix_by_index (this, i)
 Get pointer to a stored matrix by index.
 
recursive type(field_t) function, pointer registry_get_field_by_name (this, name)
 Get pointer to a stored field by field name.
 
recursive type(vector_t) function, pointer registry_get_vector_by_name (this, name)
 Get pointer to a stored vector by name.
 
recursive type(matrix_t) function, pointer registry_get_matrix_by_name (this, name)
 Get pointer to a stored matrix by name.
 
logical function registry_entry_exists (this, name)
 Check if a field with a given name is already in the registry.
 
logical function registry_field_exists (this, name)
 Check if a field with a given name is already in the registry.
 
logical function registry_vector_exists (this, name)
 Check if a vector with a given name is already in the registry.
 
logical function registry_matrix_exists (this, name)
 Check if a matrix with a given name is already in the registry.
 
pure integer function registry_n_entries (this)
 Get number of registered entries.
 
pure integer function registry_n_fields (this)
 Get the number of fields stored in the registry.
 
pure integer function registry_n_vectors (this)
 Get the number of vector stored in the registry.
 
pure integer function registry_n_matrices (this)
 Get the number of matrix stored in the registry.
 
pure integer function registry_n_aliases (this)
 Get the number of aliases stored in the registry.
 
pure integer function registry_get_size (this)
 Get the size of the fields array.
 
pure integer function registry_get_expansion_size (this)
 Get the expansion size.
 
subroutine registry_print (this)
 Print the contents of the registry to standard output.
 

Variables

type(registry_t), target, public neko_registry
 Global field registry.
 

Function/Subroutine Documentation

◆ registry_add_alias()

subroutine registry::registry_add_alias ( class(registry_t), intent(inout this,
character(len=*), intent(in alias,
character(len=*), intent(in name 
)
private
Parameters
aliasThe alias.
nameThe name of the entry.

Definition at line 304 of file registry.f90.

◆ registry_add_field()

subroutine registry::registry_add_field ( class(registry_t), intent(inout this,
type(dofmap_t), intent(in), target  dof,
character(len=*), intent(in), target  name,
logical, intent(in), optional  ignore_existing 
)
private
Parameters
dofThe map of degrees of freedom.
nameThe name of the field.
ignore_existingIf true, will do nothing if the field is already in the registry. If false, will throw an error. Optional, defaults to false.

Definition at line 195 of file registry.f90.

◆ registry_add_matrix()

subroutine registry::registry_add_matrix ( class(registry_t), intent(inout this,
integer, intent(in nrows,
integer, intent(in ncols,
character(len=*), intent(in), target  name,
logical, intent(in), optional  ignore_existing 
)
private
Parameters
nThe size of the matrix.
nameThe name of the matrix.
ignore_existingIf true, will do nothing if the matrix is already in the registry. If false, will throw an error. Optional, defaults to false.

Definition at line 269 of file registry.f90.

◆ registry_add_vector()

subroutine registry::registry_add_vector ( class(registry_t), intent(inout this,
integer, intent(in n,
character(len=*), intent(in), target  name,
logical, intent(in), optional  ignore_existing 
)
private
Parameters
nThe size of the vector.
nameThe name of the vector.
ignore_existingIf true, will do nothing if the vector is already in the registry. If false, will throw an error. Optional, defaults to false.

Definition at line 232 of file registry.f90.

◆ registry_entry_exists()

logical function registry::registry_entry_exists ( class(registry_t), intent(inout), target  this,
character(len=*), intent(in name 
)
private

Definition at line 506 of file registry.f90.

◆ registry_expand()

subroutine registry::registry_expand ( class(registry_t), intent(inout this)
private

Definition at line 178 of file registry.f90.

◆ registry_field_exists()

logical function registry::registry_field_exists ( class(registry_t), intent(inout), target  this,
character(len=*), intent(in name 
)
private

Definition at line 524 of file registry.f90.

◆ registry_free()

subroutine registry::registry_free ( class(registry_t), intent(inout this)
private

Definition at line 159 of file registry.f90.

◆ registry_get_expansion_size()

pure integer function registry::registry_get_expansion_size ( class(registry_t), intent(in this)
private

Definition at line 651 of file registry.f90.

◆ registry_get_field_by_index()

type(field_t) function, pointer registry::registry_get_field_by_index ( class(registry_t), intent(in), target  this,
integer, intent(in i 
)
private

Definition at line 327 of file registry.f90.

◆ registry_get_field_by_name()

recursive type(field_t) function, pointer registry::registry_get_field_by_name ( class(registry_t), intent(inout), target  this,
character(len=*), intent(in name 
)
private

Definition at line 396 of file registry.f90.

◆ registry_get_matrix_by_index()

type(matrix_t) function, pointer registry::registry_get_matrix_by_index ( class(registry_t), intent(in), target  this,
integer, intent(in i 
)
private

Definition at line 371 of file registry.f90.

◆ registry_get_matrix_by_name()

recursive type(matrix_t) function, pointer registry::registry_get_matrix_by_name ( class(registry_t), intent(inout), target  this,
character(len=*), intent(in name 
)
private

Definition at line 467 of file registry.f90.

◆ registry_get_size()

pure integer function registry::registry_get_size ( class(registry_t), intent(in this)
private

Definition at line 639 of file registry.f90.

◆ registry_get_vector_by_index()

type(vector_t) function, pointer registry::registry_get_vector_by_index ( class(registry_t), intent(in), target  this,
integer, intent(in i 
)
private

Definition at line 349 of file registry.f90.

◆ registry_get_vector_by_name()

recursive type(vector_t) function, pointer registry::registry_get_vector_by_name ( class(registry_t), intent(inout), target  this,
character(len=*), intent(in name 
)
private

Definition at line 431 of file registry.f90.

◆ registry_init()

subroutine registry::registry_init ( class(registry_t), intent(inout this,
integer, intent(in), optional  size,
integer, intent(in), optional  expansion_size 
)
private
Parameters
sizeThe allocation size of entries on init.
expansion_sizeThe number of entries added to entries on expansion.

Definition at line 137 of file registry.f90.

◆ registry_matrix_exists()

logical function registry::registry_matrix_exists ( class(registry_t), intent(inout), target  this,
character(len=*), intent(in name 
)
private

Definition at line 562 of file registry.f90.

◆ registry_n_aliases()

pure integer function registry::registry_n_aliases ( class(registry_t), intent(in this)
private

Definition at line 631 of file registry.f90.

◆ registry_n_entries()

pure integer function registry::registry_n_entries ( class(registry_t), intent(in this)
private

Definition at line 584 of file registry.f90.

◆ registry_n_fields()

pure integer function registry::registry_n_fields ( class(registry_t), intent(in this)
private

Definition at line 592 of file registry.f90.

◆ registry_n_matrices()

pure integer function registry::registry_n_matrices ( class(registry_t), intent(in this)
private

Definition at line 618 of file registry.f90.

◆ registry_n_vectors()

pure integer function registry::registry_n_vectors ( class(registry_t), intent(in this)
private

Definition at line 605 of file registry.f90.

◆ registry_print()

subroutine registry::registry_print ( class(registry_t), intent(in this)
private

Definition at line 659 of file registry.f90.

◆ registry_vector_exists()

logical function registry::registry_vector_exists ( class(registry_t), intent(inout), target  this,
character(len=*), intent(in name 
)
private

Definition at line 543 of file registry.f90.

Variable Documentation

◆ neko_registry

type(registry_t), target, public registry::neko_registry

Definition at line 128 of file registry.f90.