Base class for solution control classes. More...
#include <adjointBoundaryCondition.H>


Public Member Functions | |
| TypeName ("adjointBoundaryCondition") | |
| Run-time type information. | |
| adjointBoundaryCondition (const fvPatch &p, const DimensionedField< Type, volMesh > &iF, const word &solverName) | |
| Construct from field and base name. | |
| adjointBoundaryCondition (const adjointBoundaryCondition< Type > &) | |
| Construct as copy. | |
| virtual | ~adjointBoundaryCondition ()=default |
| Destructor. | |
| const word & | objectiveManagerName () const |
| Return objectiveManager name. | |
| const word & | adjointSolverName () const |
| Return adjointSolverName. | |
| const word & | simulationType () const |
| Return the simulationType. | |
| void | setBoundaryContributionPtr () |
| Set the ptr to the correct boundaryAdjointContribution. | |
| boundaryAdjointContribution & | getBoundaryAdjContribution () |
| Get boundaryContribution. | |
| const ATCModel & | getATC () const |
| ATC type might be useful for a number of BCs. Return here. | |
| virtual tmp< Field< typename Foam::outerProduct< Foam::vector, Type >::type > > | dxdbMult () const |
| Return contribution to sensitivity derivatives. | |
| virtual void | updatePrimalBasedQuantities () |
| Update the primal based quantities related to the adjoint boundary conditions. | |
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. | |
| bool | addATCUaGradUTerm () |
| Whether to add the extra term from the UaGradU formulation. | |
Protected Attributes | |
| const fvPatch & | patch_ |
| Reference to patch. | |
| word | managerName_ |
| objectiveManager name corresponding to field | |
| word | adjointSolverName_ |
| adjointSolver name corresponding to field | |
| word | simulationType_ |
| simulationType corresponding to field. | |
| autoPtr< boundaryAdjointContribution > | boundaryContrPtr_ |
| Engine to manage contributions of the objective functions to the adjoint boundary conditions. | |
| Switch | addATCUaGradUTerm_ |
| Whether to add the extra term from the UaGradU formulation. | |
Base class for solution control classes.
Definition at line 47 of file adjointBoundaryCondition.H.
| adjointBoundaryCondition | ( | const fvPatch & | p, |
| const DimensionedField< Type, volMesh > & | iF, | ||
| const word & | solverName ) |
Construct from field and base name.
Definition at line 205 of file adjointBoundaryCondition.C.
References addATCUaGradUTerm_, adjointSolverName_, boundaryContrPtr_, managerName_, p, patch_, setBoundaryContributionPtr(), and simulationType_.
Referenced by adjointBoundaryCondition().


| adjointBoundaryCondition | ( | const adjointBoundaryCondition< Type > & | adjointBC | ) |
Construct as copy.
Definition at line 179 of file adjointBoundaryCondition.C.
References addATCUaGradUTerm_, adjointBoundaryCondition(), adjointSolverName_, boundaryContrPtr_, managerName_, Foam::New(), patch_, and simulationType_.

|
virtualdefault |
Destructor.
|
protected |
Get gradient of field on a specific boundary.
Definition at line 43 of file adjointBoundaryCondition.C.
References GeometricField< Type, PatchField, GeoMesh >::boundaryField(), solution::cachePrintMessage(), cells, field(), forAll, Foam::interpolate(), Foam::isA(), mesh, Foam::name(), Foam::New(), surfaceInterpolationScheme< Type >::New(), patch_, patchID, fvPatchField< Type >::snGrad(), fvPatch::start(), regIOobject::store(), and Foam::Zero.

|
protected |
Whether to add the extra term from the UaGradU formulation.
Definition at line 166 of file adjointBoundaryCondition.C.
References addATCUaGradUTerm_, getATC(), and Foam::isA().

| TypeName | ( | "adjointBoundaryCondition< Type >" | ) |
Run-time type information.
| const word & objectiveManagerName | ( | ) | const |
Return objectiveManager name.
Definition at line 227 of file adjointBoundaryCondition.C.
References managerName_.
| const word & adjointSolverName | ( | ) | const |
Return adjointSolverName.
Definition at line 234 of file adjointBoundaryCondition.C.
References adjointSolverName_.
| const word & simulationType | ( | ) | const |
Return the simulationType.
Definition at line 241 of file adjointBoundaryCondition.C.
References simulationType_.
| void setBoundaryContributionPtr | ( | ) |
Set the ptr to the correct boundaryAdjointContribution.
Definition at line 248 of file adjointBoundaryCondition.C.
References adjointSolverName_, boundaryContrPtr_, Foam::endl(), objectRegistry::foundObject(), managerName_, boundaryAdjointContribution::New(), Foam::nl, patch_, simulationType_, and WarningInFunction.
Referenced by adjointBoundaryCondition().


| boundaryAdjointContribution & getBoundaryAdjContribution | ( | ) |
Get boundaryContribution.
Definition at line 281 of file adjointBoundaryCondition.C.
References boundaryContrPtr_.
| const ATCModel & getATC | ( | ) | const |
ATC type might be useful for a number of BCs. Return here.
Definition at line 288 of file adjointBoundaryCondition.C.
References adjointSolverName_, and patch_.
Referenced by addATCUaGradUTerm().

|
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.
Definition at line 308 of file adjointBoundaryCondition.C.
Referenced by incompressibleAdjointSolver::hasBCdxdbMult().

|
virtual |
Update the primal based quantities related to the adjoint boundary conditions.
Definition at line 297 of file adjointBoundaryCondition.C.
|
protected |
Reference to patch.
Definition at line 56 of file adjointBoundaryCondition.H.
Referenced by adjointBoundaryCondition(), adjointBoundaryCondition(), computePatchGrad(), getATC(), and setBoundaryContributionPtr().
|
protected |
objectiveManager name corresponding to field
Definition at line 61 of file adjointBoundaryCondition.H.
Referenced by adjointBoundaryCondition(), adjointBoundaryCondition(), objectiveManagerName(), and setBoundaryContributionPtr().
|
protected |
adjointSolver name corresponding to field
Definition at line 66 of file adjointBoundaryCondition.H.
Referenced by adjointBoundaryCondition(), adjointBoundaryCondition(), adjointSolverName(), getATC(), and setBoundaryContributionPtr().
|
protected |
simulationType corresponding to field.
A placeholder for now
Definition at line 73 of file adjointBoundaryCondition.H.
Referenced by adjointBoundaryCondition(), adjointBoundaryCondition(), setBoundaryContributionPtr(), and simulationType().
|
protected |
Engine to manage contributions of the objective functions to the adjoint boundary conditions.
Definition at line 79 of file adjointBoundaryCondition.H.
Referenced by adjointBoundaryCondition(), adjointBoundaryCondition(), getBoundaryAdjContribution(), and setBoundaryContributionPtr().
|
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.
Referenced by addATCUaGradUTerm(), adjointBoundaryCondition(), and adjointBoundaryCondition().