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

#include <Integrate.h>

Collaboration diagram for Integrate:
Collaboration graph
[legend]

Public Member Functions

 Integrate ()
 
 Integrate (CompositeGrid &cg)
 
 ~Integrate ()
 
int computeAllWeights ()
 
int defineSurface (const int &surfaceNumber, const int &numberOfFaces_, IntegerArray &boundary)
 
int defineSurfacesAndComputeWeights (GenericGraphicsInterface &gi)
 Interactively define surfaces and compute weights.
 
int get (const GenericDataBase &dir, const aString &name)
 Get the Integrate object from the directory "name" of the data base.
 
int getFace (const int surfaceNumber, const int face, int &side, int &axis, int &grid) const
 
const BodyDefinitiongetBodyDefinition () const
 
int numberOfFacesOnASurface (const int surfaceNumber) const
 
SurfaceStitchergetSurfaceStitcher () const
 
int put (GenericDataBase &dir, const aString &name) const
 Put this Integrate object in a sub-directory called "name" of the data base.
 
void setDeleteSolverAfterUse (bool trueOrFalse)
 
void setInteractiveStitching (bool trueOrFalse)
 
void setRadialAxis (int axis)
 
int setTolerance (const real tol)
 
real surfaceArea (const int &surfaceNumber=-1)
 
real surfaceIntegral (const RealCompositeGridFunction &u, const int &surfaceNumber=-1)
 
int surfaceIntegral (const RealCompositeGridFunction &u, const Range &C, RealArray &integral, const int &surfaceNumber=-1)
 
int updateToMatchGrid (CompositeGrid &cg)
 
void useAdaptiveMeshRefinementGrids (bool trueOrFalse=true)
 
void useHybridGrids (bool trueOrFalse=true)
 
int updateForAMR (CompositeGrid &cg)
 
real volume ()
 
real volumeIntegral (const RealCompositeGridFunction &u, const int component=0)
 
int volumeIntegral (const RealCompositeGridFunction &u, const Range &C, RealArray &integral)
 
RealCompositeGridFunctionintegrationWeights ()
 
RealCompositeGridFunctionleftNullVector ()
 

Static Public Attributes

static int debug =0
 

Protected Member Functions

int initialize ()
 
int computeWeights ()
 Compute the integration weights. This is a protected routine.
 
int computeSurfaceWeights (int surfaceNumber=-1)
 
int computeLeftNullVector ()
 
int surfaceIndex (int surfaceNumber)
 
int computeStitchedSurfaceWeightsOld ()
 
int computeStitchedSurfaceWeights (int surfaceNumber=-1)
 
int buildAdaptiveMeshRefinementSurfaceWeights (CompositeGrid &cgu, const int &surfaceNumber=-1)
 
int destroyAdaptiveMeshRefinementIntegrationArrays ()
 

Protected Attributes

aString className
 
bool useSurfaceStitching
 
bool interactiveStitcher
 
SurfaceStitcherpSurfaceStitcher
 
BodyDefinition bd
 
CompositeGrid cg
 
int orderOfAccuracy
 
IntegerArray boundaryHasOverlap
 
IntegerArray faceWeightsDefined
 
IntegerArray surfaceWeightsDefined
 
realCompositeGridFunction weights
 
realCompositeGridFunction nullVector
 
Ogessolver
 
real tolerance
 
bool weightsComputed
 
bool leftNullVectorComputed
 
bool allFaceWeightsDefined
 
bool weightsUpdatedToMatchGrid
 
bool deleteSolverAfterUse
 
bool useAMR
 
int * numberOfFacesPerSurface
 
int numberOfBoundarySurfaces
 
int numberOfBoundaryRefinementLevels
 
int * numberOfBoundaryFaces
 
RealArray *** boundaryWeights
 
int ** pNumberOfBoundaryGrids
 
int *** pBoundaryGrid
 
int radialAxis
 
FILE * debugFile
 

Constructor & Destructor Documentation

Integrate::Integrate ( )

References debugFile, initialize(), and NULL.

Integrate::Integrate ( CompositeGrid cg)
Integrate::~Integrate ( )

Member Function Documentation

int Integrate::buildAdaptiveMeshRefinementSurfaceWeights ( CompositeGrid cgu,
const int &  surfaceNumber = -1 
)
protected
int Integrate::computeAllWeights ( )

References computeWeights(), printF(), and weightsComputed.

Referenced by ogen().

int Integrate::computeLeftNullVector ( )
protected
int Integrate::computeStitchedSurfaceWeights ( int  surfaceNumber = -1)
protected

References Overture::abort(), allFaceWeightsDefined, AREA1, AREA2, AREA3, assert, axis1, axis2, bd, MappedGrid::boundaryFlag(), InterpolatePoints::buildInterpolationInfo(), MappedGrid::centerJacobian(), cg, BodyDefinition::defineSurface(), SurfaceStitcher::defineSurfaces(), MappedGrid::discretizationWidth(), displayMask(), MappedGrid::domainDimension(), SurfaceStitcher::enlargedHoleMask, SurfaceStitcher::enlargeGap(), UnstructuredMapping::Face, faceWeightsDefined, FOR_3IJD, getBoundaryIndex(), UnstructuredMapping::getEntities(), BodyDefinition::getFace(), getGhostIndex(), getIndex(), InterpolatePoints::getInterpolationInfo(), UnstructuredMapping::getNodes(), SurfaceStitcher::getSurfaceCompositeGrid(), SurfaceStitcher::getUnstructuredGrid(), MappedGrid::gridIndexRange(), gridSpacing, MappedGrid::gridSpacing(), i2, interactiveStitcher, InterpolatePoints::interpolationCoefficients(), CompositeGrid::interpolationIsImplicit, CompositeGrid::interpolationWidth, interpoleeGrid, MappedGrid::inverseVertexDerivative(), mask, MappedGrid::mask(), max(), MappedGrid::mixedPhysicalInterpolationBoundary, NULL, GenericGridCollection::numberOfComponentGrids(), GridCollection::numberOfDimensions(), BodyDefinition::numberOfFacesOnASurface(), GenericGridCollection::numberOfGrids(), SurfaceStitcher::originalMask, MappedGrid::physicalBoundary, printF(), pSurfaceStitcher, GenericGridCollection::refinementLevelNumber, rx, SurfaceStitcher::setMask(), MappedGrid::sharedBoundaryFlag(), UnstructuredMapping::size(), sPrintF(), SurfaceStitcher::stitchSurfaceCompositeGrid(), surfaceWeightsDefined, MappedGrid::THEcenterJacobian, MappedGrid::THEinverseVertexDerivative, BodyDefinition::totalNumberOfSurfaces(), MappedGrid::update(), doubleCompositeGridFunction::updateToMatchGrid(), weights, and weightsUpdatedToMatchGrid.

Referenced by computeSurfaceWeights().

int Integrate::computeStitchedSurfaceWeightsOld ( )
protected
int Integrate::computeSurfaceWeights ( int  surfaceNumber = -1)
protected
int Integrate::computeWeights ( )
protected

Compute the integration weights. This is a protected routine.

This routine will solve for all the surface and volume weights by solving a linear system of equations.

References BCTypes::allBoundaries, allFaceWeightsDefined, doubleCompositeGridFunction::applyBoundaryConditionCoefficients(), axis1, axis2, axis3, SparseRepForMGF::boundary, MappedGrid::boundaryCondition(), boundaryHasOverlap, c, MappedGrid::center(), CENTER, center, MappedGrid::centerJacobian(), cg, CLASSIFY, COEFF, coeffg, computeSurfaceWeights(), debugFile, deleteSolverAfterUse, MappedGrid::dimension(), doubleGridCollectionFunction::display(), displayCoeff(), dr, End, MappedGrid::extendedIndexRange(), BCTypes::extrapolate, F, fabs(), faceWeightsDefined, doubleCompositeGridFunction::finishBoundaryConditions(), FOR_3D, FOR_3IJD, getBoundaryIndex(), getCPU(), getGhostIndex(), getIndex(), ParallelUtility::getLocalArrayBounds(), getLocalArrayWithGhostBoundaries(), Oges::getMaximumResidual(), MappedGrid::getName(), OgesParameters::getSolverName(), ParallelUtility::getSum(), SparseRepForMGF::ghost1, BoundaryConditionParameters::ghostLineToAssign, GID, MappedGrid::gridIndexRange(), gridIndexRange, gridSpacing, MappedGrid::gridSpacing(), i2, MappedGrid::indexRange(), SparseRepForMGF::interior, MappedGrid::inverseVertexDerivative(), JACOBIAN, MappedGridOperators::laplacianOperator, M, M2, M3, mask, MASK, MappedGrid::mask(), BCTypes::neumann, NULL, Overture::nullRealDistributedArray(), GenericGridCollection::numberOfComponentGrids(), GridCollection::numberOfDimensions(), orderOfAccuracy, BoundaryConditionParameters::orderOfExtrapolation, OV_ABORT, Oges::parameters, pow(), printF(), radialAxis, rx, RXLocal, s, Oges::set(), Oges::setCoefficientArray(), doubleCompositeGridFunction::setIsACoefficientMatrix(), doubleCompositeGridFunction::setOperators(), GenericCompositeGridOperators::setOrderOfAccuracy(), GenericCompositeGridOperators::setStencilSize(), Oges::solve(), solver, doubleGridCollectionFunction::sparse, SQR, SQRT, Start, surfaceWeightsDefined, OgesParameters::THEbestIterativeSolver, MappedGrid::THEcenter, MappedGrid::THEcenterJacobian, OgesParameters::THEfixupRightHandSide, MappedGrid::THEinverseVertexDerivative, OgesParameters::THErescaleRowNorms, OgesParameters::THEsolveForTranspose, OgesParameters::THEtolerance, MappedGrid::THEvertexBoundaryNormal, tolerance, CompositeGrid::update(), doubleCompositeGridFunction::updateToMatchGrid(), Oges::updateToMatchGrid(), weights, WEIGHTS, weightsComputed, and weightsUpdatedToMatchGrid.

Referenced by computeAllWeights(), defineSurfacesAndComputeWeights(), integrationWeights(), surfaceIntegral(), volume(), and volumeIntegral().

int Integrate::defineSurface ( const int &  surfaceNumber,
const int &  numberOfFaces_,
IntegerArray boundary 
)
int Integrate::defineSurfacesAndComputeWeights ( GenericGraphicsInterface gi)
int Integrate::destroyAdaptiveMeshRefinementIntegrationArrays ( )
protected
int Integrate::get ( const GenericDataBase dir,
const aString name 
)
const BodyDefinition & Integrate::getBodyDefinition ( ) const

References bd.

int Integrate::getFace ( const int  surfaceNumber,
const int  face,
int &  side,
int &  axis,
int &  grid 
) const
SurfaceStitcher * Integrate::getSurfaceStitcher ( ) const

References pSurfaceStitcher.

int Integrate::initialize ( )
protected
RealCompositeGridFunction & Integrate::integrationWeights ( )
RealCompositeGridFunction & Integrate::leftNullVector ( )
int Integrate::numberOfFacesOnASurface ( const int  surfaceNumber) const

References assert, and NULL.

int Integrate::put ( GenericDataBase dir,
const aString name 
) const
void Integrate::setDeleteSolverAfterUse ( bool  trueOrFalse)

References deleteSolverAfterUse.

void Integrate::setInteractiveStitching ( bool  trueOrFalse)

References interactiveStitcher.

void Integrate::setRadialAxis ( int  axis)

References radialAxis.

int Integrate::setTolerance ( const real  tol)

References tolerance.

real Integrate::surfaceArea ( const int &  surfaceNumber = -1)

References C, cg, and surfaceIntegral().

Referenced by defineSurfacesAndComputeWeights().

int Integrate::surfaceIndex ( int  surfaceNumber)
protected
real Integrate::surfaceIntegral ( const RealCompositeGridFunction u,
const int &  surfaceNumber = -1 
)

References C.

Referenced by defineSurfacesAndComputeWeights(), and surfaceArea().

int Integrate::surfaceIntegral ( const RealCompositeGridFunction u,
const Range &  C,
RealArray integral,
const int &  surfaceNumber = -1 
)
int Integrate::updateForAMR ( CompositeGrid cg)
int Integrate::updateToMatchGrid ( CompositeGrid cg)
void Integrate::useAdaptiveMeshRefinementGrids ( bool  trueOrFalse = true)
void Integrate::useHybridGrids ( bool  trueOrFalse = true)

References useSurfaceStitching.

real Integrate::volume ( )
real Integrate::volumeIntegral ( const RealCompositeGridFunction u,
const int  component = 0 
)

References C.

Referenced by defineSurfacesAndComputeWeights(), and volume().

int Integrate::volumeIntegral ( const RealCompositeGridFunction u,
const Range &  C,
RealArray integral 
)

Member Data Documentation

bool Integrate::allFaceWeightsDefined
protected
BodyDefinition Integrate::bd
protected
IntegerArray Integrate::boundaryHasOverlap
protected
RealArray*** Integrate::boundaryWeights
protected
CompositeGrid Integrate::cg
protected
aString Integrate::className
protected

Referenced by get(), initialize(), and put().

int Integrate::debug =0
static

Referenced by initialize(), and updateToMatchGrid().

FILE* Integrate::debugFile
protected
bool Integrate::deleteSolverAfterUse
protected
IntegerArray Integrate::faceWeightsDefined
protected
bool Integrate::interactiveStitcher
protected
bool Integrate::leftNullVectorComputed
protected
realCompositeGridFunction Integrate::nullVector
protected
int* Integrate::numberOfBoundaryFaces
protected
int Integrate::numberOfBoundaryRefinementLevels
protected
int Integrate::numberOfBoundarySurfaces
protected
int* Integrate::numberOfFacesPerSurface
protected
int Integrate::orderOfAccuracy
protected
int*** Integrate::pBoundaryGrid
protected
int** Integrate::pNumberOfBoundaryGrids
protected
SurfaceStitcher* Integrate::pSurfaceStitcher
protected
int Integrate::radialAxis
protected
Oges* Integrate::solver
protected
IntegerArray Integrate::surfaceWeightsDefined
protected
real Integrate::tolerance
protected
bool Integrate::useAMR
protected
bool Integrate::useSurfaceStitching
protected
realCompositeGridFunction Integrate::weights
protected
bool Integrate::weightsComputed
protected
bool Integrate::weightsUpdatedToMatchGrid
protected

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