GEOS
AcousticVTIFields.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 TotalEnergies
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 
16 
21 #ifndef GEOS_PHYSICSSOLVERS_WAVEPROPAGATION_ACOUSTICVTIFIELDS_HPP_
22 #define GEOS_PHYSICSSOLVERS_WAVEPROPAGATION_ACOUSTICVTIFIELDS_HPP_
23 
24 #include "common/DataLayouts.hpp"
25 #include "mesh/MeshFields.hpp"
26 
27 
28 namespace geos
29 {
30 
31 namespace fields
32 {
33 
34 namespace acousticvtifields
35 {
36 
37 DECLARE_FIELD( Delta,
38  "delta",
39  array1d< real32 >,
40  0,
41  NOPLOT,
42  WRITE_AND_READ,
43  "Delta thomsen anisotropy parameter" );
44 
45 DECLARE_FIELD( Epsilon,
46  "epsilon",
47  array1d< real32 >,
48  0,
49  NOPLOT,
50  WRITE_AND_READ,
51  "Epsilon thomsen anisotropy parameter" );
52 
53 DECLARE_FIELD( F,
54  "f",
55  array1d< real32 >,
56  0,
57  NOPLOT,
58  WRITE_AND_READ,
59  "f quantity in VTI/TTI Fletcher's equations" );
60 
61 DECLARE_FIELD( StiffnessVector_p,
62  "stiffnessVector_p",
63  array1d< real32 >,
64  0,
65  NOPLOT,
66  WRITE_AND_READ,
67  "Stiffness vector contains R_h*Pressure_n." );
68 
69 DECLARE_FIELD( StiffnessVector_q,
70  "stiffnessVector_q",
71  array1d< real32 >,
72  0,
73  NOPLOT,
74  WRITE_AND_READ,
75  "Stiffness vector contains R_h*Pressure_n." );
76 
77 DECLARE_FIELD( StiffnessVectorA_p,
78  "stiffnessVectorA_p",
79  array1d< real32 >,
80  0,
81  NOPLOT,
82  WRITE_AND_READ,
83  "P-type acoustic attenuation stiffness vector." );
84 
85 DECLARE_FIELD( StiffnessVectorA_q,
86  "stiffnessVectorA_q",
87  array1d< real32 >,
88  0,
89  NOPLOT,
90  WRITE_AND_READ,
91  "Q-type acoustic attenuation stiffness vector." );
92 
93 DECLARE_FIELD( Pressure_p_nm1,
94  "pressure_p_nm1",
95  array1d< real32 >,
96  0,
97  NOPLOT,
98  WRITE_AND_READ,
99  "Scalar pressure at time n-1." );
100 
101 DECLARE_FIELD( Pressure_p_n,
102  "pressure_p_n",
103  array1d< real32 >,
104  0,
105  NOPLOT,
106  WRITE_AND_READ,
107  "Scalar pressure at time n." );
108 
109 DECLARE_FIELD( Pressure_p_np1,
110  "pressure_p_np1",
111  array1d< real32 >,
112  0,
113  LEVEL_0,
114  WRITE_AND_READ,
115  "Scalar pressure at time n+1." );
116 
117 DECLARE_FIELD( Pressure_q_nm1,
118  "pressure_q_nm1",
119  array1d< real32 >,
120  0,
121  NOPLOT,
122  WRITE_AND_READ,
123  "Scalar auxiliary pressure q at time n-1." );
124 
125 DECLARE_FIELD( Pressure_q_n,
126  "pressure_q_n",
127  array1d< real32 >,
128  0,
129  NOPLOT,
130  WRITE_AND_READ,
131  "Scalar auxiliary pressure q at time n." );
132 
133 DECLARE_FIELD( Pressure_q_np1,
134  "pressure_q_np1",
135  array1d< real32 >,
136  0,
137  LEVEL_0,
138  WRITE_AND_READ,
139  "Scalar auxiliary pressure q at time n+1." );
140 
141 DECLARE_FIELD( DivPsi_p,
142  "divpsi_p",
143  array2d< real32 >,
144  0,
145  NOPLOT,
146  WRITE_AND_READ,
147  "p-type memory variable for acoustic VTI attenuation." );
148 
149 DECLARE_FIELD( DivPsi_q,
150  "divpsi_q",
151  array2d< real32 >,
152  0,
153  NOPLOT,
154  WRITE_AND_READ,
155  "q-type memory variable for acoustic VTI attenuation." );
156 
157 DECLARE_FIELD( DampingVector_p,
158  "dampingVector_p",
159  array1d< real32 >,
160  0,
161  NOPLOT,
162  WRITE_AND_READ,
163  "Diagonal of the Damping Matrix for p terms in p equation." );
164 
165 DECLARE_FIELD( DampingVector_pq,
166  "dampingVector_pq",
167  array1d< real32 >,
168  0,
169  NOPLOT,
170  WRITE_AND_READ,
171  "Diagonal of the Damping Matrix for q terms in p equation." );
172 
173 DECLARE_FIELD( DampingVector_q,
174  "dampingVector_q",
175  array1d< real32 >,
176  0,
177  NOPLOT,
178  WRITE_AND_READ,
179  "Diagonal of the Damping Matrix for q terms in q equation." );
180 
181 DECLARE_FIELD( DampingVector_qp,
182  "dampingVector_qp",
183  array1d< real32 >,
184  0,
185  NOPLOT,
186  WRITE_AND_READ,
187  "Diagonal of the Damping Matrix for p terms in q equation." );
188 
189 DECLARE_FIELD( LateralSurfaceFaceIndicator,
190  "lateralSurfaceFaceIndicator",
191  array1d< localIndex >,
192  0,
193  NOPLOT,
194  WRITE_AND_READ,
195  "Free surface indicator, 1 if a face is on a lateral surface 0 otherwise." );
196 
197 DECLARE_FIELD( LateralSurfaceNodeIndicator,
198  "lateralSurfaceNodeIndicator",
199  array1d< localIndex >,
200  0,
201  NOPLOT,
202  WRITE_AND_READ,
203  "Lateral surface indicator, 1 if a face is on a lateral surface 0 otherwise." );
204 
205 DECLARE_FIELD( BottomSurfaceFaceIndicator,
206  "bottomSurfaceFaceIndicator",
207  array1d< localIndex >,
208  0,
209  NOPLOT,
210  WRITE_AND_READ,
211  "Bottom surface indicator, 1 if a face is on the bottom surface 0 otherwise." );
212 
213 DECLARE_FIELD( BottomSurfaceNodeIndicator,
214  "bottomSurfaceNodeIndicator",
215  array1d< localIndex >,
216  0,
217  NOPLOT,
218  WRITE_AND_READ,
219  "Bottom surface indicator, 1 if a face is on the bottom surface 0 otherwise." );
220 }
221 
222 }
223 
224 } /* namespace geos */
225 
226 #endif /* GEOS_PHYSICSSOLVERS_WAVEPROPAGATION__HPP_ACOUSTICVTIFIELDS */
#define DECLARE_FIELD(NAME, KEY, TYPE, DEFAULT, PLOTLEVEL, RESTARTFLAG, DESCRIPTION)
Generates a traits struct.
Definition: MeshFields.hpp:39