Update design variables using Rosen's projection method. More...
Protected Attributes | |
bool | useCorrection_ |
![]() | |
const fvMesh & | mesh_ |
const dictionary | dict_ |
IOdictionary | optMethodIODict_ |
scalarField | objectiveDerivatives_ |
PtrList< scalarField > | constraintDerivatives_ |
scalar | objectiveValue_ |
scalarField | cValues_ |
scalarField | correction_ |
scalarField | cumulativeCorrection_ |
scalar | eta_ |
bool | initialEtaSet_ |
word | correctionFolder_ |
bool | globalSum_ |
Additional Inherited Members | |
![]() | |
static autoPtr< updateMethod > | New (const fvMesh &mesh, const dictionary &dict) |
![]() | |
const scalarField | leftMult (const scalarField &, const SquareMatrix< scalar > &) |
const scalarField | rightMult (const SquareMatrix< scalar > &, const scalarField &) |
SquareMatrix< scalar > | outerProd (const scalarField &, const scalarField &) |
SquareMatrix< scalar > | inv (SquareMatrix< scalar > A) |
scalar | globalSum (const scalarField &field) |
scalar | globalSum (tmp< scalarField > &tfield) |
dictionary | coeffsDict () |
Update design variables using Rosen's projection method.
Can handle multiple constraints. Optionally includes a non-linearity correction
Definition at line 52 of file constraintProjection.H.
constraintProjection | ( | const fvMesh & | mesh, |
const dictionary & | dict | ||
) |
Definition at line 49 of file constraintProjection.C.
|
virtualdefault |
TypeName | ( | "constraintProjection" | ) |
|
virtual |
Implements constrainedOptimisationMethod.
Definition at line 64 of file constraintProjection.C.
References updateMethod::constraintDerivatives_, updateMethod::correction_, updateMethod::cValues_, updateMethod::eta_, forAll, updateMethod::globalSum(), updateMethod::inv(), n, updateMethod::objectiveDerivatives_, constraintProjection::useCorrection_, and Foam::Zero.
|
protected |
Definition at line 61 of file constraintProjection.H.
Referenced by constraintProjection::computeCorrection().
Copyright © 2011-2018 OpenFOAM | OPENFOAM® is a registered trademark of OpenCFD Ltd.