![]() |
SPI
SLEPc PETSc Interface is used for rapid development and intuitive matrix operations similar to MatLab or NumPy style of operations
|
#include <SPIgrid.hpp>
Public Member Functions | |
| SPIgrid2D (SPIVec &y, SPIVec &t, std::string name="SPIgrid2D", gridtype y_gridtype=FD, gridtype t_gridtype=Fourier) | |
| constructor with no arguments (set default values) More... | |
| ~SPIgrid2D () | |
| destructor of saved SPIVec and SPIMat More... | |
| void | print () |
| saves grid to internal grid More... | |
| void | set_grid (SPIVec &y, SPIVec &t) |
| saves grid to internal grid More... | |
| void | set_derivatives (PetscInt order=4) |
| sets derivatives Dy and Dyy using saved grid More... | |
| void | set_operators () |
| sets zero and identity operators for grid More... | |
Data Fields | |
| PetscInt | ny |
| PetscInt | nt |
| std::string | name |
| name of grid More... | |
| SPIVec | y |
| grid for wall-normal dimension More... | |
| SPIVec | t |
| grid for time dimension More... | |
| SPIMat | T |
| transform from chebyshev to physical More... | |
| SPIMat | That |
| transform from physical to chebyshev More... | |
| SPIMat | S1S0That |
| UltraSpherical helper matrix S1*S0*That for baseflow. More... | |
| SPIMat | S0invS1inv |
| inverse of S0^-1 * S1^-1 More... | |
| SPIMat | FT |
| Fourier Transform operator from physical space to wavenumber space for time. More... | |
| SPIMat | FTinv |
| inverse Fourier Transform from wavenumber space to physical space for time More... | |
| SPIMat | Ihalf |
| positive wavenumbers from FT More... | |
| SPIMat | Ihalfn |
| negative wavenumbers from FT More... | |
| SPIMat | FT4 |
| Fourier Transform operator from physical space to wavenumber space for time. For 4 variable state vector. More... | |
| SPIMat | FTinv4 |
| inverse Fourier Transform from wavenumber space to physical space for time. For 4 variable state vector More... | |
| SPIMat | Ihalf4 |
| positive wavenumbers from FT. For 4 variable state vector More... | |
| SPIMat | Ihalfn4 |
| negative wavenumbers from FT. For 4 variable state vector More... | |
| gridtype | ytype |
| type of grid for wall-normal dimension More... | |
| gridtype | ttype |
| type of grid for time dimension More... | |
| SPIgrid1D | grid1Dy |
| SPIgrid1D | grid1Dt |
| SPIMat | Dy |
| 1st derivative operator with respect to y of size ny*nt x ny*nt More... | |
| SPIMat | Dyy |
| 2nd derivative operator with respect to y of size ny*nt x ny*nt More... | |
| SPIMat | Dt |
| 1st derivative operator with respect to t of size ny*nt x ny*nt More... | |
| SPIMat | O |
| zero matrix same size as derivative operators of size ny*nt x ny*nt More... | |
| SPIMat | I |
| identity matrix same size as derivative operators of size ny*nt x ny*nt More... | |
| SPIMat | avgt |
| average in time operator More... | |
| PetscBool | flag_set_grid =PETSC_FALSE |
| flag if set_grid has been executed More... | |
| PetscBool | flag_set_derivatives =PETSC_FALSE |
| flag if set_derivatives has been executed More... | |
| PetscBool | flag_set_operators =PETSC_FALSE |
| flag if set_operators has been executed More... | |
Definition at line 72 of file SPIgrid.hpp.
| SPI::SPIgrid2D::SPIgrid2D | ( | SPIVec & | y, |
| SPIVec & | t, | ||
| std::string | name = "SPIgrid2D", |
||
| gridtype | y_gridtype = FD, |
||
| gridtype | t_gridtype = Fourier |
||
| ) |
constructor with no arguments (set default values)
| [in] | y | [in] grid in wall-normal direction to save |
| [in] | t | [in] grid in time dimension to save |
| [in] | name | [in] name of grid (default to SPIgrid1D) |
| [in] | y_gridtype | [in] what type of grid (default finite difference FD) |
| [in] | t_gridtype | [in] what type of grid (default Fourier Transform FT) |
Definition at line 633 of file SPIgrid.cpp.
| SPI::SPIgrid2D::~SPIgrid2D | ( | ) |
destructor of saved SPIVec and SPIMat
Definition at line 809 of file SPIgrid.cpp.
| void SPI::SPIgrid2D::print | ( | ) |
saves grid to internal grid
Definition at line 654 of file SPIgrid.cpp.
| void SPI::SPIgrid2D::set_derivatives | ( | PetscInt | order = 4 | ) |
sets derivatives Dy and Dyy using saved grid
| [in] | order | [in] order of accuracy of finite difference derivative (default 4) |
Definition at line 692 of file SPIgrid.cpp.
saves grid to internal grid
| [in] | y | [in] grid in wall-normal dimension to save |
| [in] | t | [in] grid in time dimension to save |
Definition at line 676 of file SPIgrid.cpp.
| void SPI::SPIgrid2D::set_operators | ( | ) |
sets zero and identity operators for grid
Definition at line 772 of file SPIgrid.cpp.
| SPIMat SPI::SPIgrid2D::avgt |
average in time operator
Definition at line 113 of file SPIgrid.hpp.
| SPIMat SPI::SPIgrid2D::Dt |
1st derivative operator with respect to t of size ny*nt x ny*nt
Definition at line 109 of file SPIgrid.hpp.
| SPIMat SPI::SPIgrid2D::Dy |
1st derivative operator with respect to y of size ny*nt x ny*nt
Definition at line 107 of file SPIgrid.hpp.
| SPIMat SPI::SPIgrid2D::Dyy |
2nd derivative operator with respect to y of size ny*nt x ny*nt
Definition at line 108 of file SPIgrid.hpp.
| PetscBool SPI::SPIgrid2D::flag_set_derivatives =PETSC_FALSE |
flag if set_derivatives has been executed
Definition at line 116 of file SPIgrid.hpp.
| PetscBool SPI::SPIgrid2D::flag_set_grid =PETSC_FALSE |
flag if set_grid has been executed
Definition at line 115 of file SPIgrid.hpp.
| PetscBool SPI::SPIgrid2D::flag_set_operators =PETSC_FALSE |
flag if set_operators has been executed
Definition at line 117 of file SPIgrid.hpp.
| SPIMat SPI::SPIgrid2D::FT |
Fourier Transform operator from physical space to wavenumber space for time.
Definition at line 89 of file SPIgrid.hpp.
| SPIMat SPI::SPIgrid2D::FT4 |
Fourier Transform operator from physical space to wavenumber space for time. For 4 variable state vector.
Definition at line 93 of file SPIgrid.hpp.
| SPIMat SPI::SPIgrid2D::FTinv |
inverse Fourier Transform from wavenumber space to physical space for time
Definition at line 90 of file SPIgrid.hpp.
| SPIMat SPI::SPIgrid2D::FTinv4 |
inverse Fourier Transform from wavenumber space to physical space for time. For 4 variable state vector
Definition at line 94 of file SPIgrid.hpp.
| SPIgrid1D SPI::SPIgrid2D::grid1Dt |
Definition at line 105 of file SPIgrid.hpp.
| SPIgrid1D SPI::SPIgrid2D::grid1Dy |
Definition at line 105 of file SPIgrid.hpp.
| SPIMat SPI::SPIgrid2D::I |
identity matrix same size as derivative operators of size ny*nt x ny*nt
Definition at line 112 of file SPIgrid.hpp.
| SPIMat SPI::SPIgrid2D::Ihalf |
positive wavenumbers from FT
Definition at line 91 of file SPIgrid.hpp.
| SPIMat SPI::SPIgrid2D::Ihalf4 |
positive wavenumbers from FT. For 4 variable state vector
Definition at line 95 of file SPIgrid.hpp.
| SPIMat SPI::SPIgrid2D::Ihalfn |
negative wavenumbers from FT
Definition at line 92 of file SPIgrid.hpp.
| SPIMat SPI::SPIgrid2D::Ihalfn4 |
negative wavenumbers from FT. For 4 variable state vector
Definition at line 96 of file SPIgrid.hpp.
| std::string SPI::SPIgrid2D::name |
name of grid
Definition at line 81 of file SPIgrid.hpp.
| PetscInt SPI::SPIgrid2D::nt |
Definition at line 75 of file SPIgrid.hpp.
| PetscInt SPI::SPIgrid2D::ny |
Definition at line 75 of file SPIgrid.hpp.
| SPIMat SPI::SPIgrid2D::O |
zero matrix same size as derivative operators of size ny*nt x ny*nt
Definition at line 111 of file SPIgrid.hpp.
| SPIMat SPI::SPIgrid2D::S0invS1inv |
inverse of S0^-1 * S1^-1
Definition at line 88 of file SPIgrid.hpp.
| SPIMat SPI::SPIgrid2D::S1S0That |
UltraSpherical helper matrix S1*S0*That for baseflow.
Definition at line 87 of file SPIgrid.hpp.
| SPIVec SPI::SPIgrid2D::t |
grid for time dimension
Definition at line 84 of file SPIgrid.hpp.
| SPIMat SPI::SPIgrid2D::T |
transform from chebyshev to physical
Definition at line 85 of file SPIgrid.hpp.
| SPIMat SPI::SPIgrid2D::That |
transform from physical to chebyshev
Definition at line 86 of file SPIgrid.hpp.
| gridtype SPI::SPIgrid2D::ttype |
type of grid for time dimension
Definition at line 98 of file SPIgrid.hpp.
| SPIVec SPI::SPIgrid2D::y |
grid for wall-normal dimension
Definition at line 83 of file SPIgrid.hpp.
| gridtype SPI::SPIgrid2D::ytype |
type of grid for wall-normal dimension
Definition at line 97 of file SPIgrid.hpp.
1.8.17