40#ifndef objectiveGeometric_H
41#define objectiveGeometric_H
54class objectiveGeometric
64 objectiveGeometric(
const objectiveGeometric&) =
delete;
67 void operator=(
const objectiveGeometric&) =
delete;
86 const word& adjointSolverName,
87 const word& primalSolverName
89 (
mesh,
dict, adjointSolverName, primalSolverName)
100 const word& adjointSolverName,
101 const word& primalSolverName
112 const word& adjointSolverName,
113 const word& primalSolverName
124 virtual scalar
J() = 0;
Pointer management similar to std::unique_ptr, with some additional methods and type checking.
A list of keyword definitions, which are a keyword followed by a number of values (eg,...
Mesh data needed to do the Finite Volume discretisation.
static autoPtr< objectiveGeometric > New(const fvMesh &mesh, const dictionary &dict, const word &adjointSolverName, const word &primalSolverName)
Return a reference to the selected turbulence model.
declareRunTimeSelectionTable(autoPtr, objectiveGeometric, dictionary,(const fvMesh &mesh, const dictionary &dict, const word &adjointSolverName, const word &primalSolverName),(mesh, dict, adjointSolverName, primalSolverName))
TypeName("geometric")
Runtime type information.
virtual scalar J()=0
Return the objective function value.
virtual ~objectiveGeometric()=default
Destructor.
virtual void update()
Update objective function derivatives.
const dictionary & dict() const
Return objective dictionary.
A class for handling words, derived from Foam::string.
#define declareRunTimeSelectionTable(ptrWrapper, baseType, argNames, argList, parList)
Declare a run-time selection (variables and adder classes).
#define TypeName(TypeNameString)
Declare a ClassName() with extra virtual type info.