ScaLAPACK 2.1  2.1
ScaLAPACK: Scalable Linear Algebra PACKage
PB_Cdtypeset.c
Go to the documentation of this file.
1 /* ---------------------------------------------------------------------
2 *
3 * -- PBLAS auxiliary routine (version 2.0) --
4 * University of Tennessee, Knoxville, Oak Ridge National Laboratory,
5 * and University of California, Berkeley.
6 * April 1, 1998
7 *
8 * ---------------------------------------------------------------------
9 */
10 /*
11 * Include files
12 */
13 #include "../pblas.h"
14 #include "../PBpblas.h"
15 #include "../PBtools.h"
16 #include "../PBblacs.h"
17 #include "../PBblas.h"
18 
20 {
21 /*
22 * Purpose
23 * =======
24 *
25 * PB_Cdtypeset on the first call initializes a static structure contai-
26 * ning typed information and returns a pointer to it. The other calls
27 * to this routine just returns this pointer.
28 *
29 * -- Written on April 1, 1998 by
30 * R. Clint Whaley, University of Tennessee, Knoxville 37996, USA.
31 *
32 * ---------------------------------------------------------------------
33 */
34 /*
35 * .. Local Scalars ..
36 */
37  static int setup=0;
38  static PBTYP_T TypeStruct;
39  static double zero, one, negone;
40 /* ..
41 * .. Executable Statements ..
42 *
43 */
44  if( setup ) return( &TypeStruct );
45 
46  setup = 1;
47 
48  TypeStruct.type = DREAL;
49  TypeStruct.usiz = sizeof( double );
50  TypeStruct.size = sizeof( double );
51 
52  zero = ZERO;
53  one = ONE;
54  negone = -ONE;
55 
56  TypeStruct.zero = (char *) (&zero);
57  TypeStruct.one = (char *) (&one);
58  TypeStruct.negone = (char *) (&negone);
59 
60  TypeStruct.Cgesd2d = Cdgesd2d;
61  TypeStruct.Cgerv2d = Cdgerv2d;
62  TypeStruct.Cgebs2d = Cdgebs2d;
63  TypeStruct.Cgebr2d = Cdgebr2d;
64  TypeStruct.Cgsum2d = Cdgsum2d;
65 
66  TypeStruct.Fmmadd = dmmadd_;
67  TypeStruct.Fmmcadd = dmmcadd_;
68  TypeStruct.Fmmtadd = dmmtadd_;
69  TypeStruct.Fmmtcadd = dmmtcadd_;
70  TypeStruct.Fmmdda = dmmdda_;
71  TypeStruct.Fmmddac = dmmddac_;
72  TypeStruct.Fmmddat = dmmddat_;
73  TypeStruct.Fmmddact = dmmddact_;
74 
75  TypeStruct.Fcshft = dcshft_;
76  TypeStruct.Frshft = drshft_;
77 
78  TypeStruct.Fvvdotu = dvvdot_;
79  TypeStruct.Fvvdotc = dvvdot_;
80 
81  TypeStruct.Fset = dset_;
82 
83  TypeStruct.Ftzpad = dtzpad_;
84  TypeStruct.Ftzpadcpy = dtzpadcpy_;
85  TypeStruct.Ftzscal = dtzscal_;
86  TypeStruct.Fhescal = dtzscal_;
87  TypeStruct.Ftzcnjg = dtzscal_;
88 
89  TypeStruct.Faxpy = daxpy_;
90  TypeStruct.Fcopy = dcopy_;
91  TypeStruct.Fswap = dswap_;
92 
93  TypeStruct.Fgemv = dgemv_;
94  TypeStruct.Fsymv = dsymv_;
95  TypeStruct.Fhemv = dsymv_;
96  TypeStruct.Ftrmv = dtrmv_;
97  TypeStruct.Ftrsv = dtrsv_;
98  TypeStruct.Fagemv = dagemv_;
99  TypeStruct.Fasymv = dasymv_;
100  TypeStruct.Fahemv = dasymv_;
101  TypeStruct.Fatrmv = datrmv_;
102 
103  TypeStruct.Fgerc = dger_;
104  TypeStruct.Fgeru = dger_;
105  TypeStruct.Fsyr = dsyr_;
106  TypeStruct.Fher = dsyr_;
107  TypeStruct.Fsyr2 = dsyr2_;
108  TypeStruct.Fher2 = dsyr2_;
109 
110  TypeStruct.Fgemm = dgemm_;
111  TypeStruct.Fsymm = dsymm_;
112  TypeStruct.Fhemm = dsymm_;
113  TypeStruct.Fsyrk = dsyrk_;
114  TypeStruct.Fherk = dsyrk_;
115  TypeStruct.Fsyr2k = dsyr2k_;
116  TypeStruct.Fher2k = dsyr2k_;
117  TypeStruct.Ftrmm = dtrmm_;
118  TypeStruct.Ftrsm = dtrsm_;
119 
120  return( &TypeStruct );
121 /*
122 * End of PB_Cdtypeset
123 */
124 }
PBTYP_T::Fgemm
GEMM_T Fgemm
Definition: pblas.h:386
PBTYP_T::Fgerc
GERC_T Fgerc
Definition: pblas.h:379
dger_
F_VOID_FCT dger_()
dsyr2_
F_VOID_FCT dsyr2_()
PBTYP_T::Cgerv2d
GERV2D_T Cgerv2d
Definition: pblas.h:336
PBTYP_T::Fhescal
TZSCAL_T Fhescal
Definition: pblas.h:361
PBTYP_T::Fsyr2
SYR2_T Fsyr2
Definition: pblas.h:383
dmmddat_
F_VOID_FCT dmmddat_()
dcopy_
F_VOID_FCT dcopy_()
dsyrk_
F_VOID_FCT dsyrk_()
PBTYP_T::Ftzcnjg
TZSCAL_T Ftzcnjg
Definition: pblas.h:362
PBTYP_T::Fahemv
AHEMV_T Fahemv
Definition: pblas.h:376
dset_
F_VOID_FCT dset_()
PBTYP_T::Fvvdotc
VVDOT_T Fvvdotc
Definition: pblas.h:354
PBTYP_T::Fmmddat
MMADD_T Fmmddat
Definition: pblas.h:347
PBTYP_T::Fcshft
MMSHFT_T Fcshft
Definition: pblas.h:350
dgemv_
F_VOID_FCT dgemv_()
dsymv_
F_VOID_FCT dsymv_()
PBTYP_T::Ftrsv
TRSV_T Ftrsv
Definition: pblas.h:372
dvvdot_
F_VOID_FCT dvvdot_()
PBTYP_T::Ftrmm
TRMM_T Ftrmm
Definition: pblas.h:393
PBTYP_T::Fgemv
GEMV_T Fgemv
Definition: pblas.h:368
dmmcadd_
F_VOID_FCT dmmcadd_()
dtzscal_
F_VOID_FCT dtzscal_()
PBTYP_T::Ftzscal
TZSCAL_T Ftzscal
Definition: pblas.h:360
PBTYP_T::Fher
HER_T Fher
Definition: pblas.h:382
PBTYP_T::Faxpy
AXPY_T Faxpy
Definition: pblas.h:364
PBTYP_T::type
char type
Definition: pblas.h:327
PBTYP_T::Cgesd2d
GESD2D_T Cgesd2d
Definition: pblas.h:335
PBTYP_T::Ftzpad
TZPAD_T Ftzpad
Definition: pblas.h:356
PBTYP_T::usiz
int usiz
Definition: pblas.h:328
dmmdda_
F_VOID_FCT dmmdda_()
Cdgebs2d
void Cdgebs2d()
dsymm_
F_VOID_FCT dsymm_()
dmmtcadd_
F_VOID_FCT dmmtcadd_()
PBTYP_T::Ftrsm
TRSM_T Ftrsm
Definition: pblas.h:394
Cdgesd2d
void Cdgesd2d()
dcshft_
F_VOID_FCT dcshft_()
dgemm_
F_VOID_FCT dgemm_()
dasymv_
F_VOID_FCT dasymv_()
dagemv_
F_VOID_FCT dagemv_()
PBTYP_T::Fher2k
HER2K_T Fher2k
Definition: pblas.h:392
PBTYP_T::Fswap
SWAP_T Fswap
Definition: pblas.h:366
PBTYP_T::Fherk
HERK_T Fherk
Definition: pblas.h:390
ZERO
#define ZERO
Definition: PBtools.h:66
dmmtadd_
F_VOID_FCT dmmtadd_()
PBTYP_T::Fsyr2k
SYR2K_T Fsyr2k
Definition: pblas.h:391
dtzpad_
F_VOID_FCT dtzpad_()
dsyr_
F_VOID_FCT dsyr_()
PBTYP_T::Fmmcadd
MMADD_T Fmmcadd
Definition: pblas.h:342
drshft_
F_VOID_FCT drshft_()
PBTYP_T::Ftzpadcpy
TZPADCPY_T Ftzpadcpy
Definition: pblas.h:357
PBTYP_T::Frshft
MMSHFT_T Frshft
Definition: pblas.h:351
PBTYP_T::Fasymv
ASYMV_T Fasymv
Definition: pblas.h:375
PBTYP_T::Fmmtadd
MMADD_T Fmmtadd
Definition: pblas.h:343
PBTYP_T::Fmmdda
MMADD_T Fmmdda
Definition: pblas.h:345
PBTYP_T::Cgebs2d
GEBS2D_T Cgebs2d
Definition: pblas.h:337
PBTYP_T::Fmmtcadd
MMADD_T Fmmtcadd
Definition: pblas.h:344
PBTYP_T::negone
char * negone
Definition: pblas.h:331
PBTYP_T::Fset
VVSET_T Fset
Definition: pblas.h:358
PBTYP_T::Fmmadd
MMADD_T Fmmadd
Definition: pblas.h:341
Cdgebr2d
void Cdgebr2d()
ONE
#define ONE
Definition: PBtools.h:64
dtrmv_
F_VOID_FCT dtrmv_()
dmmddac_
F_VOID_FCT dmmddac_()
PBTYP_T::one
char * one
Definition: pblas.h:331
PBTYP_T::Fsyrk
SYRK_T Fsyrk
Definition: pblas.h:389
PBTYP_T::Ftrmv
TRMV_T Ftrmv
Definition: pblas.h:371
PBTYP_T::size
int size
Definition: pblas.h:329
PBTYP_T::Fsymm
SYMM_T Fsymm
Definition: pblas.h:387
Cdgsum2d
void Cdgsum2d()
PBTYP_T::Fatrmv
ATRMV_T Fatrmv
Definition: pblas.h:377
PB_Cdtypeset
PBTYP_T * PB_Cdtypeset()
Definition: PB_Cdtypeset.c:19
dmmadd_
F_VOID_FCT dmmadd_()
Cdgerv2d
void Cdgerv2d()
daxpy_
F_VOID_FCT daxpy_()
PBTYP_T::Fvvdotu
VVDOT_T Fvvdotu
Definition: pblas.h:353
PBTYP_T::Fcopy
COPY_T Fcopy
Definition: pblas.h:365
PBTYP_T::Fher2
HER2_T Fher2
Definition: pblas.h:384
DREAL
#define DREAL
Definition: pblas.h:470
PBTYP_T::Cgebr2d
GEBR2D_T Cgebr2d
Definition: pblas.h:338
PBTYP_T::Cgsum2d
GSUM2D_T Cgsum2d
Definition: pblas.h:339
dtrmm_
F_VOID_FCT dtrmm_()
PBTYP_T
Definition: pblas.h:325
PBTYP_T::Fhemv
HEMV_T Fhemv
Definition: pblas.h:370
PBTYP_T::Fhemm
HEMM_T Fhemm
Definition: pblas.h:388
datrmv_
F_VOID_FCT datrmv_()
PBTYP_T::Fsymv
SYMV_T Fsymv
Definition: pblas.h:369
PBTYP_T::Fgeru
GERU_T Fgeru
Definition: pblas.h:380
PBTYP_T::Fmmddac
MMADD_T Fmmddac
Definition: pblas.h:346
dmmddact_
F_VOID_FCT dmmddact_()
PBTYP_T::Fsyr
SYR_T Fsyr
Definition: pblas.h:381
dtrsm_
F_VOID_FCT dtrsm_()
dtrsv_
F_VOID_FCT dtrsv_()
PBTYP_T::zero
char * zero
Definition: pblas.h:331
PBTYP_T::Fmmddact
MMADD_T Fmmddact
Definition: pblas.h:348
dswap_
F_VOID_FCT dswap_()
PBTYP_T::Fagemv
AGEMV_T Fagemv
Definition: pblas.h:374
dsyr2k_
F_VOID_FCT dsyr2k_()
dtzpadcpy_
F_VOID_FCT dtzpadcpy_()