Bård Skaflestad
8ed2e18e15
assignPermeability(): Don't build an Inspector to count global cells.
...
Thus, assingPermeability() is applicable to simulation decks that
aren't based on corner-point descriptions (e.g., the (DXV,DYV,DZV)
grid type).
2012-05-15 12:07:04 +02:00
Bård Skaflestad
43bb6eac78
WellsManager(): Support grids that do not define "global_cell"
...
Assume that the "global_cell" in that case corresponds to the identity
mapping.
2012-05-15 11:54:59 +02:00
Kjetil Olsen Lye
e26f90d9cb
merge.
2012-05-15 10:47:39 +02:00
Atgeirr Flø Rasmussen
ead94905db
Merged.
2012-05-14 21:49:24 +02:00
Atgeirr Flø Rasmussen
c0d43a69bd
Now computePorevolume() takes a porosity array instead of a property object.
...
This is to make it compatible with blackoil properties.
An alternative would be to give [Incomp|Blackoil]PropertiesInterface a
common base class (RockInterface?) with the common rock-related methods.
2012-05-14 21:47:10 +02:00
Kjetil Olsen Lye
90f8a780da
added possibility to add wells to wellcollection without using deck
2012-05-14 16:10:37 +02:00
Atgeirr Flø Rasmussen
a6034be47d
Merged.
2012-05-14 11:29:06 +02:00
Atgeirr Flø Rasmussen
d4e530eb3c
Added surfaceDensity() method to BlackoilPropertiesInterface.
2012-05-14 11:28:05 +02:00
Atgeirr Flø Rasmussen
6f0f9ff188
Added surfaceDensity() method to IncompPropertiesInterface.
2012-05-14 11:21:13 +02:00
Atgeirr Flø Rasmussen
27eecd954e
Added preliminary sketch of compressible tpfa solver.
...
This solver is:
- using the residual based assembler,
- aiming to include the nonlinear Newton iterations
(therefore also the (re-)evaluation of fluid data).
2012-05-14 10:53:50 +02:00
Bård Skaflestad
cd4026f6c4
matrix(): Reduce likelihood of reintroducing error fixed in cset 91ad967a15a0.
...
Specifically, rename loop variables i1->row and i2->col to better
reflect purpose.
2012-05-11 16:31:05 +02:00
Bård Skaflestad
86ab541f66
Fix silly mistake: Multiplying from the right scales columns, not rows.
2012-05-11 16:26:41 +02:00
Bård Skaflestad
02d3601072
Merge from upstream.
2012-05-11 16:08:06 +02:00
Bård Skaflestad
64b47cd304
Comment on the various stages in producing dA/dp result.
2012-05-11 16:07:01 +02:00
Atgeirr Flø Rasmussen
8b27b4a05d
Minor doc update.
2012-05-11 15:10:02 +02:00
Bård Skaflestad
9e41d1860d
Hide output that's presumably diagnostic behind (undefined) macro.
2012-05-11 15:07:10 +02:00
Bård Skaflestad
29cb30ed58
matrix(): Honour chain rule of differentiation.
...
The original implementation of change-set 90d8dd8c8040 contained a
crucial misprint leading to incorrect results for all compressible
fluids.
2012-05-11 14:26:48 +02:00
Atgeirr Flø Rasmussen
0a2c9ff000
Update doc.
2012-05-11 13:02:48 +02:00
Atgeirr Flø Rasmussen
0677f58026
Simplified data structure for extracted columns.
2012-05-11 09:37:12 +02:00
Bård Skaflestad
a865f01478
comprock_increment(): Don't proceed to mult_csr() unless OK.
2012-05-10 22:29:41 +02:00
Atgeirr Flø Rasmussen
a4b32311b2
Fix indexing bug in well handling code for incremental (Newton) pressure assembly.
2012-05-10 15:31:51 +02:00
Atgeirr Flø Rasmussen
1aa5d6b293
Silence a warning.
2012-05-10 15:30:33 +02:00
Kjetil Olsen Lye
10b738c7e3
Merge.
2012-05-10 12:50:22 +02:00
Xavier Raynaud
8842943794
Make compressible pressure solver compatible with well management.
2012-05-10 12:38:29 +02:00
Kjetil Olsen Lye
f24d286f18
Added error handling to pressure solver.
2012-05-10 09:55:34 +02:00
Bård Skaflestad
0cd6a0a0c6
Realign pointer offsets to provide additional visual cues.
2012-05-09 22:39:28 +02:00
Bård Skaflestad
a920b472e2
Fix copy-paste misprint in comment.
2012-05-09 20:17:10 +02:00
Bård Skaflestad
3ab9390921
Delete trailing whitespace introduced in change-set b39f2340f248 .
2012-05-09 20:15:10 +02:00
Bård Skaflestad
1672ae8c29
COMPDAT: Extract location from WELSPECS if defaulted.
...
This behaviour is dictated by the ECLIPSE specification.
2012-05-09 20:14:29 +02:00
Bård Skaflestad
9809afb3a8
Whitespace adjustment. No functional changes.
2012-05-09 19:21:52 +02:00
Bård Skaflestad
56802231ce
Re-align variable declarations various assemble*() methods.
2012-05-09 19:21:00 +02:00
Bård Skaflestad
97ed64f438
Call malloc() once, at pimpl construction time, rather than in each *_increment().
...
It's slightly wasteful, however. Maybe we can just reuse h->x for the
mult_csr_matrix() output?
2012-05-09 19:15:41 +02:00
Bård Skaflestad
00b1ce27f0
Follow file conventions in mult_csr_matrix().
2012-05-09 19:07:59 +02:00
Bård Skaflestad
323914eaba
Don't expose a (presently) internal function.
2012-05-09 18:58:17 +02:00
Bård Skaflestad
d23c93e661
Merge from upstream.
2012-05-09 18:56:09 +02:00
Bård Skaflestad
8909664bd7
Report first well whose connections are outside grid.
2012-05-09 18:44:08 +02:00
Bård Skaflestad
6a7c6cfeb0
Convert Residual-based solver to conventions of <newwells.h>.
...
Almost a mechanical translation.
2012-05-09 16:26:41 +02:00
Bård Skaflestad
eda46d4fbe
Add a query method to answer whether or not the deck defines any wells.
2012-05-09 16:09:13 +02:00
Kjetil Olsen Lye
5d0148a080
Added correct handling of VREP and REIN keyword. No longer generates a warning, just a friendly hint.
2012-05-09 16:03:21 +02:00
Kjetil Olsen Lye
84eb849ed2
merge.
2012-05-09 15:56:30 +02:00
Kjetil Olsen Lye
ff9fb38596
Used voidage_replacment correctly in applyExplicitReinjectionControls
2012-05-09 15:55:59 +02:00
Kjetil Olsen Lye
bf3273b115
Included voidage_replacment in injection specification.
2012-05-09 15:54:25 +02:00
Kjetil Olsen Lye
f8d92c0535
Added initial support for VREP.
2012-05-09 15:43:43 +02:00
Xavier Raynaud
1892f80af2
merge
2012-05-09 15:15:13 +02:00
Xavier Raynaud
f7e2d88fd9
Added Newton compressible fluid solver.
2012-05-09 15:06:13 +02:00
Kjetil Olsen Lye
8ad72d5d1c
Added explicit number of ControlMode.
2012-05-09 14:26:30 +02:00
Kjetil Olsen Lye
d46d191a81
Introduced a hack to make it possible to test reinjection without supporting surface rate controls.
2012-05-09 13:58:25 +02:00
Kjetil Olsen Lye
12e4125081
Multiplied with reinjection_fraction_target, as is proper.
2012-05-09 13:15:53 +02:00
Kjetil Olsen Lye
3d07b954e2
Made relevant methods in WellCollection and WellsManager to call the reinjection control functions
2012-05-09 13:03:37 +02:00
Kjetil Olsen Lye
622d8ac767
Added helpful comment.
2012-05-09 12:58:29 +02:00
Kjetil Olsen Lye
621c87d8c7
Added simple reinjection to group control (explicit)
2012-05-09 12:57:36 +02:00
Kjetil Olsen Lye
3eeee29edb
Added summation method to find total produced rates in a given group.
2012-05-09 12:35:26 +02:00
Kjetil Olsen Lye
c2ce4d9bce
Corrected some basic logic tests.
2012-05-09 11:29:13 +02:00
Kjetil Olsen Lye
b5d474beca
Added failure checking for solve method.
2012-05-09 11:28:56 +02:00
Bård Skaflestad
ece387d1ae
Remove a variable rendered unused by change-set 5a9bf9f4a8b9.
2012-05-09 11:27:23 +02:00
Bård Skaflestad
0bd3e033b9
Flatten loops and prefer memcpy() to manual copying.
2012-05-09 11:21:47 +02:00
Bård Skaflestad
da51ca4ef0
Correct inaccuracy in WellControls::distr description.
...
The distribution is specified per control, not per well.
2012-05-09 11:11:47 +02:00
Atgeirr Flø Rasmussen
5253ce7fbe
Merged.
2012-05-08 16:00:54 +02:00
Kjetil Olsen Lye
88b8ddebd2
merge.
2012-05-08 12:25:29 +02:00
Kjetil Olsen Lye
8c6ea2895b
Changed some minor bugs in the refactored code in wells_example
2012-05-08 12:23:58 +02:00
Bård Skaflestad
9e5b5be59b
Delete trailing whitespace.
2012-05-08 12:04:59 +02:00
Bård Skaflestad
6b96d48677
Fix a likely indexing error leading to non-unit strides.
2012-05-08 12:03:50 +02:00
Kjetil Olsen Lye
c9d96d81b8
Refactored some computations into seperate methods in wells_example.cpp
2012-05-08 11:04:15 +02:00
Kjetil Olsen Lye
a28311cb7c
Inserted reservoir max rate into the group structure
2012-05-07 14:28:33 +02:00
Atgeirr Flø Rasmussen
962a3b6445
Added shut well support to ifs_tpfa.
...
This was done using the convention that for a well w in W,
W.ctrls[w]->current < 0
means that it should be treated as shut. This allows us to keep the matrix
structure related to wells constant, without needing to remake it when wells
shut or open.
2012-05-04 08:15:06 +02:00
Kjetil Olsen Lye
8702852524
Made reservoir rates have a small error tolerated
2012-05-03 16:04:48 +02:00
Kjetil Olsen Lye
6ee088550f
Properly negate target for group control in WellNode
2012-05-03 15:44:51 +02:00
Kjetil Olsen Lye
66b4122be9
merge
2012-05-03 15:35:59 +02:00
Kjetil Olsen Lye
da92997b7b
Made a maximum number of iterations in wells_test
2012-05-03 15:35:44 +02:00
Atgeirr Flø Rasmussen
1c8e21ae08
Rename parameter init_sat -> init_saturation (docs already used this name).
2012-05-03 13:48:59 +02:00
Atgeirr Flø Rasmussen
0aae87cf16
Rewrote wellsToSrc() to be a little more accepting and correct.
2012-05-03 13:45:19 +02:00
Atgeirr Flø Rasmussen
8b33bd261d
Remove unused variable.
2012-05-03 13:32:30 +02:00
Atgeirr Flø Rasmussen
104372bbdc
Fixed signs of production rate constraints (should be negative).
2012-05-03 13:29:02 +02:00
Atgeirr Flø Rasmussen
361593fa45
Fix bug in use of perforation data, and check that well contstruction calls succeed.
2012-05-03 12:49:37 +02:00
Atgeirr Flø Rasmussen
373a4f2689
Fix recently created bug in append_well_controls().
2012-05-03 12:48:56 +02:00
Kjetil Olsen Lye
18ace3c137
Made REIN a warning rather than a throw, just to get something up and running
2012-05-02 16:59:42 +02:00
Kjetil Olsen Lye
72afe774b0
Fixed applyGroupControls to handle zero guide rates
2012-05-02 16:54:49 +02:00
Kjetil Olsen Lye
8eb9b55759
Fixed small reading bug in well structure
2012-05-02 16:30:48 +02:00
Kjetil Olsen Lye
da85405dfa
Removed calculateGuideRates and made all guide rate dependent code calculate the guide rate dynamically
2012-05-02 15:41:05 +02:00
Kjetil Olsen Lye
fe51b96a7e
Final fixes for new well structure (to make it compile)
2012-05-02 13:02:59 +02:00
Atgeirr Flø Rasmussen
9416042f5a
Major restructuring to improve support for groups, multiple controls etc. Work in progress.
2012-05-02 09:39:05 +02:00
Atgeirr Flø Rasmussen
d7512bdeb6
Add all present controls to wells, not just the active one.
...
Some restructuring to support more proper well handling, esp. group control
and surface rate controls in general.
2012-05-02 09:38:18 +02:00
Atgeirr Flø Rasmussen
432b9d4473
Whitespace and comment changes only.
2012-05-02 09:27:34 +02:00
Atgeirr Flø Rasmussen
3a31bbee30
Changed enums, variable names and defaults.
2012-05-02 09:26:36 +02:00
Atgeirr Flø Rasmussen
c234c0b42a
Follow changes to header file.
2012-05-02 09:25:52 +02:00
Atgeirr Flø Rasmussen
2d7d52bec1
Refined and reordered control enum, added guide rates.
2012-05-02 09:25:19 +02:00
Atgeirr Flø Rasmussen
6e9091bc4d
Updated computeTransportSource() and wellsToSrc() to match changes in Wells data structure.
2012-05-02 09:24:34 +02:00
Atgeirr Flø Rasmussen
88a24ef839
Verify that RESERVOIR_RATE controlled wells have specified total rate.
2012-04-26 15:03:55 +02:00
Atgeirr Flø Rasmussen
6d4f0fe293
Updated pressure solver after changes to well data structure.
2012-04-26 14:49:25 +02:00
Atgeirr Flø Rasmussen
ce0bc7003b
Merge.
2012-04-26 13:58:08 +02:00
Atgeirr Flø Rasmussen
3f3c5a8516
Using internal enum InjectorType instead of (removed) enum SurfaceComponent from newwells.h.
2012-04-26 13:57:19 +02:00
Atgeirr Flø Rasmussen
597a2cc7af
Significant modification of well data structures and related functions.
...
The following changes are made:
- The SurfaceComponent enum has been removed.
- Added new member Wells::number_of_phases.
- The Wells::zfrac member has been replaced with comp_frac. The old
zfrac always had 3 components per well (accessed according to the
canonical ordering given by SurfaceComponent), the new one has
number_of_phases components per well.
- Changed add_well() accordingly to accept comp_frac.
- Added new member WellControls::distr, giving distributions for
rate controls.
- All functions dealing with well controls now take Wells* and a
well index instead of directly taking WellControls*.
- Now append_well_controls() also takes a rate distribution argument.
- Added new public function set_current_control().
2012-04-26 13:55:35 +02:00
Kjetil Olsen Lye
63c16c9d15
Slightly changed bounds checking to account for negative limits.
2012-04-26 08:52:56 +02:00
Kjetil Olsen Lye
743085bd16
Added some more documentation
2012-04-25 16:45:32 +02:00
Kjetil Olsen Lye
38c02c5a63
Change from std::string to const std::string& in findGroup-methods
2012-04-25 16:42:55 +02:00
Kjetil Olsen Lye
06d83e669b
Added some documentation
2012-04-25 16:40:31 +02:00
Kjetil Olsen Lye
7d25e9c6a0
Completly revamped the way group control is checked
2012-04-25 16:14:40 +02:00
Atgeirr Flø Rasmussen
3fe04afa8d
Follow change to well rate target sign convention.
2012-04-25 15:36:01 +02:00
Atgeirr Flø Rasmussen
b107180272
Added ifs_tpfa_assemble_comprock() to handle compressible rock cases.
...
This allows us to remove the hack from IncompTpfa.cpp.
2012-04-25 15:00:28 +02:00
Kjetil Olsen Lye
ea0df38468
Added setWellsPointer, changed the interface of leaf_nodes_ slightly
2012-04-25 14:19:47 +02:00