38namespace incompressible
63 <<
"includeObjectiveContribution set to true in both "
64 <<
"surfaceSensitivities and the parameterization options" <<
nl
65 <<
"This will lead to double contributions " <<
nl
66 <<
"Disabling the former"
93 dict.optionalSubDict(
"surfaceSensitivities"),
96 includeObjective_(true),
97 writeSensitivityMap_(true)
107 if (sensitivity::readDict(
dict))
Macros for easy insertion into run-time selection tables.
Base class for adjoint solvers.
A list of keyword definitions, which are a keyword followed by a number of values (eg,...
const dictionary & optionalSubDict(const word &keyword, enum keyType::option matchOpt=keyType::REGEX) const
Find and return a sub-dictionary, otherwise return this dictionary.
T getOrDefault(const word &keyword, const T &deflt, enum keyType::option matchOpt=keyType::REGEX) const
virtual bool write()
Write the output fields.
Mesh data needed to do the Finite Volume discretisation.
Base class for incompressibleAdjoint solvers.
Base class for Surface Integral-based sensitivity derivatives.
virtual void clearSensitivities()
Zero sensitivity fields and their constituents.
sensitivitySurface surfaceSensitivity_
Surface sensitivities.
const sensitivitySurface & getSurfaceSensitivities() const
Return reference to underlaying surface sensitivities.
bool writeSensitivityMap_
Write sensitivity map upon write.
void read()
Read options from dict.
virtual void accumulateIntegrand(const scalar dt)
Accumulate sensitivity integrands.
bool includeObjective_
Whether to include direct sensitivities or not.
Calculation of adjoint based sensitivities at wall faces.
virtual void clearSensitivities()
Zero sensitivity fields and their constituents.
void setIncludeSurfaceArea(const bool includeSurfaceArea)
Set includeSurfaceArea bool.
virtual void write(const word &baseName=word::null)
Write sensitivity maps.
void setIncludeObjective(const bool includeObjective)
Set includeObjective bool.
virtual bool readDict(const dictionary &dict)
Read dict if changed.
void read()
Read controls and update solver pointers if necessary.
bool getIncludeObjective() const
Get access to the includeObjective bool.
virtual void accumulateIntegrand(const scalar dt)
Accumulate sensitivity integrands.
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.
const dictionary & dict() const
Return the construction dictionary.
A class for handling words, derived from Foam::string.
#define defineTypeNameAndDebug(Type, DebugSwitch)
Define the typeName and debug information.
#define WarningInFunction
Report a warning using Foam::Warning.
Ostream & endl(Ostream &os)
Add newline and flush stream.
constexpr char nl
The newline '\n' character (0x0a)