Loading...
Searching...
No Matches
smoothHeaviside Class Reference

A smooth Heaviside function to project the signed distance field in level set topology optimization. More...

#include <smoothHeaviside.H>

Inheritance diagram for smoothHeaviside:
Collaboration diagram for smoothHeaviside:

Public Member Functions

 TypeName ("smoothHeaviside")
 Runtime type information.
 smoothHeaviside (const fvMesh &mesh, const dictionary &dict)
 Construct from mesh and dictionary.
virtual ~smoothHeaviside ()=default
virtual void interpolate (const scalarField &arg, scalarField &res) const
 Interpolate argument to result.
virtual tmp< scalarFieldderivative (const scalarField &arg) const
 Return of function with respect to the argument field.
Public Member Functions inherited from topOInterpolationFunction
 TypeName ("topOInterpolationFunction")
 Runtime type information.
 declareRunTimeSelectionTable (autoPtr, topOInterpolationFunction, dictionary,(const fvMesh &mesh, const dictionary &dict),(mesh, dict))
 topOInterpolationFunction (const fvMesh &mesh, const dictionary &dict)
 Construct from components.
virtual ~topOInterpolationFunction ()=default
 Destructor.
virtual void setLengthScaleParam (const scalar lengthScale)
 Set the parameter determining length scale.

Protected Attributes

autoPtr< Function1< scalar > > b_
Protected Attributes inherited from topOInterpolationFunction
const fvMeshmesh_
dictionary dict_

Additional Inherited Members

Static Public Member Functions inherited from topOInterpolationFunction
static autoPtr< topOInterpolationFunctionNew (const fvMesh &mesh, const dictionary &dict)
 Return an autoPtr to the selected interpolation type.

Detailed Description

A smooth Heaviside function to project the signed distance field in level set topology optimization.

Definition at line 44 of file smoothHeaviside.H.

Constructor & Destructor Documentation

◆ smoothHeaviside()

smoothHeaviside ( const fvMesh & mesh,
const dictionary & dict )

Construct from mesh and dictionary.

Definition at line 43 of file smoothHeaviside.C.

References b_, dict, mesh, and topOInterpolationFunction::New().

Here is the call graph for this function:

◆ ~smoothHeaviside()

virtual ~smoothHeaviside ( )
virtualdefault

Member Function Documentation

◆ TypeName()

TypeName ( "smoothHeaviside" )

Runtime type information.

References dict, and mesh.

◆ interpolate()

void interpolate ( const scalarField & arg,
scalarField & res ) const
virtual

Interpolate argument to result.

Implements topOInterpolationFunction.

Definition at line 56 of file smoothHeaviside.C.

References b, b_, topOInterpolationFunction::mesh_, and Foam::tanh().

Here is the call graph for this function:

◆ derivative()

tmp< scalarField > derivative ( const scalarField & arg) const
virtual

Return of function with respect to the argument field.

Implements topOInterpolationFunction.

Definition at line 69 of file smoothHeaviside.C.

References b, b_, topOInterpolationFunction::mesh_, tmp< T >::New(), tmp< T >::ref(), UList< T >::size(), Foam::sqr(), Foam::tanh(), and Foam::Zero.

Here is the call graph for this function:

Member Data Documentation

◆ b_

autoPtr<Function1<scalar> > b_
protected

Definition at line 52 of file smoothHeaviside.H.

Referenced by derivative(), interpolate(), and smoothHeaviside().


The documentation for this class was generated from the following files:
  • src/optimisation/adjointOptimisation/adjoint/optimisation/designVariables/levelSet/interpolationFunctions/smoothHeaviside/smoothHeaviside.H
  • src/optimisation/adjointOptimisation/adjoint/optimisation/designVariables/levelSet/interpolationFunctions/smoothHeaviside/smoothHeaviside.C