sensitivityMultiple Class Reference

Calculation of adjoint based sensitivities of multiple types. More...

Inheritance diagram for sensitivityMultiple:
[legend]
Collaboration diagram for sensitivityMultiple:
[legend]

Public Member Functions

 TypeName ("multiple")
 Runtime type information. More...
 
 sensitivityMultiple (const fvMesh &mesh, const dictionary &dict, incompressibleAdjointSolver &adjointSolver)
 Construct from components. More...
 
virtual ~sensitivityMultiple ()=default
 Destructor. More...
 
virtual bool readDict (const dictionary &dict)
 Read dict if changed. More...
 
virtual void accumulateIntegrand (const scalar dt)
 Accumulate sensitivity integrands. More...
 
virtual void assembleSensitivities ()
 Assemble sensitivities. More...
 
const scalarFieldcalculateSensitivities ()
 Calculates sensitivities at wall surface points. More...
 
virtual void clearSensitivities ()
 Zero sensitivity fields and their constituents. More...
 
virtual void write (const word &baseName=word::null)
 Write sensitivities to file. More...
 
- Public Member Functions inherited from adjointSensitivity
 TypeName ("adjointSensitivity")
 Runtime type information. More...
 
 declareRunTimeSelectionTable (autoPtr, adjointSensitivity, dictionary,(const fvMesh &mesh, const dictionary &dict, incompressibleAdjointSolver &adjointSolver),(mesh, dict, adjointSolver))
 
 adjointSensitivity (const fvMesh &mesh, const dictionary &dict, incompressibleAdjointSolver &adjointSolver)
 Construct from components. More...
 
virtual ~adjointSensitivity ()=default
 Destructor. More...
 
const incompressibleVarsprimalVars () const
 Get primal variables. More...
 
const incompressibleAdjointVarsadjointVars () const
 Get adjoint variables. More...
 
const incompressibleAdjointSolveradjointSolver () const
 Get adjoint solver. More...
 
virtual void accumulateIntegrand (const scalar dt)=0
 Accumulate sensitivity integrands. More...
 
virtual void assembleSensitivities ()=0
 Assemble sensitivities. More...
 
virtual const scalarFieldcalculateSensitivities ()
 Calculates and returns sensitivity fields. More...
 
const scalarFieldgetSensitivities () const
 Returns the sensitivity fields. More...
 
virtual void clearSensitivities ()
 Zero sensitivity fields and their constituents. More...
 
virtual void write (const word &baseName=word::null)
 Write sensitivity fields. More...
 
tmp< volTensorFieldcomputeGradDxDbMultiplier ()
 
tmp< volVectorFieldadjointMeshMovementSource ()
 Compute source term for adjoint mesh movement equation. More...
 
- Public Member Functions inherited from sensitivity
 TypeName ("sensitivity")
 Runtime type information. More...
 
 sensitivity (const fvMesh &mesh, const dictionary &dict)
 Construct from components. More...
 
virtual ~sensitivity ()=default
 Destructor. More...
 
const dictionarydict () const
 Return the construction dictionary. More...
 
virtual bool readDict (const dictionary &dict)
 Read dictionary if changed. More...
 
virtual void computeDerivativesSize ()
 Compute design variables number. Does nothing in the base. More...
 
virtual const scalarFieldcalculateSensitivities ()=0
 Calculates and returns sensitivity fields. More...
 
virtual void write (const word &baseName=word::null)
 Write sensitivity fields. More...
 

Protected Attributes

wordList sensTypes_
 
PtrList< adjointSensitivitysens_
 
- Protected Attributes inherited from adjointSensitivity
scalarField derivatives_
 
incompressibleAdjointSolveradjointSolver_
 
const incompressibleVarsprimalVars_
 
incompressibleAdjointVarsadjointVars_
 
objectiveManagerobjectiveManager_
 
- Protected Attributes inherited from sensitivity
const fvMeshmesh_
 
dictionary dict_
 
autoPtr< volScalarFieldfieldSensPtr_
 

Additional Inherited Members

- Static Public Member Functions inherited from adjointSensitivity
static autoPtr< adjointSensitivityNew (const fvMesh &mesh, const dictionary &dict, incompressibleAdjointSolver &adjointSolver)
 Return a reference to the selected turbulence model. More...
 

Detailed Description

Calculation of adjoint based sensitivities of multiple types.

Source files

Definition at line 55 of file sensitivityMultipleIncompressible.H.

Constructor & Destructor Documentation

◆ sensitivityMultiple()

sensitivityMultiple ( const fvMesh mesh,
const dictionary dict,
incompressibleAdjointSolver adjointSolver 
)

Construct from components.

Definition at line 53 of file sensitivityMultipleIncompressible.C.

References sensitivity::dict(), forAll, mesh, Time::New(), sensitivityMultiple::sens_, sensitivityMultiple::sensTypes_, and dictionary::subDict().

Here is the call graph for this function:

◆ ~sensitivityMultiple()

virtual ~sensitivityMultiple ( )
virtualdefault

Destructor.

Member Function Documentation

◆ TypeName()

TypeName ( "multiple"  )

Runtime type information.

◆ readDict()

bool readDict ( const dictionary dict)
virtual

Read dict if changed.

Reimplemented from sensitivity.

Definition at line 82 of file sensitivityMultipleIncompressible.C.

References sensitivity::dict(), forAll, sensitivityMultiple::sens_, sensitivityMultiple::sensTypes_, and dictionary::subDict().

Here is the call graph for this function:

◆ accumulateIntegrand()

void accumulateIntegrand ( const scalar  dt)
virtual

Accumulate sensitivity integrands.

Implements adjointSensitivity.

Definition at line 101 of file sensitivityMultipleIncompressible.C.

References forAll, and sensitivityMultiple::sens_.

◆ assembleSensitivities()

void assembleSensitivities ( )
virtual

Assemble sensitivities.

Implements adjointSensitivity.

Definition at line 110 of file sensitivityMultipleIncompressible.C.

References forAll, and sensitivityMultiple::sens_.

◆ calculateSensitivities()

const scalarField & calculateSensitivities ( )
virtual

Calculates sensitivities at wall surface points.

Reimplemented from adjointSensitivity.

Definition at line 119 of file sensitivityMultipleIncompressible.C.

References adjointSensitivity::derivatives_, Foam::endl(), forAll, Foam::Info, sensitivityMultiple::sens_, sensitivityMultiple::sensTypes_, Foam::type(), and write().

Here is the call graph for this function:

◆ clearSensitivities()

void clearSensitivities ( )
virtual

Zero sensitivity fields and their constituents.

Reimplemented from adjointSensitivity.

Definition at line 132 of file sensitivityMultipleIncompressible.C.

References forAll, and sensitivityMultiple::sens_.

◆ write()

void write ( const word baseName = word::null)
virtual

Write sensitivities to file.

Reimplemented from adjointSensitivity.

Definition at line 141 of file sensitivityMultipleIncompressible.C.

References forAll, sensitivityMultiple::sens_, and sensitivityMultiple::sensTypes_.

Member Data Documentation

◆ sensTypes_

◆ sens_


The documentation for this class was generated from the following files: