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

Contents of /trunk/paso/src/Paso.h

Parent Directory Parent Directory | Revision Log Revision Log


Revision 790 - (show annotations)
Wed Jul 26 23:12:34 2006 UTC (13 years, 11 months ago) by bcumming
File MIME type: text/plain
File size: 2483 byte(s)
changes to escript/py_src/pdetools.py and /escript/src/Data.h/.cpp to
make the Locator work in MPI. escript::Data::mindp now returns a 3 tuple,
with the MPI rank of the process on which the minimum value occurs
included. escript::Data::convertToNumArrayFromDPNo also takes the ProcNo
to perform the MPI reduction.

This had to be implemented in both the MPI and non-MPI versions to allow
the necesary changes to the Python code in pdetools.py. In the non-MPI
version ProcNo is set to 0. This works for the explicit scripts tested
thus far, however if it causes problems in your scripts contact Ben or
Lutz, or revert the three files (pdetools.py, Data.h and Data.cpp) to
the previous version.  


1 /* $Id$ */
2
3
4 /*
5 ********************************************************************************
6 * Copyright 2006 by ACcESS MNRF *
7 * *
8 * http://www.access.edu.au *
9 * Primary Business: Queensland, Australia *
10 * Licensed under the Open Software License version 3.0 *
11 * http://www.opensource.org/licenses/osl-3.0.php *
12 ********************************************************************************
13 */
14
15 /**************************************************************/
16
17 /* Paso finite element solver */
18
19 /**************************************************************/
20
21 /* Copyrights by ACcESS Australia, 2003,2004,2005 */
22 /* Author: gross@access.edu.au */
23
24 /**************************************************************/
25
26 #ifndef INC_PASO
27 #define INC_PASO
28
29 #include "Common.h"
30 #include "Options.h"
31 #include "SystemMatrix.h"
32
33 #include "Paso_MPI.h"
34
35 /**************************************************************/
36
37 enum Paso_ErrorCodeType {
38 NO_ERROR,
39 WARNING,
40 VALUE_ERROR,
41 TYPE_ERROR,
42 MEMORY_ERROR,
43 IO_ERROR,
44 ZERO_DIVISION_ERROR,
45 EOF_ERROR,
46 FLOATING_POINT_ERROR,
47 INDEX_ERROR,
48 OS_ERROR,
49 OVERFLOW_ERROR,
50 SYSTEM_ERROR,
51 PASO_MPI_ERROR
52 };
53
54 typedef enum Paso_ErrorCodeType Paso_ErrorCodeType;
55
56 /* interfaces */
57
58 double Paso_timer(void);
59 bool_t Paso_checkPtr(void*);
60 void Paso_resetError(void);
61 void Paso_setError(Paso_ErrorCodeType err,char* msg);
62 bool_t Paso_noError(void);
63 Paso_ErrorCodeType Paso_getErrorType(void);
64 char* Paso_getErrorMessage(void);
65 void Paso_solve(Paso_SystemMatrix* A, double* out, double* in, Paso_Options* options);
66 void Paso_solve_free(Paso_SystemMatrix* in);
67
68 #ifdef PASO_MPI
69 bool_t Paso_MPI_noError( Paso_MPIInfo *mpi_info );
70 #endif
71
72 #endif /* #ifndef INC_PASO */
73
74 /*
75 * $Log$
76 * Revision 1.2 2005/09/15 03:44:38 jgs
77 * Merge of development branch dev-02 back to main trunk on 2005-09-15
78 *
79 * Revision 1.1.2.2 2005/09/07 00:59:08 gross
80 * some inconsistent renaming fixed to make the linking work.
81 *
82 * Revision 1.1.2.1 2005/09/05 06:29:47 gross
83 * These files have been extracted from finley to define a stand alone libray for iterative
84 * linear solvers on the ALTIX. main entry through Paso_solve. this version compiles but
85 * has not been tested yet.
86 *
87 *
88 */

Properties

Name Value
svn:eol-style native
svn:keywords Author Date Id Revision

  ViewVC Help
Powered by ViewVC 1.1.26