Commit Graph

3209 Commits

Author SHA1 Message Date
Kai Bao
8116424f6d documenting the class WellMultiSegment 2015-12-01 00:06:46 +01:00
Atgeirr Flø Rasmussen
fe4f99a94e Minimise differences between flow.cpp and flow_multisegment.cpp. 2015-12-01 00:06:46 +01:00
Atgeirr Flø Rasmussen
57511641e2 Remove unused data members. 2015-12-01 00:06:46 +01:00
Atgeirr Flø Rasmussen
a40d93a170 Comment out changes to residual output. 2015-12-01 00:06:46 +01:00
Atgeirr Flø Rasmussen
c825b599e5 Remove unused include. 2015-12-01 00:06:46 +01:00
Kai Bao
bcc97b44d8 refactoring the construction of WellMultiSegment
for better readability.
2015-12-01 00:06:46 +01:00
Kai Bao
c946749c73 addressing some old comments in WellMultiSegment 2015-12-01 00:06:46 +01:00
Kai Bao
a684c390f5 cleaning up SimulatorFullyImplicitBlackoilMultiSegment_impl 2015-12-01 00:06:46 +01:00
Kai Bao
31061c8331 cleaning up function computeWellConnectionPressures() for ms wells. 2015-12-01 00:06:46 +01:00
Kai Bao
cfa5faab4e cleaning up comments in BlackoilMultiSegmentModel_impl 2015-12-01 00:06:46 +01:00
Kai Bao
f90b96abf6 removing the use of wops_ from the BlackoilModelBase in ms well
Also some cleaning up of comments in BlackoilMultiSegmentModel
2015-12-01 00:06:45 +01:00
Atgeirr Flø Rasmussen
61cccfebf8 Refactor updatState() to use numWellVars().
This allows us to use the base version of updateState().
2015-12-01 00:06:45 +01:00
Kai Bao
df30546841 not handling SHUT wells when generating wells_multisegment
it fixed the 7th time step running for Norne.
2015-12-01 00:06:45 +01:00
Kai Bao
9114b56e9b cleaning up comments in WellMultiSegment and WellStateMultiSegment 2015-12-01 00:06:45 +01:00
Kai Bao
edf3c9b08c optimizing the addWellControlEq() for ms wells. 2015-12-01 00:06:45 +01:00
Kai Bao
fcd31d74ac restoring the original wellstate when solveWelleq fails. 2015-12-01 00:06:45 +01:00
Atgeirr Flø Rasmussen
233a275191 Made the solveWellEq() method return if it converged.
Also use this to avoid updating if not converged in the
multi-segment version.
2015-12-01 00:06:45 +01:00
Kai Bao
b6ede37ca3 WIP for fixing the solveWellEq running for ms wells.
refactoring needs to be done to finish it.
2015-12-01 00:06:45 +01:00
Atgeirr Flø Rasmussen
2055c94269 Implement solveWellEq() for multisegment model.
Note that this initial version has only been tested on regular wells!
2015-12-01 00:06:45 +01:00
Kai Bao
57d796ca68 not extracting the mob and b inside computeWellFlux() ms wells 2015-12-01 00:06:45 +01:00
Kai Bao
4b9064a0f8 optimizing the function computeSegmentPressuresDelta()
Further optimization is possible by introducing new variable for the
model to avoid recomputation.
2015-12-01 00:06:45 +01:00
Kai Bao
79b9039ba1 fixing computeWellFlux() to recover the mutli-segment running. 2015-12-01 00:06:45 +01:00
Atgeirr Flø Rasmussen
693f5c791b Refactor computeWellFlux().
Now much faster, avoiding repeated use of subset() etc. by
vectorization of code.
2015-12-01 00:06:45 +01:00
Kai Bao
80723fee12 adding more operators to ms well ops
p2w w2p s2w w2s
2015-12-01 00:06:45 +01:00
Kai Bao
0c28bf5a75 recovering compilation and running after merging master. 2015-12-01 00:06:45 +01:00
Kai Bao
5a0efdba30 adding comments for addWellFluxEq() 2015-12-01 00:06:45 +01:00
Kai Bao
8ae74d5a47 optimizing addWellFluxEq() based on ms well ops 2015-12-01 00:06:45 +01:00
Kai Bao
55e4206c0b adding s2s_inlets and s2s_outlets to ms well ops.
and also fix the s2p and p2s implementation.
2015-12-01 00:06:45 +01:00
Atgeirr Flø Rasmussen
5b43018862 Fix ms well ops implementation. 2015-12-01 00:06:45 +01:00
Atgeirr Flø Rasmussen
bbf86dcd4a Add wops_ms_ member. 2015-12-01 00:06:45 +01:00
Atgeirr Flø Rasmussen
b9e80c1950 Update flow_multisegment to match thresholdPressure() API change. 2015-12-01 00:06:45 +01:00
Kai Bao
9ee2d92f3f recovering the compilation from the updated master branch. 2015-12-01 00:06:45 +01:00
Kai Bao
c3b4088448 recovering the compilation after updating opm-parser. 2015-12-01 00:06:45 +01:00
Kai Bao
c8fbb0b80d clearning up some comments and debugging output 2015-12-01 00:06:45 +01:00
Kai Bao
b1fdda00af calculating the pressure difference between segments and perforations. 2015-12-01 00:06:45 +01:00
Kai Bao
31f71dd6f7 calculating the depth difference between segments and perforations 2015-12-01 00:06:45 +01:00
Kai Bao
658ad0a400 calculation of pressure difference between perofration and cells
remained to be verified.

The calculation is explicit, should be performed only once at the
begining of the time step.
2015-12-01 00:06:45 +01:00
Kai Bao
f3b885dc0d removing several member variables not useful
they are related to the presure correction caclulations.
2015-12-01 00:06:45 +01:00
Kai Bao
9f218ef1a3 adding segmentDiameter() to WellMultiSegment 2015-12-01 00:06:45 +01:00
Kai Bao
b9e5518b51 adding compPressureDrop() member function for WellMultiSegment 2015-12-01 00:06:45 +01:00
Kai Bao
5e64da6f8e calculating the viscosity of the fluid in segments 2015-12-01 00:06:45 +01:00
Kai Bao
93a86019af calculating the mass flow rate for the segments. 2015-12-01 00:06:45 +01:00
Kai Bao
3b3ac203d9 change the name of computeSegmentDensitiesAndCompVolumeDt
to computeSegmentFluidProperties to include calculation of more fluid mixture in the segments.
2015-12-01 00:06:45 +01:00
Kai Bao
8bde14d7ce applying the volume effects to the well flux equation.
The effects on the result are really tiny, which makes the real
verfication not easy. It did not bring anything bad for the current
working case though.
2015-12-01 00:06:45 +01:00
Atgeirr Flø Rasmussen
9dea3c6b57 Fix typo in variable name. 2015-12-01 00:06:45 +01:00
Atgeirr Flø Rasmussen
81e9c25b10 Made methods const in multi-segment model as well. 2015-12-01 00:06:45 +01:00
Kai Bao
95eb44e530 calculating the surface volume of component in segment
For convinience, we calculate and store the surface volume by dt
instead.
2015-12-01 00:06:45 +01:00
Atgeirr Flø Rasmussen
e82828527c Make some methods const.
The methods are: computeWellFlux(), updatePerfPhaseRatesAndPressures()
and extractWellPerfProperties().
2015-12-01 00:06:45 +01:00
Kai Bao
847ae2ef8c adding segment volume / dt to BlackoilMultiSegmentModel
to handle the wellbore volume effects.
2015-12-01 00:06:45 +01:00
Kai Bao
d5f917d1ac computing the density of segment mixture and pressure drop earlier
the density of segmetn mixture will be used in the well flux
calculation.
2015-12-01 00:06:45 +01:00