adjointBoundaryCondition< Type > Class Template Reference

Base class for solution control classes. More...

Inheritance diagram for adjointBoundaryCondition< Type >:
Collaboration diagram for adjointBoundaryCondition< Type >:

Public Member Functions

 TypeName ("adjointBoundaryCondition")
 Run-time type information. More...
 
 adjointBoundaryCondition (const fvPatch &p, const DimensionedField< Type, volMesh > &iF, const word &solverName)
 Construct from field and base name. More...
 
 adjointBoundaryCondition (const adjointBoundaryCondition< Type > &)
 Construct as copy. More...
 
virtual ~adjointBoundaryCondition ()=default
 Destructor. More...
 
const wordobjectiveManagerName () const
 Return objectiveManager name. More...
 
const wordadjointSolverName () const
 Return adjointSolverName. More...
 
const wordsimulationType () const
 Return the simulationType. More...
 
void setBoundaryContributionPtr ()
 Set the ptr to the correct boundaryAdjointContribution. More...
 
boundaryAdjointContributiongetBoundaryAdjContribution ()
 Get boundaryContribution. More...
 
const ATCModelgetATC () const
 ATC type might be useful for a number of BCs. Return here. More...
 
virtual tmp< Field< typename Foam::outerProduct< Foam::vector, Type >::type > > dxdbMult () const
 Return contribution to sensitivity derivatives. More...
 
virtual void updatePrimalBasedQuantities ()
 Update the primal based quantities related to the adjoint boundary conditions. More...
 

Protected Member Functions

template<class Type2 >
tmp< Field< typename Foam::outerProduct< Foam::vector, Type2 >::type > > computePatchGrad (word name)
 Get gradient of field on a specific boundary. More...
 
bool addATCUaGradUTerm ()
 Whether to add the extra term from the UaGradU formulation. More...
 

Protected Attributes

const fvPatchpatch_
 Reference to patch. More...
 
word managerName_
 objectiveManager name corresponding to field More...
 
word adjointSolverName_
 adjointSolver name corresponding to field More...
 
word simulationType_
 simulationType corresponding to field. More...
 
autoPtr< boundaryAdjointContributionboundaryContrPtr_
 Engine to manage contributions of the objective functions to the adjoint boundary conditions. More...
 
Switch addATCUaGradUTerm_
 Whether to add the extra term from the UaGradU formulation. More...
 

Detailed Description

template<class Type>
class Foam::adjointBoundaryCondition< Type >

Base class for solution control classes.

Definition at line 47 of file adjointBoundaryCondition.H.

Constructor & Destructor Documentation

◆ adjointBoundaryCondition() [1/2]

adjointBoundaryCondition ( const fvPatch p,
const DimensionedField< Type, volMesh > &  iF,
const word solverName 
)

Construct from field and base name.

Definition at line 206 of file adjointBoundaryCondition.C.

◆ adjointBoundaryCondition() [2/2]

adjointBoundaryCondition ( const adjointBoundaryCondition< Type > &  adjointBC)

Construct as copy.

Definition at line 180 of file adjointBoundaryCondition.C.

◆ ~adjointBoundaryCondition()

virtual ~adjointBoundaryCondition ( )
virtualdefault

Destructor.

Member Function Documentation

◆ computePatchGrad()

tmp< Field<typename Foam::outerProduct<Foam::vector, Type2>::type> > computePatchGrad ( word  name)
protected

Get gradient of field on a specific boundary.

◆ addATCUaGradUTerm()

bool addATCUaGradUTerm ( )
protected

Whether to add the extra term from the UaGradU formulation.

Definition at line 166 of file adjointBoundaryCondition.C.

Referenced by adjointOutletPressureFvPatchScalarField::updateCoeffs(), and adjointFarFieldPressureFvPatchScalarField::updateCoeffs().

Here is the caller graph for this function:

◆ TypeName()

TypeName ( "adjointBoundaryCondition< Type >"  )

Run-time type information.

◆ objectiveManagerName()

const word & objectiveManagerName ( ) const

Return objectiveManager name.

Definition at line 227 of file adjointBoundaryCondition.C.

◆ adjointSolverName()

const word & adjointSolverName ( ) const

Return adjointSolverName.

Definition at line 234 of file adjointBoundaryCondition.C.

◆ simulationType()

const word & simulationType ( ) const

Return the simulationType.

Definition at line 241 of file adjointBoundaryCondition.C.

◆ setBoundaryContributionPtr()

void setBoundaryContributionPtr ( )

◆ getBoundaryAdjContribution()

boundaryAdjointContribution & getBoundaryAdjContribution ( )

Get boundaryContribution.

Definition at line 281 of file adjointBoundaryCondition.C.

◆ getATC()

const ATCModel & getATC ( ) const

ATC type might be useful for a number of BCs. Return here.

Definition at line 288 of file adjointBoundaryCondition.C.

◆ dxdbMult()

virtual tmp< Field<typename Foam::outerProduct<Foam::vector, Type>::type> > dxdbMult ( ) const
virtual

Return contribution to sensitivity derivatives.

For adjoint boundary conditions corresponding to primal boundary conditions that include geometric components (e.g. rotatingWallVelocity)

Reimplemented in adjointRotatingWallVelocityFvPatchVectorField.

Referenced by incompressibleAdjointSolver::hasBCdxdbMult().

Here is the caller graph for this function:

◆ updatePrimalBasedQuantities()

void updatePrimalBasedQuantities ( )
virtual

Update the primal based quantities related to the adjoint boundary conditions.

Definition at line 297 of file adjointBoundaryCondition.C.

Member Data Documentation

◆ patch_

const fvPatch& patch_
protected

Reference to patch.

Definition at line 56 of file adjointBoundaryCondition.H.

◆ managerName_

word managerName_
protected

objectiveManager name corresponding to field

Definition at line 61 of file adjointBoundaryCondition.H.

Referenced by adjointInletNuaTildaFvPatchScalarField::clone().

◆ adjointSolverName_

◆ simulationType_

word simulationType_
protected

simulationType corresponding to field.

A placeholder for now

Definition at line 73 of file adjointBoundaryCondition.H.

◆ boundaryContrPtr_

◆ addATCUaGradUTerm_

Switch addATCUaGradUTerm_
protected

Whether to add the extra term from the UaGradU formulation.

As a Switch with delayed evaluation since ATCModel has not been allocated at the time of construction

Definition at line 87 of file adjointBoundaryCondition.H.


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