47 #ifndef adjointSimple_H 48 #define adjointSimple_H 131 const word& managerType,
162 virtual void solve();
virtual void mainIter()
The main SIMPLE iter.
virtual void updatePrimalBasedQuantities()
Update primal based quantities related to the objective functions.
virtual ~adjointSimple()=default
Destructor.
A list of keyword definitions, which are a keyword followed by a number of values (eg...
void addExtraSchemes()
In case variable names are different than the base ones, add extra schemes and relaxation factors to ...
virtual void preLoop()
Functions to be called before loop.
const fvMesh & mesh() const
Return the solver mesh.
autoPtr< SIMPLEControl > solverControl_
Solver control.
Abstract base class for adjoint sensitivities.
TypeName("adjointSimple")
Run-time type information.
incompressibleAdjointVars & allocateVars()
Allocate incompressibleAdjointVars and return reference to be used for convenience in the rest of the...
scalar cumulativeContErr_
Cumulative continuity error.
Class including all adjoint fields for incompressible flows.
Base class for incompressibleAdjoint solvers.
virtual bool loop()
Looper (advances iters, time step)
incompressibleAdjointVars & adjointVars_
Reference to incompressibleAdjointVars.
virtual void preIter()
Steps to be executed before each main SIMPLE iteration.
A class for handling words, derived from Foam::string.
virtual bool readDict(const dictionary &dict)
Read dict if updated.
virtual sensitivity & getSensitivityBase()
Return the base sensitivity object.
A special matrix type and solver, designed for finite volume solutions of scalar equations. Face addressing is used to make all matrix assembly and solution loops vectorise.
virtual const dictionary & dict() const
Return the solver dictionary.
void continuityErrors()
Compute continuity errors.
virtual void postIter()
Steps to be executed before each main SIMPLE iteration.
An Ostream is an abstract base class for all output systems (streams, files, token lists...
autoPtr< incompressible::adjointSensitivity > adjointSensitivity_
Sensitivity Derivatives engine.
OBJstream os(runTime.globalPath()/outputName)
virtual void solve()
Main control loop.
virtual const scalarField & getObjectiveSensitivities()
Grab a reference to the computed sensitivities.
virtual void addPressureSource(fvScalarMatrix &matrix)
Source terms for the continuity equation.
Mesh data needed to do the Finite Volume discretisation.
Solution of the adjoint PDEs for incompressible, steady-state flows.
virtual bool writeData(Ostream &os) const
Write average iteration.
Pointer management similar to std::unique_ptr, with some additional methods and type checking...
virtual void solveIter()
Execute one iteration of the solution algorithm.
virtual void clearSensitivities()
Clears the sensitivity field known by the adjoint solver and zeros sensitivities constituents.
virtual void addMomentumSource(fvVectorMatrix &matrix)
Source terms for the momentum equations.
virtual void computeObjectiveSensitivities()
Compute sensitivities of the underlaying objectives.
const word & primalSolverName() const
Return the primal solver name.