GEOS
WellFields.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 
20 #ifndef GEOS_PHYSICSSOLVERS_FLUIDFLOW_WELLS_WELLFIELDS_HPP_
21 #define GEOS_PHYSICSSOLVERS_FLUIDFLOW_WELLS_WELLFIELDS_HPP_
22 
23 #include "common/DataLayouts.hpp"
24 #include "mesh/MeshFields.hpp"
25 
26 namespace geos
27 {
31 namespace fields
32 {
33 
34 namespace well
35 {
36 
37 DECLARE_FIELD( connectionRate,
38  "wellElementConnectionRate",
39  array1d< real64 >,
40  0,
41  LEVEL_0,
42  WRITE_AND_READ,
43  "Connection rate" );
44 
45 DECLARE_FIELD( connectionRate_n,
46  "wellElementConnectionRate_n",
47  array1d< real64 >,
48  0,
49  NOPLOT,
50  WRITE_AND_READ,
51  "Connection rate at the previous converged time step" );
52 DECLARE_FIELD( energyPerforationFlux,
53  "energyPerforationFlux",
54  array1d< real64 >,
55  0,
56  NOPLOT,
57  WRITE_AND_READ,
58  "Energy perforation flux" );
59 
60 DECLARE_FIELD( dEnergyPerforationFlux,
61  "dEnergyPerforationFlux",
62  array3d< real64 >,
63  0,
64  NOPLOT,
65  NO_WRITE,
66  "Derivative of energy perforation flux with respect to pressure temperature and global component density (compositional only)" );
67 
68 DECLARE_FIELD( pressure,
69  "pressure",
70  array1d< real64 >,
71  0,
72  LEVEL_0,
73  WRITE_AND_READ,
74  "Pressure" );
75 
76 DECLARE_FIELD( pressure_n,
77  "pressure_n",
78  array1d< real64 >,
79  0,
80  NOPLOT,
81  WRITE_AND_READ,
82  "Pressure at the previous converged time step" );
83 
84 DECLARE_FIELD( temperature,
85  "temperature",
86  array1d< real64 >,
87  0,
88  LEVEL_0,
89  WRITE_AND_READ,
90  "Temperature" );
91 
92 DECLARE_FIELD( temperature_n,
93  "temperature_n",
94  array1d< real64 >,
95  0,
96  NOPLOT,
97  WRITE_AND_READ,
98  "Temperature at the previous converged time step" );
99 
100 DECLARE_FIELD( gravityCoefficient,
101  "gravityCoefficient",
102  array1d< real64 >,
103  0,
104  NOPLOT,
105  WRITE_AND_READ,
106  "Gravity coefficient (dot product of gravity acceleration by gravity vector)" );
107 
108 DECLARE_FIELD( pressureScalingFactor,
109  "pressureScalingFactor",
110  array1d< real64 >,
111  1,
112  NOPLOT,
113  NO_WRITE,
114  "Scaling factors for pressure" );
115 
116 DECLARE_FIELD( temperatureScalingFactor,
117  "temperatureScalingFactor",
118  array1d< real64 >,
119  1,
120  NOPLOT,
121  NO_WRITE,
122  "Scaling factors for temperature" );
123 
124 }
125 
126 }
127 
128 }
129 
130 #endif // GEOS_PHYSICSSOLVERS_FLUIDFLOW_WELLS_WELLFIELDS_HPP_
#define DECLARE_FIELD(NAME, KEY, TYPE, DEFAULT, PLOTLEVEL, RESTARTFLAG, DESCRIPTION)
Generates a traits struct.
Definition: MeshFields.hpp:39