Update design variables using a null space approach. Can handle inequality and bound constraints. More...
#include <nullSpace.H>


Public Member Functions | |
| TypeName ("nullSpace") | |
| Runtime type information. | |
| nullSpace (const fvMesh &mesh, const dictionary &dict, autoPtr< designVariables > &designVars, const label nConstraints, const word &type) | |
| Construct from components. | |
| virtual | ~nullSpace ()=default |
| Destructor. | |
| virtual void | computeCorrection () |
| Compute design variables correction. | |
| virtual scalar | computeMeritFunction () |
| Compute the merit function for line search. | |
| virtual scalar | meritFunctionDirectionalDerivative () |
| Directional derivative of the merit function, in the direction of the correction. | |
| virtual bool | writeData (Ostream &os) const |
| Write useful quantities to files. | |
| Public Member Functions inherited from constrainedOptimisationMethod | |
| TypeName ("constrainedOptimisationMethod") | |
| Runtime type information. | |
| declareRunTimeSelectionTable (autoPtr, constrainedOptimisationMethod, dictionary,(const fvMesh &mesh, const dictionary &dict, autoPtr< designVariables > &designVars, const label nConstraints, const word &type),(mesh, dict, designVars, nConstraints, type)) | |
| constrainedOptimisationMethod (const fvMesh &mesh, const dictionary &dict, autoPtr< designVariables > &designVars, const label nConstraints, const word &type) | |
| Construct from components. | |
| virtual | ~constrainedOptimisationMethod ()=default |
| Destructor. | |
| Public Member Functions inherited from updateMethod | |
| TypeName ("updateMethod") | |
| Runtime type information. | |
| declareRunTimeSelectionTable (autoPtr, updateMethod, dictionary,(const fvMesh &mesh, const dictionary &dict, autoPtr< designVariables > &designVars, const label nConstraints, const word &type),(mesh, dict, designVars, nConstraints, type)) | |
| updateMethod (const fvMesh &mesh, const dictionary &dict, autoPtr< designVariables > &designVars, const label nConstraints, const word &type) | |
| Construct from components. | |
| virtual | ~updateMethod ()=default |
| Destructor. | |
| dictionary | coeffsDict (const word &type) const |
| Return optional dictionary with parameters specific to each method. | |
| void | setObjectiveDeriv (const scalarField &derivs) |
| Set objective derivative. | |
| void | setConstraintDeriv (const PtrList< scalarField > &derivs) |
| Set constraints derivative. | |
| void | setObjectiveValue (const scalar value) |
| Set objective value. | |
| void | setObjectiveValueOld (const scalar value) |
| Set old objective value. | |
| void | setConstraintValues (const scalarField &values) |
| Set values of constraints. | |
| scalar | getObjectiveValue () const |
| Get objective value. | |
| const autoPtr< scalar > & | getObjectiveValueOld () const |
| Get old objective value. | |
| const scalarField & | getConstraintValues () const |
| Get values of constraints. | |
| label | getCycle () const |
| Get optimisation cycle. | |
| void | setStep (const scalar eta) |
| Set step for optimisation methods. | |
| void | modifyStep (const scalar multiplier) |
| Multiply step. | |
| void | setGlobalSum (const bool useGlobalSum) |
| Set globalSum variable. | |
| void | setConstaintsNumber (const label nConstraints) |
| Set the number of constraints. | |
| label | nConstraints () const |
| Get the number of constraints. | |
| scalarField & | returnCorrection () |
| Return the correction of the design variables. | |
| void | writeCorrection () |
| bool & | initialEtaSet () |
| Return whether initial eta was set. | |
| virtual void | updateOldCorrection (const scalarField &oldCorrection) |
| Update old correction. Useful for quasi-newton methods coupled with line search. | |
| virtual bool | writeAuxiliaryData () |
| Write non-continuation data, usually under the optimisation folder. | |
| Public Member Functions inherited from localIOdictionary | |
| localIOdictionary (const IOobject &io, const dictionary *fallback=nullptr) | |
| Construct given an IOobject and optional fallback dictionary content. | |
| localIOdictionary (const IOobject &io, const dictionary &dict) | |
| Construct given an IOobject and fallback dictionary content. | |
| localIOdictionary (const IOobject &io, const word &wantedType, const dictionary *fallback=nullptr) | |
| Construct given an IOobject, wanted typeName and optional fallback dictionary content. | |
| localIOdictionary (const IOobject &io, Istream &is) | |
| Construct given an IOobject and Istream. | |
| virtual | ~localIOdictionary ()=default |
| Destructor. | |
| virtual bool | global () const |
| The object is not global. | |
| virtual fileName | filePath () const |
| Return complete path + object name if the file exists in the case otherwise null. | |
| Public Member Functions inherited from baseIOdictionary | |
| TypeName ("dictionary") | |
| Declare type-name, virtual type (with debug switch). | |
| baseIOdictionary (const baseIOdictionary &)=default | |
| Copy construct. | |
| baseIOdictionary (baseIOdictionary &&)=default | |
| Move construct. | |
| virtual | ~baseIOdictionary ()=default |
| Destructor. | |
| baseIOdictionary (const IOobject &io, const dictionary *fallback=nullptr) | |
| Construct given an IOobject and optional fallback dictionary content (ununsed). | |
| baseIOdictionary (const IOobject &io, const dictionary &dict) | |
| Construct given an IOobject and fallback dictionary content (ununsed). | |
| baseIOdictionary (const IOobject &io, Istream &is) | |
| Construct given an IOobject and Istream (ununsed). | |
| const word & | name () const |
| Name function is needed to disambiguate those inherited from regIOobject and dictionary. | |
| virtual bool | readData (Istream &) |
| The readData function required by regIOobject read operation. | |
| void | operator= (const baseIOdictionary &rhs) |
| Copy assignment of dictionary entries. | |
| void | operator= (baseIOdictionary &&rhs) |
| Move assignment of dictionary entries. | |
| void | operator= (const dictionary &rhs) |
| Copy assignment of dictionary entries. | |
| Public Member Functions inherited from regIOobject | |
| void | operator= (const regIOobject &)=delete |
| No copy assignment. | |
| TypeName ("regIOobject") | |
| Runtime type information. | |
| regIOobject (const IOobject &io, const bool isTimeObject=false) | |
| Construct from IOobject. The optional flag adds special handling if the object is the top-level regIOobject (eg, Time). | |
| regIOobject (const regIOobject &rio) | |
| Copy construct. | |
| regIOobject (const regIOobject &rio, bool registerCopy) | |
| Copy construct, transferring registry registration to the copy if registerCopy is true. | |
| regIOobject (const word &newName, const regIOobject &, bool registerCopy) | |
| Copy construct with new name, transferring registry registration to the copy if registerCopy is true. | |
| regIOobject (const IOobject &io, const regIOobject &rio) | |
| Copy construct with new IO parameters. | |
| virtual | ~regIOobject () |
| Destructor. | |
| bool | checkIn () |
| Add object to registry, if not already registered. | |
| bool | checkOut () |
| Remove object from registry, and remove all file watches. | |
| virtual void | addWatch () |
| Add file watch on object (if registered and READ_IF_MODIFIED). | |
| bool | registered () const noexcept |
| Query the registered state (ie, has been checked in). This is not necessarily the same as registerObject(), which is just a stated preference. | |
| bool | ownedByRegistry () const noexcept |
| Is this object owned by the registry? | |
| bool | store () |
| Register object with its registry and transfer ownership to the registry. | |
| void | release (const bool unregister=false) noexcept |
| Set object as not ownedByRegistry. | |
| label | eventNo () const noexcept |
| Event number at last update. | |
| label & | eventNo () noexcept |
| Event number at last update. | |
| bool | upToDate (const regIOobject &) const |
| Return true if up-to-date with respect to given object. | |
| bool | upToDate (const regIOobject &, const regIOobject &) const |
| Return true if up-to-date with respect to given objects. | |
| bool | upToDate (const regIOobject &, const regIOobject &, const regIOobject &) const |
| Return true if up-to-date with respect to given objects. | |
| bool | upToDate (const regIOobject &, const regIOobject &, const regIOobject &, const regIOobject &) const |
| Return true if up-to-date with respect to given objects. | |
| void | setUpToDate () |
| Set as up-to-date. | |
| virtual void | rename (const word &newName) |
| Rename. | |
| const dictionary * | findMetaData () const noexcept |
| Return pointer to meta-data or nullptr. | |
| dictionary & | getMetaData () noexcept |
| Get or create meta-data. | |
| void | removeMetaData () |
| Remove meta-data. | |
| virtual void | updateMetaData () |
| Update internal meta-data (eg, prior to writing). | |
| bool | headerOk () |
| Read and check header info. Does not check the headerClassName. | |
| Istream & | readStream (const word &, const bool readOnProc=true) |
| Return Istream and check object type against that given. | |
| void | close () |
| Close Istream. | |
| virtual bool | read () |
| Read object. | |
| virtual label | addWatch (const fileName &) |
| Add file watch for fileName on object if not yet watched. | |
| const labelList & | watchIndices () const noexcept |
| Read access to file-monitoring handles. | |
| labelList & | watchIndices () noexcept |
| Write access to file-monitoring handles. | |
| virtual bool | modified () const |
| Return true if the object's file (or files for objectRegistry) have been modified. (modified state is cached by Time). | |
| virtual bool | readIfModified () |
| Read object if modified (as set by call to modified). | |
| virtual bool | writeObject (IOstreamOption streamOpt, const bool writeOnProc) const |
| Write using stream options. | |
| virtual bool | write (const bool writeOnProc=true) const |
| Write using setting from DB. | |
| void | operator= (const IOobject &io) |
| Copy assignment. | |
| virtual bool | writeObject (IOstreamOption::streamFormat fmt, IOstreamOption::versionNumber ver, IOstreamOption::compressionType cmp, const bool writeOnProc) const |
| Write using given format, version and compression. | |
| Public Member Functions inherited from IOobject | |
| TypeName ("IOobject") | |
| Declare type-name, virtual type (with debug switch). | |
| IOobject (const IOobject &)=default | |
| Copy construct. | |
| virtual | ~IOobject ()=default |
| Destructor. | |
| IOobject (const word &name, const fileName &instance, const objectRegistry ®istry, IOobjectOption ioOpt=IOobjectOption()) | |
| Construct from name, instance, registry, io options. | |
| IOobject (const word &name, const fileName &instance, const fileName &local, const objectRegistry ®istry, IOobjectOption ioOpt=IOobjectOption()) | |
| Construct from name, instance, local, registry, io options. | |
| IOobject (const fileName &path, const objectRegistry ®istry, IOobjectOption ioOpt=IOobjectOption()) | |
| Construct from path, registry, io options. | |
| IOobject (const word &name, const fileName &instance, const objectRegistry ®istry, IOobjectOption::readOption rOpt, IOobjectOption::writeOption wOpt=IOobjectOption::NO_WRITE, bool registerObject=true, bool globalObject=false) | |
| Construct from name, instance, registry, io options. | |
| IOobject (const word &name, const fileName &instance, const fileName &local, const objectRegistry ®istry, IOobjectOption::readOption rOpt, IOobjectOption::writeOption wOpt=IOobjectOption::NO_WRITE, bool registerObject=true, bool globalObject=false) | |
| Construct from name, instance, local, registry, io options. | |
| IOobject (const fileName &path, const objectRegistry ®istry, IOobjectOption::readOption rOpt, IOobjectOption::writeOption wOpt=IOobjectOption::NO_WRITE, bool registerObject=true, bool globalObject=false) | |
| Construct from path, registry, io options. | |
| IOobject (const IOobject &io, const objectRegistry ®istry) | |
| Copy construct, resetting registry. | |
| IOobject (const IOobject &io, const word &name) | |
| Copy construct, resetting name. | |
| IOobject (const IOobject &io, const word &name, const fileName &local) | |
| Copy construct, resetting name and local component. | |
| IOobject (const IOobject &io, IOobjectOption::readOption rOpt, IOobjectOption::writeOption wOpt) | |
| Copy construct, resetting read/write options. | |
| IOobject (const IOobject &io, IOobjectOption::registerOption regOpt) | |
| Copy construct, resetting register option. | |
| autoPtr< IOobject > | clone () const |
| Clone. | |
| autoPtr< IOobject > | clone (const objectRegistry ®istry) const |
| Clone resetting registry. | |
| const objectRegistry & | db () const noexcept |
| Return the local objectRegistry. | |
| const Time & | time () const noexcept |
| Return Time associated with the objectRegistry. | |
| const word & | name () const noexcept |
| Return the object name. | |
| const word & | headerClassName () const noexcept |
| Return name of the class name read from header. | |
| word & | headerClassName () noexcept |
| Modifiable access to the class name read from header. | |
| const string & | note () const noexcept |
| Return the optional note. | |
| string & | note () noexcept |
| Modifiable access to the optional note. | |
| unsigned | labelByteSize () const noexcept |
| The sizeof (label) in bytes, possibly read from the header. | |
| unsigned | scalarByteSize () const noexcept |
| The sizeof (scalar) in bytes, possibly read from the header. | |
| void | resetHeader (const word &newName=word::null) |
| Clear various bits (headerClassName, note, sizeof...) that would be obtained when reading from a file. | |
| bool | hasHeaderClass () const noexcept |
| True if headerClassName() is non-empty (after reading). | |
| bool | isHeaderClass (const word &expectedType) const |
| Check if headerClassName() equals the expected type. Always true if the expected type is empty. | |
| template<class Type> | |
| bool | isHeaderClass () const |
Check if headerClassName() equals Type::typeName Always true for a void type. | |
| word | group () const |
| Return group (extension part of name). | |
| word | member () const |
| Return member (name without the extension). | |
| const fileName & | rootPath () const noexcept |
| Return the Time::rootPath(). | |
| const fileName & | caseName () const noexcept |
| Return the Time::caseName(). | |
| const fileName & | globalCaseName () const noexcept |
| Return the Time::globalCaseName(). | |
| const fileName & | caseName (IOobjectOption::Layout) const noexcept |
| Return the Time::caseName() - normal or global. | |
| const fileName & | instance () const noexcept |
| Read access to instance path component. | |
| fileName & | instance () noexcept |
| Modifiable access to instance path component. | |
| scalar | instanceValue () const |
| Return the scalar value of the instance component (or 0), which often corresponds to a time index/value. | |
| const fileName & | local () const noexcept |
| Read access to local path component. | |
| fileName & | local () noexcept |
| Modifiable access to the local path component. | |
| fileName | path () const |
| The complete path for the object (with instance, local,...). | |
| fileName | globalPath () const |
| The complete global path for the object (with instance, local,...). | |
| fileName | path (IOobjectOption::Layout) const |
| The complete path (normal or global) for the object. | |
| fileName | path (const word &instance, const fileName &local=fileName::null) const |
| The complete path with alternative instance and local. | |
| fileName | globalPath (const word &instance, const fileName &local=fileName::null) const |
| The complete global path with alternative instance and local. | |
| fileName | path (IOobjectOption::Layout, const word &instance, const fileName &local=fileName::null) const |
| The complete path (normal or global) with alternative instance and local. | |
| fileName | objectPath () const |
| The complete path + object name. | |
| fileName | globalObjectPath () const |
| The complete global path + object name. | |
| fileName | objectPath (IOobjectOption::Layout) const |
| The complete path (normal or global) + object name. | |
| fileName | objectPath (IOobjectOption::Layout, const word &instance) const |
| The complete path (normal or global) + object name with alternative instance. | |
| fileName | objectPath (const word &instance) const |
| The complete path + object name with alternative instance. | |
| fileName | globalObjectPath (const word &instance) const |
| The complete global path + object name with alternative instance. | |
| fileName | objectRelPath () const |
| The object path relative to the case. | |
| fileName | localFilePath (const word &typeName, const bool search=true) const |
| Redirect to fileHandler filePath, searching locally. | |
| fileName | globalFilePath (const word &typeName, const bool search=true) const |
| Redirect to fileHandler filePath, searching up if in parallel. | |
| IOstreamOption | parseHeader (const dictionary &headerDict) |
| Parse 'FoamFile' header contents and set the IOobject characteristics and return the stream characteristics. | |
| bool | readHeader (Istream &is) |
| Read header ('FoamFile' dictionary) and set the IOobject and stream characteristics. | |
| bool | readHeader (dictionary &headerDict, Istream &is) |
| Read header (the 'FoamFile' dictionary) and set the IOobject and stream characteristics. | |
| template<class Type> | |
| bool | typeHeaderOk (const bool checkType=true, const bool search=true, const bool verbose=true) |
Read header (respects is_globalIOobject trait) and check its info. A void type suppresses trait and type-name checks. | |
| template<class Type, bool Searching> | |
| bool | typeHeaderOk (const bool checkType=true, const bool verbose=true) |
Forwards to single-parameter version with the specified search type. A void type suppresses trait and type-name checks. | |
| template<class Type> | |
| fileName | typeFilePath (const bool search=true) const |
| Call localFilePath or globalFilePath for given type depending on its is_globalIOobject trait. | |
| template<class Type> | |
| void | warnNoRereading () const |
| Helper: warn that type does not support re-reading. | |
| bool | writeHeader (Ostream &os) const |
| Write header with current type(). | |
| bool | writeHeader (Ostream &os, const word &objectType) const |
| Write header with override of type. | |
| void | writeHeader (dictionary &dict, IOstreamOption streamOpt) const |
| Write header into a dictionary with current type() and given output format. | |
| void | writeHeader (dictionary &dict, const word &objectType, IOstreamOption streamOpt) const |
| Write header into a dictionary with override of type and given output format. | |
| bool | good () const noexcept |
| Did last readHeader() succeed? | |
| bool | bad () const noexcept |
| Did last readHeader() fail? | |
| InfoProxy< IOobject > | info () const noexcept |
| Return info proxy, for printing information to a stream. | |
| void | operator= (const IOobject &io) |
| Copy assignment, copies all values (except the registry). | |
| template<class Type> | |
| bool | isHeaderClassName () const |
| Same as isHeaderClass(). | |
| template<class StringType> | |
| Foam::word | groupName (StringType base, const word &group) |
| template<class Type> | |
| Foam::fileName | typeFilePath (const bool search) const |
| Public Member Functions inherited from IOobjectOption | |
| constexpr | IOobjectOption (readOption rOpt=readOption::NO_READ, writeOption wOpt=writeOption::NO_WRITE, registerOption registerObject=registerOption::REGISTER, bool globalObject=false) noexcept |
| Default construct (NO_READ, NO_WRITE, REGISTER, non-global) or construct with specified options. | |
| constexpr | IOobjectOption (readOption rOpt, registerOption registerObject=registerOption::REGISTER, bool globalObject=false) noexcept |
| Construct NO_WRITE with specified read/register options. | |
| constexpr | IOobjectOption (writeOption wOpt, registerOption registerObject=registerOption::REGISTER, bool globalObject=false) noexcept |
| Construct NO_READ with specified write/register options. | |
| constexpr | IOobjectOption (registerOption registerObject, bool globalObject=false) noexcept |
| Construct (NO_READ, NO_WRITE) with specified register option. | |
| constexpr | IOobjectOption (readOption rOpt, writeOption wOpt, bool registerObject, bool globalObject=false) noexcept |
| Construct from components with specified register option as bool. | |
| constexpr | IOobjectOption (bool registerObject, bool globalObject=false) noexcept |
| Construct (NO_READ, NO_WRITE) with specified register option as bool. | |
| readOption | readOpt () const noexcept |
| Get the read option. | |
| readOption | readOpt (readOption opt) noexcept |
| Set the read option. | |
| writeOption | writeOpt () const noexcept |
| Get the write option. | |
| writeOption | writeOpt (writeOption opt) noexcept |
| Set the write option. | |
| bool | registerObject () const noexcept |
| Should objects created with this IOobject be registered? | |
| bool | registerObject (bool on) noexcept |
| Change registration preference. | |
| bool | globalObject () const noexcept |
| True if object is treated the same for all processors. | |
| bool | globalObject (bool on) noexcept |
| Change global-object status. | |
| bool | isAnyRead () const noexcept |
| True if any reading may be required (ie, != NO_READ). | |
| bool | isReadRequired () const noexcept |
| True if (MUST_READ | READ_MODIFIED) bits are set. | |
| bool | isReadOptional () const noexcept |
| True if (LAZY_READ) bits are set [same as READ_IF_PRESENT]. | |
| readOption & | readOpt () noexcept |
| Access to the read option. | |
| writeOption & | writeOpt () noexcept |
| Access to the write option. | |
| bool & | registerObject () noexcept |
| Access to the register object option. | |
| bool & | globalObject () noexcept |
| Access to the global object option. | |
| Public Member Functions inherited from dictionary | |
| ClassName ("dictionary") | |
| dictionary () | |
| Default construct, a top-level empty dictionary. | |
| dictionary (const fileName &name) | |
| Construct top-level empty dictionary with given name. | |
| dictionary (const fileName &name, const dictionary &parentDict, Istream &is, bool keepHeader=false) | |
| Construct given the entry name, parent dictionary and Istream, reading entries until EOF, optionally keeping the header. | |
| dictionary (Istream &is) | |
| Construct top-level dictionary from Istream (discards the header). Reads entries until EOF or when the first token is a '{' character, it will stop reading at the matching '}' character. | |
| dictionary (Istream &is, bool keepHeader) | |
| Construct top-level dictionary from Istream, reading entries until EOF, optionally keeping the header. | |
| dictionary (const dictionary &parentDict, const dictionary &dict) | |
| Copy construct given the parent dictionary. | |
| dictionary (const dictionary &dict) | |
| Copy construct top-level dictionary. | |
| dictionary (const dictionary *dict) | |
| Construct top-level dictionary as copy from pointer to dictionary. | |
| dictionary (const dictionary &parentDict, dictionary &&dict) | |
| Move construct for given parent dictionary. | |
| dictionary (dictionary &&dict) | |
| Move construct top-level dictionary. | |
| autoPtr< dictionary > | clone () const |
| Construct and return clone. | |
| virtual | ~dictionary () |
| Destructor. | |
| const fileName & | name () const noexcept |
| The dictionary name. | |
| fileName & | name () noexcept |
| The dictionary name for modification (use with caution). | |
| word | dictName () const |
| The local dictionary name (final part of scoped name). | |
| fileName | relativeName (const bool caseTag=false) const |
| The dictionary name relative to the case. | |
| bool | isNullDict () const noexcept |
| The dictionary is actually dictionary::null (root dictionary). | |
| const dictionary & | parent () const noexcept |
| Return the parent dictionary. | |
| const dictionary & | topDict () const |
| Return the top of the tree. | |
| label | startLineNumber () const |
| Return line number of first token in dictionary. | |
| label | endLineNumber () const |
| Return line number of last token in dictionary. | |
| SHA1Digest | digest () const |
| Return the SHA1 digest of the dictionary contents. | |
| tokenList | tokens () const |
| Return the dictionary as a list of tokens. | |
| const entry * | findEntry (const word &keyword, enum keyType::option matchOpt=keyType::REGEX) const |
| Find an entry (const access) with the given keyword. | |
| entry * | findEntry (const word &keyword, enum keyType::option matchOpt=keyType::REGEX) |
| Find an entry (non-const access) with the given keyword. | |
| bool | found (const word &keyword, enum keyType::option matchOpt=keyType::REGEX) const |
| Find an entry (const access) with the given keyword. | |
| const entry * | findScoped (const word &keyword, enum keyType::option matchOpt=keyType::REGEX) const |
| Search for a scoped entry (const access) with the given keyword. | |
| const dictionary * | findDict (const word &keyword, enum keyType::option matchOpt=keyType::REGEX) const |
| Find and return a sub-dictionary pointer if present (and it is a dictionary) otherwise return nullptr. | |
| dictionary * | findDict (const word &keyword, enum keyType::option matchOpt=keyType::REGEX) |
| Find and return a sub-dictionary pointer if present (and it is a dictionary) otherwise return nullptr. | |
| ITstream * | findStream (const word &keyword, enum keyType::option matchOpt=keyType::REGEX) const |
| Find and return an entry stream if present (and it is a stream) otherwise return nullptr. | |
| const entry & | lookupEntry (const word &keyword, enum keyType::option matchOpt) const |
| Search for an entry (const access) with the given keyword. | |
| ITstream & | lookup (const word &keyword, enum keyType::option matchOpt=keyType::REGEX) const |
| Find and return an entry data stream. FatalIOError if not found, or not a stream. | |
| template<class T> | |
| T | get (const word &keyword, enum keyType::option matchOpt=keyType::REGEX) const |
| Find and return a T. FatalIOError if not found, or if the number of tokens is incorrect. | |
| template<class T> | |
| T | getOrDefault (const word &keyword, const T &deflt, enum keyType::option matchOpt=keyType::REGEX) const |
| Find and return a T, or return the given default value. FatalIOError if it is found and the number of tokens is incorrect. | |
| template<class T> | |
| T | getOrAdd (const word &keyword, const T &deflt, enum keyType::option matchOpt=keyType::REGEX) |
| Find and return a T, or return the given default value and add it to dictionary. FatalIOError if it is found and the number of tokens is incorrect. | |
| template<class T> | |
| bool | readEntry (const word &keyword, T &val, enum keyType::option matchOpt=keyType::REGEX, IOobjectOption::readOption readOpt=IOobjectOption::MUST_READ) const |
| Find entry and assign to T val. FatalIOError if it is found and the number of tokens is incorrect, or it is mandatory and not found. | |
| template<class T> | |
| bool | readIfPresent (const word &keyword, T &val, enum keyType::option matchOpt=keyType::REGEX) const |
| Find an entry if present, and assign to T val. FatalIOError if it is found and the number of tokens is incorrect. | |
| template<class T, class Predicate> | |
| T | getCheck (const word &keyword, const Predicate &pred, enum keyType::option matchOpt=keyType::REGEX) const |
| Find and return a T with additional checking FatalIOError if not found, or if the number of tokens is incorrect. | |
| template<class T, class Predicate> | |
| T | getCheckOrDefault (const word &keyword, const T &deflt, const Predicate &pred, enum keyType::option matchOpt=keyType::REGEX) const |
| Find and return a T, or return the given default value. FatalIOError if it is found and the number of tokens is incorrect. | |
| template<class T, class Predicate> | |
| T | getCheckOrAdd (const word &keyword, const T &deflt, const Predicate &pred, enum keyType::option matchOpt=keyType::REGEX) |
| Find and return a T, or return the given default value and add it to dictionary. FatalIOError if it is found and the number of tokens is incorrect. | |
| template<class T, class Predicate> | |
| bool | readCheck (const word &keyword, T &val, const Predicate &pred, enum keyType::option matchOpt=keyType::REGEX, IOobjectOption::readOption readOpt=IOobjectOption::MUST_READ) const |
| Find entry and assign to T val. FatalIOError if it is found and the number of tokens is incorrect, or it is mandatory and not found. | |
| template<class T, class Predicate> | |
| bool | readCheckIfPresent (const word &keyword, T &val, const Predicate &pred, enum keyType::option matchOpt=keyType::REGEX) const |
| Find an entry if present, and assign to T val. FatalIOError if it is found and the number of tokens is incorrect. | |
| const dictionary & | subDict (const word &keyword, enum keyType::option matchOpt=keyType::REGEX) const |
| Find and return a sub-dictionary. | |
| dictionary & | subDict (const word &keyword, enum keyType::option matchOpt=keyType::REGEX) |
| Find and return a sub-dictionary for manipulation. | |
| dictionary & | subDictOrAdd (const word &keyword, enum keyType::option matchOpt=keyType::REGEX) |
| Find and return a sub-dictionary for manipulation. | |
| dictionary | subOrEmptyDict (const word &keyword, enum keyType::option matchOpt=keyType::REGEX, const bool mandatory=false) const |
| Find and return a sub-dictionary as a copy, otherwise return an empty dictionary. | |
| const dictionary & | optionalSubDict (const word &keyword, enum keyType::option matchOpt=keyType::REGEX) const |
| Find and return a sub-dictionary, otherwise return this dictionary. | |
| wordList | toc () const |
| Return the table of contents. | |
| wordList | sortedToc () const |
| Return the sorted table of contents. | |
| template<class Compare> | |
| wordList | sortedToc (const Compare &comp) const |
| Return table of contents sorted using the specified comparator. | |
| List< keyType > | keys (bool patterns=false) const |
| Return the list of available keys or patterns. | |
| bool | substituteKeyword (const word &keyword, bool mergeEntry=false) |
| Substitute the given keyword (which is prefixed by '$'). | |
| bool | substituteScopedKeyword (const word &keyword, bool mergeEntry=false) |
| Substitute the given scoped keyword (which is prefixed by '$'). | |
| entry * | add (entry *entryPtr, bool mergeEntry=false) |
| Add a new entry. | |
| entry * | add (const entry &e, bool mergeEntry=false) |
| Add an entry. | |
| entry * | add (const keyType &k, const word &v, bool overwrite=false) |
| Add a word entry. | |
| entry * | add (const keyType &k, const string &v, bool overwrite=false) |
| Add a string entry. | |
| entry * | add (const keyType &k, const label v, bool overwrite=false) |
| Add a label entry. | |
| entry * | add (const keyType &k, const scalar v, bool overwrite=false) |
| Add a scalar entry. | |
| entry * | add (const keyType &k, const dictionary &d, bool mergeEntry=false) |
| Add a dictionary entry. | |
| template<class T> | |
| entry * | add (const keyType &k, const T &v, bool overwrite=false) |
| Add a T entry. | |
| entry * | set (entry *entryPtr) |
| Assign a new entry, overwriting any existing entry. | |
| entry * | set (const entry &e) |
| Assign a new entry, overwriting any existing entry. | |
| entry * | set (const keyType &k, const dictionary &v) |
| Assign a dictionary entry, overwriting any existing entry. | |
| entry * | set (const keyType &k, std::nullptr_t) |
| Assign an empty primitive entry, overwriting any existing entry. | |
| entry * | set (const keyType &k, const UList< token > &tokens) |
| Assign a primitive entry from a list of tokens, overwriting any existing entry. | |
| entry * | set (const keyType &k, List< token > &&tokens) |
| Assign a primitive entry from a list of tokens, overwriting any existing entry. | |
| template<class T> | |
| entry * | set (const keyType &k, const T &v) |
| Assign a T entry, overwriting any existing entry. | |
| bool | remove (const word &keyword) |
| Remove an entry specified by keyword. | |
| bool | changeKeyword (const keyType &oldKeyword, const keyType &newKeyword, bool overwrite=false) |
| Change the keyword for an entry,. | |
| bool | merge (const dictionary &dict) |
| Merge entries from the given dictionary. | |
| void | clear () |
| Clear the dictionary. | |
| void | transfer (dictionary &dict) |
| Transfer the contents of the argument and annul the argument. | |
| void | checkITstream (const ITstream &is, const word &keyword) const |
| Check after reading if the input token stream has unconsumed tokens remaining or if there were no tokens in the first place. | |
| bool | read (Istream &is) |
| Read dictionary from Istream (discards the header). Reads entries until EOF or when the first token is a '{' character, it will stop reading at the matching '}' character. | |
| bool | read (Istream &is, bool keepHeader) |
| Read dictionary from Istream (optionally keeping the header) Reads entries until EOF or when the first token is a '{' character, it will stop reading at the matching '}' character. | |
| void | writeEntry (Ostream &os) const |
| Write sub-dictionary with its dictName as its header. | |
| void | writeEntry (const keyType &keyword, Ostream &os) const |
| Write sub-dictionary with the keyword as its header. | |
| void | writeEntries (Ostream &os, const bool extraNewLine=false) const |
| Write dictionary entries. | |
| void | write (Ostream &os, const bool subDict=true) const |
| Write dictionary, normally with sub-dictionary formatting. | |
| const_searcher | csearch (const word &keyword, enum keyType::option matchOpt=keyType::REGEX) const |
| Search dictionary for given keyword. | |
| const_searcher | search (const word &keyword, enum keyType::option matchOpt=keyType::REGEX) const |
| Search dictionary for given keyword. | |
| searcher | search (const word &keyword, enum keyType::option matchOpt=keyType::REGEX) |
| Search dictionary for given keyword. | |
| const_searcher | csearchScoped (const word &keyword, enum keyType::option matchOpt) const |
| Search using scoping. | |
| const_searcher | searchScoped (const word &keyword, enum keyType::option matchOpt) const |
| Search using dot or slash scoping. | |
| searcher | searchScoped (const word &keyword, enum keyType::option matchOpt) |
| Search using dot or slash scoping. | |
| const dictionary * | cfindScopedDict (const fileName &dictPath) const |
| Locate a sub-dictionary using slash-scoping. | |
| const dictionary * | findScopedDict (const fileName &dictPath) const |
| Locate a sub-dictionary using slash-scoping. | |
| dictionary * | findScopedDict (const fileName &dictPath) |
| Locate a sub-dictionary using slash-scoping. | |
| dictionary * | makeScopedDict (const fileName &dictPath) |
| Locate existing or create sub-dictionary using slash-scoping. | |
| 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. | |
| const entry * | findCompat (const word &keyword, std::initializer_list< std::pair< const char *, int > > compat, enum keyType::option matchOpt) const |
| Find and return an entry pointer if present, or return a nullptr, using any compatibility names if needed. | |
| 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. | |
| const entry & | lookupEntryCompat (const word &keyword, std::initializer_list< std::pair< const char *, int > > compat, enum keyType::option matchOpt) const |
| Find and return an entry if present, otherwise FatalIOError, using any compatibility names if needed. | |
| ITstream & | lookupCompat (const word &keyword, std::initializer_list< std::pair< const char *, int > > compat, enum keyType::option matchOpt=keyType::REGEX) const |
| Find and return an entry data stream, using any compatibility names if needed. | |
| template<class T> | |
| T | getCompat (const word &keyword, std::initializer_list< std::pair< const char *, int > > compat, enum keyType::option matchOpt=keyType::REGEX) const |
| Find and return a T using any compatibility names if needed. FatalIOError if not found, or if there are excess tokens. | |
| 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 |
| Find and return a T, or return the given default value using any compatibility names if needed. | |
| 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, IOobjectOption::readOption readOpt=IOobjectOption::MUST_READ) const |
| Find entry and assign to T val using any compatibility names if needed. FatalIOError if there are excess tokens. | |
| 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 |
| Find an entry if present, and assign to T val using any compatibility names if needed. FatalIOError if it is found and there are excess tokens. | |
| void | operator= (const dictionary &rhs) |
| Copy assignment. | |
| void | operator+= (const dictionary &rhs) |
| Include entries from the given dictionary. | |
| void | operator|= (const dictionary &rhs) |
| Conditionally include entries from the given dictionary. | |
| void | operator<<= (const dictionary &rhs) |
| Unconditionally include entries from the given dictionary. | |
| bool | getBool (const word &keyword, enum keyType::option matchOpt=keyType::REGEX) const |
| Same as get<bool>(const word&, keyType::option). | |
| label | getLabel (const word &keyword, enum keyType::option matchOpt=keyType::REGEX) const |
| Same as get<label>(const word&, keyType::option). | |
| scalar | getScalar (const word &keyword, enum keyType::option matchOpt=keyType::REGEX) const |
| Same as get<scalar>(const word&, keyType::option). | |
| string | getString (const word &keyword, enum keyType::option matchOpt=keyType::REGEX) const |
| Same as get<string>(const word&, keyType::option). | |
| word | getWord (const word &keyword, enum keyType::option matchOpt=keyType::REGEX) const |
| Same as get<word>(const word&, keyType::option). | |
| fileName | getFileName (const word &keyword, enum keyType::option matchOpt=keyType::REGEX) const |
| Same as get<fileName>(const word&, keyType::option). | |
| bool | isDict (const word &keyword, enum keyType::option matchOpt=keyType::REGEX) const |
| Check for existence of a sub-dictionary. Generally prefer findDict() for more flexibility. | |
| template<class T> | |
| T | lookupOrDefault (const word &keyword, const T &deflt, enum keyType::option matchOpt=keyType::REGEX) const |
| Same as getOrDefault(). | |
| template<class T> | |
| T | lookupOrAddDefault (const word &keyword, const T &deflt, enum keyType::option matchOpt=keyType::REGEX) |
| Same as getOrAdd(). | |
| ITstream & | operator[] (const word &keyword) const |
| Deprecated(2018-07) - use lookup() method. | |
| bool | found (const word &keyword, bool recursive, bool patternMatch=true) const |
| Deprecated(2018-10). | |
| entry * | lookupEntryPtr (const word &keyword, bool recursive, bool patternMatch) |
| Deprecated(2018-10). | |
| const entry * | lookupEntryPtr (const word &keyword, bool recursive, bool patternMatch) const |
| Deprecated(2018-10). | |
| const entry * | lookupScopedEntryPtr (const word &keyword, bool recursive, bool patternMatch) const |
| Deprecated(2018-10). | |
| const dictionary * | subDictPtr (const word &keyword) const |
| Deprecated(2018-10). | |
| dictionary * | subDictPtr (const word &keyword) |
| Deprecated(2018-10) Find and return a sub-dictionary pointer if present. | |
| const entry & | lookupEntry (const word &keyword, bool recursive, bool patternMatch) const |
| Deprecated(2018-10). | |
| ITstream & | lookup (const word &keyword, bool recursive, bool patternMatch=true) const |
| Deprecated(2018-10). | |
| template<class T> | |
| T | lookupOrDefault (const word &keyword, const T &deflt, bool recursive, bool patternMatch=true) const |
| Deprecated(2018-10). | |
| template<class T> | |
| T | lookupOrAddDefault (const word &keyword, const T &deflt, bool recursive, bool patternMatch=true) |
| Deprecated(2018-10). | |
| template<class T> | |
| bool | readIfPresent (const word &keyword, T &val, bool recursive, bool patternMatch=true) const |
| Deprecated(2018-10). | |
| template<class T> | |
| T | lookupType (const word &keyword, bool recursive=false, bool patternMatch=true) const |
| Deprecated(2018-10) find and return a T. | |
| 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< DLListBase, T > | |
| ILList ()=default | |
| Default construct. | |
| ILList (T *item) | |
| Construct and add initial item pointer. | |
| ILList (Istream &is) | |
| Construct from Istream. | |
| ILList (const ILList< DLListBase, T > &lst) | |
| Copy construct using the 'clone()' method for each element. | |
| ILList (ILList< DLListBase, T > &&lst) | |
| Move construct. | |
| ILList (const ILList< DLListBase, T > &lst, const CloneArg &cloneArg) | |
| Copy constructor with additional argument for clone 'clone()'. | |
| ILList (Istream &is, const INew &inew) | |
| Construct from Istream using given Istream constructor class. | |
| ~ILList () | |
| Destructor. Calls clear(). | |
| void | clear () |
| Clear the contents of the list. | |
| void | pop_front (label n=1) |
| Remove first element(s) from the list (deletes pointers). | |
| bool | erase (T *item) |
| Remove the specified element from the list and delete it. | |
| void | transfer (ILList< DLListBase, T > &lst) |
| Transfer the contents of the argument into this List and annul the argument list. | |
| void | operator= (const ILList< DLListBase, T > &lst) |
| Copy assignment using the 'clone()' method for each element. | |
| void | operator= (ILList< DLListBase, T > &&lst) |
| Move assignment. | |
| Public Member Functions inherited from UILList< DLListBase, T > | |
| UILList ()=default | |
| Default construct. | |
| UILList (T *item) | |
| Construct and add initial item pointer. | |
| UILList (const UILList< DLListBase, T > &list) | |
| Construct as copy. | |
| T * | front () |
| The first entry in the list. | |
| const T * | front () const |
| The first entry in the list (const access). | |
| T * | back () |
| The last entry in the list. | |
| const T * | back () const |
| The last entry in the list (const access). | |
| T * | removeHead () |
| Remove and return head. | |
| T * | remove (T *item) |
| Remove and return element. | |
| T * | remove (iterator &iter) |
| Remove and return item specified by iterator. | |
| void | operator= (const UILList< DLListBase, T > &lst) |
| Copy assignment. | |
| bool | operator== (const UILList< DLListBase, T > &lst) const |
| Equality. True both lists are element-wise equal. | |
| bool | operator!= (const UILList< DLListBase, T > &lst) const |
| The opposite of the equality operation. Takes linear time. | |
| Ostream & | writeList (Ostream &os, const label shortLen=0) const |
| Write UILList with line-breaks when length exceeds shortLen. | |
| iterator | begin () |
| Iterator to first item in list with non-const access. | |
| const_iterator | cbegin () const |
| Iterator to first item in list with const access. | |
| reverse_iterator | rbegin () |
| Iterator to last item in list with non-const access. | |
| const_reverse_iterator | crbegin () const |
| Iterator to last item in list with const access. | |
| const_iterator | begin () const |
| Iterator to first item in list with const access. | |
| const_reverse_iterator | rbegin () const |
| Iterator to last item in list with const access. | |
| const iterator & | end () |
| End of list for forward iterators. | |
| const const_iterator & | cend () const |
| End of list for forward iterators. | |
| const reverse_iterator & | rend () |
| End of list for reverse iterators. | |
| const const_reverse_iterator & | crend () const |
| End of list for reverse iterators. | |
| const const_iterator & | end () const |
| End of list for forward iterators. | |
| const const_reverse_iterator & | rend () const |
| End of list for reverse iterators. | |
| T * | first () |
| The first entry in the list. | |
| const T * | first () const |
| The first entry in the list (const access). | |
| T * | last () |
| The last entry in the list. | |
| const T * | last () const |
| The last entry in the list (const access). | |
| Public Member Functions inherited from DLListBase | |
| DLListBase ()=default | |
| Default construct. | |
| DLListBase (const DLListBase &)=delete | |
| No copy construct. | |
| void | operator= (const DLListBase &)=delete |
| No copy assignment. | |
| ~DLListBase ()=default | |
| Destructor. | |
| bool | empty () const noexcept |
| True if the list is empty. | |
| label | size () const noexcept |
| The number of elements in list. | |
| link * | front () |
| Return first entry. | |
| const link * | front () const |
| Return const access to first entry. | |
| link * | back () |
| Return last entry. | |
| const link * | back () const |
| Return const access to last entry. | |
| void | push_front (link *item) |
| Add at front of list. | |
| void | push_back (link *item) |
| Add at back of list. | |
| bool | swapUp (link *item) |
| Swap this element with the one above unless it is at the top. | |
| bool | swapDown (link *item) |
| Swap this element with the one below unless it is at the bottom. | |
| link * | removeHead () |
| Remove and return first entry. | |
| link * | remove (link *item) |
| Remove and return element. | |
| link * | remove (iterator &iter) |
| Remove and return element specified by iterator. | |
| link * | replace (link *oldLink, link *newLink) |
| Replace oldLink with newLink and return element. | |
| link * | replace (iterator &oldIter, link *newitem) |
| Replace oldIter with newItem and return element. | |
| void | clear () |
| Clear the list. | |
| void | swap (DLListBase &lst) |
| Swap the contents of the list. | |
| void | transfer (DLListBase &lst) |
| Transfer the contents of the argument into this list and annul the argument list. | |
| iterator | begin () |
| Iterator to first item in list with non-const access. | |
| const_iterator | cbegin () const |
| Iterator to first item in list with const access. | |
| const_iterator | crbegin () const |
| Iterator to last item in list with const access. | |
| const iterator & | end () |
| End of list for iterators. | |
| const const_iterator & | cend () const |
| End of list for iterators. | |
| const const_iterator & | crend () const |
| End of list for reverse iterators. | |
| link * | first () |
| Return first entry. | |
| const link * | first () const |
| Return const access to first entry. | |
| link * | last () |
| Return last entry. | |
| const link * | last () const |
| Return const access to last entry. | |
| void | prepend (link *item) |
| Add at front of list. | |
| void | append (link *item) |
| Add at back of list. | |
Protected Member Functions | |
| void | initialise () |
| Update sizes of fields related to the constraints. | |
| void | zeroUpdates () |
| Zero the updates computed in the previous optimisation cycle. | |
| void | solveDualProblem () |
| Solve the dual problem for computing the Lagrange multiplier using a Newton solver. | |
| tmp< scalarField > | computeResiduals () |
| Compute and return residuals based on the current solution. | |
| void | computeNewtonDirection () |
| Compute direction for the Newton problem. | |
| scalar | lineSearch () |
| Perform line search and return max residual corresponding to the updated solution. | |
| void | updateSolution (const scalar step) |
| Update the current solution using the known direction and the given step length. | |
| void | adjustStep (scalar &step, const scalar value, const scalar update) |
| Adjust step to satisfy cireteria. | |
| void | updateViolatedConstraintsSubsets () |
| Update the constraint subsets. | |
| void | updateNullAndRangeSpaceSubsets () |
| Update the constraint subsets. | |
| void | updateViolatedIndices (const label i, const scalarField &constraints) |
| Update violated constraints indices (iTilda and iTildaEps). | |
| void | updateCorrectionIndices (const label i, const scalarField &LagrangeMults, const scalarField &dual) |
| Update constraint indices related to the null and range space part of the correction. | |
| void | correction () |
| Compute the update of the design variables as a combination of null space and range space parts. | |
| tmp< scalarField > | Av (const scalarField &v, const labelListList &subsets) |
| A & v. | |
| tmp< scalarField > | ATv (const scalarField &v, const labelListList &subsets) |
| A.T & v. | |
| tmp< scalarField > | activeConstraints (const labelListList &subsets) |
| Collect all constraint values corresponding to the provided indices. | |
| tmp< scalarField > | constraintRelatedUpdate (const scalarField &rhs, const labelListList &subsets) |
| Computes the parts of ksiJ and ksiC that require a system solution. | |
| void | statistics (const labelListList &subset, const word &description) |
| Print statistics on the number of flow- and bound-related constraints included in the subset. | |
| Protected Member Functions inherited from updateMethod | |
| const scalarField | leftMult (const scalarField &, const SquareMatrix< scalar > &) |
| const scalarField | rightMult (const SquareMatrix< scalar > &, const scalarField &) |
| SquareMatrix< scalar > | outerProd (const scalarField &, const scalarField &) |
| SquareMatrix< scalar > | inv (SquareMatrix< scalar > A) |
| scalar | globalSum (const scalarField &field) |
| Compute either global or local sum, based on globalSum flag. | |
| scalar | globalSum (tmp< scalarField > &tfield) |
| Compute either global or local sum, based on globalSum flag. | |
| label | globalSum (const label) |
| Compute either global or local sum, based on globalSum flag. | |
| tmp< scalarField > | readOrZeroField (const word &name, const label size) |
| Helper function to either read a scalarField of certain size from a dictionary, or construct a zero field. | |
| Protected Member Functions inherited from regIOobject | |
| bool | readHeaderOk (const IOstreamOption::streamFormat fmt, const word &typeName) |
| Helper: check readOpt flags and read if necessary. | |
| Protected Member Functions inherited from IOobject | |
| void | setBad (const string &s) |
| Set the object state to bad. | |
| Protected Member Functions inherited from DLListBase | |
| template<class IteratorType> | |
| IteratorType | iterator_first () const |
| Return iterator to first item or end-iterator if list is empty. | |
| template<class IteratorType> | |
| IteratorType | iterator_last () const |
| Return iterator to last item or end-iterator if list is empty. | |
Protected Attributes | |
| bool | includeBoundConstraints_ |
| Are bound constraints included? | |
| scalarField | mu_ |
| Lagrange multipliers for flow-reated constraints. | |
| scalarField | l_ |
| Lagrange multipliers for the lower bound constraints. | |
| scalarField | u_ |
| Lagrange multipliers for the upper bound constraints. | |
| bool | solveDualProblem_ |
| Solve the dual problem? | |
| scalarField | dualMu_ |
| Lagrange multipliers of the dual problem for flow-related constraints. | |
| scalarField | dualL_ |
| Lagrange multipliers of the dual problem for the lower bound constraints. | |
| scalarField | dualU_ |
| Lagrange multipliers of the dual problem for the upper bound constraints. | |
| labelListList | iTilda_ |
| List of saturated or violated constraints. | |
| labelListList | iTildaEps_ |
| List of saturated or violated constraints (up to epsConstr_). | |
| labelListList | iHat_ |
| List of constraints that must remain active. | |
| labelListList | iRangeSpace_ |
| List of constraints the values of which need to be reduced. | |
| scalarField | deltaMu_ |
| scalarField | deltaL_ |
| scalarField | deltaU_ |
| scalarField | deltaDualMu_ |
| scalarField | deltaDualL_ |
| scalarField | deltaDualU_ |
| scalar | eps_ |
| Infinitesimal quantity. | |
| label | maxNewtonIters_ |
| Maxmimum number of Newton iterations for the dual problem. | |
| label | maxLineSearchIters_ |
| Maxmimum number of line search iterations for each Newton iteration of the dual problem. | |
| label | maxCGIters_ |
| Maxmimum number of CG iterations for obtaining the null space and range space updates. | |
| scalar | dualTolerance_ |
| Tolerance of the dual problem. | |
| scalar | epsConstr_ |
| Value for considering a constraint as marginally active. | |
| scalar | epsPerturb_ |
| Value to perturb the design variables by, if all of them lay on their bounds at the beginning of the optimisation. | |
| scalar | aJ_ |
| Multiplier of the null space update. | |
| scalar | aC_ |
| Multiplier of the range space update. | |
| bool | adaptiveStep_ |
| Change aJ and aC adaptively. | |
| label | lastAcceleratedCycle_ |
| Last cycle on which to reset aJ. | |
| autoPtr< scalar > | maxDVChange_ |
| Max change of the design variables, pertaining to the objective reduction. | |
| bool | strictMaxDVChange_ |
| Whether to impose maxDVChange strictly on all optimisation cycles or just up to the lastAcceleratedCycle. | |
| scalar | targetConstraintReduction_ |
| Target reduction of active constraints (range in [0-1]). | |
| scalar | bcMult_ |
| Downplay the importance of the bound constraint reduction by this ammount. | |
| Protected Attributes inherited from updateMethod | |
| const fvMesh & | mesh_ |
| const dictionary | dict_ |
| autoPtr< designVariables > & | designVars_ |
| Design variables. | |
| label | nConstraints_ |
| Number of constraints. | |
| const labelList & | activeDesignVars_ |
| Map to active design variables. | |
| scalarField | objectiveDerivatives_ |
| Derivatives of the objective functions. | |
| PtrList< scalarField > | constraintDerivatives_ |
| Derivatives of the constraints. | |
| scalar | objectiveValue_ |
| Objective value. | |
| autoPtr< scalar > | objectiveValueOld_ |
| Old objective value. | |
| scalarField | cValues_ |
| Constraint values. | |
| scalarField | correction_ |
| Design variables correction. | |
| scalarField | cumulativeCorrection_ |
| Cumulative design variables correction throughout the optimisation loop. | |
| scalar | eta_ |
| Step multiplying the correction. | |
| label | counter_ |
| Optimisation cycle count. | |
| bool | initialEtaSet_ |
| Is initially set? | |
| word | correctionFolder_ |
| Folder storing the corrections to file. | |
| bool | globalSum_ |
| Whether to use gSum or sum in the inner products. | |
Additional Inherited Members | |
| Public Types inherited from IOobject | |
| enum | objectState : char { GOOD , BAD } |
| Enumeration defining the valid states of an IOobject. More... | |
| enum | fileCheckTypes : char { timeStamp = 1 , timeStampMaster = 3 , inotify = 4 , inotifyMaster = 6 } |
| Enumeration defining the file checking options (time-stamp | inotify) | (all | masterOnly). More... | |
| Public Types inherited from IOobjectOption | |
| enum | readOption : unsigned char { NO_READ = 0 , MUST_READ = 0x1 , READ_MODIFIED = 0x3 , MUST_READ_IF_MODIFIED = 0x3 , LAZY_READ = 0x4 , READ_IF_PRESENT = 0x4 } |
| Enumeration defining read preferences. More... | |
| enum | writeOption : unsigned char { NO_WRITE = 0 , AUTO_WRITE = 0x10 } |
| Enumeration defining write preferences. More... | |
| enum | registerOption : unsigned char { NO_REGISTER = 0 , REGISTER = 1 , LEGACY_REGISTER = 2 } |
| Enumeration for use with registerObject(). Values map to bool (false/true). More... | |
| enum class | Layout : unsigned char { regular , global } |
| The layout of the case structure. More... | |
| Public Types inherited from dictionary | |
| typedef Searcher< true > | const_searcher |
| Searcher with const access. | |
| typedef Searcher< false > | searcher |
| Searcher with non-const access. | |
| Public Types inherited from UILList< DLListBase, T > | |
| typedef T | value_type |
| Type of values stored. | |
| typedef T * | pointer |
| Pointer for value_type. | |
| typedef const T * | const_pointer |
| Const pointer for value_type. | |
| typedef T & | reference |
| Reference for value_type. | |
| typedef const T & | const_reference |
| Const reference for value_type. | |
| typedef label | size_type |
| The type that can represent the container size. | |
| typedef label | difference_type |
| The difference between iterator objects. | |
| using | base_iterator |
| using | const_base_iterator |
| Static Public Member Functions inherited from updateMethod | |
| static autoPtr< updateMethod > | New (const fvMesh &mesh, const dictionary &dict, autoPtr< designVariables > &designVars, const label nConstraints) |
| Return a reference to the selected turbulence model. | |
| Static Public Member Functions inherited from localIOdictionary | |
| static dictionary | readContents (const IOobject &io) |
| Read and return contents, testing for "dictionary" type. The IOobject will not be registered. | |
| static dictionary | readContents (const IOobject &io, const word &wantedType) |
| Read and return contents, testing for expected type. The IOobject will not be registered. | |
| Static Public Member Functions inherited from regIOobject | |
| template<class Type> | |
| static Type & | store (Type *p) |
| Transfer pointer ownership to its registry. | |
| template<class Type> | |
| static Type & | store (std::unique_ptr< Type > &&ptr) |
| Transfer pointer ownership to its registry. | |
| template<class Type> | |
| static Type & | store (autoPtr< Type > &ptr) |
| Transfer pointer ownership to its registry. | |
| template<class Type> | |
| static Type & | store (autoPtr< Type > &&ptr) |
| Transfer pointer ownership to its registry. | |
| template<class Type> | |
| static Type & | store (refPtr< Type > &ptr) |
| Transfer pointer ownership to its registry. | |
| template<class Type> | |
| static Type & | store (refPtr< Type > &&ptr) |
| Transfer pointer ownership to its registry. | |
| template<class Type> | |
| static Type & | store (tmp< Type > &ptr) |
| Transfer pointer ownership to its registry. | |
| template<class Type> | |
| static Type & | store (tmp< Type > &&ptr) |
| Transfer pointer ownership to its registry. | |
| Static Public Member Functions inherited from IOobject | |
| static bool | bannerEnabled () noexcept |
| Status of output file banner. | |
| static bool | bannerEnabled (bool on) noexcept |
| Enable/disable output file banner. | |
| static bool | fileModificationChecking_masterOnly () noexcept |
| Test fileModificationChecking for master-only. | |
| static bool | fileNameComponents (const fileName &path, fileName &instance, fileName &local, word &name) |
| Split path into instance, local, name components. | |
| template<class StringType> | |
| static word | groupName (StringType base, const word &group) |
| Create dot-delimited name.group string. | |
| static word | group (const word &name) |
| Return group (extension part of name). | |
| static word | member (const word &name) |
| Return member (name without the extension). | |
| static word | scopedName (const std::string &scope, const word &name) |
| Create scope:name or scope_name string. | |
| static word | scopedName (const std::string &scope, const word &name1, const word &name2) |
| Create scope:name1:name2 or scope_name1_name2 string. | |
| static IOobject | selectIO (const IOobject &io, const fileName &altFile, const word &ioName="") |
| Return the IOobject, but also consider an alternative file name. | |
| static Ostream & | writeBanner (Ostream &os, const bool noSyntaxHint=false) |
| Write the standard OpenFOAM file/dictionary banner. | |
| static Ostream & | writeDivider (Ostream &os) |
| Write the standard file section divider. | |
| static Ostream & | writeEndDivider (Ostream &os) |
| Write the standard end file divider. | |
| Static Public Member Functions inherited from IOobjectOption | |
| static bool | isAnyRead (readOption opt) noexcept |
| True if any reading may be required (ie, != NO_READ). | |
| static bool | isReadRequired (readOption opt) noexcept |
| True if (MUST_READ | READ_MODIFIED) bits are set. | |
| static bool | isReadOptional (readOption opt) noexcept |
| True if (LAZY_READ) bits are set [same as READ_IF_PRESENT]. | |
| static readOption | lazierRead (readOption opt) noexcept |
| Downgrade readOption optional (LAZY_READ), leaves NO_READ intact. | |
| Static Public Member Functions inherited from dictionary | |
| static int | reportOptional () noexcept |
| Return the state of reporting optional (default) entries. | |
| static int | reportOptional (const int level) noexcept |
| Change the state of reporting optional (default) entries. | |
| static autoPtr< dictionary > | New (Istream &is) |
| Construct top-level dictionary on freestore from Istream. | |
| Public Attributes inherited from dictionary | |
| friend | const_searcher |
| Declare friendship with the searcher classes. | |
| friend | searcher |
| Static Public Attributes inherited from IOobject | |
| static const Enum< fileCheckTypes > | fileCheckTypesNames |
| Names for the fileCheckTypes. | |
| static char | scopeSeparator |
| Character for scoping object names (':' or '_'). | |
| static fileCheckTypes | fileModificationChecking |
| Type of file modification checking. | |
| static float | fileModificationSkew |
| Time skew (seconds) for file modification checks. | |
| static int | maxFileModificationPolls |
| Max number of times to poll for file modification changes. | |
| Static Public Attributes inherited from dictionary | |
| static int | writeOptionalEntries |
| Report optional keywords and values if not present in dictionary. | |
| static const dictionary | null |
| An empty dictionary, which is also the parent for all dictionaries. | |
| static refPtr< OSstream > | reportingOutput |
| Output location when reporting default values. | |
| Static Protected Member Functions inherited from IOobject | |
| static void | writeHeaderContent (Ostream &os, const IOobject &io, const word &objectType, const dictionary *metaDataDict=nullptr) |
| Helper: write content for FoamFile IOobject header with optional meta information. | |
| static void | writeHeaderContent (dictionary &dict, const IOobject &io, const word &objectType, IOstreamOption streamOpt, const dictionary *metaDataDict=nullptr) |
| Helper: write dictionary content for FoamFile header with optional meta information. | |
| Static Protected Member Functions inherited from DLListBase | |
| template<class IteratorType> | |
| static const IteratorType & | iterator_end () |
| Factory method to return an iterator end. | |
| template<class IteratorType> | |
| static const IteratorType & | iterator_rend () |
| Factory method to return an iterator reverse end. | |
| Static Protected Attributes inherited from regIOobject | |
| static bool | masterOnlyReading = false |
| To flag master-only reading of objects. | |
Update design variables using a null space approach. Can handle inequality and bound constraints.
Reference:
Feppon, F., Allaire, G., & Dapogny, C. (2020).
Null space gradient flows for constrained optimization with
applications to shape optimization.
ESAIM: COCV, 26, 90.
https://doi.org/10.1051/cocv/2020015
Definition at line 59 of file nullSpace.H.
| nullSpace | ( | const fvMesh & | mesh, |
| const dictionary & | dict, | ||
| autoPtr< designVariables > & | designVars, | ||
| const label | nConstraints, | ||
| const word & | type ) |
Construct from components.
Definition at line 919 of file nullSpace.C.
References aC_, adaptiveStep_, aJ_, bcMult_, updateMethod::coeffsDict(), deltaDualL_, deltaDualMu_, deltaDualU_, deltaL_, deltaMu_, deltaU_, updateMethod::designVars_, dict, dualL_, dualMu_, dualTolerance_, dualU_, Foam::endl(), eps_, epsConstr_, epsPerturb_, Foam::exit(), Foam::FatalError, FatalErrorInFunction, found, dictionary::get(), dictionary::getOrDefault(), updateMethod::globalSum_, if(), iHat_, includeBoundConstraints_, iRangeSpace_, iTilda_, iTildaEps_, l_, lastAcceleratedCycle_, maxCGIters_, maxDVChange_, maxLineSearchIters_, maxNewtonIters_, mesh, mu_, updateMethod::nConstraints(), updateMethod::nConstraints_, Foam::nl, UPstream::reduceOr(), solveDualProblem_, strictMaxDVChange_, Foam::tab, targetConstraintReduction_, u_, update(), WarningInFunction, and Foam::Zero.

|
virtualdefault |
|
protected |
Update sizes of fields related to the constraints.
Definition at line 47 of file nullSpace.C.
References deltaDualL_, deltaDualMu_, deltaDualU_, deltaL_, deltaMu_, deltaU_, dualL_, dualMu_, dualU_, eps_, iTildaEps_, l_, mu_, Foam::nl, nu, u_, updateViolatedConstraintsSubsets(), and Foam::Zero.
Referenced by computeCorrection().


|
protected |
Zero the updates computed in the previous optimisation cycle.
Definition at line 72 of file nullSpace.C.
References deltaDualL_, deltaDualMu_, deltaDualU_, deltaL_, deltaMu_, deltaU_, and Foam::Zero.
Referenced by computeNewtonDirection().

|
protected |
Solve the dual problem for computing the Lagrange multiplier using a Newton solver.
Definition at line 83 of file nullSpace.C.
References computeNewtonDirection(), computeResiduals(), DebugInfo, dualTolerance_, Foam::endl(), eps_, updateMethod::globalSum(), Foam::gMax(), Foam::Info, iTildaEps_, lineSearch(), Foam::mag(), maxNewtonIters_, updateMethod::mesh_, mu_, updateMethod::nConstraints(), Foam::nl, DLListBase::size(), and solveDualProblem_.
Referenced by computeCorrection().


|
protected |
Compute and return residuals based on the current solution.
Definition at line 132 of file nullSpace.C.
References updateMethod::activeDesignVars_, updateMethod::constraintDerivatives_, dualL_, dualMu_, dualU_, eps_, forAll, updateMethod::globalSum(), iTildaEps_, l_, mu_, tmp< T >::New(), Foam::nl, nu, updateMethod::objectiveDerivatives_, tmp< T >::ref(), UList< T >::size(), u_, and Foam::Zero.
Referenced by computeNewtonDirection(), lineSearch(), and solveDualProblem().


|
protected |
Compute direction for the Newton problem.
Definition at line 209 of file nullSpace.C.
References updateMethod::activeDesignVars_, computeResiduals(), updateMethod::constraintDerivatives_, deltaDualL_, deltaDualMu_, deltaDualU_, deltaL_, deltaMu_, deltaU_, dualL_, dualMu_, dualU_, forAll, updateMethod::globalSum(), iTildaEps_, l_, mu_, Foam::nl, nu, Foam::rhs(), UList< T >::size(), solve(), u_, Foam::Zero, and zeroUpdates().
Referenced by solveDualProblem().


|
protected |
Perform line search and return max residual corresponding to the updated solution.
Definition at line 321 of file nullSpace.C.
References adjustStep(), computeResiduals(), DebugInfo, deltaDualL_, deltaDualMu_, deltaDualU_, deltaL_, deltaMu_, deltaU_, dualL_, dualMu_, dualU_, Foam::endl(), eps_, forAll, updateMethod::globalSum(), updateMethod::globalSum_, Foam::gMax(), Foam::Info, iTildaEps_, l_, Foam::mag(), Foam::magSqr(), maxLineSearchIters_, mu_, Foam::nl, Foam::reduce(), Foam::sqrt(), u_, and updateSolution().
Referenced by solveDualProblem().


|
protected |
Update the current solution using the known direction and the given step length.
Definition at line 419 of file nullSpace.C.
References deltaDualL_, deltaDualMu_, deltaDualU_, deltaL_, deltaMu_, deltaU_, dualL_, dualMu_, dualU_, l_, mu_, and u_.
Referenced by lineSearch().

|
protected |
Adjust step to satisfy cireteria.
Definition at line 405 of file nullSpace.C.
References update().
Referenced by lineSearch().


|
protected |
Update the constraint subsets.
Definition at line 432 of file nullSpace.C.
References updateMethod::activeDesignVars_, updateMethod::cValues_, updateMethod::designVars_, includeBoundConstraints_, iTilda_, iTildaEps_, statistics(), and updateViolatedIndices().
Referenced by initialise().


|
protected |
Update the constraint subsets.
Definition at line 452 of file nullSpace.C.
References dualL_, dualMu_, dualU_, iHat_, iRangeSpace_, iTildaEps_, l_, mu_, solveDualProblem_, statistics(), u_, and updateCorrectionIndices().
Referenced by computeCorrection().


|
protected |
Update violated constraints indices (iTilda and iTildaEps).
Definition at line 471 of file nullSpace.C.
References epsConstr_, forAll, iTilda_, iTildaEps_, DynamicList< T, SizeMin >::push_back(), UList< T >::size(), Foam::subset(), and Foam::Zero.
Referenced by updateViolatedConstraintsSubsets().


|
protected |
Update constraint indices related to the null and range space part of the correction.
Definition at line 503 of file nullSpace.C.
References forAll, iHat_, iRangeSpace_, iTilda_, iTildaEps_, DynamicList< T, SizeMin >::push_back(), DLListBase::size(), UList< T >::size(), Foam::subset(), and Foam::Zero.
Referenced by updateNullAndRangeSpaceSubsets().


|
protected |
Compute the update of the design variables as a combination of null space and range space parts.
Definition at line 544 of file nullSpace.C.
References aC_, activeConstraints(), updateMethod::activeDesignVars_, adaptiveStep_, aJ_, ATv(), Av(), updateMethod::constraintDerivatives_, constraintRelatedUpdate(), updateMethod::correction_, updateMethod::counter_, DebugInfo, Foam::endl(), updateMethod::eta_, g, updateMethod::globalSum(), updateMethod::globalSum_, Foam::gMax(), iHat_, Foam::Info, iRangeSpace_, lastAcceleratedCycle_, Foam::mag(), maxDVChange_, Foam::min(), updateMethod::objectiveDerivatives_, Foam::reduce(), Foam::sqr(), Foam::sqrt(), strictMaxDVChange_, targetConstraintReduction_, and Foam::Zero.

|
protected |
A & v.
where A is the Jacobian of all constraints, identified by the labelList addressings, w.r.t. the active design variables
Definition at line 643 of file nullSpace.C.
References updateMethod::activeDesignVars_, updateMethod::constraintDerivatives_, Foam::exit(), Foam::FatalError, FatalErrorInFunction, forAll, updateMethod::globalSum(), tmp< T >::New(), Foam::nl, nu, UList< T >::size(), and Foam::Zero.
Referenced by correction().


|
protected |
A.T & v.
where A is the Jacobian of all constraints, identified by the labelList addressings, w.r.t. the active design variables
Definition at line 687 of file nullSpace.C.
References updateMethod::activeDesignVars_, updateMethod::constraintDerivatives_, Foam::exit(), Foam::FatalError, FatalErrorInFunction, forAll, tmp< T >::New(), Foam::nl, nu, UList< T >::size(), and Foam::Zero.
Referenced by correction(), and meritFunctionDirectionalDerivative().


|
protected |
Collect all constraint values corresponding to the provided indices.
Definition at line 731 of file nullSpace.C.
References updateMethod::activeDesignVars_, bcMult_, updateMethod::cValues_, updateMethod::designVars_, tmp< T >::New(), Foam::nl, nu, UList< T >::size(), and Foam::Zero.
Referenced by computeMeritFunction(), correction(), and meritFunctionDirectionalDerivative().


|
protected |
Computes the parts of ksiJ and ksiC that require a system solution.
Formulated in terms of the flow constraints, which are usually few
Definition at line 769 of file nullSpace.C.
References updateMethod::activeDesignVars_, updateMethod::constraintDerivatives_, Foam::exit(), Foam::FatalError, FatalErrorInFunction, forAll, updateMethod::globalSum(), updateMethod::globalSum_, tmp< T >::New(), Foam::nl, nu, Foam::reduce(), Foam::rhs(), UList< T >::size(), solve(), and Foam::Zero.
Referenced by computeMeritFunction(), correction(), and meritFunctionDirectionalDerivative().


|
protected |
Print statistics on the number of flow- and bound-related constraints included in the subset.
Definition at line 893 of file nullSpace.C.
References DebugInfo, Foam::endl(), updateMethod::globalSum(), includeBoundConstraints_, Foam::nl, DLListBase::size(), and Foam::subset().
Referenced by updateNullAndRangeSpaceSubsets(), and updateViolatedConstraintsSubsets().


| TypeName | ( | "nullSpace" | ) |
Runtime type information.
References dict, mesh, and updateMethod::nConstraints().

|
virtual |
Compute design variables correction.
Implements updateMethod.
Definition at line 1065 of file nullSpace.C.
References Foam::correction(), updateMethod::counter_, initialise(), solveDualProblem(), and updateNullAndRangeSpaceSubsets().

|
virtual |
Compute the merit function for line search.
Reimplemented from updateMethod.
Definition at line 1085 of file nullSpace.C.
References aC_, activeConstraints(), updateMethod::activeDesignVars_, aJ_, b, constraintRelatedUpdate(), updateMethod::cValues_, updateMethod::designVars_, forAll, g, updateMethod::globalSum(), updateMethod::globalSum_, iTildaEps_, l_, mu_, updateMethod::objectiveValue_, Foam::reduce(), u_, and Foam::Zero.

|
virtual |
Directional derivative of the merit function, in the direction of the correction.
Reimplemented from updateMethod.
Definition at line 1134 of file nullSpace.C.
References aC_, activeConstraints(), updateMethod::activeDesignVars_, aJ_, ATv(), constraintRelatedUpdate(), updateMethod::correction_, updateMethod::designVars_, g, updateMethod::globalSum(), iTildaEps_, l_, mu_, updateMethod::objectiveDerivatives_, Field< Type >::rmap(), DLListBase::size(), Foam::sqr(), u_, and Foam::Zero.

|
virtual |
Write useful quantities to files.
Reimplemented from updateMethod.
Definition at line 1157 of file nullSpace.C.
References aJ_, os(), and updateMethod::writeData().

|
protected |
Are bound constraints included?
Definition at line 71 of file nullSpace.H.
Referenced by nullSpace(), statistics(), and updateViolatedConstraintsSubsets().
|
protected |
Lagrange multipliers for flow-reated constraints.
Definition at line 76 of file nullSpace.H.
Referenced by computeMeritFunction(), computeNewtonDirection(), computeResiduals(), initialise(), lineSearch(), meritFunctionDirectionalDerivative(), nullSpace(), solveDualProblem(), updateNullAndRangeSpaceSubsets(), and updateSolution().
|
protected |
Lagrange multipliers for the lower bound constraints.
Definition at line 81 of file nullSpace.H.
Referenced by computeMeritFunction(), computeNewtonDirection(), computeResiduals(), initialise(), lineSearch(), meritFunctionDirectionalDerivative(), nullSpace(), updateNullAndRangeSpaceSubsets(), and updateSolution().
|
protected |
Lagrange multipliers for the upper bound constraints.
Definition at line 86 of file nullSpace.H.
Referenced by computeMeritFunction(), computeNewtonDirection(), computeResiduals(), initialise(), lineSearch(), meritFunctionDirectionalDerivative(), nullSpace(), updateNullAndRangeSpaceSubsets(), and updateSolution().
|
protected |
Solve the dual problem?
Definition at line 94 of file nullSpace.H.
Referenced by nullSpace(), solveDualProblem(), and updateNullAndRangeSpaceSubsets().
|
protected |
Lagrange multipliers of the dual problem for flow-related constraints.
Definition at line 100 of file nullSpace.H.
Referenced by computeNewtonDirection(), computeResiduals(), initialise(), lineSearch(), nullSpace(), updateNullAndRangeSpaceSubsets(), and updateSolution().
|
protected |
Lagrange multipliers of the dual problem for the lower bound constraints.
Definition at line 106 of file nullSpace.H.
Referenced by computeNewtonDirection(), computeResiduals(), initialise(), lineSearch(), nullSpace(), updateNullAndRangeSpaceSubsets(), and updateSolution().
|
protected |
Lagrange multipliers of the dual problem for the upper bound constraints.
Definition at line 112 of file nullSpace.H.
Referenced by computeNewtonDirection(), computeResiduals(), initialise(), lineSearch(), nullSpace(), updateNullAndRangeSpaceSubsets(), and updateSolution().
|
protected |
List of saturated or violated constraints.
List[0]: flow related constraints List[1]: lower bound constraints List[2]: upper bound constraints Sub-list meaning is the same for all labelListLists that follow
Definition at line 125 of file nullSpace.H.
Referenced by nullSpace(), updateCorrectionIndices(), updateViolatedConstraintsSubsets(), and updateViolatedIndices().
|
protected |
List of saturated or violated constraints (up to epsConstr_).
Definition at line 130 of file nullSpace.H.
Referenced by computeMeritFunction(), computeNewtonDirection(), computeResiduals(), initialise(), lineSearch(), meritFunctionDirectionalDerivative(), nullSpace(), solveDualProblem(), updateCorrectionIndices(), updateNullAndRangeSpaceSubsets(), updateViolatedConstraintsSubsets(), and updateViolatedIndices().
|
protected |
List of constraints that must remain active.
Determines the null space update
Definition at line 137 of file nullSpace.H.
Referenced by correction(), nullSpace(), updateCorrectionIndices(), and updateNullAndRangeSpaceSubsets().
|
protected |
List of constraints the values of which need to be reduced.
Determines the range space update
Definition at line 144 of file nullSpace.H.
Referenced by correction(), nullSpace(), updateCorrectionIndices(), and updateNullAndRangeSpaceSubsets().
|
protected |
Definition at line 150 of file nullSpace.H.
Referenced by computeNewtonDirection(), initialise(), lineSearch(), nullSpace(), updateSolution(), and zeroUpdates().
|
protected |
Definition at line 151 of file nullSpace.H.
Referenced by computeNewtonDirection(), initialise(), lineSearch(), nullSpace(), updateSolution(), and zeroUpdates().
|
protected |
Definition at line 152 of file nullSpace.H.
Referenced by computeNewtonDirection(), initialise(), lineSearch(), nullSpace(), updateSolution(), and zeroUpdates().
|
protected |
Definition at line 153 of file nullSpace.H.
Referenced by computeNewtonDirection(), initialise(), lineSearch(), nullSpace(), updateSolution(), and zeroUpdates().
|
protected |
Definition at line 154 of file nullSpace.H.
Referenced by computeNewtonDirection(), initialise(), lineSearch(), nullSpace(), updateSolution(), and zeroUpdates().
|
protected |
Definition at line 155 of file nullSpace.H.
Referenced by computeNewtonDirection(), initialise(), lineSearch(), nullSpace(), updateSolution(), and zeroUpdates().
|
protected |
Infinitesimal quantity.
Updated during the inner iterations of the dual problem
Definition at line 163 of file nullSpace.H.
Referenced by computeResiduals(), initialise(), lineSearch(), nullSpace(), and solveDualProblem().
|
protected |
Maxmimum number of Newton iterations for the dual problem.
Definition at line 168 of file nullSpace.H.
Referenced by nullSpace(), and solveDualProblem().
|
protected |
Maxmimum number of line search iterations for each Newton iteration of the dual problem.
Definition at line 174 of file nullSpace.H.
Referenced by lineSearch(), and nullSpace().
|
protected |
Maxmimum number of CG iterations for obtaining the null space and range space updates.
Definition at line 180 of file nullSpace.H.
Referenced by nullSpace().
|
protected |
Tolerance of the dual problem.
Definition at line 185 of file nullSpace.H.
Referenced by nullSpace(), and solveDualProblem().
|
protected |
Value for considering a constraint as marginally active.
Used to avoid the frequent change of the active set of constraints
Definition at line 196 of file nullSpace.H.
Referenced by nullSpace(), and updateViolatedIndices().
|
protected |
Value to perturb the design variables by, if all of them lay on their bounds at the beginning of the optimisation.
Definition at line 202 of file nullSpace.H.
Referenced by nullSpace().
|
protected |
Multiplier of the null space update.
Definition at line 207 of file nullSpace.H.
Referenced by computeMeritFunction(), correction(), meritFunctionDirectionalDerivative(), nullSpace(), and writeData().
|
protected |
Multiplier of the range space update.
Definition at line 212 of file nullSpace.H.
Referenced by computeMeritFunction(), correction(), meritFunctionDirectionalDerivative(), and nullSpace().
|
protected |
Change aJ and aC adaptively.
Definition at line 217 of file nullSpace.H.
Referenced by correction(), and nullSpace().
|
protected |
Last cycle on which to reset aJ.
Definition at line 222 of file nullSpace.H.
Referenced by correction(), and nullSpace().
|
protected |
Max change of the design variables, pertaining to the objective reduction.
If adaptiveStep is set to true, aJ will be set in such a way to obtain a maxDVChange_ for the design variables, for all optimisation cycles up to lastAcceleratedCycle_
Definition at line 232 of file nullSpace.H.
Referenced by correction(), and nullSpace().
|
protected |
Whether to impose maxDVChange strictly on all optimisation cycles or just up to the lastAcceleratedCycle.
Definition at line 238 of file nullSpace.H.
Referenced by correction(), and nullSpace().
|
protected |
Target reduction of active constraints (range in [0-1]).
1: active constraints will become zero (first-order approx) 0: no change in the constraints
Definition at line 246 of file nullSpace.H.
Referenced by correction(), and nullSpace().
|
protected |
Downplay the importance of the bound constraint reduction by this ammount.
Definition at line 252 of file nullSpace.H.
Referenced by activeConstraints(), and nullSpace().