Actual source code: trlan.h

slepc-3.21.1 2024-04-26
Report Typos and Errors
  1: /*
  2:    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
  3:    SLEPc - Scalable Library for Eigenvalue Problem Computations
  4:    Copyright (c) 2002-, 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: */
 10: /*
 11:    Private data structure used by the TRLAN interface
 12: */

 14: #pragma once

 16: typedef struct {
 17:   PetscBLASInt       maxlan;
 18:   PetscBLASInt       restart;
 19:   PetscReal          *work;
 20:   PetscBLASInt       lwork;
 21: } EPS_TRLAN;

 23: /*
 24:    Definition of routines from the TRLAN package
 25:    These are real case. TRLAN currently only has DOUBLE PRECISION version
 26: */

 28: #if defined(SLEPC_TRLAN_HAVE_UNDERSCORE)
 29: #define TRLan_ trlan77_
 30: #elif defined(SLEPC_TRLAN_HAVE_CAPS)
 31: #define TRLan_ TRLAN77
 32: #else
 33: #define TRLan_ trlan77
 34: #endif

 36: SLEPC_EXTERN void TRLan_(PetscBLASInt(*op)(PetscBLASInt*,PetscBLASInt*,PetscReal*,PetscBLASInt*,PetscReal*,PetscBLASInt*),PetscBLASInt*,PetscBLASInt*,PetscBLASInt*,PetscScalar*,PetscScalar*,PetscBLASInt*,PetscReal*,PetscBLASInt*);