Commit Graph

710 Commits

Author SHA1 Message Date
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
Atgeirr Flø Rasmussen
a4a3505fae Remove unused method computeRelPermWells(). 2015-03-16 14:22:32 +01:00
Atgeirr Flø Rasmussen
04b255a03f Make more use of move semantics in AD code.
This makes some API changes to AutoDiffBlock.
 - Add overload for the constant() constructor taking rvalue ref.
 - Add overload for the variable() constructor taking rvalue ref.
 - Make the function() constructor *require* rvalue refs.
 - Add a swap() function.

The remaining changes in this commit are follow-ups especially
to the third change (adding std::move in many places), and
some removal of unnecessary block pattern arguments from calls to
the constant() static method.
2015-03-16 14:22:32 +01:00
Atgeirr Flø Rasmussen
635f3db814 Use references in computeRelperm(). 2015-03-16 14:22:32 +01:00
Atgeirr Flø Rasmussen
5d5ab267d2 Use std::move() in variableState(). 2015-03-16 14:22:31 +01:00
Bård Skaflestad
531bc7fd73 Merge pull request #333 from atgeirr/reduce-recalculation
Reduce recalculation of phase pressures
2015-03-11 09:20:51 +01:00
Robert Kloefkorn
11ef164865 SimFullyImplBO: write simulation state at all report step and in the end when adaptive
TS is enabled.
2015-03-10 12:12:31 +01:00
Atgeirr Flø Rasmussen
f6b28b0f66 Add helper computeGasPress(), use to improve performance.
This avoids excessive calling of constantState().
2015-03-09 10:56:35 +01:00
Atgeirr Flø Rasmussen
ec9f5c1634 Move initial term computation to assemble(). 2015-03-09 10:56:35 +01:00
Atgeirr Flø Rasmussen
8f91296974 Eliminate extra computePressure() calls.
The function still gets called more than necessary,
but that is due to its use in variableState() and that
constantState() calls variableState().
2015-03-09 10:56:35 +01:00
Atgeirr Flø Rasmussen
818b653c15 Removed extra overload of relperm(). 2015-03-09 09:40:30 +01:00
Atgeirr Flø Rasmussen
a347e35304 Removing extra overloads of rsSat() and rvSat().
Also a few minor fixes to docs and indentation while in the area.
2015-03-09 09:40:30 +01:00
Atgeirr Flø Rasmussen
17117e7a0e Avoid storing return value in reference.
Normally this is OK for by-value returns, but here the right hand side
was changed to call ADB::value(), which returns by reference.
2015-03-05 16:07:04 +01:00
Atgeirr Flø Rasmussen
17b2a0e726 Merge pull request #327 from atgeirr/simplify-props
Simplify properties
2015-03-05 14:01:41 +01:00
Robert Kloefkorn
b20733eb29 nitpick adjustments. 2015-03-05 11:28:11 +01:00
Robert Kloefkorn
05260e9582 added number of linear and newton iterations to output. 2015-03-05 10:40:20 +01:00
Robert Kloefkorn
e5eec509d2 make terminal output a parameter to avoid output. 2015-03-05 10:40:20 +01:00
Robert Kloefkorn
06396b4b82 FullyImplicitBlackoilSolver: added tolerance for well convergence as parameter. 2015-03-05 10:40:15 +01:00
Atgeirr Flø Rasmussen
fbf06c06e7 Remove extra overloads of bWat(), bOil() and bGas().
Remaining method is the one taking AD objects. This modification
required changes to a few more places than anticipated:
  - RateConverter
  - FullyImplicitBlackoilSolver::computeWellConnectionPressures()
In these places, the call now is a little more complex and there
might be a very minor performance loss, until we optimize the
bX() functions to check for the no-derivatives case.
2015-03-03 14:33:19 +01:00
Robert Kloefkorn
96bda6a453 FullImplicitBlackOil and CPR: allow for dynamically changed tolerances from parameter
file. Default is as before.
2015-03-03 13:42:03 +01:00
Atgeirr Flø Rasmussen
1195ced57a Remove obsolete comment. 2015-03-03 13:19:42 +01:00
Atgeirr Flø Rasmussen
1d68f7e846 Remove extra overloads of muGas() and muWat().
This change has been made in both BlackoilPropsAdInterface
and BlackoilPropsAdFromDeck. Only remaining overloads are
those using AD objects and passing the PhasePresence for
each data point.
2015-03-03 13:14:31 +01:00
Atgeirr Flø Rasmussen
965be0471f Remove non-AD overload of muWat().
The AD version is made a little smarter, detecting the
case of input with no derivatives. Existing use of the
non-AD rewritten.
2015-03-03 12:56:30 +01:00