Helmholtz Class Reference

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

Inheritance diagram for Helmholtz:
Collaboration diagram for Helmholtz:

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 fvMeshmesh_
 
const dictionary dict_
 
const topOZoneszones_
 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< regularisationPDENew (const fvMesh &mesh, const dictionary &dict, const topOZones &zones)
 Construct and return the selected regularisationPDE. More...
 

Detailed Description

A regulatisation PDE based on a Helmholtz filter.

Source files

Definition at line 49 of file Helmholtz.H.

Constructor & Destructor Documentation

◆ Helmholtz()

Helmholtz ( const fvMesh mesh,
const dictionary dict,
const topOZones zones 
)

Construct from components.

Definition at line 151 of file Helmholtz.C.

◆ ~Helmholtz()

virtual ~Helmholtz ( )
virtualdefault

Destructor.

Member Function Documentation

◆ solveEqn()

void solveEqn ( const volScalarField aTilda,
const scalarField source,
scalarField result,
const bool  isTopoField,
const regularisationRadius radius,
const scalar  minSetValue = Zero,
const bool  fixATildaValues = true 
)
protected

◆ TypeName()

TypeName ( "Helmholtz"  )

Runtime type information.

◆ regularise()

void regularise ( const volScalarField aTilda,
const scalarField source,
scalarField result,
const bool  isTopoField,
const regularisationRadius radius,
const scalar  minSetValue = Zero,
const bool  fixATildaValues = true 
)
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().

Here is the call graph for this function:

Member Data Documentation

◆ solveOnActiveCells_

bool solveOnActiveCells_
protected

Solve the regularisationPDE only on a subset mesh made of the active cell zones.

Definition at line 77 of file Helmholtz.H.

◆ wallValue_

scalar wallValue_
protected

Fixed value at wall boundaries. Defaults to 1.

Definition at line 82 of file Helmholtz.H.


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