| IGLib 1.7.2 The IGLib base library for development of numerical, technical and business applications.

- Main Page
- Namespaces
- Classes
- Files

- Class List
- Class Index
- Class Hierarchy
- Class Members

All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Events Macros
Public Member Functions | Properties | Private Attributes | List of all members
IG.Num.StructuredMesh3d< TCoord, TIndexField, TIndex, TScalarField, TScalar, TVectorField, TVector, TTensorField, TTensor > Class Template Reference

Generic 3D structured mesh with collections of named scalar, vector, tensor and index fields. More...

Inheritance diagram for IG.Num.StructuredMesh3d< TCoord, TIndexField, TIndex, TScalarField, TScalar, TVectorField, TVector, TTensorField, TTensor >:
[legend]
Collaboration diagram for IG.Num.StructuredMesh3d< TCoord, TIndexField, TIndex, TScalarField, TScalar, TVectorField, TVector, TTensorField, TTensor >:
[legend]

## Public Member Functions
| StructuredMesh3d ()
| Constructs a new empty 3D field (no elements contained) with no name and no description. More...
| StructuredMesh3d (int dim1, int dim2, int dim3)
| Constructs a new 3D field with the specified dimensions, name and description. Table of elements is allocated. More...
| StructuredMesh3d (int dim1, int dim2, int dim3, string fieldName)
| Constructs a new 3D field with the specified dimensions, name and description. Table of elements is allocated. More...
| StructuredMesh3d (int dim1, int dim2, int dim3, string fieldName, string fieldDescription)
| Constructs a new 3D field with the specified dimensions, name and description. Table of elements is allocated. More...
TIndexField | GetIndexField (string name)
| Returns index field with the specified name. More...
TIndexField | GetIndexField (int index)
| Returns the index field with the specified index. More...
virtual TIndexField | CreateIndexField (string fieldName, string fieldDescription)
| Creates and returns a new index field of dimensions that match dimensions of the current structured mesh, and with specified name and description. More...
TIndexField | AddIndexField (string fieldName, string fieldDescription)
| Creates a new index field of dimensions that match dimensions of the current 3D structuredmesh, and specified with name and description, and adds it to the current collection. More...
void | AddIndexField (TIndexField field, string name)
| Adds the specified index field to the collection of index fields under the specified name. More...
void | AddIndexField (TIndexField field)
| Adds the specified index field to the collection of index fields. More...
void | RemoveIndexField (string fieldName)
| Removed the field with the specified name from the current field collection. More...
TScalarField | GetScalarField (string name)
| Returns scalar field with the specified name. More...
TScalarField | GetScalarField (int index)
| Returns the scalar field with the specified index. More...
virtual TScalarField | CreateScalarField (string fieldName, string fieldDescription)
| Creates and returns a new scalar field of dimensions that match dimensions of the current structured mesh, and with specified name and description. More...
TScalarField | AddScalarField (string fieldName, string fieldDescription)
| Creates a new scalar field of dimensions that match dimensions of the current 3D structuredmesh, and specified with name and description, and adds it to the current collection. More...
void | AddScalarField (TScalarField field, string name)
| Adds the specified scalar field to the collection of scalar fields under the specified name. More...
void | AddScalarField (TScalarField field)
| Adds the specified scalar field to the collection of scalar fields. More...
void | RemoveScalarField (string fieldName)
| Removed the field with the specified name from the current field collection. More...
TVectorField | GetVectorField (string name)
| Returns vector field with the specified name. More...
TVectorField | GetVectorField (int index)
| Returns the vector field with the specified index. More...
virtual TVectorField | CreateVectorField (string fieldName, string fieldDescription)
| Creates and returns a new vector field of dimensions that match dimensions of the current structured mesh, and with specified name and description. More...
TVectorField | AddVectorField (string fieldName, string fieldDescription)
| Creates a new vector field of dimensions that match dimensions of the current 3D structuredmesh, and specified with name and description, and adds it to the current collection. More...
void | AddVectorField (TVectorField field, string name)
| Adds the specified vector field to the collection of vector fields under the specified name. More...
void | AddVectorField (TVectorField field)
| Adds the specified vector field to the collection of vector fields. More...
void | RemoveVectorField (string fieldName)
| Removed the field with the specified name from the current field collection. More...
TTensorField | GetTensorField (string name)
| Returns tensor field with the specified name. More...
TTensorField | GetTensorField (int index)
| Returns the tensor field with the specified index. More...
virtual TTensorField | CreateTensorField (string fieldName, string fieldDescription)
| Creates and returns a new tensor field of dimensions that match dimensions of the current structured mesh, and with specified name and description. More...
TTensorField | AddTensorField (string fieldName, string fieldDescription)
| Creates a new tensor field of dimensions that match dimensions of the current 3D structuredmesh, and specified with name and description, and adds it to the current collection. More...
void | AddTensorField (TTensorField field, string name)
| Adds the specified tensor field to the collection of tensor fields under the specified name. More...
void | AddTensorField (TTensorField field)
| Adds the specified tensor field to the collection of tensor fields. More...
void | RemoveTensorField (string fieldName)
| Removed the field with the specified name from the current field collection. More...
Public Member Functions inherited from IG.Num.StructuredMeshGeometry3d< TCoord >
| StructuredMeshGeometry3d ()
| Constructs a new empty 3D field (no elements contained) with no name and no description. More...
| StructuredMeshGeometry3d (int dim1, int dim2, int dim3)
| Constructs a new 3D field with the specified dimensions, name and description. Table of elements is allocated. More...
| StructuredMeshGeometry3d (int dim1, int dim2, int dim3, string fieldName)
| Constructs a new 3D field with the specified dimensions, name and description. Table of elements is allocated. More...
| StructuredMeshGeometry3d (int dim1, int dim2, int dim3, string fieldName, string fieldDescription)
| Constructs a new 3D field with the specified dimensions, name and description. Table of elements is allocated. More...
Public Member Functions inherited from IG.Num.StructuredField3d< TElement >
| StructuredField3d ()
| Constructs a new empty 3D field (no elements contained) with no name and no description. More...
| StructuredField3d (int dim1, int dim2, int dim3)
| Constructs a new 3D field with the specified dimensions, name and description. Table of elements is allocated. More...
| StructuredField3d (int dim1, int dim2, int dim3, string fieldName)
| Constructs a new 3D field with the specified dimensions, name and description. Table of elements is allocated. More...
| StructuredField3d (int dim1, int dim2, int dim3, string fieldName, string fieldDescription)
| Constructs a new 3D field with the specified dimensions, name and description. Table of elements is allocated. More...
int | GetIndex (int i1, int i2, int i3)
| Returns the linear index of the component that is identified by 3 separate indices. More...
void | getIndices (int index, out int i1, out int i2, out int i3)
| Converts linear (contiguous) index to 3 separate indices for 3 dimensions. More...
virtual void | SetDimensions (int d1, int d2, int d3)
| Sets all three dimensions of the current 3D structured field. More...
Public Member Functions inherited from IG.Num.Field< TElement >
| Field ()
| Constructs a new empty field (no elements contained) with no name and no description. More...
| Field (int numElements)
| Creates a new field with the specified number of elements. More...
| Field (int numElements, string fieldName)
| Constructs a new field with the specified number of elements and name. More...
| Field (int numElements, string fieldName, string fieldDescription)
| Constructs a new field with the specified number of elements, name and description. Table of elements is allocated. More...
virtual void | SetLength (int newLength)
| Sets the length of the current field to the specified value. More...
TElement | GetValue (int index)
| Returns element of the field at the specified index. More...
void | SetValue (int index, TElement value)
| Sets the element at the specified index to the specified value. More...

## Properties
FieldCollection3d< TIndexField, TIndex > | IndexFields`[get]`
| Gets the collection of index fields of the current mesh. More...
TIndexField | ActiveIndexField`[get, protected set]`
| Gets active index field. Has protected setter. More...
string | ActiveIndexFieldName`[get, set]`
| Gets or sets name of the currently active index field. This determines the currently active index field. More...
int | NumIndexFields`[get]`
| Gets the number of index fields. More...
FieldCollection3d < TScalarField, TScalar > | ScalarFields`[get]`
| Gets the collection of scalar fields of the current mesh. More...
TScalarField | ActiveScalarField`[get, protected set]`
| Gets active scalar field. Has protected setter. More...
string | ActiveScalarFieldName`[get, set]`
| Gets or sets name of the currently active scalar field. This determines the currently active scalar field. More...
int | NumScalarFields`[get]`
| Gets the number of scalar fields. More...
FieldCollection3d < TVectorField, TVector > | VectorFields`[get]`
| Gets the collection of vector fields of the current mesh. More...
TVectorField | ActiveVectorField`[get, protected set]`
| Gets active vector field. Has protected setter. More...
string | ActiveVectorFieldName`[get, set]`
| Gets or sets name of the currently active vector field. This determines the currently active vector field. More...
int | NumVectorFields`[get]`
| Gets the number of vector fields. More...
FieldCollection3d < TTensorField, TTensor > | TensorFields`[get]`
| Gets the collection of tensor fields of the current mesh. More...
TTensorField | ActiveTensorField`[get, protected set]`
| Gets active tensor field. Has protected setter. More...
string | ActiveTensorFieldName`[get, set]`
| Gets or sets name of the currently active tensor field. This determines the currently active tensor field. More...
int | NumTensorFields`[get]`
| Gets the number of tensor fields. More...
Properties inherited from IG.Num.StructuredMeshGeometry3d< TCoord >
virtual TCoord[] | Coordinates`[get, set]`
| Array of coordinates. More...
Properties inherited from IG.Num.StructuredField3d< TElement >
TElement | this[int i1, int i2, int i3]`[get, set]`
| Returns element of the field at specified indices. More...
int | Dim1`[get, set]`
| Returns the first dimenson of the structured mesh (number of mesh points in the first direction). More...
int | Dim2`[get, set]`
| Returns the second dimenson of the structured mesh (number of mesh points in the second direction). More...
int | Dim3`[get, set]`
| Gets or sets the second dimenson of the structured mesh (number of mesh points in the second direction). More...
Properties inherited from IG.Num.Field< TElement >
string | Name`[get, set]`
| Name of the field. More...
string | Description`[get, set]`
| Description of the field. More...
virtual TElement[] | Values`[get, protected set]`
| Array of field values. More...
int | Length`[get, protected set]`
| Number of elements. More...
TElement | this[int index]`[get, set]`
| Access to elements through element index. More...

## Private Attributes
FieldCollection3d< TIndexField, TIndex > | _indexFields
TIndexField | _activeIndexField
FieldCollection3d < TScalarField, TScalar > | _scalarFields
TScalarField | _activeScalarField
FieldCollection3d < TVectorField, TVector > | _vectorFields
TVectorField | _activeVectorField
FieldCollection3d < TTensorField, TTensor > | _tensorFields
TTensorField | _activeTensorField

## Additional Inherited Members
Static Public Member Functions inherited from IG.Num.StructuredField3d< TElement >
static void | MapCoordinatesPlain (StructuredField3d< vec3 > referenceField, StructuredField3d< vec3 > targetField, IFunc3d fx, IFunc3d fy, IFunc3d fz)
| Generates coordinates of a 3D structured grid for a parametric volume from a reference grid according to functions specifying x, y, and z coordinates in terms of three scalar functions of 3 variables that map reference coordinates to components of the mapped coordinates of the grid. More...
static void | MapCoordinates (StructuredField3d< vec3 > referenceField, StructuredField3d< vec3 > targetField, IFunc3d fx, IFunc3d fy, IFunc3d fz)
| Generates coordinates of a 3D structured grid for a parametric volume from a reference grid according to functions specifying x, y, and z coordinates in terms of three scalar functions of 3 variables that map reference coordinates to components of the mapped coordinates of the grid. More...
static void | MapCoordinatesToScalarsPlain (StructuredField3d< vec3 > referenceField, StructuredField3d< double > targetScalarField, IFunc3d scalarMap)
| Generates scalar values for a 3D structured grid from the specified field of grid coordinates by a specified scalar function of 3 variables that maps reference coordinates to scalar values. More...
static void | MapCoordinatesToScalars (StructuredField3d< vec3 > referenceField, StructuredField3d< double > targetScalarField, IFunc3d scalarMap)
| Generates scalar values for a 3D structured grid from the specified field of grid coordinates by a specified scalar function of 3 variables that maps reference coordinates to scalar values. More...
static void | GenerateCoordinatesPlain (StructuredField3d< vec3 > field, double minxRef, double maxxRef, double minyRef, double maxyRef, double minzRef, double maxzRef)
| Generates coordinates (unconnected) unstructured grid based on a 3D regular grid with grid directions parallel to coordinate axes and equidistantly arranged nodes in all directions. More...
static void | GenerateCoordinates (StructuredField3d< vec3 > field, double minxRef, double maxxRef, double minyRef, double maxyRef, double minzRef, double maxzRef)
| Generates coordinates of unstructured grid based on a 3D regular grid with grid directions parallel to coordinate axes and equidistantly arranged nodes in all directions. More...
static void | GenerateCoordinatesPlain (StructuredField3d< vec3 > field, double minxRef, double maxxRef, double minyRef, double maxyRef, double minzRef, double maxzRef, IFunc3d fx, IFunc3d fy, IFunc3d fz)
| Generates coordinates of unstructured grid based on a 3D structured grid of a parametric volume according to functions specifying the x, y, and z coordinates in terms of three scalar functions of 3 variables. More...
static void | GenerateCoordinates (StructuredField3d< vec3 > field, double minxRef, double maxxRef, double minyRef, double maxyRef, double minzRef, double maxzRef, IFunc3d fx, IFunc3d fy, IFunc3d fz)
| Generates coordinates of a 3D structured grid of a parametric volume according to functions specifying the x, y, and z coordinates in terms of three scalar functions of 3 variables. More...
Static Public Member Functions inherited from IG.Num.Field< TElement >
static void | UpdateBounds (Field< double > field, IBoundingBox bounds, int componentIndex)
| Updates the specified component of the specified bounds (object of type IBoundingBox) in such a way that all elements of the specified field will fit within the bounds. More...
static void | UpdateBounds< TEl > (Field< TEl > field, IBoundingBox bounds)
| Updates the specified bounds (object of type IBoundingBox) in such a way that all non-null vectors on the specified field will fit within the bounds. More...
static void | UpdateBounds (Field< vec3 > field, IBoundingBox bounds)
| Updates the specified bounds (object of type IBoundingBox) in such a way that all 3D vector elements of type vec3 of the specified field will fit within the bounds. More...
static void | MapCoordinatesPlain (Field< vec3 > referenceField, Field< vec3 > targetField, IFunc3d fx, IFunc3d fy, IFunc3d fz)
| Generates coordinates of a set of unstructured 3D points (point cloud) from a reference set according to 3 scalar functions of 3 variables that map coordinates of the reference points to components of the mapped points. More...
static void | MapCoordinates (Field< vec3 > referenceField, Field< vec3 > targetField, IFunc3d fx, IFunc3d fy, IFunc3d fz)
| Generates coordinates of a set of unstructured points (point cloud) from a reference set according to 3 scalar functions of 3 variables that map coordinates of the reference points to components of the mapped points. More...
static void | MapCoordinates2dPlain (Field< vec3 > referenceField, Field< vec3 > targetField, IFunc2d fx, IFunc2d fy, IFunc2d fz)
| Generates coordinates of a set of unstructured 3D points (point cloud) from a reference set according to 3 scalar functions of 2 variables that map coordinates of the reference points to components of the mapped points. Mapping functions act only on the first two coordinates of each point. More...
static void | MapCoordinates2d (Field< vec3 > referenceField, Field< vec3 > targetField, IFunc2d fx, IFunc2d fy, IFunc2d fz)
| Generates coordinates of a set of unstructured points (point cloud) from a reference set according to 3 scalar functions of 2 variables that map the first two coordinates of the reference points to components of the mapped points. More...
static void | MapCoordinates1dPlain (Field< vec3 > referenceField, Field< vec3 > targetField, IRealFunction fx, IRealFunction fy, IRealFunction fz)
| Generates coordinates of a set of unstructured 3D points (point cloud) from a reference set according to 3 functions of 1 variable that map the first coordinate of the reference points to components of the mapped points. More...
static void | MapCoordinates1d (Field< vec3 > referenceField, Field< vec3 > targetField, IRealFunction fx, IRealFunction fy, IRealFunction fz)
| Generates coordinates of a set of unstructured 3D points (point cloud) from a reference set according to 3 functions of 1 variable that map the first coordinate of the reference points to components of the mapped points. More...
static void | MapCoordinatesToScalarsPlain (Field< vec3 > referenceField, Field< double > targetScalarField, IFunc3d scalarMap)
| Generates scalar values for a 3D unstructured set fo points from the specified field of grid coordinates by a specified scalar function of 3 variables that maps coordinates to scalar values. More...
static void | MapCoordinatesToScalars (Field< vec3 > referenceField, Field< double > targetScalarField, IFunc3d scalarMap)
| Generates scalar values for a 3D unstructured set fo points from the specified field of grid coordinates by a specified scalar function of 3 variables that maps coordinates to scalar values. More...
static void | GenerateCoordinatesPlain (Field< vec3 > field, int dimx, int dimy, int dimz, double minxRef, double maxxRef, double minyRef, double maxyRef, double minzRef, double maxzRef)
| Generates coordinates of a 3D unstructured grid from a regular grid with grid directions parallel to coordinate axes and equidistantly arranged nodes in all directions. More...
static void | GenerateCoordinates (Field< vec3 > field, int dimx, int dimy, int dimz, double minxRef, double maxxRef, double minyRef, double maxyRef, double minzRef, double maxzRef)
| Generates coordinates of a 3D unstructured grid from a regular grid with grid directions parallel to coordinate axes and equidistantly arranged nodes in all directions. More...
static void | GenerateCoordinatesPlain (Field< vec3 > field, int dimx, int dimy, int dimz, double minxRef, double maxxRef, double minyRef, double maxyRef, double minzRef, double maxzRef, IFunc3d fx, IFunc3d fy, IFunc3d fz)
| Generates coordinates of a 3D unstructured grid of a parametric volume according to functions specifying the x, y, and z coordinates in terms of three scalar functions of 3 variables. More...
static void | GenerateCoordinates (Field< vec3 > field, int dimx, int dimy, int dimz, double minxRef, double maxxRef, double minyRef, double maxyRef, double minzRef, double maxzRef, IFunc3d fx, IFunc3d fy, IFunc3d fz)
| Generates coordinates of a 3D unstructured grid of a parametric volume according to functions specifying the x, y, and z coordinates in terms of three scalar functions of 3 variables. More...
static void | UpdateBounds (Field< vec2 > field, IBoundingBox bounds)
| Updates the specified bounds (object of type IBoundingBox) in such a way that all 2D vector elements of type vec2 of the specified field will fit within the bounds. More...
static void | MapCoordinatesPlain (Field< vec2 > referenceField, Field< vec2 > targetField, IFunc2d fx, IFunc2d fy)
| Generates coordinates of a set of unstructured 3D points (point cloud) from a reference set according to 2 scalar functions of 2 variables that map coordinates of the reference points to components of the mapped points. More...
static void | MapCoordinates (Field< vec2 > referenceField, Field< vec2 > targetField, IFunc2d fx, IFunc2d fy)
| Generates coordinates of a set of unstructured points (point cloud) from a reference set according to 2 scalar functions of 2 variables that map coordinates of the reference points to components of the mapped points. More...
static void | MapCoordinates1dPlain (Field< vec2 > referenceField, Field< vec2 > targetField, IRealFunction fx, IRealFunction fy)
| Generates coordinates of a set of unstructured 2D points (point cloud) from a reference set according to 2 functions of 1 variables that map the first coordinate of the reference points to components of the mapped points. More...
static void | MapCoordinates1d (Field< vec2 > referenceField, Field< vec2 > targetField, IRealFunction fx, IRealFunction fy)
| Generates coordinates of a set of unstructured 2D points (point cloud) from a reference set according to 2 functions of 1 variables that map the first coordinate of the reference points to components of the mapped points. More...
static void | MapCoordinatesToScalarsPlain (Field< vec2 > referenceField, Field< double > targetScalarField, IFunc2d scalarMap)
| Generates scalar values for a 2D unstructured set fo points from the specified field of grid coordinates by a specified scalar function of 2 variables that maps coordinates to scalar values. More...
static void | MapCoordinatesToScalars (Field< vec2 > referenceField, Field< double > targetScalarField, IFunc2d scalarMap)
| Generates scalar values for a 2D unstructured set fo points from the specified field of grid coordinates by a specified scalar function of 2 variables that maps coordinates to scalar values. More...
static void | GenerateCoordinatesPlain (Field< vec2 > field, int dimx, int dimy, double minxRef, double maxxRef, double minyRef, double maxyRef)
| Generates coordinates of a 3D unstructured grid from a regular grid with grid directions parallel to coordinate axes and equidistantly arranged nodes in all directions. More...
static void | GenerateCoordinates (Field< vec2 > field, int dimx, int dimy, double minxRef, double maxxRef, double minyRef, double maxyRef)
| Generates coordinates of a 3D unstructured grid from a regular grid with grid directions parallel to coordinate axes and equidistantly arranged nodes in all directions. More...
static void | GenerateCoordinatesPlain (Field< vec2 > field, int dimx, int dimy, double minxRef, double maxxRef, double minyRef, double maxyRef, IFunc2d fx, IFunc2d fy)
| Generates coordinates of a 3D unstructured grid of a parametric volume according to functions specifying the x, y, and z coordinates in terms of three scalar functions of 3 variables. More...
static void | GenerateCoordinates (Field< vec2 > field, int dimx, int dimy, double minxRef, double maxxRef, double minyRef, double maxyRef, IFunc2d fx, IFunc2d fy)
| Generates coordinates of a 3D unstructured grid of a parametric volume according to functions specifying the x, y, and z coordinates in terms of three scalar functions of 3 variables. More...
static void | GenerateCoordinates2dPlain (Field< vec3 > field, int dimx, int dimy, double minxRef, double maxxRef, double minyRef, double maxyRef)
| Generates coordinates of a 2D unstructured grid embedded in 3D from a regular grid with grid directions parallel to the first two coordinate axes and equidistantly arranged nodes in all directions. More...
static void | GenerateCoordinates2d (Field< vec3 > field, int dimx, int dimy, double minxRef, double maxxRef, double minyRef, double maxyRef)
| Generates coordinates of a 2D unstructured grid embedded in 3D from a regular grid with grid directions parallel to the first two coordinate axes and equidistantly arranged nodes in all directions. More...
static void | GenerateCoordinates2dPlain (Field< vec3 > field, int dimx, int dimy, double minxRef, double maxxRef, double minyRef, double maxyRef, IFunc2d fx, IFunc2d fy, IFunc2d fz)
| Generates coordinates of a 3D unstructured grid of a parametric volume according to functions specifying the x, y, and z coordinates in terms of three scalar functions of 3 variables. More...
static void | GenerateCoordinates2d (Field< vec3 > field, int dimx, int dimy, double minxRef, double maxxRef, double minyRef, double maxyRef, IFunc2d fx, IFunc2d fy, IFunc2d fz)
| Generates coordinates of a 3D unstructured grid of a parametric volume according to functions specifying the x, y, and z coordinates in terms of three scalar functions of 3 variables. More...
static void | GenerateCoordinates1dPlain (Field< vec3 > field, int dimx, double minxRef, double maxxRef)
| Generates coordinates of a 1D unstructured grid from a regular grid with grid direction parallel to X coordinate axes and equidistantly arranged nodes. More...
static void | GenerateCoordinates1d (Field< vec3 > field, int dimx, double minxRef, double maxxRef)
| Generates coordinates of a 1D unstructured grid from a regular grid with grid direction parallel to X coordinate axis and equidistantly arranged nodes. More...
static void | GenerateCoordinates1dPlain (Field< vec3 > field, int dimx, double minxRef, double maxxRef, IRealFunction fx, IRealFunction fy, IRealFunction fz)
| Generates coordinates of a 1D unstructured grid of a parametric curve according to functions specifying the x, y, and z coordinates in terms of three functions of 1 variable. More...
static void | GenerateCoordinates1d (Field< vec3 > field, int dimx, double minxRef, double maxxRef, IRealFunction fx, IRealFunction fy, IRealFunction fz)
| Generates coordinates of a 1D unstructured grid of a parametric curve according to functions specifying the x, y, and z coordinates in terms of three functions of 1 variables. More...
static void | GenerateCoordinates1dPlain (Field< vec2 > field, int dimx, double minxRef, double maxxRef)
| Generates coordinates of a 1D unstructured grid embedded in 2D space from a regular grid with grid direction parallel to X coordinate axes and equidistantly arranged nodes. More...
static void | GenerateCoordinates (Field< vec2 > field, int dimx, double minxRef, double maxxRef)
| Generates coordinates of a 1D unstructured grid embedded in 2D space from a regular grid with grid direction parallel to X coordinate axis and equidistantly arranged nodes. More...
static void | GenerateCoordinates1dPlain (Field< vec2 > field, int dimx, double minxRef, double maxxRef, IRealFunction fx, IRealFunction fy)
| Generates coordinates of a 1D unstructured grid embedded in 2D space of a parametric curve according to functions specifying the x, and y coordinates in terms of 2 functions of 1 variable. More...
static void | GenerateCoordinates1d (Field< vec2 > field, int dimx, double minxRef, double maxxRef, IRealFunction fx, IRealFunction fy)
| Generates coordinates of a 1D unstructured grid embedded in 2D space of a parametric curve according to functions specifying the x, and y coordinates in terms of 2 functions of 1 variable. More...
static void | Example ()
Protected Attributes inherited from IG.Num.Field< TElement >
TElement[] | _values

## Detailed Description

Generic 3D structured mesh with collections of named scalar, vector, tensor and index fields.

Fields are created on demand (lazy evaluation).

Template Parameters

  TCoord | Type of coordinates for description of mesh geometry.
  TIndexField | Type of contained index fields.
  TIndex | Type of elements of contained index fields.
  TScalarField | Type of contained scalar fields.
  TScalar | Type of elements of contained scalar fields.
  TVectorField | Type of contained vector fields.
  TVector | Type of elements of contained vector fields.
  TTensorField | Type of contained tensor fields.
  TTensor | Type of elements of contained tensor fields.

$A Igor Jan08 Mar09;

Type Constraints

  TIndexField | : | StructuredField3d<TIndex> |
  TIndexField | : | new() |
  TScalarField | : | StructuredField3d<TScalar> |
  TScalarField | : | new() |
  TVectorField | : | StructuredField3d<TVector> |
  TVectorField | : | new() |
  TTensorField | : | StructuredField3d<TTensor> |
  TTensorField | : | new() |

## Constructor & Destructor Documentation

IG.Num.StructuredMesh3d< TCoord, TIndexField, TIndex, TScalarField, TScalar, TVectorField, TVector, TTensorField, TTensor >.StructuredMesh3d | ( |  | ) |
| inline

Constructs a new empty 3D field (no elements contained) with no name and no description.

IG.Num.StructuredMesh3d< TCoord, TIndexField, TIndex, TScalarField, TScalar, TVectorField, TVector, TTensorField, TTensor >.StructuredMesh3d | ( | int | dim1,
|  | int | dim2,
|  | int | dim3
| ) |  |
| inline

Constructs a new 3D field with the specified dimensions, name and description. Table of elements is allocated.

Elements of the field are arranged in a 3D structured grid.

Parameters

  dim1 | First dimension of the field (number of grid nodes in the first direction).
  dim2 | Second dimension of the field.
  dim3 | Third dimension of the field.

IG.Num.StructuredMesh3d< TCoord, TIndexField, TIndex, TScalarField, TScalar, TVectorField, TVector, TTensorField, TTensor >.StructuredMesh3d | ( | int | dim1,
|  | int | dim2,
|  | int | dim3,
|  | string | fieldName
| ) |  |
| inline

Constructs a new 3D field with the specified dimensions, name and description. Table of elements is allocated.

Elements of the field are arranged in a 3D structured grid.

Parameters

  dim1 | First dimension of the field (number of grid nodes in the first direction).
  dim2 | Second dimension of the field.
  dim3 | Third dimension of the field.
  fieldName | Name of the field.

IG.Num.StructuredMesh3d< TCoord, TIndexField, TIndex, TScalarField, TScalar, TVectorField, TVector, TTensorField, TTensor >.StructuredMesh3d | ( | int | dim1,
|  | int | dim2,
|  | int | dim3,
|  | string | fieldName,
|  | string | fieldDescription
| ) |  |
| inline

Constructs a new 3D field with the specified dimensions, name and description. Table of elements is allocated.

Elements of the field are arranged in a 3D structured grid.

Parameters

  dim1 | First dimension of the field (number of grid nodes in the first direction).
  dim2 | Second dimension of the field.
  dim3 | Third dimension of the field.
  fieldName | Name of the field.
  fieldDescription | Field description.

## Member Function Documentation

TIndexField IG.Num.StructuredMesh3d< TCoord, TIndexField, TIndex, TScalarField, TScalar, TVectorField, TVector, TTensorField, TTensor >.GetIndexField | ( | string | name | ) |
| inline

Returns index field with the specified name.

Parameters

  name | Name of the index field to be returned.

TIndexField IG.Num.StructuredMesh3d< TCoord, TIndexField, TIndex, TScalarField, TScalar, TVectorField, TVector, TTensorField, TTensor >.GetIndexField | ( | int | index | ) |
| inline

Returns the index field with the specified index.

Warning: numbering of index fields changes when fields are added or removed, therefore this method should only be called within the time (after the index of a particular field is known) when fields were not added or removed.

Parameters

  index | Consecutive index of the index field to be returned.

virtual TIndexField IG.Num.StructuredMesh3d< TCoord, TIndexField, TIndex, TScalarField, TScalar, TVectorField, TVector, TTensorField, TTensor >.CreateIndexField | ( | string | fieldName,
|  | string | fieldDescription
| ) |  |
| inline virtual

Creates and returns a new index field of dimensions that match dimensions of the current structured mesh, and with specified name and description.

Parameters

  fieldName | Name of the created field (can be null).
  fieldDescription | Description of the created field (can be null).

TIndexField IG.Num.StructuredMesh3d< TCoord, TIndexField, TIndex, TScalarField, TScalar, TVectorField, TVector, TTensorField, TTensor >.AddIndexField | ( | string | fieldName,
|  | string | fieldDescription
| ) |  |
| inline

Creates a new index field of dimensions that match dimensions of the current 3D structuredmesh, and specified with name and description, and adds it to the current collection.

Parameters

  fieldName | Name of the created field (normally it shouldn't be null though this is legal).
  fieldDescription | Description of the created field (can be null).

Returns
  The created field that is added to the collection.

void IG.Num.StructuredMesh3d< TCoord, TIndexField, TIndex, TScalarField, TScalar, TVectorField, TVector, TTensorField, TTensor >.AddIndexField | ( | TIndexField | field,
|  | string | name
| ) |  |
| inline

Adds the specified index field to the collection of index fields under the specified name.

If the field already has a name then its name is replaced by the specified name, unless the specified name is null.

Parameters

  field | Field to be added to the collection.
  name | Name under which the field is added to the collection.

void IG.Num.StructuredMesh3d< TCoord, TIndexField, TIndex, TScalarField, TScalar, TVectorField, TVector, TTensorField, TTensor >.AddIndexField | ( | TIndexField | field | ) |
| inline

Adds the specified index field to the collection of index fields.

Parameters

  field | Field to be added.

void IG.Num.StructuredMesh3d< TCoord, TIndexField, TIndex, TScalarField, TScalar, TVectorField, TVector, TTensorField, TTensor >.RemoveIndexField | ( | string | fieldName | ) |
| inline

Removed the field with the specified name from the current field collection.

Parameters

  fieldName | Name of the field to be removed.

TScalarField IG.Num.StructuredMesh3d< TCoord, TIndexField, TIndex, TScalarField, TScalar, TVectorField, TVector, TTensorField, TTensor >.GetScalarField | ( | string | name | ) |
| inline

Returns scalar field with the specified name.

Parameters

  name | Name of the scalar field to be returned.

TScalarField IG.Num.StructuredMesh3d< TCoord, TIndexField, TIndex, TScalarField, TScalar, TVectorField, TVector, TTensorField, TTensor >.GetScalarField | ( | int | index | ) |
| inline

Returns the scalar field with the specified index.

Warning: numbering of scalar fields changes when fields are added or removed, therefore this method should only be called within the time (after the index of a particular field is known) when fields were not added or removed.

Parameters

  index | Consecutive index of the scalar field to be returned.

virtual TScalarField IG.Num.StructuredMesh3d< TCoord, TIndexField, TIndex, TScalarField, TScalar, TVectorField, TVector, TTensorField, TTensor >.CreateScalarField | ( | string | fieldName,
|  | string | fieldDescription
| ) |  |
| inline virtual

Creates and returns a new scalar field of dimensions that match dimensions of the current structured mesh, and with specified name and description.

Parameters

  fieldName | Name of the created field (can be null).
  fieldDescription | Description of the created field (can be null).

TScalarField IG.Num.StructuredMesh3d< TCoord, TIndexField, TIndex, TScalarField, TScalar, TVectorField, TVector, TTensorField, TTensor >.AddScalarField | ( | string | fieldName,
|  | string | fieldDescription
| ) |  |
| inline

Creates a new scalar field of dimensions that match dimensions of the current 3D structuredmesh, and specified with name and description, and adds it to the current collection.

Parameters

  fieldName | Name of the created field (normally it shouldn't be null though this is legal).
  fieldDescription | Description of the created field (can be null).

Returns
  The created field that is added to the collection.

void IG.Num.StructuredMesh3d< TCoord, TIndexField, TIndex, TScalarField, TScalar, TVectorField, TVector, TTensorField, TTensor >.AddScalarField | ( | TScalarField | field,
|  | string | name
| ) |  |
| inline

Adds the specified scalar field to the collection of scalar fields under the specified name.

If the field already has a name then its name is replaced by the specified name, unless the specified name is null.

Parameters

  field | Field to be added to the collection.
  name | Name under which the field is added to the collection.

void IG.Num.StructuredMesh3d< TCoord, TIndexField, TIndex, TScalarField, TScalar, TVectorField, TVector, TTensorField, TTensor >.AddScalarField | ( | TScalarField | field | ) |
| inline

Adds the specified scalar field to the collection of scalar fields.

Parameters

  field | Field to be added.

void IG.Num.StructuredMesh3d< TCoord, TIndexField, TIndex, TScalarField, TScalar, TVectorField, TVector, TTensorField, TTensor >.RemoveScalarField | ( | string | fieldName | ) |
| inline

Removed the field with the specified name from the current field collection.

Parameters

  fieldName | Name of the field to be removed.

TVectorField IG.Num.StructuredMesh3d< TCoord, TIndexField, TIndex, TScalarField, TScalar, TVectorField, TVector, TTensorField, TTensor >.GetVectorField | ( | string | name | ) |
| inline

Returns vector field with the specified name.

Parameters

  name | Name of the vector field to be returned.

TVectorField IG.Num.StructuredMesh3d< TCoord, TIndexField, TIndex, TScalarField, TScalar, TVectorField, TVector, TTensorField, TTensor >.GetVectorField | ( | int | index | ) |
| inline

Returns the vector field with the specified index.

Warning: numbering of vector fields changes when fields are added or removed, therefore this method should only be called within the time (after the index of a particular field is known) when fields were not added or removed.

Parameters

  index | Consecutive index of the vector field to be returned.

virtual TVectorField IG.Num.StructuredMesh3d< TCoord, TIndexField, TIndex, TScalarField, TScalar, TVectorField, TVector, TTensorField, TTensor >.CreateVectorField | ( | string | fieldName,
|  | string | fieldDescription
| ) |  |
| inline virtual

Creates and returns a new vector field of dimensions that match dimensions of the current structured mesh, and with specified name and description.

Parameters

  fieldName | Name of the created field (can be null).
  fieldDescription | Description of the created field (can be null).

TVectorField IG.Num.StructuredMesh3d< TCoord, TIndexField, TIndex, TScalarField, TScalar, TVectorField, TVector, TTensorField, TTensor >.AddVectorField | ( | string | fieldName,
|  | string | fieldDescription
| ) |  |
| inline

Creates a new vector field of dimensions that match dimensions of the current 3D structuredmesh, and specified with name and description, and adds it to the current collection.

Parameters

  fieldName | Name of the created field (normally it shouldn't be null though this is legal).
  fieldDescription | Description of the created field (can be null).

Returns
  The created field that is added to the collection.

void IG.Num.StructuredMesh3d< TCoord, TIndexField, TIndex, TScalarField, TScalar, TVectorField, TVector, TTensorField, TTensor >.AddVectorField | ( | TVectorField | field,
|  | string | name
| ) |  |
| inline

Adds the specified vector field to the collection of vector fields under the specified name.

If the field already has a name then its name is replaced by the specified name, unless the specified name is null.

Parameters

  field | Field to be added to the collection.
  name | Name under which the field is added to the collection.

void IG.Num.StructuredMesh3d< TCoord, TIndexField, TIndex, TScalarField, TScalar, TVectorField, TVector, TTensorField, TTensor >.AddVectorField | ( | TVectorField | field | ) |
| inline

Adds the specified vector field to the collection of vector fields.

Parameters

  field | Field to be added.

void IG.Num.StructuredMesh3d< TCoord, TIndexField, TIndex, TScalarField, TScalar, TVectorField, TVector, TTensorField, TTensor >.RemoveVectorField | ( | string | fieldName | ) |
| inline

Removed the field with the specified name from the current field collection.

Parameters

  fieldName | Name of the field to be removed.

TTensorField IG.Num.StructuredMesh3d< TCoord, TIndexField, TIndex, TScalarField, TScalar, TVectorField, TVector, TTensorField, TTensor >.GetTensorField | ( | string | name | ) |
| inline

Returns tensor field with the specified name.

Parameters

  name | Name of the tensor field to be returned.

TTensorField IG.Num.StructuredMesh3d< TCoord, TIndexField, TIndex, TScalarField, TScalar, TVectorField, TVector, TTensorField, TTensor >.GetTensorField | ( | int | index | ) |
| inline

Returns the tensor field with the specified index.

Warning: numbering of tensor fields changes when fields are added or removed, therefore this method should only be called within the time (after the index of a particular field is known) when fields were not added or removed.

Parameters

  index | Consecutive index of the tensor field to be returned.

virtual TTensorField IG.Num.StructuredMesh3d< TCoord, TIndexField, TIndex, TScalarField, TScalar, TVectorField, TVector, TTensorField, TTensor >.CreateTensorField | ( | string | fieldName,
|  | string | fieldDescription
| ) |  |
| inline virtual

Creates and returns a new tensor field of dimensions that match dimensions of the current structured mesh, and with specified name and description.

Parameters

  fieldName | Name of the created field (can be null).
  fieldDescription | Description of the created field (can be null).

TTensorField IG.Num.StructuredMesh3d< TCoord, TIndexField, TIndex, TScalarField, TScalar, TVectorField, TVector, TTensorField, TTensor >.AddTensorField | ( | string | fieldName,
|  | string | fieldDescription
| ) |  |
| inline

Creates a new tensor field of dimensions that match dimensions of the current 3D structuredmesh, and specified with name and description, and adds it to the current collection.

Parameters

  fieldName | Name of the created field (normally it shouldn't be null though this is legal).
  fieldDescription | Description of the created field (can be null).

Returns
  The created field that is added to the collection.

void IG.Num.StructuredMesh3d< TCoord, TIndexField, TIndex, TScalarField, TScalar, TVectorField, TVector, TTensorField, TTensor >.AddTensorField | ( | TTensorField | field,
|  | string | name
| ) |  |
| inline

Adds the specified tensor field to the collection of tensor fields under the specified name.

If the field already has a name then its name is replaced by the specified name, unless the specified name is null.

Parameters

  field | Field to be added to the collection.
  name | Name under which the field is added to the collection.

void IG.Num.StructuredMesh3d< TCoord, TIndexField, TIndex, TScalarField, TScalar, TVectorField, TVector, TTensorField, TTensor >.AddTensorField | ( | TTensorField | field | ) |
| inline

Adds the specified tensor field to the collection of tensor fields.

Parameters

  field | Field to be added.

void IG.Num.StructuredMesh3d< TCoord, TIndexField, TIndex, TScalarField, TScalar, TVectorField, TVector, TTensorField, TTensor >.RemoveTensorField | ( | string | fieldName | ) |
| inline

Removed the field with the specified name from the current field collection.

Parameters

  fieldName | Name of the field to be removed.

## Member Data Documentation

FieldCollection3d<TIndexField, TIndex> IG.Num.StructuredMesh3d< TCoord, TIndexField, TIndex, TScalarField, TScalar, TVectorField, TVector, TTensorField, TTensor >._indexFields
| private

TIndexField IG.Num.StructuredMesh3d< TCoord, TIndexField, TIndex, TScalarField, TScalar, TVectorField, TVector, TTensorField, TTensor >._activeIndexField
| private

FieldCollection3d<TScalarField, TScalar> IG.Num.StructuredMesh3d< TCoord, TIndexField, TIndex, TScalarField, TScalar, TVectorField, TVector, TTensorField, TTensor >._scalarFields
| private

TScalarField IG.Num.StructuredMesh3d< TCoord, TIndexField, TIndex, TScalarField, TScalar, TVectorField, TVector, TTensorField, TTensor >._activeScalarField
| private

FieldCollection3d<TVectorField, TVector> IG.Num.StructuredMesh3d< TCoord, TIndexField, TIndex, TScalarField, TScalar, TVectorField, TVector, TTensorField, TTensor >._vectorFields
| private

TVectorField IG.Num.StructuredMesh3d< TCoord, TIndexField, TIndex, TScalarField, TScalar, TVectorField, TVector, TTensorField, TTensor >._activeVectorField
| private

FieldCollection3d<TTensorField, TTensor> IG.Num.StructuredMesh3d< TCoord, TIndexField, TIndex, TScalarField, TScalar, TVectorField, TVector, TTensorField, TTensor >._tensorFields
| private

TTensorField IG.Num.StructuredMesh3d< TCoord, TIndexField, TIndex, TScalarField, TScalar, TVectorField, TVector, TTensorField, TTensor >._activeTensorField
| private

## Property Documentation

FieldCollection3d<TIndexField, TIndex> IG.Num.StructuredMesh3d< TCoord, TIndexField, TIndex, TScalarField, TScalar, TVectorField, TVector, TTensorField, TTensor >.IndexFields
| get protected

Gets the collection of index fields of the current mesh.

Created on first access (lazy evaluation).

Property is protected since the collection should not be accessed directly.

TIndexField IG.Num.StructuredMesh3d< TCoord, TIndexField, TIndex, TScalarField, TScalar, TVectorField, TVector, TTensorField, TTensor >.ActiveIndexField
| get protected set

Gets active index field. Has protected setter.

If there is currently no active field then one is created.

string IG.Num.StructuredMesh3d< TCoord, TIndexField, TIndex, TScalarField, TScalar, TVectorField, TVector, TTensorField, TTensor >.ActiveIndexFieldName
| get set

Gets or sets name of the currently active index field. This determines the currently active index field.

int IG.Num.StructuredMesh3d< TCoord, TIndexField, TIndex, TScalarField, TScalar, TVectorField, TVector, TTensorField, TTensor >.NumIndexFields
| get

Gets the number of index fields.

FieldCollection3d<TScalarField, TScalar> IG.Num.StructuredMesh3d< TCoord, TIndexField, TIndex, TScalarField, TScalar, TVectorField, TVector, TTensorField, TTensor >.ScalarFields
| get protected

Gets the collection of scalar fields of the current mesh.

Created on first access (lazy evaluation).

Property is protected since the collection should not be accessed directly.

TScalarField IG.Num.StructuredMesh3d< TCoord, TIndexField, TIndex, TScalarField, TScalar, TVectorField, TVector, TTensorField, TTensor >.ActiveScalarField
| get protected set

Gets active scalar field. Has protected setter.

If there is currently no active field then one is created.

string IG.Num.StructuredMesh3d< TCoord, TIndexField, TIndex, TScalarField, TScalar, TVectorField, TVector, TTensorField, TTensor >.ActiveScalarFieldName
| get set

Gets or sets name of the currently active scalar field. This determines the currently active scalar field.

int IG.Num.StructuredMesh3d< TCoord, TIndexField, TIndex, TScalarField, TScalar, TVectorField, TVector, TTensorField, TTensor >.NumScalarFields
| get

Gets the number of scalar fields.

FieldCollection3d<TVectorField, TVector> IG.Num.StructuredMesh3d< TCoord, TIndexField, TIndex, TScalarField, TScalar, TVectorField, TVector, TTensorField, TTensor >.VectorFields
| get protected

Gets the collection of vector fields of the current mesh.

Created on first access (lazy evaluation).

Property is protected since the collection should not be accessed directly.

TVectorField IG.Num.StructuredMesh3d< TCoord, TIndexField, TIndex, TScalarField, TScalar, TVectorField, TVector, TTensorField, TTensor >.ActiveVectorField
| get protected set

Gets active vector field. Has protected setter.

If there is currently no active field then one is created.

string IG.Num.StructuredMesh3d< TCoord, TIndexField, TIndex, TScalarField, TScalar, TVectorField, TVector, TTensorField, TTensor >.ActiveVectorFieldName
| get set

Gets or sets name of the currently active vector field. This determines the currently active vector field.

int IG.Num.StructuredMesh3d< TCoord, TIndexField, TIndex, TScalarField, TScalar, TVectorField, TVector, TTensorField, TTensor >.NumVectorFields
| get

Gets the number of vector fields.

FieldCollection3d<TTensorField, TTensor> IG.Num.StructuredMesh3d< TCoord, TIndexField, TIndex, TScalarField, TScalar, TVectorField, TVector, TTensorField, TTensor >.TensorFields
| get protected

Gets the collection of tensor fields of the current mesh.

Created on first access (lazy evaluation).

Property is protected since the collection should not be accessed directly.

TTensorField IG.Num.StructuredMesh3d< TCoord, TIndexField, TIndex, TScalarField, TScalar, TVectorField, TVector, TTensorField, TTensor >.ActiveTensorField
| get protected set

Gets active tensor field. Has protected setter.

If there is currently no active field then one is created.

string IG.Num.StructuredMesh3d< TCoord, TIndexField, TIndex, TScalarField, TScalar, TVectorField, TVector, TTensorField, TTensor >.ActiveTensorFieldName
| get set

Gets or sets name of the currently active tensor field. This determines the currently active tensor field.

int IG.Num.StructuredMesh3d< TCoord, TIndexField, TIndex, TScalarField, TScalar, TVectorField, TVector, TTensorField, TTensor >.NumTensorFields
| get

Gets the number of tensor fields.

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

- igbase/numeric/geometry/meshing/StructuredMesh3dGeneric.cs