Go to the documentation of this file.
46 objectiveIncompressible,
58 const word& adjointSolverName,
59 const word& primalSolverName
65 mesh_.cellZones().indices(this->
dict().get<wordRes>(
"zones"))
71 createZeroFieldPtr<scalar>
81 createZeroFieldPtr<scalar>
84 (
"divDxdbMult"+
type()) ,
106 for (
const label zI : zones_)
109 for (
const label cellI : zoneI)
134 for (
const label zI : zones_)
137 for (
const label cellI : zoneI)
153 for (
const label zI : zones_)
156 for (
const label cellI : zoneI)
158 divDxDbMult[cellI] =
sqr(
nut[cellI]);
const dimensionSet dimless(0, 0, 0, 0, 0, 0, 0)
Dimensionless.
A class for handling words, derived from Foam::string.
static constexpr const zero Zero
Global zero (0)
const incompressibleVars & vars_
addToRunTimeSelectionTable(objectiveIncompressible, objectiveForce, dictionary)
void update_divDxDbMultiplier()
const cellZoneMesh & cellZones() const
Return cell zone mesh.
scalar J()
Return the objective function value.
const volScalarField & dJdTMvar1()
Contribution to field adjoint turbulence model variable 1.
A simple single-phase transport model based on viscosityModel.
Dimension set for the base types.
const autoPtr< incompressible::RASModelVariables > & RASModelVariables() const
Return const reference to the turbulence model variables.
const dimensionSet dimTime(0, 0, 1, 0, 0, 0, 0)
void reduce(const List< UPstream::commsStruct > &comms, T &Value, const BinaryOp &bop, const int tag, const label comm)
defineTypeNameAndDebug(objectiveForce, 0)
scalar J_
Objective function value and weight.
void update_dJdTMvar1()
Update field to be added to the adjoint turbulence model PDE.
const singlePhaseTransportModel & laminarTransport() const
Return const reference to transport model.
Abstract base class for objective functions in incompressible flows.
A list of keyword definitions, which are a keyword followed by a number of values (eg,...
Macros for easy insertion into run-time selection tables.
Mesh data needed to do the Finite Volume discretisation.
autoPtr< volScalarField > dJdTMvar1Ptr_
First turbulence model variable.
Pointer management similar to std::unique_ptr, with some additional methods and type checking.
dimensionedSymmTensor sqr(const dimensionedVector &dv)
objectiveNutSqr(const fvMesh &mesh, const dictionary &dict, const word &adjointSolverName, const word &primalSolverName)
From components.
fileName::Type type(const fileName &name, const bool followLink=true)
Return the file type: DIRECTORY or FILE, normally following symbolic links.
const DimensionedField< scalar, volMesh > & V() const
Return cell volumes.