NURBS3DVolume morpher. Includes support functions for gradient computations Base class providing support for different coordinate systems. More...
Public Member Functions | |
TypeName ("NURBS3DVolume") | |
Runtime type information. More... | |
declareRunTimeSelectionTable (autoPtr, NURBS3DVolume, dictionary,(const dictionary &dict, const fvMesh &mesh, bool computeParamCoors),(dict, mesh, computeParamCoors)) | |
NURBS3DVolume (const dictionary &dict, const fvMesh &mesh, bool computeParamCoors=true) | |
Construct from dictionary. More... | |
NURBS3DVolume (const NURBS3DVolume &) | |
Construct as copy. More... | |
virtual | ~NURBS3DVolume ()=default |
Destructor. More... | |
vector | volumeDerivativeU (const scalar u, const scalar v, const scalar w) const |
Volume point derivative wrt u at point u,v,w. More... | |
vector | volumeDerivativeV (const scalar u, const scalar v, const scalar w) const |
Volume point derivative wrt v at point u,v,w. More... | |
vector | volumeDerivativeW (const scalar u, const scalar v, const scalar w) const |
Volume point derivative wrt w at point u,v,w. More... | |
tensor | JacobianUVW (const vector &u) const |
Jacobian matrix wrt to the volume parametric coordinates. More... | |
scalar | volumeDerivativeCP (const vector &u, const label cpI) const |
Volume point derivative wrt to control point cpI at point u,v,w. More... | |
vectorField | computeControlPointSensitivities (const pointVectorField &pointSens, const labelList &sensitivityPatchIDs) |
vectorField | computeControlPointSensitivities (const volVectorField &faceSens, const labelList &sensitivityPatchIDs) |
vectorField | computeControlPointSensitivities (const boundaryVectorField &faceSens, const labelList &sensitivityPatchIDs) |
vector | computeControlPointSensitivities (const vectorField &faceSens, const label patchI, const label cpI) |
tmp< tensorField > | dndbBasedSensitivities (const label patchI, const label cpI, bool DimensionedNormalSens=true) |
tmp< tensorField > | patchDxDb (const label patchI, const label cpI) |
Get patch dx/db. More... | |
tmp< tensorField > | patchDxDbFace (const label patchI, const label cpI) |
Get patch dx/db. More... | |
tmp< vectorField > | coordinates (const vectorField &uVector) const |
vector | coordinates (const vector &uVector) const |
The same, for a specific point. More... | |
tmp< vectorField > | computeNewPoints (const vectorField &controlPointsMovement) |
Mesh movement based on given control point movement. More... | |
tmp< vectorField > | computeNewBoundaryPoints (const vectorField &controlPointsMovement, const labelList &patchesToBeMoved, const bool moveCPs=true) |
Boundary mesh movement based on given control point movement. More... | |
label | getCPID (const label i, const label j, const label k) const |
Get control point ID from its I-J-K coordinates. More... | |
void | setControlPoints (const vectorField &newCps) |
Set new control points. More... | |
void | boundControlPointMovement (vectorField &controlPointsMovement) const |
scalar | computeMaxBoundaryDisplacement (const vectorField &controlPointsMovement, const labelList &patchesToBeMoved) |
Compute max. displacement at the boundary. More... | |
tmp< vectorField > | getPointsInBox () |
Get mesh points that reside within the control points box. More... | |
const labelList & | getMap () |
Get map of points in box to mesh points. More... | |
const labelList & | getReverseMap () |
const pointVectorField & | getParametricCoordinates () |
Get parametric coordinates. More... | |
tmp< pointTensorField > | getDxDb (const label cpI) |
Get dxCartesiandb for a certain control point. More... | |
tmp< volTensorField > | getDxCellsDb (const label cpI) |
Get dxCartesiandb for a certain control point on cells. More... | |
label | nUSymmetry () const |
Get number of variables if CPs are moved symmetrically in U. More... | |
label | nVSymmetry () const |
Get number of variables if CPs are moved symmetrically in V. More... | |
label | nWSymmetry () const |
Get number of variables if CPs are moved symmetrically in W. More... | |
Vector< label > | nSymmetry () const |
const word & | name () const |
Get box name. More... | |
const boolList & | getActiveCPs () const |
Which control points are active? More... | |
const boolList & | getActiveDesignVariables () const |
Which design variables are active? More... | |
const vectorField & | getControlPoints () const |
Get control points. More... | |
vectorField & | getControlPoints () |
bool | confineUMovement () const |
Get confine movements. More... | |
bool | confineVMovement () const |
bool | confineWMovement () const |
const NURBSbasis & | basisU () const |
Get basis functions. More... | |
const NURBSbasis & | basisV () const |
const NURBSbasis & | basisW () const |
Vector< label > | nCPsPerDirection () const |
Get number of control points per direction. More... | |
const fvMesh & | mesh () const |
Get mesh. More... | |
const dictionary & | dict () const |
Get dictionary. More... | |
void | writeCps (const fileName &="cpsFile", const bool transform=true) const |
void | writeParamCoordinates () const |
Write parametric coordinates. More... | |
virtual bool | writeData (Ostream &os) const |
Write the control points to support restart. More... | |
Public Member Functions inherited from localIOdictionary | |
localIOdictionary (const IOobject &io, const dictionary *fallback=nullptr) | |
localIOdictionary (const IOobject &io, const dictionary &dict) | |
Construct given an IOobject and fallback dictionary content. More... | |
localIOdictionary (const IOobject &io, const word &wantedType, const dictionary *fallback=nullptr) | |
localIOdictionary (const IOobject &io, Istream &is) | |
Construct given an IOobject and Istream. More... | |
virtual | ~localIOdictionary ()=default |
Destructor. More... | |
virtual bool | global () const |
Is object global. More... | |
virtual fileName | filePath () const |
Return complete path + object name if the file exists. More... | |
Public Member Functions inherited from baseIOdictionary | |
TypeName ("dictionary") | |
Declare type-name, virtual type (with debug switch) More... | |
baseIOdictionary (const baseIOdictionary &)=default | |
Copy construct. More... | |
baseIOdictionary (baseIOdictionary &&)=default | |
Move construct. More... | |
virtual | ~baseIOdictionary ()=default |
Destructor. More... | |
baseIOdictionary (const IOobject &io, const dictionary *fallback=nullptr) | |
baseIOdictionary (const IOobject &io, const dictionary &dict) | |
baseIOdictionary (const IOobject &io, Istream &is) | |
Construct given an IOobject and Istream (ununsed) More... | |
virtual fileName | filePath () const =0 |
const word & | name () const |
virtual bool | readData (Istream &) |
The readData function required by regIOobject read operation. More... | |
virtual bool | writeData (Ostream &) const |
The writeData function required by regIOobject write operation. More... | |
virtual bool | global () const =0 |
Is object global. More... | |
void | operator= (const baseIOdictionary &rhs) |
Copy assignment of dictionary entries (leave regIOobject untouched) More... | |
void | operator= (const dictionary &rhs) |
Copy assignment of dictionary entries. More... | |
Public Member Functions inherited from regIOobject | |
TypeName ("regIOobject") | |
Runtime type information. More... | |
regIOobject (const IOobject &io, const bool isTimeObject=false) | |
regIOobject (const regIOobject &rio) | |
Copy construct. More... | |
regIOobject (const regIOobject &rio, bool registerCopy) | |
regIOobject (const word &newName, const regIOobject &, bool registerCopy) | |
regIOobject (const IOobject &io, const regIOobject &rio) | |
Copy construct with new IO parameters. More... | |
virtual | ~regIOobject () |
Destructor. More... | |
bool | checkIn () |
Add object to registry, if not already registered. More... | |
bool | checkOut () |
Remove all file watches and remove object from registry. More... | |
virtual void | addWatch () |
Add file watch on object (if registered and READ_IF_MODIFIED) More... | |
bool | registered () const noexcept |
bool | ownedByRegistry () const noexcept |
Is this object owned by the registry? More... | |
bool | store () |
void | release (const bool unregister=false) noexcept |
Set object as not ownedByRegistry. More... | |
label | eventNo () const noexcept |
Event number at last update. More... | |
label & | eventNo () noexcept |
Event number at last update. More... | |
bool | upToDate (const regIOobject &) const |
Return true if up-to-date with respect to given object. More... | |
bool | upToDate (const regIOobject &, const regIOobject &) const |
Return true if up-to-date with respect to given objects. More... | |
bool | upToDate (const regIOobject &, const regIOobject &, const regIOobject &) const |
Return true if up-to-date with respect to given objects. More... | |
bool | upToDate (const regIOobject &, const regIOobject &, const regIOobject &, const regIOobject &) const |
Return true if up-to-date with respect to given objects. More... | |
void | setUpToDate () |
Set as up-to-date. More... | |
virtual void | rename (const word &newName) |
Rename. More... | |
const dictionary * | findMetaData () const noexcept |
Return pointer to meta-data or nullptr. More... | |
dictionary & | getMetaData () noexcept |
Get or create meta-data. More... | |
void | removeMetaData () |
Remove meta-data. More... | |
virtual void | updateMetaData () |
Update internal meta-data (eg, prior to writing) More... | |
virtual fileName | filePath () const |
Return complete path + object name if the file exists. More... | |
bool | headerOk () |
Read and check header info. Does not check the headerClassName. More... | |
Istream & | readStream (const word &, const bool valid=true) |
Return Istream and check object type against that given. More... | |
void | close () |
Close Istream. More... | |
virtual bool | readData (Istream &) |
Virtual readData function. More... | |
virtual bool | read () |
Read object. More... | |
virtual label | addWatch (const fileName &) |
Add file watch for fileName on object if not yet watched. More... | |
const labelList & | watchIndices () const noexcept |
Read access to file-monitoring handles. More... | |
labelList & | watchIndices () noexcept |
Write access to file-monitoring handles. More... | |
virtual bool | modified () const |
virtual bool | readIfModified () |
Read object if modified (as set by call to modified) More... | |
virtual bool | writeData (Ostream &) const =0 |
Pure virtual writeData function. More... | |
virtual bool | writeObject (IOstreamOption streamOpt, const bool valid) const |
Write using stream options. More... | |
virtual bool | write (const bool valid=true) const |
Write using setting from DB. More... | |
virtual bool | global () const |
Is object global. More... | |
void | operator= (const IOobject &io) |
Copy assignment. More... | |
virtual bool | writeObject (IOstreamOption::streamFormat fmt, IOstreamOption::versionNumber ver, IOstreamOption::compressionType comp, const bool valid) const |
Write using given format, version and compression. More... | |
Public Member Functions inherited from IOobject | |
TypeName ("IOobject") | |
Declare type-name, virtual type (with debug switch) More... | |
IOobject (const IOobject &)=default | |
Copy construct. More... | |
virtual | ~IOobject ()=default |
Destructor. More... | |
IOobject (const word &name, const fileName &instance, const objectRegistry ®istry, readOption rOpt=NO_READ, writeOption wOpt=NO_WRITE, bool registerObject=true, bool globalObject=false) | |
Construct from name, instance, registry, io options. More... | |
IOobject (const word &name, const fileName &instance, const fileName &local, const objectRegistry ®istry, readOption rOpt=NO_READ, writeOption wOpt=NO_WRITE, bool registerObject=true, bool globalObject=false) | |
Construct from name, instance, local, registry, io options. More... | |
IOobject (const fileName &path, const objectRegistry ®istry, readOption rOpt=NO_READ, writeOption wOpt=NO_WRITE, bool registerObject=true, bool globalObject=false) | |
Construct from path, registry, io options. More... | |
IOobject (const IOobject &io, const objectRegistry ®istry) | |
Copy construct, resetting registry. More... | |
IOobject (const IOobject &io, const word &name) | |
Copy construct, resetting name. More... | |
IOobject (const IOobject &io, const word &name, const fileName &local) | |
Copy construct, resetting name and local component. More... | |
IOobject (const IOobject &io, readOption rOpt, writeOption wOpt) | |
Copy construct, resetting read/write options. More... | |
autoPtr< IOobject > | clone () const |
Clone. More... | |
autoPtr< IOobject > | clone (const objectRegistry ®istry) const |
Clone resetting registry. More... | |
const objectRegistry & | db () const noexcept |
Return the local objectRegistry. More... | |
const Time & | time () const |
Return Time associated with the objectRegistry. More... | |
const word & | name () const noexcept |
Return the object name. More... | |
const word & | headerClassName () const noexcept |
Return name of the class name read from header. More... | |
word & | headerClassName () noexcept |
Return non-constant access to the class name read from header. More... | |
const string & | note () const noexcept |
Return the optional note. More... | |
string & | note () noexcept |
Modifiable access to the optional note. More... | |
virtual void | rename (const word &newName) |
Rename the object. More... | |
bool | registerObject () const noexcept |
Should object created with this IOobject be registered? More... | |
bool | registerObject (bool on) noexcept |
Change registration preference, return previous value. More... | |
bool | globalObject () const noexcept |
Is object same for all processors? More... | |
bool | globalObject (bool on) noexcept |
Change global-object status, return previous value. More... | |
unsigned | labelByteSize () const noexcept |
The sizeof (label) in bytes, possibly read from the header. More... | |
unsigned | scalarByteSize () const noexcept |
The sizeof (scalar) in bytes, possibly read from the header. More... | |
bool | hasHeaderClass () const noexcept |
True if headerClassName() is non-empty (after reading) More... | |
template<class Type > | |
bool | isHeaderClass () const |
Check if headerClassName() equals Type::typeName. More... | |
template<class Type > | |
bool | isHeaderClassName () const |
Same as isHeaderClass() More... | |
virtual const dictionary * | findMetaData () const noexcept |
Return pointer to meta-data (if any) or nullptr. More... | |
readOption | readOpt () const noexcept |
The read option. More... | |
readOption | readOpt (readOption opt) noexcept |
Change the read option, return previous value. More... | |
writeOption | writeOpt () const noexcept |
The write option. More... | |
writeOption | writeOpt (writeOption opt) noexcept |
Change the write option, return previous value. More... | |
word | group () const |
Return group (extension part of name) More... | |
word | member () const |
Return member (name without the extension) More... | |
const fileName & | rootPath () const |
Return the Time::rootPath() More... | |
const fileName & | caseName () const |
Return the Time::caseName() More... | |
const fileName & | instance () const noexcept |
Read access to instance path component. More... | |
fileName & | instance () noexcept |
Write access to instance path component. More... | |
const fileName & | local () const noexcept |
Read access to local path component. More... | |
fileName | path () const |
The complete path. More... | |
fileName | path (const word &instance, const fileName &local=fileName::null) const |
The complete path with alternative instance and local. More... | |
fileName | objectPath () const |
The complete path + object name. More... | |
fileName | objectRelPath () const |
The object path relative to the root. More... | |
fileName | localFilePath (const word &typeName, const bool search=true) const |
Helper for filePath that searches locally. More... | |
fileName | globalFilePath (const word &typeName, const bool search=true) const |
Helper for filePath that searches up if in parallel. More... | |
IOstreamOption | parseHeader (const dictionary &headerDict) |
bool | readHeader (Istream &is) |
bool | readHeader (dictionary &headerDict, Istream &is) |
template<class Type > | |
bool | typeHeaderOk (const bool checkType=true, const bool search=true, const bool verbose=true) |
Read header (uses typeFilePath to find file) and check its info. More... | |
template<class Type > | |
void | warnNoRereading () const |
Helper: warn that type does not support re-reading. More... | |
bool | writeHeader (Ostream &os) const |
Write header with current type() More... | |
bool | writeHeader (Ostream &os, const word &objectType) const |
Write header with override of type. More... | |
void | writeHeader (dictionary &dict, IOstreamOption streamOpt) const |
void | writeHeader (dictionary &dict, const word &objectType, IOstreamOption streamOpt) const |
bool | good () const noexcept |
Did last readHeader() succeed? More... | |
bool | bad () const noexcept |
Did last readHeader() fail? More... | |
InfoProxy< IOobject > | info () const |
Return info proxy, for printing information to a stream. More... | |
void | operator= (const IOobject &io) |
Copy assignment, copies all values (except the registry) More... | |
readOption & | readOpt () noexcept |
Access to the read option. More... | |
writeOption & | writeOpt () noexcept |
Access to the write option. More... | |
bool & | registerObject () noexcept |
Access to the register object option. More... | |
bool & | globalObject () noexcept |
Access to the global object option. More... | |
template<> | |
bool | isHeaderClass () const |
Specialization for void always returns true (no headerClassName check). More... | |
template<class StringType > | |
Foam::word | groupName (StringType base, const word &group) |
Public Member Functions inherited from dictionary | |
ClassName ("dictionary") | |
dictionary () | |
Default construct, a top-level empty dictionary. More... | |
dictionary (const fileName &name) | |
Construct top-level empty dictionary with given name. More... | |
dictionary (const fileName &name, const dictionary &parentDict, Istream &is, bool keepHeader=false) | |
dictionary (Istream &is) | |
dictionary (Istream &is, bool keepHeader) | |
dictionary (const dictionary &parentDict, const dictionary &dict) | |
Copy construct given the parent dictionary. More... | |
dictionary (const dictionary &dict) | |
Copy construct top-level dictionary. More... | |
dictionary (const dictionary *dict) | |
Construct top-level dictionary as copy from pointer to dictionary. More... | |
dictionary (const dictionary &parentDict, dictionary &&dict) | |
Move construct for given parent dictionary. More... | |
dictionary (dictionary &&dict) | |
Move construct top-level dictionary. More... | |
autoPtr< dictionary > | clone () const |
Construct and return clone. More... | |
virtual | ~dictionary () |
Destructor. More... | |
const fileName & | name () const noexcept |
The dictionary name. More... | |
fileName & | name () noexcept |
The dictionary name for modification (use with caution). More... | |
word | dictName () const |
The local dictionary name (final part of scoped name) More... | |
fileName | relativeName (const bool caseTag=false) const |
The dictionary name relative to the case. More... | |
bool | isNullDict () const noexcept |
The dictionary is actually dictionary::null (root dictionary) More... | |
const dictionary & | parent () const noexcept |
Return the parent dictionary. More... | |
const dictionary & | topDict () const |
Return the top of the tree. More... | |
label | startLineNumber () const |
Return line number of first token in dictionary. More... | |
label | endLineNumber () const |
Return line number of last token in dictionary. More... | |
SHA1Digest | digest () const |
Return the SHA1 digest of the dictionary contents. More... | |
tokenList | tokens () const |
Return the dictionary as a list of tokens. More... | |
bool | found (const word &keyword, enum keyType::option matchOpt=keyType::REGEX) const |
Search for an entry (const access) with the given keyword. More... | |
entry * | findEntry (const word &keyword, enum keyType::option matchOpt=keyType::REGEX) |
Find for an entry (non-const access) with the given keyword. More... | |
const entry * | findEntry (const word &keyword, enum keyType::option matchOpt=keyType::REGEX) const |
Find an entry (const access) with the given keyword. More... | |
const entry * | findScoped (const word &keyword, enum keyType::option matchOpt=keyType::REGEX) const |
Search for a scoped entry (const access) with the given keyword. More... | |
dictionary * | findDict (const word &keyword, enum keyType::option matchOpt=keyType::REGEX) |
Find and return a sub-dictionary pointer if present. More... | |
const dictionary * | findDict (const word &keyword, enum keyType::option matchOpt=keyType::REGEX) const |
Find and return a sub-dictionary pointer if present. More... | |
const entry & | lookupEntry (const word &keyword, enum keyType::option matchOpt) const |
Search for an entry (const access) with the given keyword. More... | |
ITstream & | lookup (const word &keyword, enum keyType::option matchOpt=keyType::REGEX) const |
template<class T > | |
T | get (const word &keyword, enum keyType::option matchOpt=keyType::REGEX) const |
template<class T > | |
T | getOrDefault (const word &keyword, const T &deflt, enum keyType::option matchOpt=keyType::REGEX) const |
template<class T > | |
T | getOrAdd (const word &keyword, const T &deflt, enum keyType::option matchOpt=keyType::REGEX) |
template<class T > | |
bool | readEntry (const word &keyword, T &val, enum keyType::option matchOpt=keyType::REGEX, bool mandatory=true) const |
template<class T > | |
bool | readIfPresent (const word &keyword, T &val, enum keyType::option matchOpt=keyType::REGEX) const |
template<class T , class Predicate > | |
T | getCheck (const word &keyword, const Predicate &pred, enum keyType::option matchOpt=keyType::REGEX) const |
template<class T , class Predicate > | |
T | getCheckOrDefault (const word &keyword, const T &deflt, const Predicate &pred, enum keyType::option matchOpt=keyType::REGEX) const |
template<class T , class Predicate > | |
T | getCheckOrAdd (const word &keyword, const T &deflt, const Predicate &pred, enum keyType::option matchOpt=keyType::REGEX) |
template<class T , class Predicate > | |
bool | readCheck (const word &keyword, T &val, const Predicate &pred, enum keyType::option matchOpt=keyType::REGEX, bool mandatory=true) const |
template<class T , class Predicate > | |
bool | readCheckIfPresent (const word &keyword, T &val, const Predicate &pred, enum keyType::option matchOpt=keyType::REGEX) const |
bool | isDict (const word &keyword, enum keyType::option matchOpt=keyType::REGEX) const |
Check if entry is found and is a sub-dictionary. More... | |
const dictionary & | subDict (const word &keyword, enum keyType::option matchOpt=keyType::REGEX) const |
Find and return a sub-dictionary. More... | |
dictionary & | subDict (const word &keyword, enum keyType::option matchOpt=keyType::REGEX) |
Find and return a sub-dictionary for manipulation. More... | |
dictionary & | subDictOrAdd (const word &keyword, enum keyType::option matchOpt=keyType::REGEX) |
Find and return a sub-dictionary for manipulation. More... | |
dictionary | subOrEmptyDict (const word &keyword, enum keyType::option matchOpt=keyType::REGEX, const bool mandatory=false) const |
const dictionary & | optionalSubDict (const word &keyword, enum keyType::option matchOpt=keyType::REGEX) const |
Find and return a sub-dictionary, otherwise return this dictionary. More... | |
wordList | toc () const |
Return the table of contents. More... | |
wordList | sortedToc () const |
Return the sorted table of contents. More... | |
template<class Compare > | |
wordList | sortedToc (const Compare &comp) const |
Return table of contents sorted using the specified comparator. More... | |
List< keyType > | keys (bool patterns=false) const |
Return the list of available keys or patterns. More... | |
bool | substituteKeyword (const word &keyword, bool mergeEntry=false) |
Substitute the given keyword (which is prefixed by '$') More... | |
bool | substituteScopedKeyword (const word &keyword, bool mergeEntry=false) |
Substitute the given scoped keyword (which is prefixed by '$') More... | |
entry * | add (entry *entryPtr, bool mergeEntry=false) |
Add a new entry. More... | |
entry * | add (const entry &e, bool mergeEntry=false) |
Add an entry. More... | |
entry * | add (const keyType &k, const word &v, bool overwrite=false) |
Add a word entry. More... | |
entry * | add (const keyType &k, const string &v, bool overwrite=false) |
Add a string entry. More... | |
entry * | add (const keyType &k, const label v, bool overwrite=false) |
Add a label entry. More... | |
entry * | add (const keyType &k, const scalar v, bool overwrite=false) |
Add a scalar entry. More... | |
entry * | add (const keyType &k, const dictionary &d, bool mergeEntry=false) |
Add a dictionary entry. More... | |
template<class T > | |
entry * | add (const keyType &k, const T &v, bool overwrite=false) |
Add a T entry. More... | |
entry * | set (entry *entryPtr) |
Assign a new entry, overwriting any existing entry. More... | |
entry * | set (const entry &e) |
Assign a new entry, overwriting any existing entry. More... | |
entry * | set (const keyType &k, const dictionary &v) |
Assign a dictionary entry, overwriting any existing entry. More... | |
template<class T > | |
entry * | set (const keyType &k, const T &v) |
Assign a T entry, overwriting any existing entry. More... | |
bool | remove (const word &keyword) |
Remove an entry specified by keyword. More... | |
bool | changeKeyword (const keyType &oldKeyword, const keyType &newKeyword, bool overwrite=false) |
Change the keyword for an entry,. More... | |
bool | merge (const dictionary &dict) |
Merge entries from the given dictionary. More... | |
void | clear () |
Clear the dictionary. More... | |
void | transfer (dictionary &dict) |
Transfer the contents of the argument and annul the argument. More... | |
void | checkITstream (const ITstream &is, const word &keyword) const |
bool | read (Istream &is) |
Read dictionary from Istream. Discards the header. More... | |
bool | read (Istream &is, bool keepHeader) |
Read dictionary from Istream, optionally keeping the header. More... | |
void | writeEntry (Ostream &os) const |
Write sub-dictionary with its dictName as its header. More... | |
void | writeEntry (const keyType &keyword, Ostream &os) const |
Write sub-dictionary with the keyword as its header. More... | |
void | writeEntries (Ostream &os, const bool extraNewLine=false) const |
Write dictionary entries. More... | |
void | write (Ostream &os, const bool subDict=true) const |
Write dictionary, normally with sub-dictionary formatting. More... | |
const_searcher | csearch (const word &keyword, enum keyType::option matchOpt=keyType::REGEX) const |
Search dictionary for given keyword. More... | |
const_searcher | search (const word &keyword, enum keyType::option matchOpt=keyType::REGEX) const |
Search dictionary for given keyword. More... | |
searcher | search (const word &keyword, enum keyType::option matchOpt=keyType::REGEX) |
Search dictionary for given keyword. More... | |
const_searcher | csearchScoped (const word &keyword, enum keyType::option matchOpt) const |
Search using scoping. More... | |
const_searcher | searchScoped (const word &keyword, enum keyType::option matchOpt) const |
Search using dot or slash scoping. More... | |
searcher | searchScoped (const word &keyword, enum keyType::option matchOpt) |
Search using dot or slash scoping. More... | |
const dictionary * | cfindScopedDict (const fileName &dictPath) const |
Locate a sub-dictionary using slash-scoping. More... | |
const dictionary * | findScopedDict (const fileName &dictPath) const |
Locate a sub-dictionary using slash-scoping. More... | |
dictionary * | findScopedDict (const fileName &dictPath) |
Locate a sub-dictionary using slash-scoping. More... | |
dictionary * | makeScopedDict (const fileName &dictPath) |
Locate existing or create sub-dictionary using slash-scoping. More... | |
const_searcher | csearchCompat (const word &keyword, std::initializer_list< std::pair< const char *, int > > compat, enum keyType::option matchOpt=keyType::REGEX) const |
Search dictionary for given keyword and any compatibility names. More... | |
bool | foundCompat (const word &keyword, std::initializer_list< std::pair< const char *, int > > compat, enum keyType::option matchOpt=keyType::REGEX) const |
Search dictionary for given keyword and any compatibility names. More... | |
const entry * | findCompat (const word &keyword, std::initializer_list< std::pair< const char *, int > > compat, enum keyType::option matchOpt) const |
const entry & | lookupEntryCompat (const word &keyword, std::initializer_list< std::pair< const char *, int > > compat, enum keyType::option matchOpt) const |
ITstream & | lookupCompat (const word &keyword, std::initializer_list< std::pair< const char *, int > > compat, enum keyType::option matchOpt=keyType::REGEX) const |
template<class T > | |
T | getCompat (const word &keyword, std::initializer_list< std::pair< const char *, int > > compat, enum keyType::option matchOpt=keyType::REGEX) const |
template<class T > | |
T | getOrDefaultCompat (const word &keyword, std::initializer_list< std::pair< const char *, int > > compat, const T &deflt, enum keyType::option matchOpt=keyType::REGEX) const |
template<class T > | |
bool | readCompat (const word &keyword, std::initializer_list< std::pair< const char *, int > > compat, T &val, enum keyType::option matchOpt=keyType::REGEX, bool mandatory=true) const |
template<class T > | |
bool | readIfPresentCompat (const word &keyword, std::initializer_list< std::pair< const char *, int > > compat, T &val, enum keyType::option matchOpt=keyType::REGEX) const |
void | operator= (const dictionary &rhs) |
Copy assignment. More... | |
void | operator+= (const dictionary &rhs) |
Include entries from the given dictionary. More... | |
void | operator|= (const dictionary &rhs) |
Conditionally include entries from the given dictionary. More... | |
void | operator<<= (const dictionary &rhs) |
Unconditionally include entries from the given dictionary. More... | |
template<class T > | |
T | lookupOrDefault (const word &keyword, const T &deflt, enum keyType::option matchOpt=keyType::REGEX) const |
template<class T > | |
T | lookupOrAddDefault (const word &keyword, const T &deflt, enum keyType::option matchOpt=keyType::REGEX) |
template<class T > | |
T | lookupOrDefaultCompat (const word &keyword, std::initializer_list< std::pair< const char *, int > > compat, const T &deflt, enum keyType::option matchOpt=keyType::REGEX) const |
ITstream & | operator[] (const word &keyword) const |
Deprecated(2018-07) find and return an entry data stream. More... | |
bool | found (const word &keyword, bool recursive, bool patternMatch=true) const |
Deprecated(2018-10) More... | |
entry * | lookupEntryPtr (const word &keyword, bool recursive, bool patternMatch) |
Deprecated(2018-10) More... | |
const entry * | lookupEntryPtr (const word &keyword, bool recursive, bool patternMatch) const |
Deprecated(2018-10) More... | |
const entry * | lookupScopedEntryPtr (const word &keyword, bool recursive, bool patternMatch) const |
Deprecated(2018-10) More... | |
const dictionary * | subDictPtr (const word &keyword) const |
Deprecated(2018-10) More... | |
dictionary * | subDictPtr (const word &keyword) |
const entry & | lookupEntry (const word &keyword, bool recursive, bool patternMatch) const |
Deprecated(2018-10) More... | |
ITstream & | lookup (const word &keyword, bool recursive, bool patternMatch=true) const |
Deprecated(2018-10) More... | |
template<class T > | |
T | lookupOrDefault (const word &keyword, const T &deflt, bool recursive, bool patternMatch=true) const |
Deprecated(2018-10) More... | |
template<class T > | |
T | lookupOrAddDefault (const word &keyword, const T &deflt, bool recursive, bool patternMatch=true) |
Deprecated(2018-10) More... | |
template<class T > | |
bool | readIfPresent (const word &keyword, T &val, bool recursive, bool patternMatch=true) const |
Deprecated(2018-10) More... | |
template<class T > | |
T | lookupType (const word &keyword, bool recursive=false, bool patternMatch=true) const |
Deprecated(2018-10) find and return a T. More... | |
bool | getBool (const word &keyword, enum keyType::option matchOpt=keyType::REGEX) const |
Same as get< bool >(const word&, keyType::option) More... | |
label | getLabel (const word &keyword, enum keyType::option matchOpt=keyType::REGEX) const |
Same as get< label >(const word&, keyType::option) More... | |
scalar | getScalar (const word &keyword, enum keyType::option matchOpt=keyType::REGEX) const |
Same as get< scalar >(const word&, keyType::option) More... | |
string | getString (const word &keyword, enum keyType::option matchOpt=keyType::REGEX) const |
Same as get< string >(const word&, keyType::option) More... | |
word | getWord (const word &keyword, enum keyType::option matchOpt=keyType::REGEX) const |
Same as get< word >(const word&, keyType::option) More... | |
fileName | getFileName (const word &keyword, enum keyType::option matchOpt=keyType::REGEX) const |
Same as get< fileName >(const word&, keyType::option) More... | |
template<class Compare > | |
Foam::wordList | sortedToc (const Compare &comp) const |
template<class T > | |
Foam::entry * | add (const keyType &k, const T &v, bool overwrite) |
template<class T > | |
Foam::entry * | set (const keyType &k, const T &v) |
Public Member Functions inherited from ILList< LListBase, T > | |
ILList ()=default | |
Default construct. More... | |
ILList (T *item) | |
Construct and add initial item pointer. More... | |
ILList (Istream &is) | |
Construct from Istream. More... | |
ILList (const ILList< LListBase, T > &lst) | |
Copy construct using the 'clone()' method for each element. More... | |
ILList (ILList< LListBase, T > &&lst) | |
Move construct. More... | |
template<class CloneArg > | |
ILList (const ILList< LListBase, T > &lst, const CloneArg &cloneArg) | |
Copy constructor with additional argument for clone 'clone()'. More... | |
template<class INew > | |
ILList (Istream &is, const INew &inew) | |
Construct from Istream using given Istream constructor class. More... | |
~ILList () | |
Destructor. More... | |
bool | eraseHead () |
Remove the head element specified from the list and delete it. More... | |
bool | erase (T *item) |
Remove the specified element from the list and delete it. More... | |
void | clear () |
Clear the contents of the list. More... | |
void | transfer (ILList< LListBase, T > &lst) |
void | operator= (const ILList< LListBase, T > &lst) |
Copy assignment using the 'clone()' method for each element. More... | |
void | operator= (ILList< LListBase, T > &&lst) |
Move assignment. More... | |
Public Member Functions inherited from UILList< LListBase, T > | |
UILList ()=default | |
Default construct. More... | |
UILList (T *item) | |
Construct and add initial item pointer. More... | |
UILList (const UILList< LListBase, T > &lst) | |
Construct as copy. More... | |
T * | first () |
The first entry in the list. More... | |
const T * | first () const |
The first entry in the list (const access) More... | |
T * | last () |
The last entry in the list. More... | |
const T * | last () const |
The last entry in the list (const access) More... | |
T * | removeHead () |
Remove and return head. More... | |
T * | remove (T *item) |
Remove and return element. More... | |
T * | remove (iterator &iter) |
Remove and return item specified by iterator. More... | |
void | operator= (const UILList< LListBase, T > &lst) |
Copy assignment. More... | |
bool | operator== (const UILList< LListBase, T > &lst) const |
Equality. True both lists are element-wise equal. More... | |
bool | operator!= (const UILList< LListBase, T > &lst) const |
The opposite of the equality operation. Takes linear time. More... | |
Ostream & | writeList (Ostream &os, const label shortLen=0) const |
Write UILList with line-breaks when length exceeds shortLen. More... | |
iterator | begin () |
Iterator to first item in list with non-const access. More... | |
const_iterator | cbegin () const |
Iterator to first item in list with const access. More... | |
reverse_iterator | rbegin () |
Iterator to last item in list with non-const access. More... | |
const_reverse_iterator | crbegin () const |
Iterator to last item in list with const access. More... | |
const_iterator | begin () const |
Iterator to first item in list with const access. More... | |
const_reverse_iterator | rbegin () const |
Iterator to last item in list with const access. More... | |
const iterator & | end () |
End of list for forward iterators. More... | |
const const_iterator & | cend () const |
End of list for forward iterators. More... | |
const reverse_iterator & | rend () |
End of list for reverse iterators. More... | |
const const_reverse_iterator & | crend () const |
End of list for reverse iterators. More... | |
const const_iterator & | end () const |
End of list for forward iterators. More... | |
const const_reverse_iterator & | rend () const |
End of list for reverse iterators. More... | |
Static Public Member Functions | |
static autoPtr< NURBS3DVolume > | New (const dictionary &dict, const fvMesh &mesh, bool computeParamCoors=true) |
Return a reference to the selected NURBS model. More... | |
Static Public Member Functions inherited from regIOobject | |
template<class Type > | |
static Type & | store (Type *p) |
Transfer pointer ownership to its registry. More... | |
template<class Type > | |
static Type & | store (autoPtr< Type > &ptr) |
Transfer pointer ownership to its registry. More... | |
template<class Type > | |
static Type & | store (autoPtr< Type > &&ptr) |
Transfer pointer ownership to its registry. More... | |
template<class Type > | |
static Type & | store (refPtr< Type > &ptr) |
Transfer pointer ownership to its registry. More... | |
template<class Type > | |
static Type & | store (refPtr< Type > &&ptr) |
Transfer pointer ownership to its registry. More... | |
template<class Type > | |
static Type & | store (tmp< Type > &ptr) |
Transfer pointer ownership to its registry. More... | |
template<class Type > | |
static Type & | store (tmp< Type > &&ptr) |
Transfer pointer ownership to its registry. More... | |
Static Public Member Functions inherited from IOobject | |
static bool | bannerEnabled () noexcept |
Status of output file banner. More... | |
static bool | bannerEnabled (bool on) noexcept |
Enable/disable output file banner. More... | |
static bool | fileNameComponents (const fileName &path, fileName &instance, fileName &local, word &name) |
Split path into instance, local, name components. More... | |
template<class StringType > | |
static word | groupName (StringType base, const word &group) |
Create dot-delimited name.group string. More... | |
static word | group (const word &name) |
Return group (extension part of name) More... | |
static word | member (const word &name) |
Return member (name without the extension) More... | |
static word | scopedName (const std::string &scope, const word &name) |
Create scope:name or scope_name string. More... | |
static IOobject | selectIO (const IOobject &io, const fileName &altFile, const word &ioName="") |
Return the IOobject, but also consider an alternative file name. More... | |
static Ostream & | writeBanner (Ostream &os, const bool noSyntaxHint=false) |
Write the standard OpenFOAM file/dictionary banner. More... | |
static Ostream & | writeDivider (Ostream &os) |
Write the standard file section divider. More... | |
static Ostream & | writeEndDivider (Ostream &os) |
Write the standard end file divider. More... | |
Static Public Member Functions inherited from dictionary | |
static int | reportOptional () noexcept |
Return the state of reporting optional (default) entries. More... | |
static int | reportOptional (const int level) noexcept |
Change the state of reporting optional (default) entries. More... | |
static autoPtr< dictionary > | New (Istream &is) |
Construct top-level dictionary on freestore from Istream. More... | |
Protected Types | |
typedef List< boolVector > | boolVectorList |
Protected Member Functions | |
void | findPointsInBox (const vectorField &meshPoints) |
Find points within control points box. More... | |
void | computeParametricCoordinates (const vectorField &points) |
void | computeParametricCoordinates (tmp< vectorField > tPoints) |
bool | bound (vector &vec, scalar minValue=1e-7, scalar maxValue=0.999999) |
Bound components to certain limits. More... | |
void | determineActiveDesignVariablesAndPoints () |
Create lists with active design variables and control points. More... | |
void | confineBoundaryControlPoints () |
Confine movement in boundary control points if necessary. More... | |
void | continuityRealatedConfinement () |
Confine control point movement to maintain user-defined continuity. More... | |
void | confineControlPointsDirections () |
Confine movement in all control points for user-defined directions. More... | |
void | confineControlPoint (const label cpI) |
Confine all three movements for a prescribed control point. More... | |
void | confineControlPoint (const label cpI, const boolVector &) |
Confine specific movements for a prescribed control point. More... | |
void | makeFolders () |
Create folders to store cps and derivatives. More... | |
virtual vector | transformPointToCartesian (const vector &localCoordinates) const =0 |
Transform a point from its coordinate system to a cartesian system. More... | |
virtual tensor | transformationTensorDxDb (label globalPointIndex)=0 |
virtual void | updateLocalCoordinateSystem (const vectorField &cartesianPoints)=0 |
Update coordinates in the local system based on the cartesian points. More... | |
Protected Member Functions inherited from regIOobject | |
bool | readHeaderOk (const IOstreamOption::streamFormat fmt, const word &typeName) |
Helper: check readOpt flags and read if necessary. More... | |
Protected Member Functions inherited from IOobject | |
void | setBad (const string &s) |
Set the object state to bad. More... | |
Additional Inherited Members | |
Public Types inherited from IOobject | |
enum | readOption : char { NO_READ = 0 , MUST_READ = 1 , MUST_READ_IF_MODIFIED = 3 , READ_IF_PRESENT = 4 } |
Enumeration defining the read options. More... | |
enum | writeOption : char { NO_WRITE = 0 , AUTO_WRITE = 0x10 } |
Enumeration defining the write options. More... | |
enum | objectState : char { GOOD , BAD } |
Enumeration defining the valid states of an IOobject. More... | |
enum | fileCheckTypes : char { timeStamp , timeStampMaster , inotify , inotifyMaster } |
Enumeration defining the file checking options. More... | |
Public Types inherited from dictionary | |
typedef Searcher< true > | const_searcher |
Searcher with const access. More... | |
typedef Searcher< false > | searcher |
Searcher with non-const access. More... | |
Public Types inherited from UILList< LListBase, T > | |
typedef T | value_type |
Type of values stored. More... | |
typedef T * | pointer |
Pointer for value_type. More... | |
typedef const T * | const_pointer |
Const pointer for value_type. More... | |
typedef T & | reference |
Reference for value_type. More... | |
typedef const T & | const_reference |
Const reference for value_type. More... | |
typedef label | size_type |
The type that can represent the container size. More... | |
typedef label | difference_type |
The difference between iterator objects. More... | |
using | base_iterator = typename LListBase::iterator |
using | const_base_iterator = typename LListBase::const_iterator |
Public Attributes inherited from dictionary | |
friend | const_searcher |
Declare friendship with the searcher classes. More... | |
friend | searcher |
Static Public Attributes inherited from IOobject | |
static const Enum< fileCheckTypes > | fileCheckTypesNames |
Names for the fileCheckTypes. More... | |
static char | scopeSeparator |
Character for scoping object names (':' or '_') More... | |
static fileCheckTypes | fileModificationChecking |
Type of file modification checking. More... | |
static float | fileModificationSkew |
Time skew (seconds) for file modification checks. More... | |
static int | maxFileModificationPolls |
Max number of times to poll for file modification changes. More... | |
Static Public Attributes inherited from dictionary | |
static int | writeOptionalEntries |
Report optional keywords and values if not present in dictionary. More... | |
static const dictionary | null |
An empty dictionary, which is also the parent for all dictionaries. More... | |
static refPtr< OSstream > | reportingOutput |
Output location when reporting default values. More... | |
Static Protected Member Functions inherited from IOobject | |
static void | writeHeaderContent (Ostream &os, const IOobject &io, const word &objectType, const dictionary *metaDataDict=nullptr) |
static void | writeHeaderContent (dictionary &dict, const IOobject &io, const word &objectType, IOstreamOption streamOpt, const dictionary *metaDataDict=nullptr) |
Static Protected Attributes inherited from regIOobject | |
static bool | masterOnlyReading = false |
To flag master-only reading of objects. More... | |
NURBS3DVolume morpher. Includes support functions for gradient computations Base class providing support for different coordinate systems.
Reference:
For a short introduction to a volumetric B-Splines morpher and its use in shape optimisation Papoutsis-Kiachagias, E., Magoulas, N., Mueller, J., Othmer, C., & Giannakoglou, K. (2015). Noise reduction in car aerodynamics using a surrogate objective function and the continuous adjoint method with wall functions. Computers & Fluids, 122, 223-232. http://doi.org/10.1016/j.compfluid.2015.09.002
Definition at line 73 of file NURBS3DVolume.H.
|
protected |
Definition at line 81 of file NURBS3DVolume.H.
NURBS3DVolume | ( | const dictionary & | dict, |
const fvMesh & | mesh, | ||
bool | computeParamCoors = true |
||
) |
Construct from dictionary.
Definition at line 627 of file NURBS3DVolume.C.
NURBS3DVolume | ( | const NURBS3DVolume & | ) |
Construct as copy.
|
virtualdefault |
Destructor.
|
protected |
Find points within control points box.
Definition at line 50 of file NURBS3DVolume.C.
References Field< Type >::component(), NURBS3DVolume::cps_, Foam::endl(), Foam::exit(), Foam::FatalError, FatalErrorInFunction, forAll, Foam::Info, NURBS3DVolume::mapPtr_, Foam::max(), Foam::min(), Foam::reduce(), NURBS3DVolume::reverseMapPtr_, List< T >::setSize(), UList< T >::size(), Vector< Cmpt >::x(), Vector< Cmpt >::y(), and Vector< Cmpt >::z().
|
protected |
Compute parametric coordinates in order to match a given set of coordinates, based on the cps of the class
Uses a Newton-Raphson loop. Argument is the points residing in the box
Definition at line 104 of file NURBS3DVolume.C.
References IOobject::AUTO_WRITE, Foam::bound(), Foam::cmptMag(), VectorSpace< Form, Cmpt, Ncmpts >::component(), coordinates(), Foam::diff(), Foam::dimless, Foam::endl(), Foam::exit(), Foam::FatalError, FatalErrorInFunction, forAll, Foam::Info, Foam::inv(), Foam::mag(), Foam::max(), Foam::min(), Time::New(), IOobject::NO_READ, points, Foam::reduce(), tmp< T >::ref(), List< T >::setSize(), UList< T >::size(), WarningInFunction, and Foam::Zero.
|
protected |
Definition at line 338 of file NURBS3DVolume.C.
References points.
Bound components to certain limits.
Definition at line 348 of file NURBS3DVolume.C.
References maxValue, minValue, Vector< Cmpt >::x(), Vector< Cmpt >::y(), and Vector< Cmpt >::z().
|
protected |
Create lists with active design variables and control points.
Definition at line 401 of file NURBS3DVolume.C.
References forAll.
|
protected |
Confine movement in boundary control points if necessary.
Definition at line 433 of file NURBS3DVolume.C.
|
protected |
Confine control point movement to maintain user-defined continuity.
Definition at line 479 of file NURBS3DVolume.C.
References forAll.
|
protected |
Confine movement in all control points for user-defined directions.
Definition at line 574 of file NURBS3DVolume.C.
|
protected |
Confine all three movements for a prescribed control point.
Definition at line 585 of file NURBS3DVolume.C.
References Foam::exit(), Foam::FatalError, and FatalErrorInFunction.
|
protected |
Confine specific movements for a prescribed control point.
Definition at line 603 of file NURBS3DVolume.C.
References Foam::exit(), Foam::FatalError, FatalErrorInFunction, boolVector::x(), boolVector::y(), and boolVector::z().
|
protected |
Create folders to store cps and derivatives.
Definition at line 392 of file NURBS3DVolume.C.
References splitCell::master(), and Foam::mkDir().
|
protectedpure virtual |
Transform a point from its coordinate system to a cartesian system.
Implemented in NURBS3DVolumeCartesian, and NURBS3DVolumeCylindrical.
|
protectedpure virtual |
Transformation tensor for dxdb, from local coordinate system to cartesian
Implemented in NURBS3DVolumeCartesian, and NURBS3DVolumeCylindrical.
|
protectedpure virtual |
Update coordinates in the local system based on the cartesian points.
Implemented in NURBS3DVolumeCartesian, and NURBS3DVolumeCylindrical.
TypeName | ( | "NURBS3DVolume" | ) |
Runtime type information.
declareRunTimeSelectionTable | ( | autoPtr | , |
NURBS3DVolume | , | ||
dictionary | , | ||
(const dictionary &dict, const fvMesh &mesh, bool computeParamCoors) | , | ||
(dict, mesh, computeParamCoors) | |||
) |
|
static |
Return a reference to the selected NURBS model.
Definition at line 774 of file NURBS3DVolume.C.
References dict, Foam::endl(), Foam::exit(), Foam::FatalIOError, FatalIOErrorInLookup, dictionary::get(), Foam::Info, and mesh.
Foam::vector volumeDerivativeU | ( | const scalar | u, |
const scalar | v, | ||
const scalar | w | ||
) | const |
Volume point derivative wrt u at point u,v,w.
Definition at line 804 of file NURBS3DVolume.C.
References Foam::Zero.
Foam::vector volumeDerivativeV | ( | const scalar | u, |
const scalar | v, | ||
const scalar | w | ||
) | const |
Volume point derivative wrt v at point u,v,w.
Definition at line 841 of file NURBS3DVolume.C.
References Foam::Zero.
Foam::vector volumeDerivativeW | ( | const scalar | u, |
const scalar | v, | ||
const scalar | w | ||
) | const |
Volume point derivative wrt w at point u,v,w.
Definition at line 879 of file NURBS3DVolume.C.
References Foam::Zero.
Foam::tensor JacobianUVW | ( | const vector & | u | ) | const |
Jacobian matrix wrt to the volume parametric coordinates.
Definition at line 917 of file NURBS3DVolume.C.
References Vector< Cmpt >::x(), Vector< Cmpt >::y(), and Vector< Cmpt >::z().
Foam::scalar volumeDerivativeCP | ( | const vector & | u, |
const label | cpI | ||
) | const |
Volume point derivative wrt to control point cpI at point u,v,w.
Scalar since in the local system!
Definition at line 936 of file NURBS3DVolume.C.
References Vector< Cmpt >::x(), Vector< Cmpt >::y(), and Vector< Cmpt >::z().
Foam::vectorField computeControlPointSensitivities | ( | const pointVectorField & | pointSens, |
const labelList & | sensitivityPatchIDs | ||
) |
Control point sensitivities computed using point-based surface sensitivities
Definition at line 969 of file NURBS3DVolume.C.
References forAll, Pstream::listCombineAllGather(), and Foam::Zero.
Foam::vectorField computeControlPointSensitivities | ( | const volVectorField & | faceSens, |
const labelList & | sensitivityPatchIDs | ||
) |
Control point sensitivities computed using face-based surface sensitivities
Definition at line 1019 of file NURBS3DVolume.C.
References GeometricField< Type, PatchField, GeoMesh >::boundaryField().
Foam::vectorField computeControlPointSensitivities | ( | const boundaryVectorField & | faceSens, |
const labelList & | sensitivityPatchIDs | ||
) |
Control point sensitivities computed using face-based surface sensitivities
Definition at line 1034 of file NURBS3DVolume.C.
References forAll, Pstream::listCombineAllGather(), deltaBoundary::makeFaceCentresAndAreas_d(), face::points(), UList< T >::size(), and Foam::Zero.
Foam::vector computeControlPointSensitivities | ( | const vectorField & | faceSens, |
const label | patchI, | ||
const label | cpI | ||
) |
Control point sensitivities computed using face-based surface sensitivities
Definition at line 1104 of file NURBS3DVolume.C.
References forAll, deltaBoundary::makeFaceCentresAndAreas_d(), face::points(), Foam::reduce(), UList< T >::size(), and Foam::Zero.
Foam::tmp< Foam::tensorField > dndbBasedSensitivities | ( | const label | patchI, |
const label | cpI, | ||
bool | DimensionedNormalSens = true |
||
) |
Part of control point sensitivities related to the face normal variations
Definition at line 1164 of file NURBS3DVolume.C.
References forAll, deltaBoundary::makeFaceCentresAndAreas_d(), face::points(), tmp< T >::ref(), UList< T >::size(), polyPatch::start(), and Foam::Zero.
Foam::tmp< Foam::tensorField > patchDxDb | ( | const label | patchI, |
const label | cpI | ||
) |
Get patch dx/db.
Definition at line 1233 of file NURBS3DVolume.C.
References forAll, Time::New(), and Foam::Zero.
Foam::tmp< Foam::tensorField > patchDxDbFace | ( | const label | patchI, |
const label | cpI | ||
) |
Get patch dx/db.
Definition at line 1272 of file NURBS3DVolume.C.
References forAll, deltaBoundary::makeFaceCentresAndAreas_d(), Time::New(), face::points(), UList< T >::size(), and Foam::Zero.
Foam::tmp< Foam::vectorField > coordinates | ( | const vectorField & | uVector | ) | const |
Compute cartesian coordinates based on control points and parametric coordinates
Definition at line 1330 of file NURBS3DVolume.C.
References coordinates(), forAll, Time::New(), nPoints, points, and Foam::Zero.
Foam::vector coordinates | ( | const vector & | uVector | ) | const |
The same, for a specific point.
Definition at line 1349 of file NURBS3DVolume.C.
References Vector< Cmpt >::x(), Vector< Cmpt >::y(), Vector< Cmpt >::z(), and Foam::Zero.
Foam::tmp< Foam::vectorField > computeNewPoints | ( | const vectorField & | controlPointsMovement | ) |
Mesh movement based on given control point movement.
Definition at line 1388 of file NURBS3DVolume.C.
References coordinates(), DebugInfo, Foam::endl(), forAll, Foam::gMax(), Foam::mag(), and tmp< T >::ref().
Foam::tmp< Foam::vectorField > computeNewBoundaryPoints | ( | const vectorField & | controlPointsMovement, |
const labelList & | patchesToBeMoved, | ||
const bool | moveCPs = true |
||
) |
Boundary mesh movement based on given control point movement.
Definition at line 1425 of file NURBS3DVolume.C.
References coordinates(), DebugInfo, Foam::endl(), Foam::gMax(), Foam::mag(), and tmp< T >::ref().
Foam::label getCPID | ( | const label | i, |
const label | j, | ||
const label | k | ||
) | const |
Get control point ID from its I-J-K coordinates.
Definition at line 1491 of file NURBS3DVolume.C.
References k.
Referenced by axisAligned::computeControlPoints(), and transformBox::computeControlPoints().
void setControlPoints | ( | const vectorField & | newCps | ) |
Set new control points.
New values should be on the coordinates system original CPs were defined
Definition at line 1505 of file NURBS3DVolume.C.
References Foam::exit(), Foam::FatalError, FatalErrorInFunction, and UList< T >::size().
void boundControlPointMovement | ( | vectorField & | controlPointsMovement | ) | const |
Bound control points movement in the boundary control points and in certain directions if needed
Definition at line 1518 of file NURBS3DVolume.C.
References forAll, and Foam::Zero.
Foam::scalar computeMaxBoundaryDisplacement | ( | const vectorField & | controlPointsMovement, |
const labelList & | patchesToBeMoved | ||
) |
Compute max. displacement at the boundary.
Definition at line 1541 of file NURBS3DVolume.C.
References coordinates(), Foam::mag(), Foam::max(), Foam::reduce(), and Foam::Zero.
Foam::tmp< Foam::vectorField > getPointsInBox | ( | ) |
Get mesh points that reside within the control points box.
Definition at line 1591 of file NURBS3DVolume.C.
const Foam::labelList & getMap | ( | ) |
Get map of points in box to mesh points.
Definition at line 1606 of file NURBS3DVolume.C.
const Foam::labelList & getReverseMap | ( | ) |
Get map of mesh points to points in box. Return -1 if point is outside the box
Definition at line 1617 of file NURBS3DVolume.C.
const Foam::pointVectorField & getParametricCoordinates | ( | ) |
Get parametric coordinates.
Definition at line 1628 of file NURBS3DVolume.C.
Referenced by NURBS3DVolumeCartesian::NURBS3DVolumeCartesian(), and NURBS3DVolumeCylindrical::NURBS3DVolumeCylindrical().
Foam::tmp< Foam::pointTensorField > getDxDb | ( | const label | cpI | ) |
Get dxCartesiandb for a certain control point.
Definition at line 1646 of file NURBS3DVolume.C.
References Foam::dimless, Time::New(), IOobject::NO_READ, IOobject::NO_WRITE, tmp< T >::ref(), and Foam::Zero.
Foam::tmp< Foam::volTensorField > getDxCellsDb | ( | const label | cpI | ) |
Get dxCartesiandb for a certain control point on cells.
Definition at line 1689 of file NURBS3DVolume.C.
References GeometricField< Type, PatchField, GeoMesh >::boundaryFieldRef(), deltaBoundary::cellCenters_d(), GeometricField< Type, PatchField, GeoMesh >::correctBoundaryConditions(), Foam::dimless, forAll, IOobject::NO_READ, IOobject::NO_WRITE, tmp< T >::ref(), and Foam::Zero.
Foam::label nUSymmetry | ( | ) | const |
Get number of variables if CPs are moved symmetrically in U.
Definition at line 1758 of file NURBS3DVolume.C.
Foam::label nVSymmetry | ( | ) | const |
Get number of variables if CPs are moved symmetrically in V.
Definition at line 1765 of file NURBS3DVolume.C.
Foam::label nWSymmetry | ( | ) | const |
Get number of variables if CPs are moved symmetrically in W.
Definition at line 1772 of file NURBS3DVolume.C.
Foam::Vector< Foam::label > nSymmetry | ( | ) | const |
Get number of variables per direction, if CPs are moved symmetrically
Definition at line 1779 of file NURBS3DVolume.C.
|
inline |
|
inline |
Which control points are active?
A control point is active if at least one component can move
Definition at line 39 of file NURBS3DVolumeI.H.
|
inline |
Which design variables are active?
Numbering is (X1,Y1,Z1), (X2,Y2,Z2) ...
Definition at line 46 of file NURBS3DVolumeI.H.
|
inline |
Get control points.
Definition at line 52 of file NURBS3DVolumeI.H.
|
inline |
Definition at line 58 of file NURBS3DVolumeI.H.
|
inline |
Get confine movements.
Definition at line 64 of file NURBS3DVolumeI.H.
|
inline |
Definition at line 70 of file NURBS3DVolumeI.H.
|
inline |
Definition at line 76 of file NURBS3DVolumeI.H.
|
inline |
Get basis functions.
Definition at line 82 of file NURBS3DVolumeI.H.
Referenced by axisAligned::computeControlPoints(), fromFile::computeControlPoints(), and transformBox::computeControlPoints().
|
inline |
Definition at line 88 of file NURBS3DVolumeI.H.
Referenced by axisAligned::computeControlPoints(), fromFile::computeControlPoints(), and transformBox::computeControlPoints().
|
inline |
Definition at line 94 of file NURBS3DVolumeI.H.
Referenced by axisAligned::computeControlPoints(), fromFile::computeControlPoints(), and transformBox::computeControlPoints().
|
inline |
Get number of control points per direction.
|
inline |
Get mesh.
Definition at line 100 of file NURBS3DVolumeI.H.
Referenced by fromFile::computeControlPoints(), and NURBS3DVolumeCylindrical::NURBS3DVolumeCylindrical().
|
inline |
Get dictionary.
Definition at line 106 of file NURBS3DVolumeI.H.
Referenced by axisAligned::computeControlPoints(), fromFile::computeControlPoints(), transformBox::computeControlPoints(), controlPointsDefinition::New(), and controlPointsDefinition::transformControlPoints().
Write control points on a cartesian coordinates system for visualization
Definition at line 1785 of file NURBS3DVolume.C.
References Foam::endl(), forAll, Foam::Info, splitCell::master(), and Foam::transform().
Referenced by NURBS3DVolumeCartesian::NURBS3DVolumeCartesian(), and NURBS3DVolumeCylindrical::NURBS3DVolumeCylindrical().
void writeParamCoordinates | ( | ) | const |
Write parametric coordinates.
Definition at line 1835 of file NURBS3DVolume.C.
Write the control points to support restart.
Reimplemented from baseIOdictionary.
Definition at line 1841 of file NURBS3DVolume.C.
References os(), and NURBS3DVolume::writeData().
Referenced by NURBS3DVolume::writeData().
|
protected |
Definition at line 83 of file NURBS3DVolume.H.
Referenced by NURBS3DVolumeCartesian::NURBS3DVolumeCartesian(), and NURBS3DVolumeCylindrical::NURBS3DVolumeCylindrical().
|
protected |
Definition at line 84 of file NURBS3DVolume.H.
|
protected |
Definition at line 85 of file NURBS3DVolume.H.
Referenced by NURBS3DVolume::name().
|
protected |
NURBS basis functions.
Definition at line 87 of file NURBS3DVolume.H.
|
protected |
Definition at line 88 of file NURBS3DVolume.H.
|
protected |
Definition at line 89 of file NURBS3DVolume.H.
|
protected |
Max iterations for Newton-Raphson.
Definition at line 92 of file NURBS3DVolume.H.
|
protected |
Tolerance for Newton-Raphson.
Definition at line 95 of file NURBS3DVolume.H.
|
protected |
How many times to bound parametric coordinates until deciding it is outside the box
Definition at line 99 of file NURBS3DVolume.H.
|
protected |
The volumetric B-Splines control points.
Definition at line 102 of file NURBS3DVolume.H.
Referenced by NURBS3DVolume::findPointsInBox().
Map of points-in-box to mesh points.
Definition at line 105 of file NURBS3DVolume.H.
Referenced by NURBS3DVolume::findPointsInBox().
Map of mesh points to points-in-box.
Return -1 if point not within the box
Definition at line 109 of file NURBS3DVolume.H.
Referenced by NURBS3DVolume::findPointsInBox().
|
protected |
Parametric coordinates of pointsInBox.
Definition at line 112 of file NURBS3DVolume.H.
|
protected |
Coordinates in the local system for which CPs are defined.
Definition at line 115 of file NURBS3DVolume.H.
Referenced by NURBS3DVolumeCartesian::NURBS3DVolumeCartesian().
|
protected |
Confine movement in certain directions and control points. Refers to the local system
Definition at line 119 of file NURBS3DVolume.H.
|
protected |
Definition at line 121 of file NURBS3DVolume.H.
|
protected |
Definition at line 123 of file NURBS3DVolume.H.
|
protected |
Definition at line 125 of file NURBS3DVolume.H.
|
protected |
Which movement components to freeze in each plane.
Definition at line 128 of file NURBS3DVolume.H.
|
protected |
Definition at line 130 of file NURBS3DVolume.H.
|
protected |
Definition at line 132 of file NURBS3DVolume.H.
|
protected |
Definition at line 134 of file NURBS3DVolume.H.
|
protected |
Definition at line 136 of file NURBS3DVolume.H.
|
protected |
Definition at line 138 of file NURBS3DVolume.H.
|
protected |
Which of the cps are moved in an optimisation.
Definition at line 141 of file NURBS3DVolume.H.
|
protected |
Which design variables are changed in an optimisation.
Definition at line 144 of file NURBS3DVolume.H.
|
protected |
Folder to store control points.
Definition at line 147 of file NURBS3DVolume.H.
|
protected |
Read parametric coordinates from file if present in the folder.
Definition at line 150 of file NURBS3DVolume.H.