escript  Revision_Unversioneddirectory
Dudley.h
Go to the documentation of this file.
1 
2 /*****************************************************************************
3 *
4 * Copyright (c) 2003-2016 by The University of Queensland
5 * http://www.uq.edu.au
6 *
7 * Primary Business: Queensland, Australia
8 * Licensed under the Apache License, version 2.0
9 * http://www.apache.org/licenses/LICENSE-2.0
10 *
11 * Development until 2012 by Earth Systems Science Computational Center (ESSCC)
12 * Development 2012-2013 by School of Earth Sciences
13 * Development from 2014 by Centre for Geoscience Computing (GeoComp)
14 *
15 *****************************************************************************/
16 
17 #ifndef INC_DUDLEY
18 #define INC_DUDLEY
19 
20 /************************************************************************************/
21 
22 /* Dudley finite element solver */
23 
24 /************************************************************************************/
25 
26 #include "esysUtils/types.h"
27 #include "esysUtils/Esys_MPI.h"
28 #include "esysUtils/error.h"
29 #include <cstring>
30 
31 /************************************************************************************/
32 /*#define Dudley_TRACE */
33 #define DUDLEY_UNKNOWN -1
34 #define DUDLEY_DEGREES_OF_FREEDOM 1
35 #define DUDLEY_NODES 3
36 #define DUDLEY_ELEMENTS 4
37 #define DUDLEY_FACE_ELEMENTS 5
38 #define DUDLEY_POINTS 6
39 #define DUDLEY_REDUCED_DEGREES_OF_FREEDOM 2
40 #define DUDLEY_REDUCED_NODES 14
41 #define DUDLEY_REDUCED_ELEMENTS 10
42 #define DUDLEY_REDUCED_FACE_ELEMENTS 11
43 
44 /* status stuff */
45 typedef int Dudley_Status_t;
46 #define Dudley_increaseStatus(self) ((self)->status)++
47 #define DUDLEY_INITIAL_STATUS 0
48 
49 /* error codes */
50 
52 
53 /* interfaces */
54 
55 double Dudley_timer(void);
56 bool Dudley_checkPtr(void *);
57 void Dudley_resetError(void);
58 void Dudley_setError(Dudley_ErrorCodeType err, __const char *msg);
59 bool Dudley_noError(void);
61 char *Dudley_getErrorMessage(void);
62 void Dudley_convertPasoError(void);
63 bool Dudley_MPI_noError(esysUtils::JMPI& mpi_info);
64 // void Dudley_setTagsInUse(const index_t Tag, const dim_t numTags, dim_t * numTagsInUse, index_t ** tagsInUse,
65 // esysUtils::JMPI& mpiinfo);
66 
67 #endif /* #ifndef INC_DUDLEY */
double Dudley_timer(void)
Definition: Dudley.cpp:26
int Dudley_Status_t
Definition: Dudley.h:45
void Dudley_convertPasoError(void)
Definition: Dudley.cpp:69
bool Dudley_MPI_noError(esysUtils::JMPI &mpi_info)
Definition: Dudley.cpp:76
void Dudley_setError(Dudley_ErrorCodeType err, __const char *msg)
Definition: Dudley.cpp:45
char * Dudley_getErrorMessage(void)
Definition: Dudley.cpp:63
void Dudley_resetError(void)
Definition: Dudley.cpp:39
Esys_ErrorCodeType Dudley_ErrorCodeType
Definition: Dudley.h:51
Esys_ErrorCodeType
Definition: error.h:41
Dudley_ErrorCodeType Dudley_getErrorType(void)
Definition: Dudley.cpp:57
bool Dudley_checkPtr(void *)
Definition: Dudley.cpp:33
boost::shared_ptr< JMPI_ > JMPI
Definition: Esys_MPI.h:79
bool Dudley_noError(void)
Definition: Dudley.cpp:51