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

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

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1388 - (hide annotations)
Fri Jan 11 07:45:58 2008 UTC (12 years, 1 month ago) by trankine
File MIME type: text/plain
File size: 1659 byte(s)
And get the *(&(*&(* name right
1 ksteube 1312
2 gross 425 /* $Id$ */
3    
4 ksteube 1312 /*******************************************************
5     *
6     * Copyright 2003-2007 by ACceSS MNRF
7     * Copyright 2007 by University of Queensland
8     *
9     * http://esscc.uq.edu.au
10     * Primary Business: Queensland, Australia
11     * Licensed under the Open Software License version 3.0
12     * http://www.opensource.org/licenses/osl-3.0.php
13     *
14     *******************************************************/
15 dhawcroft 631
16 gross 425 /**************************************************************/
17    
18     /* Paso: SystemMatrix: interface to intel MKL sparse solver */
19    
20     /**************************************************************/
21    
22     /* Copyrights by ACcESS Australia 2006 */
23     /* Author: gross@access.edu.au */
24    
25     /**************************************************************/
26    
27     #ifndef INC_PASO_MKL
28     #define INC_PASO_MKL
29    
30     #include "SystemMatrix.h"
31 gross 584 #include "performance.h"
32 gross 425
33     # if defined(_WIN32) || defined(_WIN64)
34     #define PARDISO pardiso
35     #else
36     #define PARDISO pardiso_
37     #endif
38    
39     #ifdef MKL
40     #include "mkl_solver.h"
41     #endif
42    
43    
44     #define MKL_ERROR_NO 0
45     #define MKL_MTYPE_SYM -2
46     #define MKL_MTYPE_UNSYM 11
47    
48     #define MKL_REORDERING_MINIMUM_DEGREE 0
49     #define MKL_REORDERING_NESTED_DISSECTION 2
50     #define MKL_PHASE_SYMBOLIC_FACTORIZATION 11
51     #define MKL_PHASE_FACTORIZATION 22
52     #define MKL_PHASE_SOLVE 33
53     #define MKL_PHASE_RELEASE_MEMORY -1
54    
55     /* extern int PARDISO
56     # (void *, int *, int *, int *, int *, int *,
57     # double *, int *, int *, int *, int *, int *,
58     # int *, double *, double *, int *);
59     */
60    
61    
62     void Paso_MKL_free(Paso_SystemMatrix* A);
63 gross 584 void Paso_MKL(Paso_SystemMatrix* A, double* out, double* in, Paso_Options* options,Paso_Performance* pp);
64 gross 425 #endif

  ViewVC Help
Powered by ViewVC 1.1.26