Actual source code: blzpackp.h

  1: /*
  2:    Private data structure used by the BLZPACK interface
  3: */


 8:  #include src/eps/epsimpl.h

 10: typedef struct {
 11:   int         block_size;      /* block size */
 12:   PetscReal   initial,final;   /* computational interval */
 13:   int         slice;           /* use spectrum slicing */
 14:   int         nsteps;          /* maximum number of steps per run */
 15:   int         *istor;
 16:   PetscReal   *rstor;
 17:   PetscScalar *u;
 18:   PetscScalar *v;
 19:   PetscScalar *eig;
 20: } EPS_BLZPACK;

 22: /*
 23:    Definition of routines from the BLZPACK package
 24: */

 26:  #include slepcblaslapack.h

 28: /*
 29:     These are real case, current version of BLZPACK only supports real
 30:     matrices
 31: */

 33: #if defined(PETSC_USES_FORTRAN_SINGLE) 
 34: /*
 35:    For these machines we must call the single precision Fortran version
 36: */
 37: #define BLZpack_ SLEPC_FORTRAN(blzdrs,BLZDRS)
 38: #else 
 39: #define BLZpack_ SLEPC_FORTRAN(blzdrd,BLZDRD)
 40: #endif

 42: #define BLZistorr_ SLEPC_FORTRAN(istorr,ISTORR)
 43: #define BLZrstorr_ SLEPC_FORTRAN(rstorr,RSTORR)

 45: EXTERN_C_BEGIN

 47: extern void      BLZpack_(int*,PetscReal*,PetscScalar*,int*,PetscScalar*,
 48:                           PetscScalar*,int*,int*,PetscScalar*,PetscScalar*);

 50: extern int       BLZistorr_(int*,char*,int);
 51: extern PetscReal BLZrstorr_(PetscReal*,char*,int);

 53: EXTERN_C_END

 55: #endif