|  | SPI
    SLEPc PETSc Interface is used for rapid development and intuitive matrix operations similar to MatLab or NumPy style of operations | 
Go to the source code of this file.
| Data Structures | |
| struct | SPI::SPIgrid1D | 
| Class to contain various grid parameters.  More... | |
| struct | SPI::SPIgrid2D | 
| Namespaces | |
| SPI | |
| Enumerations | |
| enum | SPI::gridtype { SPI::FD, SPI::FDperiodic, SPI::Fourier, SPI::Chebyshev, SPI::UltraS } | 
| enumeration of grid types  More... | |
| Functions | |
| PetscInt | SPI::factorial (PetscInt n) | 
| compute the factorial of n. This is needed for get_D_Coeffs function  More... | |
| SPIVec | SPI::get_D_Coeffs (SPIVec &s, PetscInt d) | 
| get the coefficients of the given stencil.  More... | |
| SPIMat | SPI::map_D (SPIMat D, SPIVec y, PetscInt d, PetscInt order) | 
| map the derivative operator to the proper y grid  More... | |
| SPIMat | SPI::set_D (SPIVec &y, PetscInt d, PetscInt order, PetscBool uniform) | 
| set the derivative operator for the proper y grid if uniform=false. Uses map_D function  More... | |
| SPIMat | SPI::set_D_periodic (SPIVec &y, PetscInt d, PetscInt order) | 
| set the derivative operator for the proper periodic grid assuming uniform discretization.  More... | |
| SPIVec | SPI::set_FD_stretched_y (PetscScalar y_max, PetscInt ny, PetscScalar delta) | 
| set stretched grid from [0,y_max] using tanh stretching for use with finite difference operators  More... | |
| SPIMat | SPI::set_D_Chebyshev (SPIVec &x, PetscInt d, PetscBool need_map) | 
| set a Chebyshev collocated operator acting with respect to the collocated grid  More... | |
| SPIMat | SPI::map_D_Chebyshev (SPIVec &x, PetscInt d) | 
| map a Chebyshev collocated operator acting with respect to the stretched collocated grid  More... | |
| SPIVec | SPI::set_Cheby_stretched_y (PetscScalar y_max, PetscInt ny, PetscScalar yi) | 
| create a stretched Chebyshev grid from [0,y_max] with yi being the midpoint location for the number of points  More... | |
| SPIVec | SPI::set_Cheby_mapped_y (PetscScalar a, PetscScalar b, PetscInt ny) | 
| create a stretched Chebyshev grid from [a,b] using default Chebfun like mapping  More... | |
| SPIVec | SPI::set_Cheby_y (PetscInt ny) | 
| create a Chebyshev grid from [-1,1]  More... | |
| SPIVec | SPI::set_Fourier_t (PetscScalar T, PetscInt nt) | 
| create a Fourier grid from [0,T]  More... | |
| SPIMat | SPI::set_D_Fourier (SPIVec t, PetscInt d) | 
| create a Fourier derivative operator acting on grid t  More... | |
| std::tuple< SPIMat, SPIMat > | SPI::set_D_UltraS (SPIVec &x, PetscInt d) | 
| set a UltraSpherical operator acting with respect to the collocated grid (keeps everything in UltraSpherical space), take in Chebyshev coefficients and outputs coefficients in C(d) coefficient space  More... | |
| std::tuple< SPIMat, SPIMat > | SPI::set_T_That (PetscInt n) | 
| set a T and That operators acting with respect to the Chebyshev collocated grid, That: physical -> Chebyshev coefficient, T: Chebyshev coefficient -> physical  More... | |
| SPIVec | SPI::SPIVec1Dto2D (SPIgrid2D &grid2D, SPIVec &u) | 
| expand a 1D vector to a 2D vector copying data along time dimension  More... | |
| PetscScalar | SPI::integrate (const SPIVec &a, SPIgrid1D &grid) | 
| integrate a vector of chebyshev Coefficients on a physical grid  More... | |
| PetscScalar | SPI::integrate (const SPIVec &a, SPIgrid2D &grid) | 
| integrate a vector of chebyshev Coefficients on a physical grid  More... | |
| SPIVec | SPI::proj (SPIVec &u, SPIVec &v, SPIgrid1D &grid) | 
| SPIVec | SPI::proj (SPIVec &u, SPIVec &v, SPIgrid2D &grid) | 
| std::vector< SPIVec > | SPI::orthogonalize (std::vector< SPIVec > &x, SPIgrid1D &grid) | 
| std::vector< SPIVec > | SPI::orthogonalize (std::vector< SPIVec > &x, SPIgrid2D &grid) | 
| SPIMat | SPI::interp1D_Mat (SPIgrid1D &grid1, SPIgrid1D &grid2) | 
| SPIMat | SPI::interp1D_Mat (SPIVec &y1, SPIVec &y2) | 
| SPIMat | SPI::dft (PetscInt nt) | 
| std::tuple< SPIMat, SPIMat, SPIMat, SPIMat > | SPI::dft_dftinv_Ihalf_Ihalfn (PetscInt nt) | 
 1.8.17
 1.8.17