Go to the documentation of this file.
193 #ifndef DMDModels_STDMD_H
194 #define DMDModels_STDMD_H
215 typedef SquareMatrix<scalar> SMatrix;
216 typedef RectangularMatrix<scalar> RMatrix;
217 typedef RectangularMatrix<complex> RCMatrix;
223 enum modeSorterType :
char
231 static const Enum<modeSorterType> modeSorterTypeNames;
237 enum modeSorterType modeSorter_;
260 List<complex> evals_;
270 DynamicList<label> freqsi_;
282 const word fieldName_;
330 label nAgglomerationProcs_;
341 scalar L2norm(
const RMatrix& z)
const;
350 void expand(
const RMatrix& ez,
const scalar ezNorm);
362 SMatrix reducedKoopmanOperator();
367 bool eigendecomposition(
SMatrix& Atilde);
389 const scalar modeNorm
393 virtual bool dynamics();
396 virtual bool modes();
403 template<
class GeoFieldType>
407 template<
class GeoFieldType>
408 typename std::enable_if
410 std::is_same<scalar, typename GeoFieldType::value_type>::value,
414 GeoFieldType& modeRe,
415 GeoFieldType& modeIm,
421 template<
class GeoFieldType>
422 typename std::enable_if
424 !std::is_same<scalar, typename GeoFieldType::value_type>::value,
428 GeoFieldType& modeRe,
429 GeoFieldType& modeIm,
458 template<
class MatrixType>
490 virtual ~STDMD() =
default;
A class for handling words, derived from Foam::string.
A class for handling file names.
TypeName("STDMD")
Runtime type information.
void operator=(const STDMD &)=delete
No copy assignment.
A list of keyword definitions, which are a keyword followed by a number of values (eg,...
virtual ~STDMD()=default
Destructor.
virtual bool read(const dictionary &dict)
Read STDMD settings.
OBJstream os(runTime.globalPath()/outputName)
virtual bool initialise(const RMatrix &z)
Initialise 'Q' and 'G' (both require the first two snapshots)
Mesh data needed to do the Finite Volume discretisation.
A complex number, similar to the C++ complex type.
Abstract base class for DMD models to handle DMD characteristics for the DMD function object.
virtual bool update(const RMatrix &z)
Incremental orthonormal basis update (K:Fig. 15)
A 1D array of objects of type <T>, where the size of the vector is known and used for subscript bound...
fileName::Type type(const fileName &name, const bool followLink=true)
Return the file type: DIRECTORY or FILE, normally following symbolic links.
word name(const expressions::valueTypeCode typeCode)
A word representation of a valueTypeCode. Empty for INVALID.
virtual bool writeToFile() const
Flag to allow writing to file.
An Ostream is an abstract base class for all output systems (streams, files, token lists,...
Streaming Total Dynamic Mode Decomposition (i.e. STDMD) is a variant of dynamic mode decomposition.
STDMD(const fvMesh &mesh, const word &name, const dictionary &dict)
Construct from components.