Actual source code: cyclic.h
slepc-3.16.1 2021-11-17
1: /*
2: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
3: SLEPc - Scalable Library for Eigenvalue Problem Computations
4: Copyright (c) 2002-2021, Universitat Politecnica de Valencia, Spain
6: This file is part of SLEPc.
7: SLEPc is distributed under a 2-clause BSD license (see LICENSE).
8: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
9: */
11: #if !defined(SLEPC_CYCLIC_H)
12: #define SLEPC_CYCLIC_H
14: typedef struct {
15: PetscBool explicitmatrix;
16: EPS eps;
17: PetscBool usereps;
18: Mat C,D;
19: } SVD_CYCLIC;
21: typedef struct {
22: Mat A,AT;
23: Vec x1,x2,y1,y2;
24: Vec diag,w; /* used only in extended cross matrix */
25: PetscBool swapped;
26: } SVD_CYCLIC_SHELL;
28: SLEPC_INTERN PetscErrorCode MatMult_Cyclic_CUDA(Mat,Vec,Vec);
29: SLEPC_INTERN PetscErrorCode MatMult_ECross_CUDA(Mat,Vec,Vec);
31: #endif