GEOS
SurfaceGeneratorFields.hpp
Go to the documentation of this file.
1 /*
2  * ------------------------------------------------------------------------------------------------------------
3  * SPDX-License-Identifier: LGPL-2.1-only
4  *
5  * Copyright (c) 2016-2024 Lawrence Livermore National Security LLC
6  * Copyright (c) 2018-2024 Total, S.A
7  * Copyright (c) 2018-2024 The Board of Trustees of the Leland Stanford Junior University
8  * Copyright (c) 2023-2024 Chevron
9  * Copyright (c) 2019- GEOS/GEOSX Contributors
10  * All rights reserved
11  *
12  * See top level LICENSE, COPYRIGHT, CONTRIBUTORS, NOTICE, and ACKNOWLEDGEMENTS files for details.
13  * ------------------------------------------------------------------------------------------------------------
14  */
15 
20 #ifndef GEOS_PHYSICSSOLVERS_SURFACEGENERATION_SURFACEGENERATORFIELDS_HPP_
21 #define GEOS_PHYSICSSOLVERS_SURFACEGENERATION_SURFACEGENERATORFIELDS_HPP_
22 
23 #include "common/DataLayouts.hpp"
24 #include "mesh/MeshFields.hpp"
25 
26 namespace geos
27 {
31 namespace fields
32 {
33 
34 namespace surfaceGeneration
35 {
36 
37 DECLARE_FIELD( degreeFromCrack,
38  "degreeFromCrack",
39  array1d< integer >,
40  -1,
41  LEVEL_1,
42  WRITE_AND_READ,
43  "Distance to the crack in terms of topological distance. "
44  "(i.e. how many nodes are along the path to the closest "
45  "node that is on the crack surface." );
46 
47 DECLARE_FIELD( degreeFromCrackTip,
48  "degreeFromCrackTip",
49  array1d< integer >,
50  100000,
51  LEVEL_1,
52  WRITE_AND_READ,
53  "Distance to the crack tip in terms of topological distance. "
54  "(i.e. how many nodes are along the path to the closest "
55  "node that is on the crack surface." );
56 
57 DECLARE_FIELD( SIFNode,
58  "SIFNode",
59  array1d< real64 >,
60  0,
61  LEVEL_0,
62  WRITE_AND_READ,
63  "Calculated Stress Intensity Factor on the node." );
64 
65 DECLARE_FIELD( ruptureRate,
66  "ruptureRate",
67  array1d< real64 >,
68  1.0e99,
69  LEVEL_0,
70  WRITE_AND_READ,
71  "Rate of rupture in terms of number of objects split per time." );
72 
73 DECLARE_FIELD( SIF_I,
74  "SIF_I",
75  array1d< real64 >,
76  -1,
77  LEVEL_1,
78  WRITE_AND_READ,
79  "Calculated mode 1 Stress Intensity Factor on the node." );
80 
81 DECLARE_FIELD( SIF_II,
82  "SIF_II",
83  array1d< real64 >,
84  -1,
85  LEVEL_1,
86  WRITE_AND_READ,
87  "Calculated mode 2 Stress Intensity Factor on the node." );
88 
89 DECLARE_FIELD( SIF_III,
90  "SIF_III",
91  array1d< real64 >,
92  -1,
93  LEVEL_1,
94  WRITE_AND_READ,
95  "Calculated mode 3 Stress Intensity Factor on the node." );
96 
97 DECLARE_FIELD( ruptureState,
98  "ruptureState",
99  array1d< integer >,
100  0,
101  LEVEL_0,
102  WRITE_AND_READ,
103  "Rupture state of the face: \n 0=not ready for rupture \n 1=ready for rupture \n 2=ruptured." );
104 
105 DECLARE_FIELD( SIFonFace,
106  "SIFonFace",
107  array1d< real64 >,
108  1,
109  LEVEL_0,
110  WRITE_AND_READ,
111  "Calculated Stress Intensity Factor on the face." );
112 
113 
115 
117  "K_IC",
119  1e99,
120  LEVEL_0,
121  WRITE_AND_READ,
122  "Critical Stress Intensity Factor :math:`K_{IC}` in the plane of the face." );
123 
124 DECLARE_FIELD( K_IC_00,
125  "K_IC_00",
127  -1,
128  NOPLOT,
129  WRITE_AND_READ,
130  ":math:`K_{IC}` on 0-plane, in 0-direction." );
131 
132 DECLARE_FIELD( K_IC_01,
133  "K_IC_01",
135  -1,
136  NOPLOT,
137  WRITE_AND_READ,
138  ":math:`K_{IC}` on 0-plane, in 1-direction." );
139 
140 DECLARE_FIELD( K_IC_02,
141  "K_IC_02",
143  -1,
144  NOPLOT,
145  WRITE_AND_READ,
146  ":math:`K_{IC}` on 0-plane, in 2-direction." );
147 
148 DECLARE_FIELD( K_IC_10,
149  "K_IC_10",
151  -1,
152  NOPLOT,
153  WRITE_AND_READ,
154  ":math:`K_{IC}` on 1-plane, in 0-direction." );
155 
156 DECLARE_FIELD( K_IC_11,
157  "K_IC_11",
159  -1,
160  NOPLOT,
161  WRITE_AND_READ,
162  ":math:`K_{IC}` on 1-plane, in 1-direction." );
163 
164 DECLARE_FIELD( K_IC_12,
165  "K_IC_12",
167  -1,
168  NOPLOT,
169  WRITE_AND_READ,
170  ":math:`K_{IC}` on 1-plane, in 2-direction." );
171 
172 DECLARE_FIELD( K_IC_20,
173  "K_IC_20",
175  -1,
176  NOPLOT,
177  WRITE_AND_READ,
178  ":math:`K_{IC}` on 2-plane, in 0-direction." );
179 
180 DECLARE_FIELD( K_IC_21,
181  "K_IC_21",
183  -1,
184  NOPLOT,
185  WRITE_AND_READ,
186  ":math:`K_{IC}` on 2-plane, in 1-direction." );
187 
188 DECLARE_FIELD( K_IC_22,
189  "K_IC_22",
191  -1,
192  NOPLOT,
193  WRITE_AND_READ,
194  ":math:`K_{IC}` on 2-plane, in 2-direction." );
195 
196 DECLARE_FIELD( primaryCandidateFace,
197  "primaryCandidateFace",
199  0,
200  LEVEL_0,
201  WRITE_AND_READ,
202  "??" );
203 
204 DECLARE_FIELD( isFaceSeparable,
205  "isFaceSeparable",
207  0,
208  LEVEL_0,
209  WRITE_AND_READ,
210  "A flag to mark if the face is separable." );
211 
212 }
213 
214 }
215 
216 }
217 
218 #endif // GEOS_PHYSICSSOLVERS_SURFACEGENERATION_SURFACEGENERATORFIELDS_HPP_
#define DECLARE_FIELD(NAME, KEY, TYPE, DEFAULT, PLOTLEVEL, RESTARTFLAG, DESCRIPTION)
Generates a traits struct.
Definition: MeshFields.hpp:39
Array< T, 2, PERMUTATION > array2d
Alias for 2D array.
Definition: DataTypes.hpp:192
Array< T, 1 > array1d
Alias for 1D array.
Definition: DataTypes.hpp:176