Public Member Functions | |
TypeName ("DAObjFunc") | |
Runtime type information. More... | |
declareRunTimeSelectionTable (autoPtr, DAObjFunc, dictionary,(const fvMesh &mesh, const DAOption &daOption, const DAModel &daModel, const DAIndex &daIndex, const DAResidual &daResidual, const word objFuncName, const word objFuncPart, const dictionary &objFuncDict),(mesh, daOption, daModel, daIndex, daResidual, objFuncName, objFuncPart, objFuncDict)) | |
DAObjFunc (const fvMesh &mesh, const DAOption &daOption, const DAModel &daModel, const DAIndex &daIndex, const DAResidual &daResidual, const word objFuncName, const word objFuncPart, const dictionary &objFuncDict) | |
virtual | ~DAObjFunc () |
void | clear () |
clear up members More... | |
void | calcObjFuncSources (labelList &faceSources, labelList &cellSources) |
calculate DAObjFunc::objFuncFaceSources_ and DAObjFunc::objFuncCellSources_ More... | |
virtual void | calcObjFunc (const labelList &objFuncFaceSources, const labelList &objFuncCellSources, scalarList &objFuncFaceValues, scalarList &objFuncCellValues, scalar &objFuncValue)=0 |
calculate the value of objective function More... | |
scalar | getObjFuncValue () |
calculate the value of objective function More... | |
scalar | masterFunction (const dictionary &options, const Vec xvVec, const Vec wVec) |
the master function to compute objective function given the state and point vectors More... | |
word | getObjFuncName () |
return the name of objective function More... | |
word | getObjFuncPart () |
return the part of objective function More... | |
word | getObjFuncType () |
return the part of objective function More... | |
const labelList & | getObjFuncFaceSources () const |
return DAObjFunc::objFuncFaceSources_ More... | |
const labelList & | getObjFuncCellSources () const |
return DAObjFunc::objFuncCellSources_ More... | |
const scalarList & | getObjFuncFaceValues () const |
return DAObjFunc::objFuncFaceValues_ More... | |
const scalarList & | getObjFuncCellValues () const |
return DAObjFunc::objFuncCellValues_ More... | |
const List< List< word > > & | getObjFuncConInfo () const |
return DAObjFunc::objFuncConInfo_ More... | |
Static Public Member Functions | |
static autoPtr< DAObjFunc > | New (const fvMesh &mesh, const DAOption &daOption, const DAModel &daModel, const DAIndex &daIndex, const DAResidual &daResidual, const word objFuncName, const word objFuncPart, const dictionary &objFuncDict) |
Public Attributes | |
scalar | expSumKS = 1.0 |
expSumKS stores sum[exp(coeffKS*x_i)] for KS function which will be used to scale dFdW More... | |
label | calcRefCoeffs = 1 |
whether to compute reference coefficients for special objFunc treatment such as totalPressureRatio More... | |
Protected Attributes | |
const fvMesh & | mesh_ |
fvMesh More... | |
const DAOption & | daOption_ |
DAOption object. More... | |
const DAModel & | daModel_ |
DAModel object. More... | |
const DAIndex & | daIndex_ |
DAIndex object. More... | |
const DAResidual & | daResidual_ |
DAResidual object. More... | |
word | objFuncName_ |
the name of the objective function More... | |
word | objFuncPart_ |
the part of the objective function More... | |
word | objFuncType_ |
the type of the objective function More... | |
const dictionary & | objFuncDict_ |
dictionary containing the information for the objective function More... | |
DAField | daField_ |
DAField object. More... | |
labelList | objFuncFaceSources_ |
a sorted list of all face sources for the objective function More... | |
labelList | objFuncCellSources_ |
a sorted list of all cell sources for the objective function More... | |
scalarList | objFuncFaceValues_ |
value of the obj function on the discrete faces More... | |
scalarList | objFuncCellValues_ |
value of the obj function in the discrete cells More... | |
scalar | scale_ |
scale of the objective function More... | |
scalar | objFuncValue_ |
the value of the objective function More... | |
List< List< word > > | objFuncConInfo_ |
the connectivity information for the objective function More... | |
Definition at line 33 of file DAObjFunc.H.
DAObjFunc | ( | const fvMesh & | mesh, |
const DAOption & | daOption, | ||
const DAModel & | daModel, | ||
const DAIndex & | daIndex, | ||
const DAResidual & | daResidual, | ||
const word | objFuncName, | ||
const word | objFuncPart, | ||
const dictionary & | objFuncDict | ||
) |
Definition at line 22 of file DAObjFunc.C.
References DAObjFunc::calcObjFuncSources(), forAll(), DAObjFunc::objFuncCellSources_, DAObjFunc::objFuncCellValues_, DAObjFunc::objFuncFaceSources_, and DAObjFunc::objFuncFaceValues_.
|
inlinevirtual |
Definition at line 150 of file DAObjFunc.H.
TypeName | ( | "DAObjFunc" | ) |
Runtime type information.
declareRunTimeSelectionTable | ( | autoPtr | , |
DAObjFunc | , | ||
dictionary | , | ||
(const fvMesh &mesh, const DAOption &daOption, const DAModel &daModel, const DAIndex &daIndex, const DAResidual &daResidual, const word objFuncName, const word objFuncPart, const dictionary &objFuncDict) | , | ||
(mesh, daOption, daModel, daIndex, daResidual, objFuncName, objFuncPart, objFuncDict) | |||
) |
|
static |
Definition at line 62 of file DAObjFunc.C.
References daIndex(), daModel(), daOption(), and mesh.
Referenced by DASolver::calcdFdACTAD(), DASolver::calcdFdBCAD(), DASolver::calcdFdFieldAD(), DASolver::calcdFdW(), DASolver::calcdFdWAD(), DASolver::calcdFdXvAD(), DAPartDerivdFdFFD::calcPartDerivMat(), DAPartDerivdFdAOA::calcPartDerivMat(), DAPartDerivdFdBC::calcPartDerivMat(), DAPartDerivdFdACTD::calcPartDerivMat(), DAPartDerivdFdW::calcPartDerivMat(), ColoringSolid::run(), ColoringCompressible::run(), ColoringIncompressible::run(), and DASolver::setDAObjFuncList().
|
inline |
clear up members
Definition at line 155 of file DAObjFunc.H.
References DAObjFunc::objFuncCellSources_, DAObjFunc::objFuncCellValues_, DAObjFunc::objFuncConInfo_, DAObjFunc::objFuncFaceSources_, and DAObjFunc::objFuncFaceValues_.
void calcObjFuncSources | ( | labelList & | faceSources, |
labelList & | cellSources | ||
) |
calculate DAObjFunc::objFuncFaceSources_ and DAObjFunc::objFuncCellSources_
Definition at line 123 of file DAObjFunc.C.
References DAObjFunc::mesh_, and DAObjFunc::objFuncDict_.
Referenced by DAObjFunc::DAObjFunc().
|
pure virtual |
calculate the value of objective function
Implemented in DAObjFuncWallHeatFlux, DAObjFuncForce, DAObjFuncTotalPressureRatio, DAObjFuncTotalTemperatureRatio, DAObjFuncFieldInversion, DAObjFuncVariableVolSum, DAObjFuncPatchMean, DAObjFuncCenterOfPressure, DAObjFuncMassFlowRate, DAObjFuncPower, DAObjFuncTotalPressure, DAObjFuncMeshQualityKS, DAObjFuncMoment, DAObjFuncVonMisesStressKS, and DAObjFuncMass.
Referenced by DAObjFunc::getObjFuncValue().
scalar getObjFuncValue | ( | ) |
calculate the value of objective function
Definition at line 290 of file DAObjFunc.C.
References DAObjFunc::calcObjFunc(), DAObjFunc::objFuncCellSources_, DAObjFunc::objFuncCellValues_, DAObjFunc::objFuncFaceSources_, DAObjFunc::objFuncFaceValues_, and DAObjFunc::objFuncValue_.
Referenced by DASolver::getObjFuncValue(), DAObjFunc::masterFunction(), and DASolver::printAllObjFuncs().
scalar masterFunction | ( | const dictionary & | options, |
const Vec | xvVec, | ||
const Vec | wVec | ||
) |
the master function to compute objective function given the state and point vectors
Definition at line 228 of file DAObjFunc.C.
References DAResidual::correctBoundaryConditions(), DAObjFunc::daField_, daModel(), DAObjFunc::daModel_, DAObjFunc::daResidual_, DAObjFunc::getObjFuncValue(), DAField::pointVec2OFMesh(), DAField::specialBCTreatment(), DAField::stateVec2OFField(), and DAResidual::updateIntermediateVariables().
|
inline |
return the name of objective function
Definition at line 187 of file DAObjFunc.H.
References DAObjFunc::objFuncName_.
Referenced by DASolver::getObjFuncValue(), and DASolver::printAllObjFuncs().
|
inline |
return the part of objective function
Definition at line 193 of file DAObjFunc.H.
References DAObjFunc::objFuncPart_.
Referenced by DASolver::printAllObjFuncs().
|
inline |
return the part of objective function
Definition at line 199 of file DAObjFunc.H.
References DAObjFunc::objFuncType_.
Referenced by DASolver::printAllObjFuncs().
|
inline |
return DAObjFunc::objFuncFaceSources_
Definition at line 205 of file DAObjFunc.H.
References DAObjFunc::objFuncFaceSources_.
|
inline |
return DAObjFunc::objFuncCellSources_
Definition at line 211 of file DAObjFunc.H.
References DAObjFunc::objFuncCellSources_.
|
inline |
return DAObjFunc::objFuncFaceValues_
Definition at line 217 of file DAObjFunc.H.
References DAObjFunc::objFuncFaceValues_.
|
inline |
return DAObjFunc::objFuncCellValues_
Definition at line 223 of file DAObjFunc.H.
References DAObjFunc::objFuncCellValues_.
|
inline |
return DAObjFunc::objFuncConInfo_
Definition at line 229 of file DAObjFunc.H.
References DAObjFunc::objFuncConInfo_.
|
protected |
fvMesh
Definition at line 45 of file DAObjFunc.H.
Referenced by DAObjFuncMass::calcObjFunc(), DAObjFuncVonMisesStressKS::calcObjFunc(), DAObjFuncMeshQualityKS::calcObjFunc(), DAObjFuncMoment::calcObjFunc(), DAObjFuncTotalPressure::calcObjFunc(), DAObjFuncMassFlowRate::calcObjFunc(), DAObjFuncCenterOfPressure::calcObjFunc(), DAObjFuncPower::calcObjFunc(), DAObjFuncPatchMean::calcObjFunc(), DAObjFuncVariableVolSum::calcObjFunc(), DAObjFuncFieldInversion::calcObjFunc(), DAObjFuncForce::calcObjFunc(), DAObjFuncTotalPressureRatio::calcObjFunc(), DAObjFuncTotalTemperatureRatio::calcObjFunc(), DAObjFuncWallHeatFlux::calcObjFunc(), DAObjFunc::calcObjFuncSources(), DAObjFuncForce::DAObjFuncForce(), DAObjFuncMassFlowRate::DAObjFuncMassFlowRate(), DAObjFuncMoment::DAObjFuncMoment(), DAObjFuncPower::DAObjFuncPower(), DAObjFuncTotalPressureRatio::DAObjFuncTotalPressureRatio(), DAObjFuncTotalTemperatureRatio::DAObjFuncTotalTemperatureRatio(), and DAObjFuncForce::updateForceDir().
|
protected |
DAOption object.
Definition at line 48 of file DAObjFunc.H.
Referenced by DAObjFuncForce::DAObjFuncForce(), DAObjFuncTotalPressureRatio::DAObjFuncTotalPressureRatio(), and DAObjFuncTotalTemperatureRatio::DAObjFuncTotalTemperatureRatio().
|
protected |
DAModel object.
Definition at line 51 of file DAObjFunc.H.
Referenced by DAObjFunc::masterFunction().
|
protected |
DAIndex object.
Definition at line 54 of file DAObjFunc.H.
Referenced by DAObjFuncMoment::calcObjFunc(), DAObjFuncCenterOfPressure::calcObjFunc(), DAObjFuncMassFlowRate::calcObjFunc(), DAObjFuncPower::calcObjFunc(), DAObjFuncTotalPressure::calcObjFunc(), DAObjFuncPatchMean::calcObjFunc(), DAObjFuncTotalTemperatureRatio::calcObjFunc(), DAObjFuncForce::calcObjFunc(), DAObjFuncTotalPressureRatio::calcObjFunc(), and DAObjFuncWallHeatFlux::calcObjFunc().
|
protected |
DAResidual object.
Definition at line 57 of file DAObjFunc.H.
Referenced by DAObjFunc::masterFunction().
|
protected |
the name of the objective function
Definition at line 60 of file DAObjFunc.H.
Referenced by DAObjFunc::getObjFuncName().
|
protected |
the part of the objective function
Definition at line 63 of file DAObjFunc.H.
Referenced by DAObjFunc::getObjFuncPart().
|
protected |
the type of the objective function
Definition at line 66 of file DAObjFunc.H.
Referenced by DAObjFuncCenterOfPressure::DAObjFuncCenterOfPressure(), DAObjFuncFieldInversion::DAObjFuncFieldInversion(), DAObjFuncForce::DAObjFuncForce(), DAObjFuncMass::DAObjFuncMass(), DAObjFuncMassFlowRate::DAObjFuncMassFlowRate(), DAObjFuncMeshQualityKS::DAObjFuncMeshQualityKS(), DAObjFuncMoment::DAObjFuncMoment(), DAObjFuncPatchMean::DAObjFuncPatchMean(), DAObjFuncPower::DAObjFuncPower(), DAObjFuncTotalPressure::DAObjFuncTotalPressure(), DAObjFuncTotalPressureRatio::DAObjFuncTotalPressureRatio(), DAObjFuncTotalTemperatureRatio::DAObjFuncTotalTemperatureRatio(), DAObjFuncVariableVolSum::DAObjFuncVariableVolSum(), DAObjFuncVonMisesStressKS::DAObjFuncVonMisesStressKS(), DAObjFuncWallHeatFlux::DAObjFuncWallHeatFlux(), and DAObjFunc::getObjFuncType().
|
protected |
dictionary containing the information for the objective function
Definition at line 69 of file DAObjFunc.H.
Referenced by DAObjFuncMoment::calcObjFunc(), DAObjFuncPower::calcObjFunc(), DAObjFuncFieldInversion::calcObjFunc(), DAObjFuncForce::calcObjFunc(), DAObjFunc::calcObjFuncSources(), DAObjFuncCenterOfPressure::DAObjFuncCenterOfPressure(), DAObjFuncFieldInversion::DAObjFuncFieldInversion(), DAObjFuncForce::DAObjFuncForce(), DAObjFuncMass::DAObjFuncMass(), DAObjFuncMassFlowRate::DAObjFuncMassFlowRate(), DAObjFuncMeshQualityKS::DAObjFuncMeshQualityKS(), DAObjFuncMoment::DAObjFuncMoment(), DAObjFuncPatchMean::DAObjFuncPatchMean(), DAObjFuncPower::DAObjFuncPower(), DAObjFuncTotalPressure::DAObjFuncTotalPressure(), DAObjFuncTotalPressureRatio::DAObjFuncTotalPressureRatio(), DAObjFuncTotalTemperatureRatio::DAObjFuncTotalTemperatureRatio(), DAObjFuncVariableVolSum::DAObjFuncVariableVolSum(), DAObjFuncVonMisesStressKS::DAObjFuncVonMisesStressKS(), and DAObjFuncWallHeatFlux::DAObjFuncWallHeatFlux().
|
protected |
DAField object.
Definition at line 72 of file DAObjFunc.H.
Referenced by DAObjFunc::masterFunction().
|
protected |
a sorted list of all face sources for the objective function
Definition at line 75 of file DAObjFunc.H.
Referenced by DAObjFunc::clear(), DAObjFunc::DAObjFunc(), DAObjFunc::getObjFuncFaceSources(), and DAObjFunc::getObjFuncValue().
|
protected |
a sorted list of all cell sources for the objective function
Definition at line 78 of file DAObjFunc.H.
Referenced by DAObjFunc::clear(), DAObjFunc::DAObjFunc(), DAObjFunc::getObjFuncCellSources(), and DAObjFunc::getObjFuncValue().
|
protected |
value of the obj function on the discrete faces
Definition at line 81 of file DAObjFunc.H.
Referenced by DAObjFunc::clear(), DAObjFunc::DAObjFunc(), DAObjFunc::getObjFuncFaceValues(), and DAObjFunc::getObjFuncValue().
|
protected |
value of the obj function in the discrete cells
Definition at line 84 of file DAObjFunc.H.
Referenced by DAObjFunc::clear(), DAObjFunc::DAObjFunc(), DAObjFunc::getObjFuncCellValues(), and DAObjFunc::getObjFuncValue().
|
protected |
scale of the objective function
Definition at line 87 of file DAObjFunc.H.
Referenced by DAObjFuncMass::calcObjFunc(), DAObjFuncVonMisesStressKS::calcObjFunc(), DAObjFuncMoment::calcObjFunc(), DAObjFuncTotalPressure::calcObjFunc(), DAObjFuncMassFlowRate::calcObjFunc(), DAObjFuncCenterOfPressure::calcObjFunc(), DAObjFuncPower::calcObjFunc(), DAObjFuncPatchMean::calcObjFunc(), DAObjFuncVariableVolSum::calcObjFunc(), DAObjFuncForce::calcObjFunc(), DAObjFuncWallHeatFlux::calcObjFunc(), DAObjFuncCenterOfPressure::DAObjFuncCenterOfPressure(), DAObjFuncForce::DAObjFuncForce(), DAObjFuncMass::DAObjFuncMass(), DAObjFuncMassFlowRate::DAObjFuncMassFlowRate(), DAObjFuncMeshQualityKS::DAObjFuncMeshQualityKS(), DAObjFuncMoment::DAObjFuncMoment(), DAObjFuncPatchMean::DAObjFuncPatchMean(), DAObjFuncPower::DAObjFuncPower(), DAObjFuncTotalPressure::DAObjFuncTotalPressure(), DAObjFuncTotalPressureRatio::DAObjFuncTotalPressureRatio(), DAObjFuncTotalTemperatureRatio::DAObjFuncTotalTemperatureRatio(), DAObjFuncVariableVolSum::DAObjFuncVariableVolSum(), DAObjFuncVonMisesStressKS::DAObjFuncVonMisesStressKS(), and DAObjFuncWallHeatFlux::DAObjFuncWallHeatFlux().
|
protected |
the value of the objective function
Definition at line 90 of file DAObjFunc.H.
Referenced by DAObjFunc::getObjFuncValue().
|
protected |
the connectivity information for the objective function
Definition at line 93 of file DAObjFunc.H.
Referenced by DAObjFunc::clear(), DAObjFuncFieldInversion::DAObjFuncFieldInversion(), DAObjFuncForce::DAObjFuncForce(), DAObjFuncMass::DAObjFuncMass(), DAObjFuncMassFlowRate::DAObjFuncMassFlowRate(), DAObjFuncMeshQualityKS::DAObjFuncMeshQualityKS(), DAObjFuncMoment::DAObjFuncMoment(), DAObjFuncPower::DAObjFuncPower(), DAObjFuncTotalPressure::DAObjFuncTotalPressure(), DAObjFuncTotalPressureRatio::DAObjFuncTotalPressureRatio(), DAObjFuncTotalTemperatureRatio::DAObjFuncTotalTemperatureRatio(), DAObjFuncVariableVolSum::DAObjFuncVariableVolSum(), DAObjFuncVonMisesStressKS::DAObjFuncVonMisesStressKS(), DAObjFuncWallHeatFlux::DAObjFuncWallHeatFlux(), and DAObjFunc::getObjFuncConInfo().
scalar expSumKS = 1.0 |
expSumKS stores sum[exp(coeffKS*x_i)] for KS function which will be used to scale dFdW
Definition at line 235 of file DAObjFunc.H.
Referenced by DAObjFuncVonMisesStressKS::calcObjFunc().
label calcRefCoeffs = 1 |
whether to compute reference coefficients for special objFunc treatment such as totalPressureRatio
Definition at line 238 of file DAObjFunc.H.
Referenced by DAObjFuncTotalPressureRatio::calcObjFunc(), and DAObjFuncTotalTemperatureRatio::calcObjFunc().