00001 #ifndef _FV_CONST_H_ 00002 #define _FV_CONST_H_ 00003 00004 #ifndef APC_FALSE 00005 #define APC_FALSE 0 00006 #endif 00007 00008 #ifndef APC_TRUE 00009 #define APC_TRUE 1 00010 #endif 00011 00012 #ifndef FV_USE_EXTERNALS 00013 00014 /* Types of mesh entities */ 00015 const int FV_MMC_QUAD = 4; /* quadrilateral element or face */ 00016 const int FV_MMC_TRIA = 3; /* triangular element or face */ 00017 const int FV_MMC_TETRA = 7; /* tetrahedral element */ 00018 const int FV_MMC_PRISM = 5; /* prismatic element */ 00019 const int FV_MMC_BRICK = 6; /* hexahedral element */ 00020 00022 const int FV_MMC_ACTIVE = 1; /* active mesh entity */ 00023 const int FV_MMC_INACTIVE = -1; /* inactive (refined) mesh entity */ 00024 const int FV_MMC_FREE = 0; /* free space in data structure */ 00025 00026 //const int APC_NO_DOFS = -1; 00027 00028 /* Refinement types */ 00029 const int FV_MMC_NOT_REF = 0; /* not refined */ 00030 const int FV_MMC_REF_ISO = 1; /* isotropic refinement */ 00031 00032 /* Basis functions types */ 00033 const int APC_TENSOR = 0; 00034 const int APC_COMPLETE = 1; 00035 00036 /* Initialization options */ 00037 //const int APC_ZERO = 0; 00038 //const int APC_READ = 1; 00039 //const int APC_INIT = 2; 00040 00041 /* standard macro for max and min and abs */ 00042 #define ut_max(x,y) ((x)>(y)?(x):(y)) 00043 #define ut_min(x,y) ((x)<(y)?(x):(y)) 00044 #define ut_abs(x) ((x)<0?-(x):(x)) 00045 00046 /* Constants */ 00047 //const int MMC_MAXELFAC = 5; /* maximal number of faces of an element */ 00048 //const int MMC_MAXFAVNO = 4; /* maximal number of vertices of a face */ 00049 //const int MMC_MAXELVNO = 6; /* maximal number of vertices of an element */ 00050 //const int MMC_MAXELSONS = 8; /* maximal number of faces of an element */ 00051 00052 const int APC_MAXEQ = 1; 00053 00054 //#define APC_MAXELP_COMP 9 00055 //const int APC_MAXELP_COMP = 9; 00056 //#define APC_MAXELP_TENS 909 00057 //const int APC_MAXELP_TENS = 909; 00058 00059 //#define APC_MAXELVD 600 00060 //const int APC_MAXELVD = 600; 00061 //#define APC_MAXELSD APC_MAXEQ*APC_MAXELVD 00062 //const int APC_MAXELP_TENS = 909; 00063 00064 /* Other */ 00065 const int FV_MMC_NO_FATH = 0; /* no father indicator */ 00066 const int FV_MMC_SAME_ORIENT = 1; /* indicator for the same orientation */ 00067 const int FV_MMC_OPP_ORIENT = -1; /* indicator for the opposite orientation */ 00068 //extern const int MMC_NO_FATH; /* no father indicator */ 00069 //extern const int MMC_SAME_ORIEN; /* indicator for the same orientation */ 00070 //extern const int MMC_OPP_ORIENT; /* indicator for the opposite orientation */ 00071 00072 const int FV_MMC_BOUNDARY = 0; /* boundary indicator */ 00073 //#define APC_MAXELSD APC_MAXEQ*APC_MAXELVD 00074 //const int APC_MAXELSD = APC_MAXEQ*APC_MAXELVD; 00075 00076 00077 00078 #endif 00079 00080 00081 00082 00083 #endif /* _FV_CONST_H_ 00084 */