A regulatisation PDE based on a Helmholtz filter. More...


Public Member Functions | |
| TypeName ("Helmholtz") | |
| Runtime type information. More... | |
| Helmholtz (const fvMesh &mesh, const dictionary &dict, const topOZones &zones) | |
| Construct from components. More... | |
| virtual | ~Helmholtz ()=default |
| Destructor. More... | |
| virtual void | regularise (const volScalarField &aTilda, const scalarField &source, scalarField &result, const bool isTopoField, const regularisationRadius &radius, const scalar minSetValue=Zero, const bool fixATildaValues=true) |
| Regularise field (or sensitivities) using a Laplace PDE. More... | |
Public Member Functions inherited from regularisationPDE | |
| TypeName ("regularisationPDE") | |
| Runtime type information. More... | |
| declareRunTimeSelectionTable (autoPtr, regularisationPDE, dictionary,(const fvMesh &mesh, const dictionary &dict, const topOZones &zones),(mesh, dict, zones)) | |
| regularisationPDE (const fvMesh &mesh, const dictionary &dict, const topOZones &zones) | |
| Construct from components. More... | |
| virtual | ~regularisationPDE ()=default |
| Destructor. More... | |
Protected Member Functions | |
| void | solveEqn (const volScalarField &aTilda, const scalarField &source, scalarField &result, const bool isTopoField, const regularisationRadius &radius, const scalar minSetValue=Zero, const bool fixATildaValues=true) |
| Solve the regulatisation equation. More... | |
Protected Member Functions inherited from regularisationPDE | |
| void | setValues (fvScalarMatrix &bTildaEqn, const bool isTopoField, const scalar minSetValue=Zero) |
| Set fixed bTilda values. More... | |
| void | setValues (const fvMesh &mesh, DynamicList< label > &cells, DynamicList< scalar > &values, bool isTopoField, const scalar minSetValue=Zero) |
| Gather the cells with constant values from all constrained zones. More... | |
| scalar | computeRadius () |
| Compute smoothing radius, if not directly given. More... | |
Protected Attributes | |
| bool | solveOnActiveCells_ |
| Solve the regularisationPDE only on a subset mesh made of the active cell zones. More... | |
| scalar | wallValue_ |
| Fixed value at wall boundaries. Defaults to 1. More... | |
Protected Attributes inherited from regularisationPDE | |
| const fvMesh & | mesh_ |
| const dictionary | dict_ |
| const topOZones & | zones_ |
| Cell zones related to topology optimisation. More... | |
| bool | growFromWalls_ |
| Whether to apply a fixedValue BC or zeroGradient one to alphaTilda, when regularisation is performed. More... | |
Additional Inherited Members | |
Static Public Member Functions inherited from regularisationPDE | |
| static autoPtr< regularisationPDE > | New (const fvMesh &mesh, const dictionary &dict, const topOZones &zones) |
| Construct and return the selected regularisationPDE. More... | |
A regulatisation PDE based on a Helmholtz filter.
Definition at line 49 of file Helmholtz.H.
| Helmholtz | ( | const fvMesh & | mesh, |
| const dictionary & | dict, | ||
| const topOZones & | zones | ||
| ) |
Construct from components.
Definition at line 151 of file Helmholtz.C.
|
virtualdefault |
Destructor.
|
protected |
Solve the regulatisation equation.
The mesh used is the one of aTilda
Definition at line 44 of file Helmholtz.C.
References regularisationRadius::addRegularisationTerm(), GeometricField< Type, PatchField, GeoMesh >::boundaryFieldRef(), Foam::dimless, forAll, Foam::Info, GeometricField< Type, PatchField, GeoMesh >::internalField(), iters(), Foam::mag(), mesh, DimensionedField< Type, GeoMesh >::mesh(), Foam::foamVersion::patch, GeometricField< Type, PatchField, GeoMesh >::primitiveField(), fvMatrix< Type >::solve(), Sp, and Foam::Zero.

| TypeName | ( | "Helmholtz" | ) |
Runtime type information.
|
virtual |
Regularise field (or sensitivities) using a Laplace PDE.
Implements regularisationPDE.
Definition at line 166 of file Helmholtz.C.
References cells, Field< Type >::rmap(), and Foam::HashTableOps::values().

|
protected |
Solve the regularisationPDE only on a subset mesh made of the active cell zones.
Definition at line 77 of file Helmholtz.H.
|
protected |
Fixed value at wall boundaries. Defaults to 1.
Definition at line 82 of file Helmholtz.H.