/[escript]/trunk/paso/src/MKL.h
ViewVC logotype

Annotation of /trunk/paso/src/MKL.h

Parent Directory Parent Directory | Revision Log Revision Log


Revision 425 - (hide annotations)
Tue Jan 10 04:10:39 2006 UTC (14 years, 1 month ago) by gross
File MIME type: text/plain
File size: 1185 byte(s)
The sparse solver can be called by paso now. 

the building has been change to reduce some code redundancy:
now all scons SCscripts are importing scons/esys_options.py which
imports platform specific settings. 



1 gross 425 /* $Id$ */
2    
3     /**************************************************************/
4    
5     /* Paso: SystemMatrix: interface to intel MKL sparse solver */
6    
7     /**************************************************************/
8    
9     /* Copyrights by ACcESS Australia 2006 */
10     /* Author: gross@access.edu.au */
11    
12     /**************************************************************/
13    
14     #ifndef INC_PASO_MKL
15     #define INC_PASO_MKL
16    
17     #include "SystemMatrix.h"
18    
19     # if defined(_WIN32) || defined(_WIN64)
20     #define PARDISO pardiso
21     #else
22     #define PARDISO pardiso_
23     #endif
24    
25     #ifdef MKL
26     #include "mkl_solver.h"
27     #endif
28    
29    
30     #define MKL_ERROR_NO 0
31     #define MKL_MTYPE_SYM -2
32     #define MKL_MTYPE_UNSYM 11
33    
34     #define MKL_REORDERING_MINIMUM_DEGREE 0
35     #define MKL_REORDERING_NESTED_DISSECTION 2
36     #define MKL_PHASE_SYMBOLIC_FACTORIZATION 11
37     #define MKL_PHASE_FACTORIZATION 22
38     #define MKL_PHASE_SOLVE 33
39     #define MKL_PHASE_RELEASE_MEMORY -1
40    
41     /* extern int PARDISO
42     # (void *, int *, int *, int *, int *, int *,
43     # double *, int *, int *, int *, int *, int *,
44     # int *, double *, double *, int *);
45     */
46    
47    
48     void Paso_MKL_free(Paso_SystemMatrix* A);
49     void Paso_MKL(Paso_SystemMatrix* A, double* out, double* in, Paso_Options* options);
50     #endif

  ViewVC Help
Powered by ViewVC 1.1.26