Loading...
Searching...
No Matches
Bezier Class Reference

Calculation of adjoint based sensitivities for Bezier control points. More...

#include <Bezier.H>

Collaboration diagram for Bezier:

Public Member Functions

 TypeName ("Bezier")
 Runtime type information.
 Bezier (const fvMesh &mesh, const dictionary &dict)
 Construct from components.
virtual ~Bezier ()=default
 Destructor.
label nBezier () const
 Number of Bezier control points.
PtrList< pointTensorField > & dxidXj ()
 dx/db tensor for all control points
const boolListconfineXmovement () const
 Confine x movement.
const boolListconfineYmovement () const
 Confine y movement.
const boolListconfineZmovement () const
 Confine z movement.
const boolListListconfineMovement () const
 Info about confining movement in all directions.
tmp< tensorFielddndbBasedSensitivities (const label patchI, const label cpI, bool returnDimensionedNormalSens=true) const
 Compute derivative of the normal vector for a Bezier parameterized patch.
tmp< vectorFielddndbBasedSensitivities (const label patchI, const label cpI, const label idir, bool returnDimensionedNormalSens=true) const
 Compute derivative of the normal vector for a Bezier parameterized patch wrt a given component (direction) of the Bezier control point.
tmp< tensorFielddxdbFace (const label patchI, const label cpI, bool useChainRule=true) const
 dxdb tensor for a Bezier parameterized patch
tmp< vectorFielddxdbFace (const label patchI, const label cpI, const label idir, bool useChainRule=true) const
 dxdb vector for a Bezier parameterized patch and a specific control point component
tensorField facePoints_d (const label globalFaceI, const label cpI) const
 For a given (global) face ID, return the change of the face points.
vectorField facePoints_d (const label globalFaceI, const label cpI, const label idir) const
 For a given (global) face ID, return the change of the face points if a given component of the CP changes.
const labelListgetActiveDesignVariables () const
 Return active design variables.

Protected Attributes

const fvMeshmesh_
const dictionarydict_
label nBezier_
PtrList< pointTensorFielddxidXj_
boolList confineXmovement_
boolList confineYmovement_
boolList confineZmovement_
boolListList confineMovement_
labelList activeDesignVariables_

Detailed Description

Calculation of adjoint based sensitivities for Bezier control points.

Source files

Definition at line 54 of file Bezier.H.

Constructor & Destructor Documentation

◆ Bezier()

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

◆ ~Bezier()

virtual ~Bezier ( )
virtualdefault

Destructor.

Member Function Documentation

◆ TypeName()

TypeName ( "Bezier" )

Runtime type information.

References dict, and mesh.

◆ nBezier()

label nBezier ( ) const

Number of Bezier control points.

Definition at line 120 of file Bezier.C.

References nBezier_.

◆ dxidXj()

PtrList< pointTensorField > & dxidXj ( )

dx/db tensor for all control points

Definition at line 126 of file Bezier.C.

References dxidXj_.

◆ confineXmovement()

const boolList & confineXmovement ( ) const

Confine x movement.

Definition at line 132 of file Bezier.C.

References confineXmovement_.

◆ confineYmovement()

const boolList & confineYmovement ( ) const

Confine y movement.

Definition at line 138 of file Bezier.C.

References confineYmovement_.

◆ confineZmovement()

const boolList & confineZmovement ( ) const

Confine z movement.

Definition at line 144 of file Bezier.C.

References confineZmovement_.

◆ confineMovement()

const boolListList & confineMovement ( ) const

Info about confining movement in all directions.

Definition at line 150 of file Bezier.C.

References confineMovement_.

◆ dndbBasedSensitivities() [1/2]

tmp< tensorField > dndbBasedSensitivities ( const label patchI,
const label cpI,
bool returnDimensionedNormalSens = true ) const

Compute derivative of the normal vector for a Bezier parameterized patch.

Definition at line 156 of file Bezier.C.

References dxidXj_, forAll, deltaBoundary::makeFaceCentresAndAreas_d(), mesh_, tmp< T >::New(), face::points(), UList< T >::size(), polyPatch::start(), and Foam::Zero.

Here is the call graph for this function:

◆ dndbBasedSensitivities() [2/2]

tmp< vectorField > dndbBasedSensitivities ( const label patchI,
const label cpI,
const label idir,
bool returnDimensionedNormalSens = true ) const

Compute derivative of the normal vector for a Bezier parameterized patch wrt a given component (direction) of the Bezier control point.

Definition at line 212 of file Bezier.C.

References dxidXj_, forAll, deltaBoundary::makeFaceCentresAndAreas_d(), mesh_, tmp< T >::New(), face::points(), UList< T >::size(), polyPatch::start(), Foam::unzipRow(), and Foam::Zero.

Here is the call graph for this function:

◆ dxdbFace() [1/2]

tmp< tensorField > dxdbFace ( const label patchI,
const label cpI,
bool useChainRule = true ) const

dxdb tensor for a Bezier parameterized patch

Definition at line 271 of file Bezier.C.

References dxdbFace(), dxidXj_, forAll, deltaBoundary::makeFaceCentresAndAreas_d(), mesh_, tmp< T >::New(), face::points(), PrimitivePatchInterpolation< Patch >::pointToFaceInterpolate(), UList< T >::size(), and Foam::Zero.

Referenced by dxdbFace(), and dxdbFace().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ dxdbFace() [2/2]

tmp< vectorField > dxdbFace ( const label patchI,
const label cpI,
const label idir,
bool useChainRule = true ) const

dxdb vector for a Bezier parameterized patch and a specific control point component

Definition at line 323 of file Bezier.C.

References Foam::component(), Field< Type >::component(), dxdbFace(), dxidXj_, forAll, deltaBoundary::makeFaceCentresAndAreas_d(), mesh_, tmp< T >::New(), face::points(), PrimitivePatchInterpolation< Patch >::pointToFaceInterpolate(), Field< Type >::replace(), UList< T >::size(), and Foam::Zero.

Here is the call graph for this function:

◆ facePoints_d() [1/2]

tensorField facePoints_d ( const label globalFaceI,
const label cpI ) const

For a given (global) face ID, return the change of the face points.

Definition at line 385 of file Bezier.C.

References dxidXj_, forAll, mesh_, UList< T >::size(), and Foam::Zero.

Here is the call graph for this function:

◆ facePoints_d() [2/2]

vectorField facePoints_d ( const label globalFaceI,
const label cpI,
const label idir ) const

For a given (global) face ID, return the change of the face points if a given component of the CP changes.

Definition at line 401 of file Bezier.C.

References VectorSpace< Form, Cmpt, Ncmpts >::component(), dxidXj_, forAll, mesh_, UList< T >::size(), and Foam::Zero.

Here is the call graph for this function:

◆ getActiveDesignVariables()

const labelList & getActiveDesignVariables ( ) const

Return active design variables.

Definition at line 421 of file Bezier.C.

References activeDesignVariables_.

Member Data Documentation

◆ mesh_

const fvMesh& mesh_
protected

◆ dict_

const dictionary& dict_
protected

Definition at line 76 of file Bezier.H.

Referenced by Bezier().

◆ nBezier_

label nBezier_
protected

Definition at line 78 of file Bezier.H.

Referenced by Bezier(), and nBezier().

◆ dxidXj_

◆ confineXmovement_

boolList confineXmovement_
protected

Definition at line 81 of file Bezier.H.

Referenced by Bezier(), and confineXmovement().

◆ confineYmovement_

boolList confineYmovement_
protected

Definition at line 82 of file Bezier.H.

Referenced by Bezier(), and confineYmovement().

◆ confineZmovement_

boolList confineZmovement_
protected

Definition at line 83 of file Bezier.H.

Referenced by Bezier(), and confineZmovement().

◆ confineMovement_

boolListList confineMovement_
protected

Definition at line 84 of file Bezier.H.

Referenced by Bezier(), and confineMovement().

◆ activeDesignVariables_

labelList activeDesignVariables_
protected

Definition at line 85 of file Bezier.H.

Referenced by Bezier(), and getActiveDesignVariables().


The documentation for this class was generated from the following files:
  • src/optimisation/adjointOptimisation/adjoint/parameterization/Bezier/Bezier.H
  • src/optimisation/adjointOptimisation/adjoint/parameterization/Bezier/Bezier.C