Markus Blatt
9e0b2fed4f
Notify well manager whether this is a parallel run.
...
In a parallel the well handling needs to be slightly
adapted, see PR OPM/opm-core#799 . Therefore, we need to
pass a boolean flag to the well manager indicating whether
this is a parallel run or not.
With this commit we do this.
2015-05-15 15:57:50 +02:00
Atgeirr Flø Rasmussen
052cf09495
Merge pull request #378 from blattms/less-verbose-parallel-runs
...
Prevent printing stats on more than 1 process for CPR.
2015-05-15 15:38:55 +02:00
Atgeirr Flø Rasmussen
3375e1d312
Merge pull request #376 from blattms/debug-parallel-amg-cpr
...
Fixes convergence issues with the parallel CPR
2015-05-15 15:38:38 +02:00
Markus Blatt
c37cf08ee0
Removes unused residualNorm method.
...
This method seems to be some leftover from refactoring.
In flow we now use computeResidualNorms() instead and
residualNorm() is not used anywhere. Therefore this commit
removes it to prevent confusion.
2015-05-12 17:30:27 +02:00
Markus Blatt
f0691504af
Prevent printing stats on more than 1 process for CPR.
2015-05-08 13:15:59 +02:00
Markus Blatt
1fbe8e3b6d
Distribute the geology information.
...
As it turns out initializing the Geology on a distributed grid
result in wrong values for e.g. saturation. Therefore with this
commit we resort to initializing the global geology and distribute
it using communication.
2015-05-07 12:21:06 +02:00
Markus Blatt
a31aa46744
Send all phases for surface volume and saturation.
...
Previously, we only did send the information for the
first phase which led to computing wrong values in
a simulation. With this patch we now send all the data
for all the phases.
2015-05-07 12:21:06 +02:00
Tor Harald Sandve
d7c67f10de
Change default tolerance for well residuals
2015-05-06 08:55:49 +02:00
Tor Harald Sandve
43b8f9851e
Change to maximum norm for the well residuals
2015-05-06 08:55:49 +02:00
Tor Harald Sandve
b4369cade8
Check well_flow tolerance pr phase
...
The phase rate residuals are scaled by the average volume factor to
avoid too large weight on the gas phase rates.
This also makes the well convergence criteria more consistent with the
mass-balance residuals for the cells.
2015-05-06 08:55:49 +02:00
Atgeirr Flø Rasmussen
862abf6ac7
Merge pull request #371 from totto82/modify_welleq
...
Modify welleq
2015-05-05 11:54:15 +02:00
Tor Harald Sandve
f1d7e0c7ea
Only add contribution from positive phase rates to the wellbore mixture
...
Instead of adding contribution from all wells with positive total rates,
each phase in each well are checked seperatly.
2015-05-04 10:22:43 +02:00
Atgeirr Flø Rasmussen
208b227ea8
Merge pull request #370 from blattms/fixes-comparison-warning
...
Prevent unsigned vs. signed int comparison warning
2015-04-30 16:54:19 +02:00
Markus Blatt
0329b0138d
Prevent unsigned vs. signed int comparison warning
2015-04-30 15:47:09 +02:00
Markus Blatt
80056b8ef2
[bugfix] Pass parallel information to AMG preconditioner within CPR.
...
Previously only passed the parallel information to the ILU preconditioner,
but of course needs this information to set up the communication, too.
With this commit we pass the parallel information object to AMG's constructor.
2015-04-30 14:09:24 +02:00
Tor Harald Sandve
a860361217
Cleaning addWellEq
...
1) Comments are added
2) Variable names are made more descriptive
3) Unecessary usage of subset are removed by extracting needed
quantities for the perforation cells once in advance
2015-04-29 09:22:23 +02:00
Tor Harald Sandve
1cec10ce05
Clean updateWellControls
...
The function is simplified by removing the update of the primal
variables (the ADBs). As a consequence updateWellControls must be
called prior to the creation of the primal variables.
2015-04-29 09:22:23 +02:00
Tor Harald Sandve
302bc71d2c
Use target values as initial conditions for BHP and SURFACE_RATE
...
BHP and SURFACE_RATE values are updated every step and not only when the
well controll has switched.
2015-04-29 09:22:23 +02:00
Tor Harald Sandve
b3f9997f6a
BUGFIX Wellbore mixture calculations for multiphase injectors
...
Add phase rates and not total rates when calculating the wellbore rates.
2015-04-29 09:22:23 +02:00
Robert Kloefkorn
c846418446
BlackoilOutputWriter: fix restore when last step is selected.
2015-04-24 10:53:23 +02:00
Robert Kloefkorn
654c847b72
FullyImplicitBlockOil: increase max_allowed_residual to 1e7 to make SPE3 run through without adaptive time stepping.
2015-04-23 15:13:18 +02:00
Atgeirr Flø Rasmussen
f007bf561c
Modify default solver parameters.
...
These should work well for both Norne and the SPE cases.
2015-04-21 12:40:21 +02:00
Robert Kloefkorn
2badc765a6
std::runtime_error --> LinearSolverProblem when linear solver was not converged.
...
Since LinearSolverProblem is derived from std::runtime_error everything should work as
before.
2015-04-16 11:41:28 +02:00
Arne Morten Kvarving
39e1d29176
fixed: use size_t and not unsigned long
...
fixes builds on i386
2015-04-14 10:25:21 +02:00
Atgeirr Flø Rasmussen
f82df94d2e
Use generic function instead of UnstructuredGrid interface.
2015-04-13 10:37:23 +02:00
Atgeirr Flø Rasmussen
e2a920b1fe
Merge pull request #335 from totto82/minpv-fill
...
Use average NTG values for merged cells due to MINPV algorithm
2015-04-13 10:20:36 +02:00
Robert Kloefkorn
a73c725b9d
CPRPreconditioner: make compile with DUNE 2.2.
2015-04-08 14:23:35 +02:00
Atgeirr Flø Rasmussen
78ea73fa0a
Fix convergence table labels (water, oil swapped).
2015-04-08 13:33:42 +02:00
Robert Kloefkorn
1ccf74eb4e
NewtonIterationBlackoilCPR: fix uninitialized parameter and make the parameters const.
2015-04-08 11:48:16 +02:00
Atgeirr Flø Rasmussen
62d3f37b1d
Merge pull request #342 from dr-robertk/PR/some-improvemnts-on-solvers
...
More parameter for solvers.
2015-03-31 18:00:40 +02:00
Robert Kloefkorn
1b23de0b1c
CPR: add verbosity as a parameter.
2015-03-31 12:54:26 +02:00
Robert Kloefkorn
632bc7a809
CPR: FastAMG seems not to be faster, so use regular AMG.
2015-03-31 12:42:58 +02:00
Robert Kloefkorn
adac4a7995
CPRPreconditioner: added tolerance and max iter as a parmeter.
...
Parameters are now a separate class to avoid long constructor parameter list.
2015-03-31 12:15:54 +02:00
Andreas Lauser
ba4fca5a77
Revert "also pass the deck to the output writer"
...
This reverts commit 88730e855f
.
2015-03-31 12:11:45 +02:00
Robert Kloefkorn
90a7faf1a8
FullyIBOS: added parameter for minimal number of newton iterations, default stays at 0.
...
Also, don't throw an exception when the solver did not converge, just return -1
indicating that there was a problem.
2015-03-31 11:16:44 +02:00
Robert Kloefkorn
20316e0a8e
NewtonBOCPR: allow to use either GMRes or BiCGStab. This will be revised once the new
...
linear solver interface is in place.
2015-03-31 11:04:31 +02:00
Atgeirr Flø Rasmussen
05bee313d3
Merge pull request #339 from andlaus/use_deck_units_for_summary_output
...
also pass the deck to the output writer
2015-03-27 12:30:20 +01:00
Andreas Lauser
88730e855f
also pass the deck to the output writer
2015-03-26 17:33:13 +01:00
Atgeirr Flø Rasmussen
061e1bcbd7
Merge pull request #324 from andlaus/implement_temperature_dependent_density
...
Implement temperature dependent density
2015-03-26 15:10:28 +01:00
Atgeirr Flø Rasmussen
eb9b62697e
Make vertcatCollapseJacs() handle constants properly.
...
With this, any or all of the input vector element may have
an empty jacobian vector. Any element with a non-empty
jacobian vector must still have the same block pattern.
2015-03-24 09:48:31 +01:00
Atgeirr Flø Rasmussen
085c279a0a
Use vertcatCollapseJacs() for improved performance.
2015-03-20 11:19:42 +01:00
Atgeirr Flø Rasmussen
07258f0249
Add function vertcatCollapsJacs().
2015-03-20 11:19:42 +01:00
Tor Harald Sandve
388ce7548e
Averaging multiple layers of NTG values
2015-03-19 12:27:08 +01:00
Atgeirr Flø Rasmussen
ad3da1d946
Re-add copying overload of AutoDiffBlock::function().
2015-03-19 11:46:48 +01:00
Tor Harald Sandve
65199735e2
Use average NTG values for merged cells due to MINPV algorithm
...
The volume weighted averaged NTG values are used to get more
reasonable x and y transmissibilities for the cells effected by the
MINPV grid processing algorithm.
This commit starts the process of supporting the MINPV-FILL keyword
where upscaled properties are used for the merged/filled cells.
2015-03-19 11:37:03 +01:00
Andreas Lauser
f0c3a6f892
add glue code needed for thermal gas PVT
2015-03-17 13:34:29 +01:00
Andreas Lauser
924818f445
add glue code needed for thermal oil PVT
2015-03-17 13:34:29 +01:00
Andreas Lauser
debb8a1a04
add glue code needed for thermal water PVT
2015-03-17 13:34:29 +01:00
Atgeirr Flø Rasmussen
0a76af1b14
Include <utility> for std::move().
2015-03-17 09:46:15 +01:00
Atgeirr Flø Rasmussen
f0ba4a5797
Use swap() and move() to reduce copying in formEllipticSystem().
2015-03-16 14:22:32 +01:00