Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020 #ifndef INC_DUDLEY_INDEXLIST
00021 #define INC_DUDLEY_INDEXLIST
00022
00023 #include "Dudley.h"
00024 #include "ElementFile.h"
00025 #include "Mesh.h"
00026
00027
00028
00029 #define INDEXLIST_LENGTH 85
00030
00031 typedef struct Dudley_IndexList {
00032 index_t index[INDEXLIST_LENGTH];
00033 dim_t n;
00034 struct Dudley_IndexList *extension;
00035 } Dudley_IndexList;
00036 void Dudley_IndexList_insertElements(Dudley_IndexList * index_list, Dudley_ElementFile * elements,
00037 bool_t reduce_row_order, index_t * row_map,
00038 bool_t reduce_col_order, index_t * col_map);
00039 void Dudley_IndexList_insertIndex(Dudley_IndexList *, index_t);
00040 void Dudley_IndexList_toArray(Dudley_IndexList *, index_t *, index_t, index_t, index_t);
00041 dim_t Dudley_IndexList_count(Dudley_IndexList *, index_t, index_t);
00042 void Dudley_IndexList_free(Dudley_IndexList *);
00043 Paso_Pattern *Dudley_IndexList_createPattern(dim_t n0, dim_t n, Dudley_IndexList * index_list, index_t range_min,
00044 index_t range_max, index_t index_offset);
00045 void Dudley_IndexList_insertElementsWithRowRange(Dudley_IndexList * index_list, index_t firstRow, index_t lastRow,
00046 Dudley_ElementFile * elements, index_t * row_map, index_t * col_map);
00047 void Dudley_IndexList_insertElementsWithRowRangeNoMainDiagonal(Dudley_IndexList * index_list, index_t firstRow,
00048 index_t lastRow, Dudley_ElementFile * elements,
00049 index_t * row_map, index_t * col_map);
00050
00051 #endif