Class of the computation of the DMD, it exploits the SVD methods. More...
#include <ITHACADMD.H>
Public Member Functions | |
| ITHACADMD (PtrList< GeometricField< Type, PatchField, GeoMesh > > &snapshots, double dt) | |
| Constructs the object. | |
| void | getModes (label SVD_rank=-1, bool exact=true, bool exportDMDmodes=false) |
| Get the DMD modes. | |
| void | convert2Foam () |
| Convert the EigenModes in Matrix form into OpenFOAM GeometricFields. | |
| void | exportEigs (word exportFolder) |
| Export the eigenvalues in numpy format. | |
| void | getDynamics (double tStart, double tFinal, double dt) |
| Export the dynamics of DMD given an initial time step, a final one and a time step. | |
| void | reconstruct (word exportFolder, word fieldName) |
| Reconstruct and export the solution using the computed dynamics. | |
Public Attributes | |
| PtrList< GeometricField< Type, PatchField, GeoMesh > > | snapshotsDMD |
| PtrList of OpenFOAM GeoometricFields where the snapshots are stored. | |
| Modes< Type, PatchField, GeoMesh > | DMDmodesReal |
| Modes object used to store the Real part of the DMD modes. | |
| Modes< Type, PatchField, GeoMesh > | DMDmodesImag |
| Modes object used to store the Imaginary part of the DMD modes. | |
| Eigen::VectorXcd | eigenValues |
| Eigenvalues of the dynamics mode decomposition. | |
| Eigen::MatrixXcd | DMDEigenModes |
| DMD modes stored in a complex Eigen::Matrix, it is the object used for computations. | |
| List< Eigen::MatrixXcd > | DMDEigenModesBC |
| DMD modes on the boundary stored in a List of complex Eigen::Matrix, it is the object used for computations. | |
| Eigen::MatrixXcd | PODm |
| Complex matrix used to store the POD modes, used only for compution in the projected approach. | |
| List< Eigen::MatrixXcd > | PODmBC |
| List of complex matrices used to store the POD modes on the boundaries, used only for compution in the projected approach. | |
| Eigen::VectorXd | Amplitudes |
| Amplitudes of DMD. | |
| Eigen::MatrixXcd | dynamics |
| Complex Eigen::Matrix used to store the Dynamics of the DMD modes. | |
| label | NSnaps |
| Number of snapshots. | |
| label | SVD_rank_public |
| Rank of the DMD. | |
| double | originalDT |
| Original time step used to acquire the snapshots. | |
| bool | redSVD |
| If true, it uses the Randomized SVD. | |
Class of the computation of the DMD, it exploits the SVD methods.
| Field_type | It can be scalar or vector |
Definition at line 69 of file ITHACADMD.H.
| ITHACADMD< Type, PatchField, GeoMesh >::ITHACADMD | ( | PtrList< GeometricField< Type, PatchField, GeoMesh > > & | snapshots, |
| double | dt ) |
Constructs the object.
| [in] | snapshots | The snapshots on which you want to perform DMD |
| [in] | dt | The Time Step used to acquire the snapshots |
Definition at line 37 of file ITHACADMD.C.
| void ITHACADMD< Type, PatchField, GeoMesh >::convert2Foam | ( | ) |
Convert the EigenModes in Matrix form into OpenFOAM GeometricFields.
Definition at line 216 of file ITHACADMD.C.
| void ITHACADMD< Type, PatchField, GeoMesh >::exportEigs | ( | word | exportFolder | ) |
Export the eigenvalues in numpy format.
| [in] | exportFolder | Export folder path |
Definition at line 180 of file ITHACADMD.C.
| void ITHACADMD< Type, PatchField, GeoMesh >::getDynamics | ( | double | tStart, |
| double | tFinal, | ||
| double | dt ) |
Export the dynamics of DMD given an initial time step, a final one and a time step.
| [in] | tStart | Intial time |
| [in] | tFinal | Final time |
| [in] | dt | Time step |
Definition at line 162 of file ITHACADMD.C.
| void ITHACADMD< Type, PatchField, GeoMesh >::getModes | ( | label | SVD_rank = -1, |
| bool | exact = true, | ||
| bool | exportDMDmodes = false ) |
Get the DMD modes.
| [in] | SVD_rank | The svd rank |
| [in] | exact | True (default) if you want the exact DMD modes computations. False if you want the projected modes |
| [in] | exportDMDmodes | A flag to export the DMD modes, both real and imaginary parts are exported |
Definition at line 50 of file ITHACADMD.C.
| void ITHACADMD< Type, PatchField, GeoMesh >::reconstruct | ( | word | exportFolder, |
| word | fieldName ) |
Reconstruct and export the solution using the computed dynamics.
Definition at line 191 of file ITHACADMD.C.
| Eigen::VectorXd ITHACADMD< Type, PatchField, GeoMesh >::Amplitudes |
Amplitudes of DMD.
Definition at line 107 of file ITHACADMD.H.
| Eigen::MatrixXcd ITHACADMD< Type, PatchField, GeoMesh >::DMDEigenModes |
DMD modes stored in a complex Eigen::Matrix, it is the object used for computations.
Definition at line 95 of file ITHACADMD.H.
| List<Eigen::MatrixXcd> ITHACADMD< Type, PatchField, GeoMesh >::DMDEigenModesBC |
DMD modes on the boundary stored in a List of complex Eigen::Matrix, it is the object used for computations.
Definition at line 98 of file ITHACADMD.H.
| Modes<Type, PatchField, GeoMesh> ITHACADMD< Type, PatchField, GeoMesh >::DMDmodesImag |
Modes object used to store the Imaginary part of the DMD modes.
Definition at line 89 of file ITHACADMD.H.
| Modes<Type, PatchField, GeoMesh> ITHACADMD< Type, PatchField, GeoMesh >::DMDmodesReal |
Modes object used to store the Real part of the DMD modes.
Definition at line 86 of file ITHACADMD.H.
| Eigen::MatrixXcd ITHACADMD< Type, PatchField, GeoMesh >::dynamics |
Complex Eigen::Matrix used to store the Dynamics of the DMD modes.
Definition at line 110 of file ITHACADMD.H.
| Eigen::VectorXcd ITHACADMD< Type, PatchField, GeoMesh >::eigenValues |
Eigenvalues of the dynamics mode decomposition.
Definition at line 92 of file ITHACADMD.H.
| label ITHACADMD< Type, PatchField, GeoMesh >::NSnaps |
Number of snapshots.
Definition at line 113 of file ITHACADMD.H.
| double ITHACADMD< Type, PatchField, GeoMesh >::originalDT |
Original time step used to acquire the snapshots.
Definition at line 119 of file ITHACADMD.H.
| Eigen::MatrixXcd ITHACADMD< Type, PatchField, GeoMesh >::PODm |
Complex matrix used to store the POD modes, used only for compution in the projected approach.
Definition at line 101 of file ITHACADMD.H.
| List<Eigen::MatrixXcd> ITHACADMD< Type, PatchField, GeoMesh >::PODmBC |
List of complex matrices used to store the POD modes on the boundaries, used only for compution in the projected approach.
Definition at line 104 of file ITHACADMD.H.
| bool ITHACADMD< Type, PatchField, GeoMesh >::redSVD |
If true, it uses the Randomized SVD.
Definition at line 122 of file ITHACADMD.H.
| PtrList<GeometricField<Type, PatchField, GeoMesh > > ITHACADMD< Type, PatchField, GeoMesh >::snapshotsDMD |
PtrList of OpenFOAM GeoometricFields where the snapshots are stored.
Definition at line 83 of file ITHACADMD.H.
| label ITHACADMD< Type, PatchField, GeoMesh >::SVD_rank_public |
Rank of the DMD.
Definition at line 116 of file ITHACADMD.H.
1.13.2