Overture  Version 25
Public Member Functions | Static Public Member Functions | Public Attributes | Protected Attributes | List of all members
MatrixMapping Class Reference

#include <MatrixMapping.h>

Inheritance diagram for MatrixMapping:
Inheritance graph
[legend]
Collaboration diagram for MatrixMapping:
Collaboration graph
[legend]

Public Member Functions

 MatrixMapping (int domainDimension=3, int rangeDimension=3)
 
 MatrixMapping (const MatrixMapping &, const CopyType copyType=DEEP)
 
 ~MatrixMapping ()
 
MatrixMappingoperator= (const MatrixMapping &X)
 
void rotate (const int axis, const real theta)
 
void rotate (const RealArray &rotate, bool incremental=false)
 
void scale (const real scalex=1., const real scaley=1., const real scalez=1., bool incremental=true)
 
void shift (const real shiftx=1., const real shifty=1., const real shiftz=1., bool incremental=true)
 
void reset ()
 
virtual int get (const GenericDataBase &dir, const aString &name)
 
virtual int put (GenericDataBase &dir, const aString &name) const
 
Mappingmake (const aString &mappingClassName)
 
aString getClassName () const
 
void map (const realArray &r, realArray &x, realArray &xr=Overture::nullRealDistributedArray(), MappingParameters &params=Overture::nullMappingParameters())
 
void inverseMap (const realArray &x, realArray &r, realArray &rx=Overture::nullRealDistributedArray(), MappingParameters &params=Overture::nullMappingParameters())
 
void basicInverse (const realArray &x, realArray &r, realArray &rx=Overture::nullRealDistributedArray(), MappingParameters &params=Overture::nullMappingParameters())
 
void mapS (const RealArray &r, RealArray &x, RealArray &xr=Overture::nullRealArray(), MappingParameters &params=Overture::nullMappingParameters())
 
void inverseMapS (const RealArray &x, RealArray &r, RealArray &rx=Overture::nullRealArray(), MappingParameters &params=Overture::nullMappingParameters())
 
void basicInverseS (const RealArray &x, RealArray &r, RealArray &rx=Overture::nullRealArray(), MappingParameters &params=Overture::nullMappingParameters())
 
- Public Member Functions inherited from Mapping
 Mapping (int domainDimension=3, int rangeDimension=3, mappingSpace domainSpace=parameterSpace, mappingSpace rangeSpace=cartesianSpace, coordinateSystem domainCoordinateSystem=cartesian, coordinateSystem rangeCoordinateSystem=cartesian)
 
 Mapping (const Mapping &, const CopyType copyType=DEEP)
 
Mappingoperator= (const Mapping &X)
 
virtual ~Mapping ()
 
void reference (const Mapping &map)
 
void breakReference ()
 
virtual void mapC (const realArray &r, const realArray &x, const realArray &xr=Overture::nullRealDistributedArray(), MappingParameters &params=Overture::nullMappingParameters())
 
virtual void inverseMapC (const realArray &x, const realArray &r, const realArray &rx=Overture::nullRealDistributedArray(), MappingParameters &params=Overture::nullMappingParameters())
 
virtual void mapGrid (const realArray &r, realArray &x, realArray &xr=Overture::nullRealDistributedArray(), MappingParameters &params=Overture::nullMappingParameters())
 
virtual int intersects (Mapping &map2, const int &side1=-1, const int &axis1=-1, const int &side2=-1, const int &axis2=-1, const real &tol=0.) const
 
virtual void inverseMapGrid (const realArray &x, realArray &r, realArray &rx=Overture::nullRealDistributedArray(), MappingParameters &params=Overture::nullMappingParameters())
 
virtual void mapCS (const RealArray &r, const RealArray &x, const RealArray &xr=Overture::nullRealArray(), MappingParameters &params=Overture::nullMappingParameters())
 
virtual void inverseMapCS (const RealArray &x, const RealArray &r, const RealArray &rx=Overture::nullRealArray(), MappingParameters &params=Overture::nullMappingParameters())
 
virtual void mapGridS (const RealArray &r, RealArray &x, RealArray &xr=Overture::nullRealArray(), MappingParameters &params=Overture::nullMappingParameters())
 
virtual void inverseMapGridS (const RealArray &x, RealArray &r, RealArray &rx=Overture::nullRealArray(), MappingParameters &params=Overture::nullMappingParameters())
 
virtual int projectS (RealArray &x, MappingProjectionParameters &mpParams)
 
virtual real sizeOf (FILE *file=NULL) const
 
virtual int update (MappingInformation &mapInfo)
 
virtual bool updateWithCommand (MappingInformation &mapInfo, const aString &command)
 
virtual int interactiveUpdate (GenericGraphicsInterface &gi)
 
virtual int project (realArray &x, MappingProjectionParameters &mpParams)
 
virtual void display (const aString &label=blankString) const
 
int checkMapping ()
 
void reinitialize ()
 
int determineResolution (int numberOfGridPoints[], bool collapsedEdge[2][3], real averageArclength[], real elementDensityTolerance=.05)
 
void secondOrderDerivative (const Index &I, const realArray &r, realArray &xrr, const int axis, const int &rAxis)
 
int findNearestGridPoint (RealArray &x, RealArray &r, RealArray &dista, RealArray &xa)
 Find the nearest grid point to each of a given set of points x(i,.)
 
real getArcLength ()
 
basicInverseOptions getBasicInverseOption () const
 
int getBoundaryCondition (const int side, const int axis) const
 
virtual RealArray getBoundingBox (const int &side=-1, const int &axis=-1) const
 
virtual int getBoundingBox (const IntegerArray &indexRange, const IntegerArray &gridIndexRange, RealArray &xBounds, bool local=false) const
 
virtual int getBoundingBox (const RealArray &rBounds, RealArray &xBounds) const
 
const BoundingBoxgetBoundingBoxTree (const int &side, const int &axis) const
 
int getCoordinateEvaluationType (const coordinateSystem type) const
 
Bound getDomainBound (const int side, const int axis) const
 
int getDomainDimension () const
 
coordinateSystem getDomainCoordinateSystem () const
 
Bound getDomainCoordinateSystemBound (const int side, const int axis) const
 
mappingSpace getDomainSpace () const
 
int getGridDimensions (const int axis) const
 
virtual const realArraygetGrid (MappingParameters &params=Overture::nullMappingParameters(), bool includeGhost=false)
 
virtual const RealArraygetGridSerial (MappingParameters &params=Overture::nullMappingParameters(), bool includeGhost=false)
 
int getID () const
 
int getInvertible () const
 
periodicType getIsPeriodic (const int axis) const
 
mappingCoordinateSystem getMappingCoordinateSystem () const
 
aString getName (const mappingItemName item) const
 
int getGridIndexRange (int side, int axis)
 
int getNumberOfGhostPoints (int side, int axis)
 
real getParameter (const MappingParameters::realParameter &param) const
 
int getParameter (const MappingParameters::intParameter &param) const
 
real getPeriodVector (const int axis, const int direction) const
 
Bound getRangeBound (const int side, const int axis) const
 
coordinateSystem getRangeCoordinateSystem () const
 
Bound getRangeCoordinateSystemBound (const int side, const int axis) const
 
int getRangeDimension () const
 
mappingSpace getRangeSpace () const
 
int getShare (const int side, const int axis) const
 
real getSignForJacobian () const
 
topologyEnum getTopology (const int side, const int axis) const
 
coordinateSingularity getTypeOfCoordinateSingularity (const int side, const int axis) const
 
bool gridIsValid () const
 
int hasACoordinateSingularity () const
 
intArray & topologyMask ()
 
void setArcLength (real length)
 
virtual void setBasicInverseOption (const basicInverseOptions option)
 
virtual void setBoundaryCondition (const int side, const int axis, const int bc)
 
virtual void setCoordinateEvaluationType (const coordinateSystem type, const int trueOrFalse)
 
virtual void setDomainBound (const int side, const int axis, const Bound domainBound)
 
virtual void setDomainCoordinateSystem (const coordinateSystem domainCoordinateSystem)
 
virtual void setDomainCoordinateSystemBound (const int side, const int axis, const Bound domainCoordinateSystemBound)
 
virtual void setDomainDimension (const int domainDimension)
 
virtual void setDomainSpace (const mappingSpace domainSpace)
 
virtual void setGrid (realArray &grid, IntegerArray &gridIndexRange)
 
virtual void setGridDimensions (const int axis, const int dim)
 
virtual void setInvertible (const int invertible)
 
void setID ()
 
virtual void setIsPeriodic (const int axis, const periodicType isPeriodic)
 
virtual void setMappingCoordinateSystem (const mappingCoordinateSystem mappingCoordinateSystem0)
 
virtual void setName (const mappingItemName item, const aString &name)
 
void setGridIndexRange (int side, int axis, int num)
 
void setNumberOfGhostPoints (int side, int axis, int numGhost)
 
virtual void setParameter (const MappingParameters::realParameter &param, const real &value)
 
virtual void setParameter (const MappingParameters::intParameter &param, const int &value)
 
void setPartition (Partitioning_Type &partition)
 
virtual void setPeriodVector (const int axis, const int direction, const real periodVectorComponent)
 
virtual void setRangeBound (const int side, const int axis, const Bound rangeBound)
 
virtual void setRangeCoordinateSystem (const coordinateSystem rangeCoordinateSystem)
 
virtual void setRangeCoordinateSystemBound (const int side, const int axis, const Bound rangeCoordinateSystemBound)
 
virtual void setRangeDimension (const int rangeDimension)
 
virtual void setRangeSpace (const mappingSpace rangeSpace)
 
virtual void setShare (const int side, const int axis, const int share)
 
void setSignForJacobian (const real signForJac)
 
virtual void setTopology (const int side, const int axis, const topologyEnum topo)
 
virtual void setTypeOfCoordinateSingularity (const int side, const int axis, const coordinateSingularity)
 
bool usesDistributedInverse () const
 
bool usesDistributedMap () const
 
virtual void useRobustInverse (const bool trueOrFalse=TRUE)
 
bool usingRobustInverse () const
 Return true if the robust inverse is used.
 
virtual int outside (const realArray &x)
 
virtual int setNumberOfGhostLines (IndexRangeType &numberOfGhostLinesNew)
 
void setNumberOfDistributedGhostLines (int numGhost)
 
void periodicShift (realArray &r, const Index &I)
 
Index getIndex (const realArray &r, realArray &x, const realArray &xr, int &base, int &bound, int &computeMap, int &computeMapDerivative)
 
- Public Member Functions inherited from ReferenceCounting
 ReferenceCounting ()
 
 ReferenceCounting (const ReferenceCounting &x, const CopyType ct=DEEP)
 
virtual ~ReferenceCounting ()
 
Integer incrementReferenceCount ()
 
Integer decrementReferenceCount ()
 
Integer getReferenceCount () const
 
Logical uncountedReferencesMayExist ()
 
Integer getGlobalID () const
 
void setGlobalID (int id)
 
virtual void consistencyCheck () const
 

Static Public Member Functions

static void matrixMatrixProduct (RealArray &m1, const RealArray &m2, const RealArray &m3)
 
static void matrixVectorProduct (RealArray &v1, const RealArray &m2, const RealArray &v3)
 
static int matrixInversion (RealArray &m1Inverse, const RealArray &m1)
 
- Static Public Member Functions inherited from Mapping
static void openDebugFiles ()
 
static void closeDebugFiles ()
 
static real epsilon ()
 
static void setMinimumNumberOfDistributedGhostLines (int numGhost)
 
static int getGridMinAndMax (const realArray &u, const Range &R1, const Range &R2, const Range &R3, real uMin[3], real uMax[3], bool local=false)
 
static MappingmakeMapping (const aString &mappingClassName)
 
static MappingLinkedListstaticMapList ()
 

Public Attributes

RealArray matrix
 
RealArray matrixInverse
 
- Public Attributes inherited from Mapping
int computeMap
 
int computeMapDerivative
 
int base
 
int bound
 
real signForJacobian
 
ApproximateGlobalInverseapproximateGlobalInverse
 
ExactLocalInverseexactLocalInverse
 
DistributedInversedistributedInverse
 

Protected Attributes

aString className
 
- Protected Attributes inherited from Mapping
int dataBaseID
 
aString className
 
int domainDimension
 
int rangeDimension
 
int bc [2][3]
 
int share [2][3]
 
periodicType isPeriodic [3]
 
real periodVector [3][3]
 
int invertible
 
basicInverseOptions basicInverseOption
 
int periodicityOfSpace
 
coordinateSingularity typeOfCoordinateSingularity [2][3]
 
int coordinateEvaluationType [numberOfCoordinateSystems]
 
IndexRangeType gridIndexRange
 
IndexRangeType numberOfGhostPoints
 
realArray grid
 
bool inverseIsDistributed
 
bool mapIsDistributed
 
int numberOfDistributedGhostLines
 
bool partitionInitialized
 
Partitioning_Type partition
 
mappingSpace domainSpace
 
mappingSpace rangeSpace
 
coordinateSystem domainCoordinateSystem
 
coordinateSystem rangeCoordinateSystem
 
mappingCoordinateSystem mappingCoordinateSystem0
 
Bound domainBound [3][2]
 
Bound rangeBound [3][2]
 
Bound domainCoordinateSystemBound [3][2]
 
Bound rangeCoordinateSystemBound [3][2]
 
topologyEnum topology [3][2]
 
intArray * topologyMaskPointer
 
real arcLength
 
bool remakeGrid
 
bool remakeGridSerial
 

Additional Inherited Members

- Public Types inherited from Mapping
enum  mappingSpace { parameterSpace, cartesianSpace }
 
enum  coordinateSystem {
  cartesian, spherical, cylindrical, polar,
  toroidal, numberOfCoordinateSystems
}
 
enum  coordinateSingularity { noCoordinateSingularity, polarSingularity }
 
enum  mappingCoordinateSystem { rectangular, conformal, orthogonal, general }
 
enum  periodicType { notPeriodic, derivativePeriodic, functionPeriodic }
 
enum  topologyEnum { topologyIsNotPeriodic =0, topologyIsPeriodic, topologyIsPartiallyPeriodic }
 
enum  mappingItemName {
  mappingName, domainName, rangeName, domainAxis1Name,
  domainAxis2Name, domainAxis3Name, rangeAxis1Name, rangeAxis2Name,
  rangeAxis3Name, numberOfMappingItemNames
}
 
enum  basicInverseOptions { canDoNothing, canDetermineOutside, canInvert, canInvertWithGoodGuess }
 
typedef ArraySimpleFixed< int, 2, 3, 1, 1 > IndexRangeType
 
- Static Public Attributes inherited from Mapping
static int useInitialGuessForInverse =TRUE
 
static int debug =0
 
static FILE * debugFile =NULL
 
static FILE * pDebugFile =NULL
 
static const real bogus =10.
 
- Protected Member Functions inherited from Mapping
int buildMappingParametersDialog (DialogData &dialog)
 
int getMappingParametersOption (const aString &answer, DialogData &dialog, GenericGraphicsInterface &gi)
 : Look for a change to one of the mapping parameters.
 
int updateMappingParametersDialog (DialogData &dialog)
 
void initializePartition ()
 
int mappingHasChanged ()
 
void setGridIsValid ()
 
void setDefaultMappingBounds (const mappingSpace ms, Bound mappingBound[3][2])
 
void setDefaultCoordinateSystemBounds (const coordinateSystem cs, Bound csBound[3][2])
 
int validSide (const int side) const
 
int validAxis (const int axis) const
 
void mappingError (const aString &subName, const int side, const int axis) const
 
- Static Protected Attributes inherited from Mapping
static int defaultNumberOfGhostPoints =0
 
static int minimumNumberOfDistributedGhostLines =1
 

Constructor & Destructor Documentation

MatrixMapping::MatrixMapping ( int  domainDimension = 3,
int  rangeDimension = 3 
)
MatrixMapping::MatrixMapping ( const MatrixMapping map,
const CopyType  copyType = DEEP 
)

References className, DEEP, and map().

MatrixMapping::~MatrixMapping ( )

References Mapping::debug.

Member Function Documentation

void MatrixMapping::basicInverse ( const realArray x,
realArray r,
realArray rx = Overture::nullRealDistributedArray(),
MappingParameters params = Overture::nullMappingParameters() 
)
virtual

Reimplemented from Mapping.

References inverseMap().

void MatrixMapping::basicInverseS ( const RealArray x,
RealArray r,
RealArray rx = Overture::nullRealArray(),
MappingParameters params = Overture::nullMappingParameters() 
)
virtual

Reimplemented from Mapping.

References inverseMapS().

int MatrixMapping::get ( const GenericDataBase dir,
const aString name 
)
virtual
aString MatrixMapping::getClassName ( void  ) const
inlinevirtual

Reimplemented from Mapping.

References className.

Referenced by operator=().

void MatrixMapping::inverseMap ( const realArray x,
realArray r,
realArray rx = Overture::nullRealDistributedArray(),
MappingParameters params = Overture::nullMappingParameters() 
)
virtual
void MatrixMapping::inverseMapS ( const RealArray x,
RealArray r,
RealArray rx = Overture::nullRealArray(),
MappingParameters params = Overture::nullMappingParameters() 
)
virtual
Mapping * MatrixMapping::make ( const aString mappingClassName)
virtual

Reimplemented from Mapping.

References assert, className, MatrixMapping(), and NULL.

void MatrixMapping::map ( const realArray r,
realArray x,
realArray xr = Overture::nullRealDistributedArray(),
MappingParameters params = Overture::nullMappingParameters() 
)
virtual
void MatrixMapping::mapS ( const RealArray r,
RealArray x,
RealArray xr = Overture::nullRealArray(),
MappingParameters params = Overture::nullMappingParameters() 
)
virtual
int MatrixMapping::matrixInversion ( RealArray m1Inverse,
const RealArray m1 
)
static

Referenced by rotate(), scale(), and shift().

void MatrixMapping::matrixMatrixProduct ( RealArray m1,
const RealArray m2,
const RealArray m3 
)
static

Referenced by rotate(), scale(), and shift().

void MatrixMapping::matrixVectorProduct ( RealArray v1,
const RealArray m2,
const RealArray v3 
)
static
MatrixMapping & MatrixMapping::operator= ( const MatrixMapping X)
int MatrixMapping::put ( GenericDataBase dir,
const aString name 
) const
virtual
void MatrixMapping::reset ( )
void MatrixMapping::rotate ( const int  axis,
const real  theta 
)
void MatrixMapping::rotate ( const RealArray rotate,
bool  incremental = false 
)
void MatrixMapping::scale ( const real  scalex = 1.,
const real  scaley = 1.,
const real  scalez = 1.,
bool  incremental = true 
)
void MatrixMapping::shift ( const real  shiftx = 1.,
const real  shifty = 1.,
const real  shiftz = 1.,
bool  incremental = true 
)

Member Data Documentation

aString MatrixMapping::className
protected
RealArray MatrixMapping::matrix
RealArray MatrixMapping::matrixInverse

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