ESYS13  Revision_
Finley.h
Go to the documentation of this file.
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