GEOS
PerforationFields.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_MESH_PERFORATIONFIELDS_HPP_
21 #define GEOS_MESH_PERFORATIONFIELDS_HPP_
22 
23 #include "mesh/MeshFields.hpp"
24 
25 namespace geos
26 {
30 namespace fields
31 {
32 
33 namespace perforation
34 {
35 
37 DECLARE_FIELD( reservoirElementRegion,
38  "reservoirElementRegion",
39  array1d< localIndex >,
40  0,
41  LEVEL_0,
42  WRITE_AND_READ,
43  "For each perforation, elementRegion index of the perforated element" );
44 
45 DECLARE_FIELD( reservoirElementSubRegion,
46  "reservoirElementSubregion",
47  array1d< localIndex >,
48  0,
49  NOPLOT,
50  WRITE_AND_READ,
51  "For each perforation, elementSubRegion index of the perforated element" );
52 
53 DECLARE_FIELD( reservoirElementIndex,
54  "reservoirElementIndex",
55  array1d< localIndex >,
56  0,
57  NOPLOT,
58  WRITE_AND_READ,
59  "For each perforation, element index of the perforated element" );
60 
61 DECLARE_FIELD( reservoirElementGlobalIndex,
62  "reservoirElementGlobalIndex",
63  array1d< globalIndex >,
64  0,
65  NOPLOT,
66  WRITE_AND_READ,
67  "For each perforation, global element index of the perforated element" );
68 
69 DECLARE_FIELD( wellElementIndex,
70  "wellElementIndex",
71  array1d< localIndex >,
72  0,
73  NOPLOT,
74  WRITE_AND_READ,
75  "For each perforation, index of the well element" );
76 
77 DECLARE_FIELD( wellTransmissibility,
78  "wellTransmissibility",
79  array1d< real64 >,
80  0,
81  NOPLOT,
82  WRITE_AND_READ,
83  "For each perforation, well transmissibility" );
84 
85 DECLARE_FIELD( wellSkinFactor,
86  "wellSkinFactor",
87  array1d< real64 >,
88  0,
89  NOPLOT,
90  WRITE_AND_READ,
91  "For each perforation, well skin factor" );
92 
93 DECLARE_FIELD( location,
94  "location",
95  array2d< real64 >,
96  0,
97  NOPLOT,
98  WRITE_AND_READ,
99  "For each perforation, physical location (x,y,z coordinates)" );
100 
102 }
103 
104 }
105 
106 }
107 
108 #endif // GEOS_MESH_PERFORATIONFIELDS_HPP_
#define DECLARE_FIELD(NAME, KEY, TYPE, DEFAULT, PLOTLEVEL, RESTARTFLAG, DESCRIPTION)
Generates a traits struct.
Definition: MeshFields.hpp:39