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 BodyDefinition & getBodyDefinition () const
 
int numberOfFacesOnASurface (const int surfaceNumber) const
 
SurfaceStitcher * getSurfaceStitcher () 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)
 
RealCompositeGridFunction & integrationWeights ()
 
RealCompositeGridFunction & leftNullVector ()
 

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
 
SurfaceStitcher * pSurfaceStitcher
 
BodyDefinition bd
 
CompositeGrid cg
 
int orderOfAccuracy
 
IntegerArray boundaryHasOverlap
 
IntegerArray faceWeightsDefined
 
IntegerArray surfaceWeightsDefined
 
realCompositeGridFunction weights
 
realCompositeGridFunction nullVector
 
Oges * solver
 
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: