ESScript
Revision_
Main Page
Namespaces
Classes
Files
File List
File Members
dudley
src
dudley/src/IndexList.h
Go to the documentation of this file.
1
2
/*****************************************************************************
3
*
4
* Copyright (c) 2003-2013 by University of Queensland
5
* http://www.uq.edu.au
6
*
7
* Primary Business: Queensland, Australia
8
* Licensed under the Open Software License version 3.0
9
* http://www.opensource.org/licenses/osl-3.0.php
10
*
11
* Development until 2012 by Earth Systems Science Computational Center (ESSCC)
12
* Development since 2012 by School of Earth Sciences
13
*
14
*****************************************************************************/
15
16
/************************************************************************************/
17
18
/* Dudley: Converting an element list into a matrix shape */
19
20
/************************************************************************************/
21
22
#ifndef INC_DUDLEY_INDEXLIST
23
#define INC_DUDLEY_INDEXLIST
24
25
#include "
Dudley.h
"
26
#include "
ElementFile.h
"
27
#include "
Mesh.h
"
28
29
/* structure to build system matrix */
30
31
#define INDEXLIST_LENGTH 85
32
33
typedef
struct
Dudley_IndexList
{
34
index_t
index
[
INDEXLIST_LENGTH
];
35
dim_t
n
;
36
struct
Dudley_IndexList
*
extension
;
37
}
Dudley_IndexList
;
38
void
Dudley_IndexList_insertElements
(
Dudley_IndexList
* index_list,
Dudley_ElementFile
* elements,
39
bool
reduce_row_order,
index_t
* row_map,
40
bool
reduce_col_order,
index_t
* col_map);
41
void
Dudley_IndexList_insertIndex
(
Dudley_IndexList
*,
index_t
);
42
void
Dudley_IndexList_toArray
(
Dudley_IndexList
*,
index_t
*,
index_t
,
index_t
,
index_t
);
43
dim_t
Dudley_IndexList_count
(
Dudley_IndexList
*,
index_t
,
index_t
);
44
void
Dudley_IndexList_free
(
Dudley_IndexList
*);
45
Paso_Pattern
*
Dudley_IndexList_createPattern
(
dim_t
n0,
dim_t
n
,
Dudley_IndexList
* index_list,
index_t
range_min,
46
index_t
range_max,
index_t
index_offset);
47
void
Dudley_IndexList_insertElementsWithRowRange
(
Dudley_IndexList
* index_list,
index_t
firstRow,
index_t
lastRow,
48
Dudley_ElementFile
* elements,
index_t
* row_map,
index_t
* col_map);
49
void
Dudley_IndexList_insertElementsWithRowRangeNoMainDiagonal
(
Dudley_IndexList
* index_list,
index_t
firstRow,
50
index_t
lastRow,
Dudley_ElementFile
* elements,
51
index_t
* row_map,
index_t
* col_map);
52
53
#endif
/* #ifndef INC_DUDLEY_INDEXLIST */
Generated on Thu Dec 12 2013 03:47:18 for ESScript by
1.8.1.2