Nektar++
|
#include <MappingXYofZ.h>
Static Public Member Functions | |
static GLOBAL_MAPPING_EXPORT MappingSharedPtr | create (const LibUtilities::SessionReaderSharedPtr &pSession, const Array< OneD, MultiRegions::ExpListSharedPtr > &pFields, const TiXmlElement *pMapping) |
Creates an instance of this class. More... | |
Static Public Member Functions inherited from Nektar::GlobalMapping::Mapping | |
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... | |
Static Public Attributes | |
static std::string | className |
Name of the class. More... | |
Friends | |
class | MemoryManager< MappingXYofZ > |
Additional Inherited Members | |
Public Member Functions inherited from Nektar::GlobalMapping::Mapping | |
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... | |
Protected Attributes inherited from Nektar::GlobalMapping::Mapping | |
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 inherited from Nektar::GlobalMapping::Mapping | |
static MappingSharedPtr | m_mappingPtr = MappingSharedPtr() |
static bool | m_init = false |
static bool | m_isDefined = false |
This class implements a constant-Jacobian mapping defined by
where are the Cartesian (physical) coordinates and are the transformed (computational) coordinates.
Definition at line 51 of file MappingXYofZ.h.
|
protected |
Definition at line 58 of file MappingXYofZ.cpp.
|
inlinestatic |
Creates an instance of this class.
Definition at line 59 of file MappingXYofZ.h.
References Nektar::MemoryManager< DataType >::AllocateSharedPtr(), Nektar::GlobalMapping::MappingSharedPtr, and CellMLToNektar.cellml_metadata::p.
|
protectedvirtual |
Implements Nektar::GlobalMapping::Mapping.
Definition at line 247 of file MappingXYofZ.cpp.
References Nektar::GlobalMapping::Mapping::m_fields, Nektar::GlobalMapping::Mapping::m_GeometricInfo, Nektar::GlobalMapping::Mapping::m_nConvectiveFields, and Vmath::Vmul().
|
protectedvirtual |
Implements Nektar::GlobalMapping::Mapping.
Definition at line 274 of file MappingXYofZ.cpp.
References Nektar::GlobalMapping::Mapping::m_fields, Nektar::GlobalMapping::Mapping::m_GeometricInfo, Nektar::GlobalMapping::Mapping::m_nConvectiveFields, Vmath::Vmul(), and Vmath::Vvtvp().
|
protectedvirtual |
Implements Nektar::GlobalMapping::Mapping.
Definition at line 118 of file MappingXYofZ.cpp.
References Nektar::GlobalMapping::Mapping::m_fields, Nektar::GlobalMapping::Mapping::m_GeometricInfo, Vmath::Vcopy(), Vmath::Vmul(), and Vmath::Vsub().
|
protectedvirtual |
Implements Nektar::GlobalMapping::Mapping.
Definition at line 80 of file MappingXYofZ.cpp.
References Nektar::GlobalMapping::Mapping::m_fields, Nektar::GlobalMapping::Mapping::m_GeometricInfo, Vmath::Vcopy(), and Vmath::Vvtvp().
|
protectedvirtual |
Implements Nektar::GlobalMapping::Mapping.
Definition at line 137 of file MappingXYofZ.cpp.
References Nektar::GlobalMapping::Mapping::m_fields, Nektar::GlobalMapping::Mapping::m_GeometricInfo, Vmath::Vadd(), Vmath::Vcopy(), Vmath::Vmul(), and Vmath::Vvtvp().
|
protectedvirtual |
Implements Nektar::GlobalMapping::Mapping.
Definition at line 98 of file MappingXYofZ.cpp.
References Nektar::GlobalMapping::Mapping::m_fields, Nektar::GlobalMapping::Mapping::m_GeometricInfo, Vmath::Vcopy(), Vmath::Vmul(), and Vmath::Vsub().
|
protectedvirtual |
Reimplemented from Nektar::GlobalMapping::Mapping.
Definition at line 164 of file MappingXYofZ.cpp.
References Nektar::GlobalMapping::Mapping::m_fields, and Vmath::Zero().
|
protectedvirtual |
Implements Nektar::GlobalMapping::Mapping.
Definition at line 204 of file MappingXYofZ.cpp.
References Nektar::GlobalMapping::Mapping::m_fields, Nektar::GlobalMapping::Mapping::m_GeometricInfo, Nektar::GlobalMapping::Mapping::m_nConvectiveFields, Vmath::Neg(), Vmath::Sadd(), Vmath::Vadd(), and Vmath::Vcopy().
|
protectedvirtual |
Implements Nektar::GlobalMapping::Mapping.
Definition at line 157 of file MappingXYofZ.cpp.
References Vmath::Fill(), and Nektar::GlobalMapping::Mapping::m_fields.
|
protectedvirtual |
Implements Nektar::GlobalMapping::Mapping.
Definition at line 172 of file MappingXYofZ.cpp.
References Nektar::GlobalMapping::Mapping::m_fields, Nektar::GlobalMapping::Mapping::m_GeometricInfo, Nektar::GlobalMapping::Mapping::m_nConvectiveFields, Vmath::Sadd(), Vmath::Vadd(), and Vmath::Vcopy().
|
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 from Nektar::GlobalMapping::Mapping.
Definition at line 68 of file MappingXYofZ.cpp.
References ASSERTL0, Nektar::GlobalMapping::Mapping::m_constantJacobian, Nektar::GlobalMapping::Mapping::m_nConvectiveFields, and Nektar::GlobalMapping::Mapping::v_InitObject().
|
protectedvirtual |
Implements Nektar::GlobalMapping::Mapping.
Definition at line 297 of file MappingXYofZ.cpp.
References Nektar::MultiRegions::DirCartesianMap, Nektar::GlobalMapping::Mapping::m_coords, Nektar::GlobalMapping::Mapping::m_fields, Nektar::GlobalMapping::Mapping::m_GeometricInfo, and Vmath::Vmul().
|
friend |
Definition at line 55 of file MappingXYofZ.h.
|
static |
Name of the class.
Definition at line 72 of file MappingXYofZ.h.