Calculation of adjoint based sensitivities for Bezier control points. More...
#include <Bezier.H>

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 boolList & | confineXmovement () const |
| Confine x movement. | |
| const boolList & | confineYmovement () const |
| Confine y movement. | |
| const boolList & | confineZmovement () const |
| Confine z movement. | |
| const boolListList & | confineMovement () const |
| Info about confining movement in all directions. | |
| tmp< tensorField > | dndbBasedSensitivities (const label patchI, const label cpI, bool returnDimensionedNormalSens=true) const |
| Compute derivative of the normal vector for a Bezier parameterized patch. | |
| 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. | |
| tmp< tensorField > | dxdbFace (const label patchI, const label cpI, bool useChainRule=true) const |
| dxdb tensor for a Bezier parameterized patch | |
| 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 | |
| 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 labelList & | getActiveDesignVariables () const |
| Return active design variables. | |
Protected Attributes | |
| const fvMesh & | mesh_ |
| const dictionary & | dict_ |
| label | nBezier_ |
| PtrList< pointTensorField > | dxidXj_ |
| boolList | confineXmovement_ |
| boolList | confineYmovement_ |
| boolList | confineZmovement_ |
| boolListList | confineMovement_ |
| labelList | activeDesignVariables_ |
Calculation of adjoint based sensitivities for Bezier control points.
| Bezier | ( | const fvMesh & | mesh, |
| const dictionary & | dict ) |
Construct from components.
Definition at line 40 of file Bezier.C.
References activeDesignVariables_, IOobjectOption::AUTO_WRITE, confineMovement_, confineXmovement_, confineYmovement_, confineZmovement_, dict, dict_, dxidXj_, mesh, mesh_, IOobjectOption::MUST_READ, name, nBezier_, and MeshObject< polyMesh, UpdateableMeshObject, pointMesh >::New().

|
virtualdefault |
Destructor.
| label nBezier | ( | ) | const |
| PtrList< pointTensorField > & dxidXj | ( | ) |
| const boolList & confineXmovement | ( | ) | const |
| const boolList & confineYmovement | ( | ) | const |
| const boolList & confineZmovement | ( | ) | const |
| const boolListList & confineMovement | ( | ) | const |
Info about confining movement in all directions.
Definition at line 150 of file Bezier.C.
References confineMovement_.
| 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.

| 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.

| 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().


| 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.

| 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.

| 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.

| const labelList & getActiveDesignVariables | ( | ) | const |
Return active design variables.
Definition at line 421 of file Bezier.C.
References activeDesignVariables_.
|
protected |
Definition at line 75 of file Bezier.H.
Referenced by Bezier(), dndbBasedSensitivities(), dndbBasedSensitivities(), dxdbFace(), dxdbFace(), facePoints_d(), and facePoints_d().
|
protected |
|
protected |
|
protected |
Definition at line 79 of file Bezier.H.
Referenced by Bezier(), dndbBasedSensitivities(), dndbBasedSensitivities(), dxdbFace(), dxdbFace(), dxidXj(), facePoints_d(), and facePoints_d().
|
protected |
Definition at line 81 of file Bezier.H.
Referenced by Bezier(), and confineXmovement().
|
protected |
Definition at line 82 of file Bezier.H.
Referenced by Bezier(), and confineYmovement().
|
protected |
Definition at line 83 of file Bezier.H.
Referenced by Bezier(), and confineZmovement().
|
protected |
Definition at line 84 of file Bezier.H.
Referenced by Bezier(), and confineMovement().
|
protected |
Definition at line 85 of file Bezier.H.
Referenced by Bezier(), and getActiveDesignVariables().