legacy_well.h
Go to the documentation of this file.
1 /*
2  Copyright 2010 SINTEF ICT, Applied Mathematics.
3 
4  This file is part of the Open Porous Media project (OPM).
5 
6  OPM is free software: you can redistribute it and/or modify
7  it under the terms of the GNU General Public License as published by
8  the Free Software Foundation, either version 3 of the License, or
9  (at your option) any later version.
10 
11  OPM is distributed in the hope that it will be useful,
12  but WITHOUT ANY WARRANTY; without even the implied warranty of
13  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14  GNU General Public License for more details.
15 
16  You should have received a copy of the GNU General Public License
17  along with OPM. If not, see <http://www.gnu.org/licenses/>.
18 */
19 
20 #ifndef OPM_LEGACY_WELL_HEADER_INCLUDED
21 #define OPM_LEGACY_WELL_HEADER_INCLUDED
22 
29 #ifdef __cplusplus
30 extern "C" {
31 #endif
32 
33 
38 
42 enum well_control { BHP , RATE };
43 
47 enum surface_component { WATER = 0, OIL = 1, GAS = 2 };
48 
54  int *well_connpos;
55  int *well_cells;
56 };
57 
62  enum well_type *type;
64  double *target;
65  double *zfrac;
66 };
67 
72  double *WI;
73  double *gpot;
74  double *A;
75  double *phasemob;
76 };
77 
83 
89 
103 int
104 allocate_cell_wells(int nc, well_t *W, int **cwpos, int **cwells);
105 
116 void
117 deallocate_cell_wells(int *cvpos, int *cwells);
118 
128 void
129 derive_cell_wells(int nc, well_t *W, int *cwpos, int *cwells);
130 
131 
132 #ifdef __cplusplus
133 }
134 #endif
135 
136 #endif /* OPM_LEGACY_WELL_HEADER_INCLUDED */
double * zfrac
Definition: legacy_well.h:65
int * well_connpos
Definition: legacy_well.h:54
double * target
Definition: legacy_well.h:64
enum well_type * type
Definition: legacy_well.h:62
surface_component
Definition: legacy_well.h:47
well_type
Definition: legacy_well.h:37
Definition: legacy_well.h:47
Definition: legacy_well.h:47
double * WI
Definition: legacy_well.h:72
Definition: legacy_well.h:42
enum well_control * ctrl
Definition: legacy_well.h:63
well_control
Definition: legacy_well.h:42
Definition: legacy_well.h:47
int * well_cells
Definition: legacy_well.h:55
int allocate_cell_wells(int nc, well_t *W, int **cwpos, int **cwells)
Definition: legacy_well.h:42
void deallocate_cell_wells(int *cvpos, int *cwells)
Definition: legacy_well.h:61
Definition: legacy_well.h:71
void derive_cell_wells(int nc, well_t *W, int *cwpos, int *cwells)
Definition: legacy_well.h:37
Definition: legacy_well.h:52
double * gpot
Definition: legacy_well.h:73
double * A
Definition: legacy_well.h:74
double * phasemob
Definition: legacy_well.h:75
Definition: legacy_well.h:37
int number_of_wells
Definition: legacy_well.h:53