Abstract base class for adjoint sensitivities. More...
Public Member Functions | |
TypeName ("sensitivity") | |
Runtime type information. More... | |
sensitivity (const fvMesh &mesh, const dictionary &dict) | |
Construct from components. More... | |
virtual | ~sensitivity ()=default |
Destructor. More... | |
const fvMesh & | mesh () const |
Return reference to mesh. More... | |
const dictionary & | dict () const |
Return the construction dictionary. More... | |
virtual bool | readDict (const dictionary &dict) |
Read dictionary if changed. More... | |
virtual const scalarField & | calculateSensitivities (autoPtr< designVariables > &designVars)=0 |
Calculates and returns sensitivity field. More... | |
const autoPtr< volScalarField > & | fieldSensPtr () const |
Get the fieldSensPtr. More... | |
virtual void | write (const word &baseName=word::null) |
Write sensitivity fields. More... | |
Protected Attributes | |
const fvMesh & | mesh_ |
dictionary | dict_ |
bool | writeFieldSens_ |
autoPtr< volScalarField > | fieldSensPtr_ |
Abstract base class for adjoint sensitivities.
Definition at line 62 of file sensitivity.H.
sensitivity | ( | const fvMesh & | mesh, |
const dictionary & | dict | ||
) |
Construct from components.
Definition at line 37 of file sensitivity.C.
|
virtualdefault |
Destructor.
TypeName | ( | "sensitivity" | ) |
Runtime type information.
|
inline |
Return reference to mesh.
Definition at line 121 of file sensitivity.H.
References sensitivity::mesh_.
|
inline |
Return the construction dictionary.
Definition at line 129 of file sensitivity.H.
References sensitivity::dict_, sensitivity::mesh_, fvMesh::name(), and dictionary::optionalSubDict().
Referenced by ShapeSensitivitiesBase::allocateEikonalSolver(), sensitivitySurface::computeRadius(), sensitivitySurface::read(), sensitivitySurfacePoints::read(), sensitivityMultiple::readDict(), sensitivityTopO::readDict(), sensitivity::readDict(), sensitivitySurfacePoints::readDict(), adjointSensitivity::readDict(), sensitivitySurfacePoints::setSuffixName(), and sensitivitySurface::smoothSensitivities().
|
virtual |
Read dictionary if changed.
Reimplemented in ShapeSensitivitiesBase, adjointSensitivity, sensitivitySurfacePoints, sensitivityTopO, sensitivityShapeESI, and sensitivityMultiple.
Definition at line 51 of file sensitivity.C.
References sensitivity::dict(), and sensitivity::dict_.
Referenced by adjointSensitivity::readDict().
|
pure virtual |
Calculates and returns sensitivity field.
Implemented in adjointSensitivity, and sensitivityMultiple.
|
inline |
Get the fieldSensPtr.
Definition at line 152 of file sensitivity.H.
References sensitivity::fieldSensPtr_.
Referenced by levelSetDesignVariables::assembleSensitivities(), and topODesignVariables::assembleSensitivities().
|
virtual |
Write sensitivity fields.
If valid, copies boundaryFields to volFields and writes them. Virtual to be reimplemented by control points-based methods (Bezier, RBF) which do not need to write fields
Reimplemented in adjointSensitivity, ShapeSensitivitiesBase, sensitivitySurfacePoints, and sensitivityMultiple.
Definition at line 59 of file sensitivity.C.
Referenced by adjointSensitivity::write().
|
protected |
Definition at line 68 of file sensitivity.H.
Referenced by ShapeSensitivitiesBase::allocateEikonalSolver(), sensitivityShapeESI::computeDxDbMult(), sensitivitySurfacePoints::computePointDerivativesSize(), sensitivitySurface::computeRadius(), sensitivity::dict(), sensitivitySurfacePoints::finalisePointSensitivities(), sensitivity::mesh(), sensitivitySurfacePoints::populateExtendedIDs(), sensitivityTopO::readDict(), sensitivitySurface::smoothSensitivities(), sensitivitySurfacePoints::write(), and sensitivityTopO::zeroSensInFixedPorousZones().
|
protected |
Definition at line 69 of file sensitivity.H.
Referenced by sensitivity::dict(), sensitivityTopO::readDict(), and sensitivity::readDict().
|
protected |
Definition at line 70 of file sensitivity.H.
|
protected |
Definition at line 74 of file sensitivity.H.
Referenced by sensitivityTopO::accumulateIntegrand(), adjointSensitivity::clearSensitivities(), and sensitivity::fieldSensPtr().