Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
adjointMeshMovementSolver Class Reference

Solver of the adjoint to the Laplace grid displacement equation. More...

Collaboration diagram for adjointMeshMovementSolver:
Collaboration graph
[legend]

Public Member Functions

 TypeName ("adjointMeshMovementSolver")
 
 adjointMeshMovementSolver (const fvMesh &mesh, const dictionary &dict, Foam::incompressible::adjointSensitivity &adjointSensitivity, const labelHashSet &sensitivityPatchIDs, const autoPtr< adjointEikonalSolver > &adjointEikonalSolverPtr)
 
virtual ~adjointMeshMovementSolver ()=default
 
virtual bool readDict (const dictionary &dict)
 
void accumulateIntegrand (const scalar dt)
 
void solve ()
 
void reset ()
 
boundaryVectorFieldmeshMovementSensitivities ()
 
const volVectorFieldma ()
 

Protected Member Functions

void read ()
 

Protected Attributes

const fvMeshmesh_
 
dictionary dict_
 
Foam::incompressible::adjointSensitivityadjointSensitivity_
 
const labelHashSetsensitivityPatchIDs_
 
label nLaplaceIters_
 
scalar tolerance_
 
volVectorField ma_
 
volVectorField source_
 
autoPtr< boundaryVectorFieldmeshMovementSensPtr_
 
const autoPtr< adjointEikonalSolver > & adjointEikonalSolverPtr_
 

Detailed Description

Solver of the adjoint to the Laplace grid displacement equation.

Reference:

    Kavvadias, I., Papoutsis-Kiachagias, E., & Giannakoglou, K. (2015).
    On the proper treatment of grid sensitivities in continuous adjoint
    methods for shape optimization.
    Journal of Computational Physics, 301, 1–18.
    http://doi.org/10.1016/j.jcp.2015.08.012
Source files

Definition at line 64 of file adjointMeshMovementSolverIncompressible.H.

Constructor & Destructor Documentation

◆ adjointMeshMovementSolver()

adjointMeshMovementSolver ( const fvMesh mesh,
const dictionary dict,
Foam::incompressible::adjointSensitivity adjointSensitivity,
const labelHashSet sensitivityPatchIDs,
const autoPtr< adjointEikonalSolver > &  adjointEikonalSolverPtr 
)

Definition at line 50 of file adjointMeshMovementSolverIncompressible.C.

References Foam::read().

Here is the call graph for this function:

◆ ~adjointMeshMovementSolver()

virtual ~adjointMeshMovementSolver ( )
virtualdefault

Member Function Documentation

◆ read()

void read ( )
protected

◆ TypeName()

TypeName ( "adjointMeshMovementSolver"  )

◆ readDict()

bool readDict ( const dictionary dict)
virtual

◆ accumulateIntegrand()

void accumulateIntegrand ( const scalar  dt)

◆ solve()

void solve ( )

◆ reset()

void reset ( )

◆ meshMovementSensitivities()

boundaryVectorField & meshMovementSensitivities ( )

◆ ma()

const volVectorField & ma ( )

Member Data Documentation

◆ mesh_

const fvMesh& mesh_
protected

◆ dict_

dictionary dict_
protected

◆ adjointSensitivity_

Foam::incompressible::adjointSensitivity& adjointSensitivity_
protected

◆ sensitivityPatchIDs_

const labelHashSet& sensitivityPatchIDs_
protected

◆ nLaplaceIters_

label nLaplaceIters_
protected

◆ tolerance_

scalar tolerance_
protected

◆ ma_

volVectorField ma_
protected

◆ source_

volVectorField source_
protected

◆ meshMovementSensPtr_

autoPtr<boundaryVectorField> meshMovementSensPtr_
protected

◆ adjointEikonalSolverPtr_

const autoPtr<adjointEikonalSolver>& adjointEikonalSolverPtr_
protected

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