39namespace incompressible
99 divDxDbMult_(mesh_.nCells(),
Zero),
100 optionsDxDbMult_(mesh_.nCells(),
Zero),
102 includeDistance_(false),
103 eikonalSolver_(nullptr)
113 if (sensitivity::readDict(
dict))
136 if (
func.hasDivDxDbMult())
139 func.weight()*
func.divDxDbMultiplier().primitiveField()*dt;
Macros for easy insertion into run-time selection tables.
const dimensionSet & dimensions() const
Return dimensions.
Defines the attributes of an object for which implicit objectRegistry management is supported,...
A list of pointers to objects of type <T>, with allocation/deallocation management of the pointers....
static autoPtr< Time > New()
Construct (dummy) Time - no functionObjects or libraries.
Base class for adjoint solvers.
A list of keyword definitions, which are a keyword followed by a number of values (eg,...
T getOrDefault(const word &keyword, const T &deflt, enum keyType::option matchOpt=keyType::REGEX) const
Generic dimensioned Type class.
Mesh data needed to do the Finite Volume discretisation.
Base class for incompressibleAdjoint solvers.
const autoPtr< incompressibleAdjoint::adjointRASModel > & adjointTurbulence() const
Return const reference to the adjointRASModel.
const autoPtr< incompressible::RASModelVariables > & RASModelVariables() const
Return const reference to the turbulence model variables.
Base class for Field Integral-based sensitivity derivatives.
virtual void clearSensitivities()
Zero sensitivity fields and their constituents.
bool includeDistance_
Include distance variation in sens computation.
volTensorField gradDxDbMult_
grad(dx/db) multiplier
autoPtr< adjointEikonalSolver > eikonalSolver_
Adjoint eikonal equation solver.
void read()
Read options and update solver pointers if necessary.
scalarField divDxDbMult_
div(dx/db) multiplier
virtual void accumulateIntegrand(const scalar dt)
Accumulate sensitivity integrands.
vectorField optionsDxDbMult_
dx/db multiplier coming from fvOptions
Solver of the adjoint to the eikonal PDE.
objectiveManager & objectiveManager_
tmp< volTensorField > computeGradDxDbMultiplier()
incompressibleAdjointVars & adjointVars_
const incompressibleVars & primalVars_
virtual void clearSensitivities()
Zero sensitivity fields and their constituents.
virtual void accumulateBCSensitivityIntegrand(const scalar dt)
Accumulate sensitivities enamating from the boundary conditions.
virtual void accumulateDirectSensitivityIntegrand(const scalar dt)
Accumulate direct sensitivities.
PtrList< objective > & getObjectiveFunctions()
Return reference to objective functions.
Abstract base class for objective functions. No point in making this runTime selectable since its chi...
const dictionary & dict() const
Return the construction dictionary.
const word & solverName() const
Return solver name.
#define defineTypeNameAndDebug(Type, DebugSwitch)
Define the typeName and debug information.
dimensioned< tensor > dimensionedTensor
Dimensioned tensor obtained from generic dimensioned type.
dimensionedSymmTensor sqr(const dimensionedVector &dv)
const dimensionSet dimLength(0, 1, 0, 0, 0, 0, 0)
dimensionedScalar pow3(const dimensionedScalar &ds)
const dimensionSet dimTime(0, 0, 1, 0, 0, 0, 0)
void func(FieldField< Field, Type > &f, const FieldField< Field, Type > &f1, const FieldField< Field, Type > &f2)
static constexpr const zero Zero
Global zero (0)
A non-counting (dummy) refCount.