Base class for Surface Integral-based sensitivity derivatives. More...
Public Member Functions | |
TypeName ("volumetricBSplinesFI") | |
Runtime type information. More... | |
SIBase (const fvMesh &mesh, const dictionary &dict, incompressibleVars &primalVars, incompressibleAdjointVars &adjointVars, objectiveManager &objectiveManager) | |
Construct from components. More... | |
virtual | ~SIBase ()=default |
Destructor. More... | |
virtual bool | readDict (const dictionary &dict) |
Read dict if changed. More... | |
virtual void | accumulateIntegrand (const scalar dt) |
Accumulate sensitivity integrands. More... | |
virtual void | assembleSensitivities ()=0 |
Assemble sensitivities. More... | |
virtual void | clearSensitivities () |
Zero sensitivity fields and their constituents. More... | |
const sensitivitySurface & | getSurfaceSensitivities () const |
Return reference to underlaying surface sensitivities. More... | |
virtual void | write (const word &baseName=word::null) |
Write sensitivity map. More... | |
![]() | |
TypeName ("shapeSensitivities") | |
Runtime type information. More... | |
shapeSensitivities (const fvMesh &mesh, const dictionary &dict, incompressibleVars &primalVars, incompressibleAdjointVars &adjointVars, objectiveManager &objectiveManager) | |
Construct from components. More... | |
virtual | ~shapeSensitivities ()=default |
Destructor. More... | |
![]() | |
TypeName ("adjointSensitivity") | |
Runtime type information. More... | |
declareRunTimeSelectionTable (autoPtr, adjointSensitivity, dictionary,(const fvMesh &mesh, const dictionary &dict, incompressibleVars &primalVars, incompressibleAdjointVars &adjointVars, objectiveManager &objectiveManager),(mesh, dict, primalVars, adjointVars, objectiveManager)) | |
adjointSensitivity (const fvMesh &mesh, const dictionary &dict, incompressibleVars &primalVars, incompressibleAdjointVars &adjointVars, objectiveManager &objectiveManager) | |
Construct from components. More... | |
virtual | ~adjointSensitivity ()=default |
Destructor. More... | |
virtual const scalarField & | calculateSensitivities () |
Calculates and returns sensitivity fields. More... | |
const scalarField & | getSensitivities () const |
Returns the sensitivity fields. More... | |
tmp< volTensorField > | computeGradDxDbMultiplier () |
tmp< volVectorField > | adjointMeshMovementSource () |
Compute source term for adjoint mesh movement equation. More... | |
![]() | |
TypeName ("sensitivity") | |
Runtime type information. More... | |
sensitivity (const fvMesh &mesh, const dictionary &dict) | |
Construct from components. More... | |
virtual | ~sensitivity ()=default |
Destructor. More... | |
const dictionary & | dict () const |
Return the construction dictionary. More... | |
virtual void | computeDerivativesSize () |
Compute design variables number. Does nothing in the base. More... | |
Protected Member Functions | |
void | read () |
Read options from dict. More... | |
![]() | |
virtual void | accumulateDirectSensitivityIntegrand (const scalar dt) |
Accumulate direct sensitivities. More... | |
virtual void | accumulateBCSensitivityIntegrand (const scalar dt) |
Accumulate sensitivities enamating from the boundary conditions. More... | |
tmp< boundaryVectorField > | dvdbMult () const |
Compute multiplier of dv_i/db. More... | |
Protected Attributes | |
sensitivitySurface | surfaceSensitivity_ |
Surface sensitivities. More... | |
bool | includeObjective_ |
Whether to include direct sensitivities or not. More... | |
bool | writeSensitivityMap_ |
Write sensitivity map upon write. More... | |
![]() | |
autoPtr< boundaryVectorField > | dSfdbMult_ |
Fields related to direct sensitivities. More... | |
autoPtr< boundaryVectorField > | dnfdbMult_ |
autoPtr< boundaryVectorField > | dxdbDirectMult_ |
autoPtr< boundaryVectorField > | bcDxDbMult_ |
![]() | |
scalarField | derivatives_ |
incompressibleVars & | primalVars_ |
incompressibleAdjointVars & | adjointVars_ |
objectiveManager & | objectiveManager_ |
![]() | |
const fvMesh & | mesh_ |
dictionary | dict_ |
autoPtr< volScalarField > | fieldSensPtr_ |
Additional Inherited Members | |
![]() | |
static autoPtr< adjointSensitivity > | New (const fvMesh &mesh, const dictionary &dict, incompressibleVars &primalVars, incompressibleAdjointVars &adjointVars, objectiveManager &objectiveManager) |
Return a reference to the selected turbulence model. More... | |
Base class for Surface Integral-based sensitivity derivatives.
Definition at line 57 of file SIBaseIncompressible.H.
SIBase | ( | const fvMesh & | mesh, |
const dictionary & | dict, | ||
incompressibleVars & | primalVars, | ||
incompressibleAdjointVars & | adjointVars, | ||
objectiveManager & | objectiveManager | ||
) |
Construct from components.
Definition at line 79 of file SIBaseIncompressible.C.
References Foam::read().
|
virtualdefault |
Destructor.
|
protected |
Read options from dict.
Definition at line 48 of file SIBaseIncompressible.C.
References sensitivity::dict(), Foam::endl(), sensitivitySurface::getIncludeObjective(), dictionary::getOrDefault(), SIBase::includeObjective_, Foam::nl, sensitivitySurface::read(), sensitivitySurface::setIncludeObjective(), sensitivitySurface::setIncludeSurfaceArea(), SIBase::surfaceSensitivity_, WarningInFunction, and SIBase::writeSensitivityMap_.
TypeName | ( | "volumetricBSplinesFI" | ) |
Runtime type information.
|
virtual |
Read dict if changed.
Reimplemented from sensitivity.
Definition at line 116 of file SIBaseIncompressible.C.
References sensitivity::dict(), dictionary::optionalSubDict(), sensitivity::readDict(), sensitivitySurface::readDict(), and SIBase::surfaceSensitivity_.
|
virtual |
Accumulate sensitivity integrands.
Implements shapeSensitivities.
Definition at line 132 of file SIBaseIncompressible.C.
References shapeSensitivities::accumulateBCSensitivityIntegrand(), shapeSensitivities::accumulateDirectSensitivityIntegrand(), sensitivitySurface::accumulateIntegrand(), SIBase::includeObjective_, and SIBase::surfaceSensitivity_.
|
pure virtual |
Assemble sensitivities.
Implements shapeSensitivities.
Implemented in sensitivityVolBSplines, and sensitivityBezier.
|
virtual |
Zero sensitivity fields and their constituents.
Reimplemented from shapeSensitivities.
Reimplemented in sensitivityVolBSplines, and sensitivityBezier.
Definition at line 148 of file SIBaseIncompressible.C.
References shapeSensitivities::clearSensitivities(), sensitivitySurface::clearSensitivities(), and SIBase::surfaceSensitivity_.
Referenced by sensitivityBezier::clearSensitivities(), and sensitivityVolBSplines::clearSensitivities().
const sensitivitySurface & getSurfaceSensitivities | ( | ) | const |
Return reference to underlaying surface sensitivities.
Definition at line 155 of file SIBaseIncompressible.C.
References SIBase::surfaceSensitivity_.
|
virtual |
Write sensitivity map.
Reimplemented from shapeSensitivities.
Reimplemented in sensitivityVolBSplines, and sensitivityBezier.
Definition at line 161 of file SIBaseIncompressible.C.
References SIBase::surfaceSensitivity_, shapeSensitivities::write(), sensitivitySurface::write(), and SIBase::writeSensitivityMap_.
Referenced by sensitivityBezier::write(), and sensitivityVolBSplines::write().
|
protected |
Surface sensitivities.
Definition at line 66 of file SIBaseIncompressible.H.
Referenced by SIBase::accumulateIntegrand(), sensitivityBezier::assembleSensitivities(), sensitivityVolBSplines::assembleSensitivities(), SIBase::clearSensitivities(), SIBase::getSurfaceSensitivities(), SIBase::read(), SIBase::readDict(), and SIBase::write().
|
protected |
Whether to include direct sensitivities or not.
Used to avoid double contributions from both here and the sensitivitySurface object which might have already accounted for them
Definition at line 72 of file SIBaseIncompressible.H.
Referenced by SIBase::accumulateIntegrand(), sensitivityBezier::assembleSensitivities(), sensitivityVolBSplines::computeObjectiveContributions(), and SIBase::read().
|
protected |
Write sensitivity map upon write.
Definition at line 75 of file SIBaseIncompressible.H.
Referenced by SIBase::read(), and SIBase::write().