ESYS13
Revision_
|
00001 00002 /******************************************************* 00003 * 00004 * Copyright (c) 2003-2012 by University of Queensland 00005 * Earth Systems Science Computational Center (ESSCC) 00006 * http://www.uq.edu.au/esscc 00007 * 00008 * Primary Business: Queensland, Australia 00009 * Licensed under the Open Software License version 3.0 00010 * http://www.opensource.org/licenses/osl-3.0.php 00011 * 00012 *******************************************************/ 00013 00014 00015 #ifndef INC_FINLEY 00016 #define INC_FINLEY 00017 00018 /**************************************************************/ 00019 00020 /* Finley finite element solver */ 00021 00022 /**************************************************************/ 00023 00024 #include "esysUtils/Esys_MPI.h" 00025 #include "esysUtils/error.h" 00026 00027 /**************************************************************/ 00028 /*#define Finley_TRACE */ 00029 #define FINLEY_UNKNOWN -1 00030 #define FINLEY_DEGREES_OF_FREEDOM 1 00031 #define FINLEY_NODES 3 00032 #define FINLEY_ELEMENTS 4 00033 #define FINLEY_FACE_ELEMENTS 5 00034 #define FINLEY_POINTS 6 00035 #define FINLEY_CONTACT_ELEMENTS_1 7 00036 #define FINLEY_CONTACT_ELEMENTS_2 8 00037 #define FINLEY_REDUCED_DEGREES_OF_FREEDOM 2 00038 #define FINLEY_REDUCED_NODES 14 00039 #define FINLEY_REDUCED_ELEMENTS 10 00040 #define FINLEY_REDUCED_FACE_ELEMENTS 11 00041 #define FINLEY_REDUCED_CONTACT_ELEMENTS_1 12 00042 #define FINLEY_REDUCED_CONTACT_ELEMENTS_2 13 00043 00044 /* status stuff */ 00045 typedef int Finley_Status_t; 00046 #define Finley_increaseStatus(self) ((self)->status)++ 00047 #define FINLEY_INITIAL_STATUS 0 00048 00049 /* error codes */ 00050 00051 00052 typedef Esys_ErrorCodeType Finley_ErrorCodeType; 00053 00054 /* interfaces */ 00055 00056 double Finley_timer(void); 00057 bool_t Finley_checkPtr(void*); 00058 void Finley_resetError(void); 00059 void Finley_setError(Finley_ErrorCodeType err,__const char* msg); 00060 bool_t Finley_noError(void); 00061 Finley_ErrorCodeType Finley_getErrorType(void); 00062 char* Finley_getErrorMessage(void); 00063 void Finley_convertPasoError(void); 00064 bool_t Finley_MPI_noError( Esys_MPIInfo *mpi_info ); 00065 /*void Finley_setTagsInUse(const index_t Tag, const dim_t numTags, dim_t *numTagsInUse, index_t **tagsInUse, Esys_MPIInfo* mpiinfo);*/ 00066 00067 #endif /* #ifndef INC_FINLEY */ 00068