Nektar++
|
Base class for mapping to be applied to the coordinate system. More...
#include <Mapping.h>
Public Member Functions | |
virtual GLOBAL_MAPPING_EXPORT | ~Mapping () |
Destructor. More... | |
GLOBAL_MAPPING_EXPORT void | InitObject (const Array< OneD, MultiRegions::ExpListSharedPtr > &pFields, const TiXmlElement *pMapping) |
Initialise the mapping object. More... | |
GLOBAL_MAPPING_EXPORT void | ReplaceField (const Array< OneD, MultiRegions::ExpListSharedPtr > &pFields) |
Replace the Expansion List used by the mapping. More... | |
GLOBAL_MAPPING_EXPORT void | Output (LibUtilities::FieldMetaDataMap &fieldMetaDataMap, const std::string &outname) |
Output function called when a chk or fld file is written. More... | |
GLOBAL_MAPPING_EXPORT void | ContravarToCartesian (const Array< OneD, Array< OneD, NekDouble > > &inarray, Array< OneD, Array< OneD, NekDouble > > &outarray) |
Convert a contravariant vector to the Cartesian system. More... | |
GLOBAL_MAPPING_EXPORT void | CovarToCartesian (const Array< OneD, Array< OneD, NekDouble > > &inarray, Array< OneD, Array< OneD, NekDouble > > &outarray) |
Convert a covariant vector to the Cartesian system. More... | |
GLOBAL_MAPPING_EXPORT void | ContravarFromCartesian (const Array< OneD, Array< OneD, NekDouble > > &inarray, Array< OneD, Array< OneD, NekDouble > > &outarray) |
Convert a contravariant vector to the transformed system. More... | |
GLOBAL_MAPPING_EXPORT void | CovarFromCartesian (const Array< OneD, Array< OneD, NekDouble > > &inarray, Array< OneD, Array< OneD, NekDouble > > &outarray) |
Convert a covariant vector to the transformed system. More... | |
GLOBAL_MAPPING_EXPORT void | GetCartesianCoordinates (Array< OneD, NekDouble > &out0, Array< OneD, NekDouble > &out1, Array< OneD, NekDouble > &out2) |
Get the Cartesian coordinates in the field. More... | |
GLOBAL_MAPPING_EXPORT void | GetJacobian (Array< OneD, NekDouble > &outarray) |
Get the Jacobian of the transformation. More... | |
GLOBAL_MAPPING_EXPORT void | DotGradJacobian (const Array< OneD, Array< OneD, NekDouble > > &inarray, Array< OneD, NekDouble > &outarray) |
Calculate the dot product with the gradient of the Jacobian. More... | |
GLOBAL_MAPPING_EXPORT void | GetMetricTensor (Array< OneD, Array< OneD, NekDouble > > &outarray) |
Get the metric tensor . More... | |
GLOBAL_MAPPING_EXPORT void | GetInvMetricTensor (Array< OneD, Array< OneD, NekDouble > > &outarray) |
Get the inverse of metric tensor . More... | |
GLOBAL_MAPPING_EXPORT void | LowerIndex (const Array< OneD, Array< OneD, NekDouble > > &inarray, Array< OneD, Array< OneD, NekDouble > > &outarray) |
Lower index of vector: . More... | |
GLOBAL_MAPPING_EXPORT void | RaiseIndex (const Array< OneD, Array< OneD, NekDouble > > &inarray, Array< OneD, Array< OneD, NekDouble > > &outarray) |
Raise index of vector: . More... | |
GLOBAL_MAPPING_EXPORT void | ApplyChristoffelContravar (const Array< OneD, Array< OneD, NekDouble > > &inarray, Array< OneD, Array< OneD, NekDouble > > &outarray) |
Apply the Christoffel symbols to a contravariant vector. More... | |
GLOBAL_MAPPING_EXPORT void | ApplyChristoffelCovar (const Array< OneD, Array< OneD, NekDouble > > &inarray, Array< OneD, Array< OneD, NekDouble > > &outarray) |
Apply the Christoffel symbols to a covariant vector. More... | |
GLOBAL_MAPPING_EXPORT void | GetCoordVelocity (Array< OneD, Array< OneD, NekDouble > > &outarray) |
Obtain the velocity of the coordinates. More... | |
GLOBAL_MAPPING_EXPORT void | Divergence (const Array< OneD, Array< OneD, NekDouble > > &inarray, Array< OneD, NekDouble > &outarray) |
Calculate the generalised divergence operator. More... | |
GLOBAL_MAPPING_EXPORT void | VelocityLaplacian (const Array< OneD, Array< OneD, NekDouble > > &inarray, Array< OneD, Array< OneD, NekDouble > > &outarray, const NekDouble alpha=0.0) |
Generalised (correction to the) velocity Laplacian operator. More... | |
GLOBAL_MAPPING_EXPORT void | gradgradU (const Array< OneD, Array< OneD, NekDouble > > &inarray, Array< OneD, Array< OneD, NekDouble > > &outarray) |
Second order covariant derivatives of a contravariant vector. More... | |
GLOBAL_MAPPING_EXPORT void | CurlCurlField (Array< OneD, Array< OneD, NekDouble > > &inarray, Array< OneD, Array< OneD, NekDouble > > &outarray, const bool generalized) |
CurlCurl calculated on the whole field. More... | |
GLOBAL_MAPPING_EXPORT bool | IsTimeDependent () |
Get flag defining if mapping is time-dependent. More... | |
GLOBAL_MAPPING_EXPORT void | SetTimeDependent (const bool value) |
Set flag defining if mapping is time-dependent. More... | |
GLOBAL_MAPPING_EXPORT bool | IsFromFunction () |
Get flag defining if mapping is defined by a function. More... | |
GLOBAL_MAPPING_EXPORT void | SetFromFunction (const bool value) |
Set flag defining if mapping is defined by a function. More... | |
GLOBAL_MAPPING_EXPORT bool | HasConstantJacobian () |
Get flag defining if mapping has constant Jacobian. More... | |
GLOBAL_MAPPING_EXPORT bool | IsDefined () |
Get flag determining if the mapping was defined or is trivial. More... | |
GLOBAL_MAPPING_EXPORT void | UpdateBCs (const NekDouble time) |
Update the Dirichlet Boundary Conditions when using Mappings. More... | |
GLOBAL_MAPPING_EXPORT void | UpdateMapping (const NekDouble time, const Array< OneD, Array< OneD, NekDouble > > &coords=NullNekDoubleArrayofArray, const Array< OneD, Array< OneD, NekDouble > > &coordsVel=NullNekDoubleArrayofArray) |
Update the Mapping with new coordinates. More... | |
GLOBAL_MAPPING_EXPORT void | UpdateGeomInfo () |
Recompute the metric terms of the Mapping. More... | |
Static Public Member Functions | |
static GLOBAL_MAPPING_EXPORT MappingSharedPtr | Load (const LibUtilities::SessionReaderSharedPtr &pSession, const Array< OneD, MultiRegions::ExpListSharedPtr > &pFields) |
Return a pointer to the mapping, creating it on first call. More... | |
Protected Attributes | |
LibUtilities::SessionReaderSharedPtr | m_session |
Session reader. More... | |
LibUtilities::FieldIOSharedPtr | m_fld |
Array< OneD, MultiRegions::ExpListSharedPtr > | m_fields |
Array< OneD, Array< OneD, NekDouble > > | m_coords |
Array with the Cartesian coordinates. More... | |
Array< OneD, Array< OneD, NekDouble > > | m_coordsVel |
Array with the velocity of the coordinates. More... | |
Array< OneD, Array< OneD, NekDouble > > | m_GeometricInfo |
Array with metric terms of the mapping. More... | |
int | m_nConvectiveFields |
Number of velocity components. More... | |
std::string | m_funcName |
Name of the function containing the coordinates. More... | |
std::string | m_velFuncName |
Name of the function containing the velocity of the coordinates. More... | |
bool | m_constantJacobian |
Flag defining if the Jacobian is constant. More... | |
bool | m_timeDependent |
Flag defining if the Mapping is time-dependent. More... | |
bool | m_fromFunction |
Flag defining if the Mapping is defined by a function. More... | |
Array< OneD, Array< OneD, NekDouble > > | m_wk1 |
Array< OneD, Array< OneD, NekDouble > > | m_wk2 |
Array< OneD, Array< OneD, NekDouble > > | m_tmp |
Static Protected Attributes | |
static MappingSharedPtr | m_mappingPtr = MappingSharedPtr() |
static bool | m_init = false |
static bool | m_isDefined = false |
Base class for mapping to be applied to the coordinate system.
|
inlinevirtual |
|
protected |
Constructor.
Definition at line 57 of file Mapping.cpp.
References ASSERTL0, Nektar::LibUtilities::FieldIO::CreateDefault(), Nektar::MultiRegions::e1D, Nektar::MultiRegions::e2D, Nektar::MultiRegions::e3D, Nektar::MultiRegions::e3DH1D, Nektar::MultiRegions::e3DH2D, m_fields, m_fld, and m_nConvectiveFields.
|
inline |
Apply the Christoffel symbols to a contravariant vector.
This function is used apply the Christoffel symbols to a contravariant vector , following the relation
inarray | Contravariant vector |
outarray | Result of applying Christoffel symbols to |
Definition at line 212 of file Mapping.h.
References v_ApplyChristoffelContravar().
Referenced by v_gradgradU(), and v_VelocityLaplacian().
|
inline |
Apply the Christoffel symbols to a covariant vector.
This function is used apply the Christoffel symbols to a covariant vector , following the relation
inarray | Contravariant vector |
outarray | Result of applying Christoffel symbols to |
Definition at line 230 of file Mapping.h.
References v_ApplyChristoffelCovar().
Referenced by v_gradgradU().
void Nektar::GlobalMapping::Mapping::ContravarFromCartesian | ( | const Array< OneD, Array< OneD, NekDouble > > & | inarray, |
Array< OneD, Array< OneD, NekDouble > > & | outarray | ||
) |
Convert a contravariant vector to the transformed system.
This function converts a contravariant vector in Cartesian space to the corresponding in transformed space using the relation
inarray | Components of the vector in Cartesian space ( ) |
outarray | Components of the vector in transformed space ( ) |
Definition at line 546 of file Mapping.cpp.
References m_fields, m_nConvectiveFields, m_tmp, v_ContravarFromCartesian(), and Vmath::Vcopy().
Referenced by v_UpdateBCs().
void Nektar::GlobalMapping::Mapping::ContravarToCartesian | ( | const Array< OneD, Array< OneD, NekDouble > > & | inarray, |
Array< OneD, Array< OneD, NekDouble > > & | outarray | ||
) |
Convert a contravariant vector to the Cartesian system.
This function converts a contravariant vector in transformed space to the corresponding in Cartesian (physical) space using the relation
inarray | Components of the vector in transformed space ( ) |
outarray | Components of the vector in Cartesian space ( ) |
Definition at line 486 of file Mapping.cpp.
References m_fields, m_nConvectiveFields, m_tmp, v_ContravarToCartesian(), and Vmath::Vcopy().
void Nektar::GlobalMapping::Mapping::CovarFromCartesian | ( | const Array< OneD, Array< OneD, NekDouble > > & | inarray, |
Array< OneD, Array< OneD, NekDouble > > & | outarray | ||
) |
Convert a covariant vector to the transformed system.
This function converts a covariant vector in Cartesian space to the corresponding in transformed space using the relation
inarray | Components of the vector in Cartesian space ( ) |
outarray | Components of the vector in transformed space ( ) |
Definition at line 576 of file Mapping.cpp.
References m_fields, m_nConvectiveFields, m_tmp, v_CovarFromCartesian(), and Vmath::Vcopy().
void Nektar::GlobalMapping::Mapping::CovarToCartesian | ( | const Array< OneD, Array< OneD, NekDouble > > & | inarray, |
Array< OneD, Array< OneD, NekDouble > > & | outarray | ||
) |
Convert a covariant vector to the Cartesian system.
This function converts a covariant vector in transformed space to the corresponding in Cartesian (physical) space using the relation
inarray | Components of the vector in transformed space ( ) |
outarray | Components of the vector in Cartesian space ( ) |
Definition at line 516 of file Mapping.cpp.
References m_fields, m_nConvectiveFields, m_tmp, v_CovarToCartesian(), and Vmath::Vcopy().
|
inline |
CurlCurl calculated on the whole field.
This function can be used to compute both the generalised CurlCurl or the typical (Cartesian) CurlCurl, depending on the flag generalized
inarray | Contravariant vector |
outarray | CurlCurl of |
generalized | Flag defining if generalised or typical CurlCurl |
Definition at line 325 of file Mapping.h.
References v_CurlCurlField().
|
inline |
Calculate the generalised divergence operator.
This function is used to calculate the generalised divergence of a contravariant vector, defined as
inarray | Contravariant vector |
outarray | Divergence of |
Definition at line 267 of file Mapping.h.
References v_Divergence().
|
inline |
Calculate the dot product with the gradient of the Jacobian.
This function calculates the dot product of an array against the gradient of the Jacobian of the Mapping.
inarray | Input array |
outarray | Output array |
Definition at line 170 of file Mapping.h.
References v_DotGradJacobian().
|
protected |
Definition at line 403 of file Mapping.cpp.
References ASSERTL0, Nektar::LibUtilities::FieldIO::CreateForFile(), Nektar::LibUtilities::eFunctionTypeExpression, Nektar::LibUtilities::eFunctionTypeFile, m_fields, and Vmath::Zero().
Referenced by v_InitObject(), and v_UpdateMapping().
|
protected |
Definition at line 382 of file Mapping.cpp.
References ASSERTL0.
|
inline |
Get the Cartesian coordinates in the field.
This function is used to obtain the Cartesian coordinates associated withthe Mapping
out0 | Coordinates in the x-direction |
out1 | Coordinates in the y-direction |
out2 | Coordinates in the z-direction |
Definition at line 134 of file Mapping.h.
References v_GetCartesianCoordinates().
Referenced by v_UpdateBCs().
|
inline |
Obtain the velocity of the coordinates.
This function is used to obtain the velocity of the coordinates associated with the Mapping
outarray | Velocity of the coordinates |
Definition at line 245 of file Mapping.h.
References v_GetCoordVelocity().
Referenced by v_UpdateBCs().
|
inline |
Get the inverse of metric tensor .
Definition at line 185 of file Mapping.h.
References v_GetInvMetricTensor().
Referenced by Nektar::GlobalMapping::MappingXYofXY::CalculateChristoffel(), and v_RaiseIndex().
|
inline |
Get the Jacobian of the transformation.
This function is used to obtain the Jacobian of the Mapping.
outarray | Array containing the Jacobian |
Definition at line 155 of file Mapping.h.
References v_GetJacobian().
Referenced by v_Divergence(), v_DotGradJacobian(), and Nektar::GlobalMapping::MappingXYofXY::v_GetInvMetricTensor().
|
inline |
Get the metric tensor .
Definition at line 178 of file Mapping.h.
References v_GetMetricTensor().
Referenced by Nektar::GlobalMapping::MappingXYofXY::CalculateChristoffel(), and v_LowerIndex().
|
inline |
Second order covariant derivatives of a contravariant vector.
This function computes the second order covariant derivatives of a contravariant vector, resulting in
inarray | Contravariant vector |
outarray | Second order derivatives |
Definition at line 307 of file Mapping.h.
References v_gradgradU().
Referenced by v_CurlCurlField().
|
inline |
Get flag defining if mapping has constant Jacobian.
Definition at line 365 of file Mapping.h.
References m_constantJacobian.
Referenced by v_DotGradJacobian().
|
inline |
Initialise the mapping object.
Definition at line 76 of file Mapping.h.
References v_InitObject().
Referenced by ReplaceField().
|
inline |
Get flag determining if the mapping was defined or is trivial.
Definition at line 371 of file Mapping.h.
References m_isDefined.
|
inline |
Get flag defining if mapping is defined by a function.
Definition at line 353 of file Mapping.h.
References m_fromFunction.
|
inline |
Get flag defining if mapping is time-dependent.
Definition at line 341 of file Mapping.h.
References m_timeDependent.
Referenced by v_UpdateBCs().
|
static |
Return a pointer to the mapping, creating it on first call.
This function is responsible for loading the Mapping, guaranteeing that a single instance of this class exists. When it is first called, it creates a Mapping and returns a pointer to it. On subsequent calls, it just returns the pointer.
pSession | Session reader object |
pFields | Fields which will be used by the Mapping |
Definition at line 265 of file Mapping.cpp.
References Nektar::LibUtilities::NekFactory< tKey, tBase, >::CreateInstance(), Nektar::GlobalMapping::GetMappingFactory(), m_init, m_isDefined, and m_mappingPtr.
Referenced by Nektar::FieldUtils::ProcessMapping::GetMapping(), Nektar::MappingExtrapolate::MappingExtrapolate(), Nektar::SolverUtils::DriverAdaptive::v_Execute(), Nektar::SolverUtils::FilterAeroForces::v_Initialise(), Nektar::VCSMapping::v_InitObject(), Nektar::ForcingMovingBody::v_InitObject(), and Nektar::SolverUtils::EquationSystem::WriteFld().
void Nektar::GlobalMapping::Mapping::LowerIndex | ( | const Array< OneD, Array< OneD, NekDouble > > & | inarray, |
Array< OneD, Array< OneD, NekDouble > > & | outarray | ||
) |
Lower index of vector: .
This function lowers the index of the contravariant vector , transforming it into its associated covariant vector according to the relation
where is the metric tensor.
inarray | Components of the contravariant vector |
outarray | Components of the covariant vector |
Definition at line 607 of file Mapping.cpp.
References m_fields, m_nConvectiveFields, m_tmp, v_LowerIndex(), and Vmath::Vcopy().
void Nektar::GlobalMapping::Mapping::Output | ( | LibUtilities::FieldMetaDataMap & | fieldMetaDataMap, |
const std::string & | outname | ||
) |
Output function called when a chk or fld file is written.
This function should be called before writing a fld or chk file. It updates the metadata with information from the Mapping. Also, if the mapping is not defined by a function, it writes a .map file containing the coordinates and velocity of the coordinates.
fieldMetaDataMap | Metadata of the output file |
outname | Name of the output file |
Definition at line 302 of file Mapping.cpp.
References m_coords, m_coordsVel, m_fields, m_fld, m_fromFunction, m_funcName, m_isDefined, m_timeDependent, and m_velFuncName.
void Nektar::GlobalMapping::Mapping::RaiseIndex | ( | const Array< OneD, Array< OneD, NekDouble > > & | inarray, |
Array< OneD, Array< OneD, NekDouble > > & | outarray | ||
) |
Raise index of vector: .
This function raises the index of the covariant vector , transforming it into its associated contravariant vector according to the relation
where is the inverse of the metric tensor.
inarray | Components of the contravariant vector |
outarray | Components of the covariant vector |
Definition at line 638 of file Mapping.cpp.
References m_fields, m_nConvectiveFields, m_tmp, v_RaiseIndex(), and Vmath::Vcopy().
Referenced by v_CurlCurlField(), and v_VelocityLaplacian().
void Nektar::GlobalMapping::Mapping::ReplaceField | ( | const Array< OneD, MultiRegions::ExpListSharedPtr > & | pFields | ) |
Replace the Expansion List used by the mapping.
This function replaces the expansion list contained in m_fields, and then proceeds reinitialising the Mapping with this new field.
pFields | New field to be used by the Mapping |
Definition at line 242 of file Mapping.cpp.
References InitObject(), m_fields, and m_session.
|
inline |
Set flag defining if mapping is defined by a function.
Definition at line 359 of file Mapping.h.
References m_fromFunction.
|
inline |
Set flag defining if mapping is time-dependent.
Definition at line 347 of file Mapping.h.
References m_timeDependent.
|
inline |
Update the Dirichlet Boundary Conditions when using Mappings.
Definition at line 381 of file Mapping.h.
References v_UpdateBCs().
|
inline |
Recompute the metric terms of the Mapping.
Definition at line 397 of file Mapping.h.
References v_UpdateGeomInfo().
Referenced by v_InitObject(), and v_UpdateMapping().
|
inline |
Update the Mapping with new coordinates.
Definition at line 387 of file Mapping.h.
References v_UpdateMapping().
|
protectedvirtual |
Definition at line 1009 of file Mapping.cpp.
References gradgradU(), m_fields, m_nConvectiveFields, m_tmp, CellMLToNektar.cellml_metadata::p, RaiseIndex(), Vmath::Vadd(), Vmath::Vcopy(), and Vmath::Vsub().
Referenced by CurlCurlField().
|
protectedvirtual |
Definition at line 763 of file Mapping.cpp.
References Nektar::MultiRegions::DirCartesianMap, GetJacobian(), m_fields, m_nConvectiveFields, Vmath::Vadd(), Vmath::Vdiv(), Vmath::Vmul(), and Vmath::Zero().
Referenced by Divergence().
|
protectedvirtual |
Reimplemented in Nektar::GlobalMapping::MappingTranslation, Nektar::GlobalMapping::MappingXofXZ, Nektar::GlobalMapping::MappingXofZ, and Nektar::GlobalMapping::MappingXYofZ.
Definition at line 687 of file Mapping.cpp.
References Nektar::MultiRegions::DirCartesianMap, GetJacobian(), HasConstantJacobian(), m_fields, m_nConvectiveFields, and Vmath::Vvtvp().
Referenced by DotGradJacobian().
|
protectedvirtual |
Definition at line 659 of file Mapping.cpp.
References m_coords, m_fields, and Vmath::Vcopy().
Referenced by GetCartesianCoordinates().
|
protectedvirtual |
Definition at line 675 of file Mapping.cpp.
References m_coordsVel, m_fields, m_nConvectiveFields, and Vmath::Vcopy().
Referenced by GetCoordVelocity().
|
protectedpure virtual |
|
protectedvirtual |
Definition at line 899 of file Mapping.cpp.
References ApplyChristoffelContravar(), ApplyChristoffelCovar(), m_fields, m_nConvectiveFields, m_wk1, m_wk2, CellMLToNektar.cellml_metadata::p, Vmath::Vadd(), and Vmath::Vsub().
Referenced by gradgradU().
|
protectedvirtual |
This function initialises the Mapping object. It computes the coordinates and velocity coordinates, initialises the workspace variables, and calls UpdateGeomInfo, which will perform the calculations specific for each type of Mapping.
pFields | ExpList array used in the mapping |
pMapping | xml element describing the mapping |
Reimplemented in Nektar::GlobalMapping::MappingGeneral, Nektar::GlobalMapping::MappingXYofXY, Nektar::GlobalMapping::MappingTranslation, Nektar::GlobalMapping::MappingXofXZ, Nektar::GlobalMapping::MappingXofZ, and Nektar::GlobalMapping::MappingXYofZ.
Definition at line 99 of file Mapping.cpp.
References ASSERTL0, Nektar::MultiRegions::e3DH1D, EvaluateFunction(), m_coords, m_coordsVel, m_fields, m_fromFunction, m_funcName, m_nConvectiveFields, m_session, m_timeDependent, m_tmp, m_velFuncName, m_wk1, m_wk2, UpdateGeomInfo(), Vmath::Vcopy(), and Vmath::Zero().
Referenced by InitObject(), Nektar::GlobalMapping::MappingXofXZ::v_InitObject(), Nektar::GlobalMapping::MappingXofZ::v_InitObject(), Nektar::GlobalMapping::MappingXYofZ::v_InitObject(), Nektar::GlobalMapping::MappingTranslation::v_InitObject(), Nektar::GlobalMapping::MappingXYofXY::v_InitObject(), and Nektar::GlobalMapping::MappingGeneral::v_InitObject().
|
protectedvirtual |
Reimplemented in Nektar::GlobalMapping::MappingTranslation, Nektar::GlobalMapping::MappingXofXZ, and Nektar::GlobalMapping::MappingXofZ.
Definition at line 717 of file Mapping.cpp.
References GetMetricTensor(), m_fields, m_nConvectiveFields, and Vmath::Vvtvp().
Referenced by LowerIndex().
|
protectedvirtual |
Reimplemented in Nektar::GlobalMapping::MappingTranslation, Nektar::GlobalMapping::MappingXofXZ, and Nektar::GlobalMapping::MappingXofZ.
Definition at line 740 of file Mapping.cpp.
References GetInvMetricTensor(), m_fields, m_nConvectiveFields, and Vmath::Vvtvp().
Referenced by RaiseIndex().
Definition at line 1072 of file Mapping.cpp.
References ASSERTL0, ContravarFromCartesian(), Nektar::MultiRegions::e3DH1D, Nektar::SpatialDomains::eDirichlet, Nektar::LibUtilities::Equation::Evaluate(), GetCartesianCoordinates(), GetCoordVelocity(), IsTimeDependent(), m_fields, m_nConvectiveFields, Vmath::Vadd(), and Vmath::Vcopy().
Referenced by UpdateBCs().
|
protectedpure virtual |
|
protectedvirtual |
Definition at line 1227 of file Mapping.cpp.
References ASSERTL0, Nektar::MultiRegions::e3DH1D, EvaluateFunction(), m_coords, m_coordsVel, m_fields, m_fromFunction, m_funcName, m_nConvectiveFields, m_session, m_velFuncName, UpdateGeomInfo(), and Vmath::Vcopy().
Referenced by UpdateMapping().
|
protectedvirtual |
Definition at line 792 of file Mapping.cpp.
References ApplyChristoffelContravar(), Nektar::MultiRegions::DirCartesianMap, m_fields, m_nConvectiveFields, m_tmp, m_wk1, m_wk2, CellMLToNektar.cellml_metadata::p, RaiseIndex(), Vmath::Smul(), Vmath::Vadd(), Vmath::Vcopy(), and Vmath::Vsub().
Referenced by VelocityLaplacian().
|
inline |
Generalised (correction to the) velocity Laplacian operator.
This function is used to calculate a correction defined as the difference between the generalised Laplacian and the original Laplacian multiplied by a constant , resulting in
By default, is zero, resulting in the generalised Laplacian.
inarray | Contravariant vector |
outarray | Result of the operation |
alpha | The constant |
Definition at line 290 of file Mapping.h.
References v_VelocityLaplacian().
|
protected |
Flag defining if the Jacobian is constant.
Definition at line 427 of file Mapping.h.
Referenced by HasConstantJacobian(), Nektar::GlobalMapping::MappingXofXZ::v_InitObject(), Nektar::GlobalMapping::MappingXofZ::v_InitObject(), Nektar::GlobalMapping::MappingXYofZ::v_InitObject(), Nektar::GlobalMapping::MappingTranslation::v_InitObject(), Nektar::GlobalMapping::MappingXYofXY::v_InitObject(), and Nektar::GlobalMapping::MappingGeneral::v_InitObject().
Array with the Cartesian coordinates.
Definition at line 411 of file Mapping.h.
Referenced by Nektar::GlobalMapping::MappingGeneral::CalculateMetricTerms(), Output(), v_GetCartesianCoordinates(), Nektar::GlobalMapping::MappingTranslation::v_InitObject(), v_InitObject(), Nektar::GlobalMapping::MappingXYofZ::v_UpdateGeomInfo(), Nektar::GlobalMapping::MappingXYofXY::v_UpdateGeomInfo(), Nektar::GlobalMapping::MappingXofXZ::v_UpdateGeomInfo(), Nektar::GlobalMapping::MappingXofZ::v_UpdateGeomInfo(), and v_UpdateMapping().
Array with the velocity of the coordinates.
Definition at line 413 of file Mapping.h.
Referenced by Output(), v_GetCoordVelocity(), Nektar::GlobalMapping::MappingTranslation::v_InitObject(), v_InitObject(), and v_UpdateMapping().
|
protected |
Definition at line 409 of file Mapping.h.
Referenced by Nektar::GlobalMapping::MappingGeneral::CalculateChristoffel(), Nektar::GlobalMapping::MappingXYofXY::CalculateChristoffel(), Nektar::GlobalMapping::MappingXYofXY::CalculateMetricTensor(), Nektar::GlobalMapping::MappingGeneral::CalculateMetricTerms(), ContravarFromCartesian(), ContravarToCartesian(), CovarFromCartesian(), CovarToCartesian(), EvaluateFunction(), LowerIndex(), Mapping(), Output(), RaiseIndex(), ReplaceField(), Nektar::GlobalMapping::MappingXYofZ::v_ApplyChristoffelContravar(), Nektar::GlobalMapping::MappingXYofXY::v_ApplyChristoffelContravar(), Nektar::GlobalMapping::MappingXofZ::v_ApplyChristoffelContravar(), Nektar::GlobalMapping::MappingXofXZ::v_ApplyChristoffelContravar(), Nektar::GlobalMapping::MappingGeneral::v_ApplyChristoffelContravar(), Nektar::GlobalMapping::MappingTranslation::v_ApplyChristoffelContravar(), Nektar::GlobalMapping::MappingXYofZ::v_ApplyChristoffelCovar(), Nektar::GlobalMapping::MappingXYofXY::v_ApplyChristoffelCovar(), Nektar::GlobalMapping::MappingXofZ::v_ApplyChristoffelCovar(), Nektar::GlobalMapping::MappingXofXZ::v_ApplyChristoffelCovar(), Nektar::GlobalMapping::MappingGeneral::v_ApplyChristoffelCovar(), Nektar::GlobalMapping::MappingTranslation::v_ApplyChristoffelCovar(), Nektar::GlobalMapping::MappingXYofZ::v_ContravarFromCartesian(), Nektar::GlobalMapping::MappingXofXZ::v_ContravarFromCartesian(), Nektar::GlobalMapping::MappingXofZ::v_ContravarFromCartesian(), Nektar::GlobalMapping::MappingTranslation::v_ContravarFromCartesian(), Nektar::GlobalMapping::MappingXYofXY::v_ContravarFromCartesian(), Nektar::GlobalMapping::MappingGeneral::v_ContravarFromCartesian(), Nektar::GlobalMapping::MappingXofXZ::v_ContravarToCartesian(), Nektar::GlobalMapping::MappingXYofZ::v_ContravarToCartesian(), Nektar::GlobalMapping::MappingXofZ::v_ContravarToCartesian(), Nektar::GlobalMapping::MappingTranslation::v_ContravarToCartesian(), Nektar::GlobalMapping::MappingXYofXY::v_ContravarToCartesian(), Nektar::GlobalMapping::MappingGeneral::v_ContravarToCartesian(), Nektar::GlobalMapping::MappingXYofZ::v_CovarFromCartesian(), Nektar::GlobalMapping::MappingXofXZ::v_CovarFromCartesian(), Nektar::GlobalMapping::MappingXofZ::v_CovarFromCartesian(), Nektar::GlobalMapping::MappingTranslation::v_CovarFromCartesian(), Nektar::GlobalMapping::MappingXYofXY::v_CovarFromCartesian(), Nektar::GlobalMapping::MappingGeneral::v_CovarFromCartesian(), Nektar::GlobalMapping::MappingXYofZ::v_CovarToCartesian(), Nektar::GlobalMapping::MappingXofXZ::v_CovarToCartesian(), Nektar::GlobalMapping::MappingXofZ::v_CovarToCartesian(), Nektar::GlobalMapping::MappingTranslation::v_CovarToCartesian(), Nektar::GlobalMapping::MappingXYofXY::v_CovarToCartesian(), Nektar::GlobalMapping::MappingGeneral::v_CovarToCartesian(), v_CurlCurlField(), v_Divergence(), Nektar::GlobalMapping::MappingXofZ::v_DotGradJacobian(), Nektar::GlobalMapping::MappingXYofZ::v_DotGradJacobian(), Nektar::GlobalMapping::MappingXofXZ::v_DotGradJacobian(), Nektar::GlobalMapping::MappingTranslation::v_DotGradJacobian(), v_DotGradJacobian(), v_GetCartesianCoordinates(), v_GetCoordVelocity(), Nektar::GlobalMapping::MappingXofZ::v_GetInvMetricTensor(), Nektar::GlobalMapping::MappingXYofZ::v_GetInvMetricTensor(), Nektar::GlobalMapping::MappingXofXZ::v_GetInvMetricTensor(), Nektar::GlobalMapping::MappingTranslation::v_GetInvMetricTensor(), Nektar::GlobalMapping::MappingXYofXY::v_GetInvMetricTensor(), Nektar::GlobalMapping::MappingGeneral::v_GetInvMetricTensor(), Nektar::GlobalMapping::MappingXYofZ::v_GetJacobian(), Nektar::GlobalMapping::MappingXofXZ::v_GetJacobian(), Nektar::GlobalMapping::MappingXofZ::v_GetJacobian(), Nektar::GlobalMapping::MappingTranslation::v_GetJacobian(), Nektar::GlobalMapping::MappingXYofXY::v_GetJacobian(), Nektar::GlobalMapping::MappingGeneral::v_GetJacobian(), Nektar::GlobalMapping::MappingXYofZ::v_GetMetricTensor(), Nektar::GlobalMapping::MappingXofZ::v_GetMetricTensor(), Nektar::GlobalMapping::MappingXofXZ::v_GetMetricTensor(), Nektar::GlobalMapping::MappingTranslation::v_GetMetricTensor(), Nektar::GlobalMapping::MappingXYofXY::v_GetMetricTensor(), Nektar::GlobalMapping::MappingGeneral::v_GetMetricTensor(), v_gradgradU(), Nektar::GlobalMapping::MappingTranslation::v_InitObject(), v_InitObject(), Nektar::GlobalMapping::MappingXofXZ::v_LowerIndex(), Nektar::GlobalMapping::MappingXofZ::v_LowerIndex(), Nektar::GlobalMapping::MappingTranslation::v_LowerIndex(), v_LowerIndex(), Nektar::GlobalMapping::MappingXofZ::v_RaiseIndex(), Nektar::GlobalMapping::MappingXofXZ::v_RaiseIndex(), Nektar::GlobalMapping::MappingTranslation::v_RaiseIndex(), v_RaiseIndex(), v_UpdateBCs(), Nektar::GlobalMapping::MappingXYofZ::v_UpdateGeomInfo(), Nektar::GlobalMapping::MappingXYofXY::v_UpdateGeomInfo(), Nektar::GlobalMapping::MappingXofZ::v_UpdateGeomInfo(), Nektar::GlobalMapping::MappingXofXZ::v_UpdateGeomInfo(), v_UpdateMapping(), and v_VelocityLaplacian().
|
protected |
|
protected |
Flag defining if the Mapping is defined by a function.
Definition at line 431 of file Mapping.h.
Referenced by IsFromFunction(), Output(), SetFromFunction(), v_InitObject(), and v_UpdateMapping().
|
protected |
Name of the function containing the coordinates.
Definition at line 420 of file Mapping.h.
Referenced by Output(), v_InitObject(), and v_UpdateMapping().
Array with metric terms of the mapping.
Definition at line 415 of file Mapping.h.
Referenced by Nektar::GlobalMapping::MappingXYofXY::CalculateMetricTensor(), Nektar::GlobalMapping::MappingXYofZ::v_ApplyChristoffelContravar(), Nektar::GlobalMapping::MappingXofZ::v_ApplyChristoffelContravar(), Nektar::GlobalMapping::MappingXofXZ::v_ApplyChristoffelContravar(), Nektar::GlobalMapping::MappingXYofZ::v_ApplyChristoffelCovar(), Nektar::GlobalMapping::MappingXofZ::v_ApplyChristoffelCovar(), Nektar::GlobalMapping::MappingXofXZ::v_ApplyChristoffelCovar(), Nektar::GlobalMapping::MappingXYofZ::v_ContravarFromCartesian(), Nektar::GlobalMapping::MappingXofZ::v_ContravarFromCartesian(), Nektar::GlobalMapping::MappingXofXZ::v_ContravarFromCartesian(), Nektar::GlobalMapping::MappingXYofXY::v_ContravarFromCartesian(), Nektar::GlobalMapping::MappingXYofZ::v_ContravarToCartesian(), Nektar::GlobalMapping::MappingXofXZ::v_ContravarToCartesian(), Nektar::GlobalMapping::MappingXofZ::v_ContravarToCartesian(), Nektar::GlobalMapping::MappingXYofXY::v_ContravarToCartesian(), Nektar::GlobalMapping::MappingXofZ::v_CovarFromCartesian(), Nektar::GlobalMapping::MappingXYofZ::v_CovarFromCartesian(), Nektar::GlobalMapping::MappingXofXZ::v_CovarFromCartesian(), Nektar::GlobalMapping::MappingXYofXY::v_CovarFromCartesian(), Nektar::GlobalMapping::MappingXofXZ::v_CovarToCartesian(), Nektar::GlobalMapping::MappingXYofZ::v_CovarToCartesian(), Nektar::GlobalMapping::MappingXofZ::v_CovarToCartesian(), Nektar::GlobalMapping::MappingXYofXY::v_CovarToCartesian(), Nektar::GlobalMapping::MappingXofXZ::v_DotGradJacobian(), Nektar::GlobalMapping::MappingXofXZ::v_GetInvMetricTensor(), Nektar::GlobalMapping::MappingXYofZ::v_GetInvMetricTensor(), Nektar::GlobalMapping::MappingXofZ::v_GetInvMetricTensor(), Nektar::GlobalMapping::MappingXofXZ::v_GetJacobian(), Nektar::GlobalMapping::MappingXYofXY::v_GetJacobian(), Nektar::GlobalMapping::MappingXofZ::v_GetMetricTensor(), Nektar::GlobalMapping::MappingXofXZ::v_GetMetricTensor(), Nektar::GlobalMapping::MappingXYofZ::v_GetMetricTensor(), Nektar::GlobalMapping::MappingXofXZ::v_LowerIndex(), Nektar::GlobalMapping::MappingXofZ::v_LowerIndex(), Nektar::GlobalMapping::MappingXofXZ::v_RaiseIndex(), Nektar::GlobalMapping::MappingXofZ::v_RaiseIndex(), Nektar::GlobalMapping::MappingXYofZ::v_UpdateGeomInfo(), Nektar::GlobalMapping::MappingXYofXY::v_UpdateGeomInfo(), Nektar::GlobalMapping::MappingXofXZ::v_UpdateGeomInfo(), and Nektar::GlobalMapping::MappingXofZ::v_UpdateGeomInfo().
|
staticprotected |
|
staticprotected |
Definition at line 436 of file Mapping.h.
Referenced by IsDefined(), Load(), and Output().
|
staticprotected |
|
protected |
Number of velocity components.
Definition at line 417 of file Mapping.h.
Referenced by Nektar::GlobalMapping::MappingGeneral::CalculateChristoffel(), Nektar::GlobalMapping::MappingXYofXY::CalculateChristoffel(), Nektar::GlobalMapping::MappingGeneral::CalculateMetricTerms(), ContravarFromCartesian(), ContravarToCartesian(), CovarFromCartesian(), CovarToCartesian(), LowerIndex(), Mapping(), RaiseIndex(), Nektar::GlobalMapping::MappingXYofZ::v_ApplyChristoffelContravar(), Nektar::GlobalMapping::MappingXYofXY::v_ApplyChristoffelContravar(), Nektar::GlobalMapping::MappingXofXZ::v_ApplyChristoffelContravar(), Nektar::GlobalMapping::MappingXofZ::v_ApplyChristoffelContravar(), Nektar::GlobalMapping::MappingGeneral::v_ApplyChristoffelContravar(), Nektar::GlobalMapping::MappingTranslation::v_ApplyChristoffelContravar(), Nektar::GlobalMapping::MappingXYofZ::v_ApplyChristoffelCovar(), Nektar::GlobalMapping::MappingXYofXY::v_ApplyChristoffelCovar(), Nektar::GlobalMapping::MappingXofXZ::v_ApplyChristoffelCovar(), Nektar::GlobalMapping::MappingXofZ::v_ApplyChristoffelCovar(), Nektar::GlobalMapping::MappingGeneral::v_ApplyChristoffelCovar(), Nektar::GlobalMapping::MappingTranslation::v_ApplyChristoffelCovar(), Nektar::GlobalMapping::MappingTranslation::v_ContravarFromCartesian(), Nektar::GlobalMapping::MappingXYofXY::v_ContravarFromCartesian(), Nektar::GlobalMapping::MappingGeneral::v_ContravarFromCartesian(), Nektar::GlobalMapping::MappingTranslation::v_ContravarToCartesian(), Nektar::GlobalMapping::MappingXYofXY::v_ContravarToCartesian(), Nektar::GlobalMapping::MappingGeneral::v_ContravarToCartesian(), Nektar::GlobalMapping::MappingTranslation::v_CovarFromCartesian(), Nektar::GlobalMapping::MappingXYofXY::v_CovarFromCartesian(), Nektar::GlobalMapping::MappingGeneral::v_CovarFromCartesian(), Nektar::GlobalMapping::MappingTranslation::v_CovarToCartesian(), Nektar::GlobalMapping::MappingXYofXY::v_CovarToCartesian(), Nektar::GlobalMapping::MappingGeneral::v_CovarToCartesian(), v_CurlCurlField(), v_Divergence(), v_DotGradJacobian(), v_GetCoordVelocity(), Nektar::GlobalMapping::MappingXofXZ::v_GetInvMetricTensor(), Nektar::GlobalMapping::MappingXofZ::v_GetInvMetricTensor(), Nektar::GlobalMapping::MappingXYofZ::v_GetInvMetricTensor(), Nektar::GlobalMapping::MappingTranslation::v_GetInvMetricTensor(), Nektar::GlobalMapping::MappingXYofXY::v_GetInvMetricTensor(), Nektar::GlobalMapping::MappingGeneral::v_GetInvMetricTensor(), Nektar::GlobalMapping::MappingXYofZ::v_GetMetricTensor(), Nektar::GlobalMapping::MappingXofXZ::v_GetMetricTensor(), Nektar::GlobalMapping::MappingXofZ::v_GetMetricTensor(), Nektar::GlobalMapping::MappingTranslation::v_GetMetricTensor(), Nektar::GlobalMapping::MappingXYofXY::v_GetMetricTensor(), Nektar::GlobalMapping::MappingGeneral::v_GetMetricTensor(), v_gradgradU(), Nektar::GlobalMapping::MappingXofXZ::v_InitObject(), Nektar::GlobalMapping::MappingXofZ::v_InitObject(), Nektar::GlobalMapping::MappingXYofZ::v_InitObject(), Nektar::GlobalMapping::MappingTranslation::v_InitObject(), Nektar::GlobalMapping::MappingXYofXY::v_InitObject(), Nektar::GlobalMapping::MappingGeneral::v_InitObject(), v_InitObject(), Nektar::GlobalMapping::MappingTranslation::v_LowerIndex(), v_LowerIndex(), Nektar::GlobalMapping::MappingTranslation::v_RaiseIndex(), v_RaiseIndex(), v_UpdateBCs(), v_UpdateMapping(), and v_VelocityLaplacian().
|
protected |
Session reader.
Definition at line 405 of file Mapping.h.
Referenced by ReplaceField(), Nektar::GlobalMapping::MappingTranslation::v_InitObject(), v_InitObject(), and v_UpdateMapping().
|
protected |
Flag defining if the Mapping is time-dependent.
Definition at line 429 of file Mapping.h.
Referenced by IsTimeDependent(), Output(), SetTimeDependent(), Nektar::GlobalMapping::MappingTranslation::v_InitObject(), and v_InitObject().
Definition at line 441 of file Mapping.h.
Referenced by ContravarFromCartesian(), ContravarToCartesian(), CovarFromCartesian(), CovarToCartesian(), LowerIndex(), RaiseIndex(), v_CurlCurlField(), Nektar::GlobalMapping::MappingTranslation::v_InitObject(), v_InitObject(), and v_VelocityLaplacian().
|
protected |
Name of the function containing the velocity of the coordinates.
Definition at line 422 of file Mapping.h.
Referenced by Output(), v_InitObject(), and v_UpdateMapping().
Definition at line 439 of file Mapping.h.
Referenced by v_gradgradU(), v_InitObject(), and v_VelocityLaplacian().
Definition at line 440 of file Mapping.h.
Referenced by v_gradgradU(), v_InitObject(), and v_VelocityLaplacian().