OpenRadioss 2025.1.11
OpenRadioss project
Loading...
Searching...
No Matches
const.h
Go to the documentation of this file.
1/*****************************************************************************
2/
3/ SPACE (SPArse Cholesky Elimination) Library: const.h
4/
5/ author J"urgen Schulze, University of Paderborn
6/ created 99sep14
7/
8/ This file contains constant definitions
9/
10******************************************************************************/
11
12/* matrix types */
13#define GRID 0
14#define MESH 1
15#define TORUS 2
16#define HB 3
17
18/* graph types */
19#define UNWEIGHTED 0
20#define WEIGHTED 1
21
22/* type of ordering */
23#define MINIMUM_PRIORITY 0
24#define INCOMPLETE_ND 1
25#define MULTISECTION 2
26#define TRISTAGE_MULTISECTION 3
27
28/* fill-reducing node selection strategies */
29#define AMD 0
30#define AMF 1
31#define AMMF 2
32#define AMIND 3
33
34/* node selection strategies for generating the domain decompositions */
35#define QMD 0
36#define QMRDV 1
37#define QRAND 2
38
39/* default options for SPACE */
40#define SPACE_ORDTYPE MULTISECTION
41#define SPACE_NODE_SELECTION1 AMMF
42#define SPACE_NODE_SELECTION2 AMMF
43#define SPACE_NODE_SELECTION3 QMRDV
44#define SPACE_DOMAIN_SIZE 200
45#define SPACE_MSGLVL 2
46#define SPACE_ETREE_NONZ 256
47#define SPACE_ETREE_BAL 5
48#define SPACE_MASK_OFFSET 2
49
50/* misc. constants */
51#define TRUE 1
52#define FALSE 0
53#define ERR -1
54#define NOERR 0
55#define MAX_LINE_LEN 255
56#define MAX_INT ((1<<30)-1)
57#define MAX_FLOAT 1e31
58#define EPS 0.001
59
60/* constants used in color array */
61/* these constants are also used as an index (do not change) */
62#define GRAY 0
63#define BLACK 1
64#define WHITE 2
65
66/* constants for the Dulmage-Mendelsohn decomposition (dmflags) */
67/* these constants are also used as an index (do not change) */
68#define SI 0 /* node e X is reachable via exposed node e X */
69#define SX 1 /* node e X is reachable via exposed node e Y */
70#define SR 2 /* SR = X - (SI u SX) */
71#define BI 3 /* node e Y is reachable via exposed node e Y */
72#define BX 4 /* node e Y is reachable via exposed node e X */
73#define BR 5 /* BR = Y - (BI u BX) */
74
75/* size/indices of option array (do not change) */
76#define ORD_OPTION_SLOTS 7
77
78#define OPTION_ORDTYPE 0
79#define OPTION_NODE_SELECTION1 1
80#define OPTION_NODE_SELECTION2 2
81#define OPTION_NODE_SELECTION3 3
82#define OPTION_DOMAIN_SIZE 4
83#define OPTION_MSGLVL 5
84#define OPTION_ETREE_NONZ 6
85
86/* size/indices for timing array in ordering computation */
87#define ORD_TIME_SLOTS 12
88
89#define TIME_COMPRESS 0 /* 0. TIME_COMPRESS */
90#define TIME_MS 1 /* 1. TIME_MS */
91#define TIME_MULTILEVEL 2 /* 1.1 TIME_MULTILEVEL */
92#define TIME_INITDOMDEC 3 /* 1.1.1 TIME_INITDOMDEC */
93#define TIME_COARSEDOMDEC 4 /* 1.1.2 TIME_COARSEDOMDEC */
94#define TIME_INITSEP 5 /* 1.1.3 TIME_INITSEP */
95#define TIME_REFINESEP 6 /* 1.1.4 TIME_REFINESEP */
96#define TIME_SMOOTH 7 /* 1.2 TIME_SMOOTH */
97#define TIME_BOTTOMUP 8 /* 2. TIME_BOTTOMUP */
98#define TIME_UPDADJNCY 9 /* 2.1 TIME_UPDADJNCY */
99#define TIME_FINDINODES 10 /* 2.2 TIME_FINDINODES */
100#define TIME_UPDSCORE 11 /* 2.3 TIME_UPDSCORE */
101
102/* size/indices for timing array in sequential numerical factorization */
103#define NUMFAC_TIME_SLOTS 4
104
105#define TIME_INITFRONT 0
106#define TIME_EXADD 1
107#define TIME_KERNEL 2
108#define TIME_INITUPD 3
109
110/* size/indices for timing array in parallel numerical factorization */
111#define NUMFACPAR_TIME_SLOTS 9
112
113#define TIME_INITFRONT 0
114#define TIME_EXADD 1
115#define TIME_KERNEL 2
116#define TIME_INITUPD 3
117#define TIME_EXCHANGE 4
118#define TIME_INITFRONTPAR 5
119#define TIME_EXADDPAR 6
120#define TIME_KERNELPAR 7
121#define TIME_INITUPDPAR 8
122
123/* size/indices for timing array in parallel kernel */
124#define KERNELPAR_TIME_SLOTS 4
125
126#define TIME_PIVOT 0
127#define TIME_PIVOT_WAIT 1
128#define TIME_CMOD 2
129#define TIME_CMOD_WAIT 3