Atgeirr Flø Rasmussen
588615bd21
Merge pull request #285 from dr-robertk/PR/revision-of-output
...
Revision of black oil output by putting everything into a single class following the OutputWriter IF.
2015-02-05 15:20:35 +01:00
Robert K
2068b7ea16
Revision of black oil output. Put everything into a class following the OutputWriter
...
interface.
2015-02-05 14:39:47 +01:00
Atgeirr Flø Rasmussen
12248f5c14
Merge pull request #294 from totto82/default_bhp_wconhist
...
Hardcode bhp limit for WCONHIST/RESV to 1 atm.
2015-02-05 13:31:05 +01:00
Tor Harald Sandve
2f32afd36d
Hardcode bhp limit for WCONHIST/RESV to 1 atm.
...
TODO: Allow WELTARG to change the bhp limit
2015-02-05 09:41:37 +01:00
Atgeirr Flø Rasmussen
5b79ead6ba
Merge pull request #288 from andlaus/temperature_dependent_viscosity
...
add the glue code required for temperature dependent viscosity
2015-02-03 17:48:41 +01:00
Andreas Lauser
ff09e87787
add the glue code required for temperature dependent viscosity
2015-02-03 15:27:38 +01:00
Atgeirr Flø Rasmussen
3d8209abe4
Merge pull request #283 from blattms/restructure-newton-convergence-for-parallelization
...
Restructure newton convergence for parallelization
2015-01-30 15:38:25 +01:00
Markus Blatt
60c0f30388
Use const where appropriate and polish code formatting.
2015-01-30 15:26:55 +01:00
Markus Blatt
9d2d942396
Prevent copying of pore volume vector.
2015-01-30 15:26:33 +01:00
Markus Blatt
267bf39e4a
Use idx to access to access the phases.
...
In cases where not all phases are active, there no phase positions for
inactive phases and the computation may crash.
2015-01-30 15:23:12 +01:00
Atgeirr Flø Rasmussen
e6a053a392
Merge pull request #291 from blattms/fixes-issue-290
...
Fixes raisal of assertion in Eigen because of empty vector and matrices. Fixes #290
2015-01-30 15:12:48 +01:00
Atgeirr Flø Rasmussen
a8b715893f
Merge pull request #289 from totto82/vap_der
...
Include derivatives of vappars
2015-01-30 15:06:16 +01:00
Atgeirr Flø Rasmussen
69c1a660a8
Merge pull request #287 from qilicun/update_pv
...
Use original grid cell volume to compute pore volume.
2015-01-30 15:00:34 +01:00
Markus Blatt
7c8f992a2d
Fixes raisal of assertion in Eigen because of empty vector and matrices.
...
Apparently Eigen cannot handle empty containers during reserve correctly.
Therfore we check for the size of the vector and if it is zero simply create
empty jacobians.
Closes #290
2015-01-29 17:14:09 +01:00
Tor Harald Sandve
b57ddf1b2d
Include derivatives of vappars
...
The derivatives of the vappars are included in the Jacobian.
To avoid inf derivatives for vap<1, the oil saturation is restricted
from below by sqrt(epsilon).
2015-01-29 13:08:52 +01:00
Liu Ming
3ab3dc555a
Use original grid cell volume to compute pore volume.
2015-01-29 16:25:17 +08:00
Markus Blatt
d27e522ba4
docu fix (???) -> tempV.
2015-01-28 19:17:25 +01:00
Markus Blatt
3fcb99c27a
Fixes wrong indexing for residual_.material_balance_eq.
...
Curiously, this indexes differently from other stuff. It
uses the phase index and not the index within the phases
that are present.
2015-01-28 19:11:13 +01:00
Markus Blatt
cb9048d928
Only compute the sum of B for one phase and not over all phases.
2015-01-28 19:10:24 +01:00
Markus Blatt
f5ed31d128
Fixes rotated function parameters during function call.
...
There was a mixup in the order of the function parameters, both in
the declaration and in the actual function call. This commit resolves this.
2015-01-28 19:08:48 +01:00
Markus Blatt
0b18e6a15f
Improve documentation of convergenceReductions.
2015-01-28 16:54:28 +01:00
Markus Blatt
2209170c15
Use the already queried active phase index directly instead of looking it up each time.
2015-01-28 16:40:23 +01:00
Markus Blatt
622c8825a9
Correctly initialize the Eigen arrays.
...
Previously, we just called the default constructor. Of course this does not allocate
any memory and we experienced segmentation faults. With this patch we correctly
allocate the arrays by passing the number of row and columns to the constructor.
2015-01-28 16:38:10 +01:00
Atgeirr Flø Rasmussen
e3b0a92176
Merge pull request #284 from blattms/rename-residuals
...
Renames residuals() to computeResidualNorms()
2015-01-28 14:46:48 +01:00
Markus Blatt
20b6fb0853
Fixes typo: residuum -> residual
2015-01-27 14:05:38 +01:00
Markus Blatt
f820e1d441
Moves calculation of the total pore volume into convergenceReduction.
...
It is a global reduction in the parallel case and should therefore be
computed together with the other ones.
2015-01-27 12:49:55 +01:00
Markus Blatt
5e94e2ab08
Renames residuals() to computeResidualNorms()
...
It took me quite some time to understand the computations done
e.g. during the detection of oscillations, where the stuff returned
by residuals() is used as a vector of doubles. It turns out that
residuals() actually returns the norm of the residuals. To clarify this
we rename residuals() to computeResidualNorms() and residuals to
residual_norms. Having my dare devil day today, I even try to document the
method. (This documented method might feel kind of lonely between the others,
now;). Hopefully this saves others some time.
2015-01-27 12:04:46 +01:00
Markus Blatt
ddc2b820a7
Factors out the reduction part into a separate function.
...
Theses reductions are global and will require a different
behaviour in the parallel case.
2015-01-27 10:31:30 +01:00
Markus Blatt
0b81cd8f6f
Reduces code duplication and reorganizes code when checking convergence.
...
The computations made to check the convergence are the same for all existing
phases. Therefore this patch uses loops over the phase indices when cmputing
them,
In the convergence check there are several reductions (maxCoeff(), sum())
that will trigger communication in a parallel run. This patch seperates the
reductions from the other computations. The idea is to one reduction for the
reductions that need to done as global communication is expensive.
2015-01-27 10:31:30 +01:00
Bård Skaflestad
7dfcf7b0c0
Merge pull request #282 from atgeirr/fix-wellstate-init
...
Fix issues in WellStateFullyImplicitBlackoil::init().
2015-01-26 23:12:12 -06:00
Atgeirr Flø Rasmussen
ce3519dadb
Fix issues in init().
...
- Failed to set all rates to zero initially.
- Could set out-of-bounds index if number of controls changed.
2015-01-26 16:46:51 +01:00
Atgeirr Flø Rasmussen
56ef604773
Merge pull request #280 from dr-robertk/PR/restart-solver-when-residual-nan
...
Restart solver when residual is nan or to large.
2015-01-26 13:08:37 +01:00
Robert K
3416cba92a
added white space after comma.
2015-01-26 12:43:25 +01:00
Robert K
894983fc7b
FullyImplicitBlackoilSolver: add max_residual_allowed parameter to restart solver when
...
residual is to large.
2015-01-26 12:43:25 +01:00
Robert K
8f29cae4cb
FullyImplicitBlackoilSolver: throw Opm::NumericalProblem when one of the residuals is
...
NaN.
2015-01-26 12:43:25 +01:00
Atgeirr Flø Rasmussen
59f9b58d54
Merge pull request #281 from totto82/copy_perf_shut_complitions
...
Only copy perfPhaseRates if number of perforations is equal.
2015-01-26 10:17:51 +01:00
Tor Harald Sandve
7bf7b52dd8
Only copy perfPhaseRates if number of perforations is equal.
...
The number of perforations may change due to completions beeing shut.
If the number of perforations changes the perfPhaseRates are set to
equal the wellRates/(number of perforations) instead of the values from
the previous time step.
2015-01-23 14:10:10 +01:00
Atgeirr Flø Rasmussen
e7dc775a05
Merge pull request #278 from dr-robertk/PR/fix-276-gcc44
...
remove template keyword.
2015-01-20 14:53:39 +01:00
Robert K
0af8dd0e1d
remove template keyword.
2015-01-20 14:27:37 +01:00
Atgeirr Flø Rasmussen
97b98328c6
Merge pull request #276 from dr-robertk/PR/allow-to-run-without-wells
...
Allow sim_fibo_ad to run without wells.
2015-01-20 13:03:08 +01:00
Robert K
4b551421be
FullyImplicitBlackoilSolver: fix dangerous usage of assert.
2015-01-20 12:55:46 +01:00
Robert K
463e4bc5e3
BlockOilSimulator: allow to run without wells (mainly for testing and debugging).
2015-01-20 11:38:46 +01:00
Atgeirr Flø Rasmussen
bfe5f57c9a
Merge pull request #277 from blattms/fix-phaseindex
...
Unifies the phase indices with the ones in opm-core.
2015-01-20 09:31:59 +01:00
Markus Blatt
cb43fc5e94
Unifies the phase indices with the ones in opm-core.
...
The initial definition of the phase indices seems to be in
opm/core/props/BlackoilPhases.hpp. Nevertheless there were
several redefinitions of the same or similar enums (either
Aqua, Liquid, and Vapor, or Water, Oil, and Gas). Surprisingly
most often these definitions did not use the original values.
This is bound to break if there is a change upstream.
This patch limits the definition to one place in opm-autodiff,
namely opm/autodiff/BlackoilPropsAdInterface.hpp. To avoid
downstream confusion we define both the Water and Aqua triplets.
In addition we define the maximum number of phases to use at compile
time.
2015-01-19 20:18:14 +01:00
Atgeirr Flø Rasmussen
325ad95e80
Merge pull request #274 from blattms/generic-transmissibilities
...
Implement generic transmissibilities computations using the GridHelpers
2015-01-15 22:40:05 +01:00
Markus Blatt
dca6b436a7
Activates transmissibilities test for CpGrid without warnings.
...
Tests run fine for both grids.
2015-01-15 21:27:07 +01:00
Markus Blatt
57bf00cd27
[bugfix] Fixes cellCentroidCoordinate implementation.
...
Somehow this was never defined for CpGrid due to a copy&paste error.
2015-01-15 21:24:35 +01:00
Markus Blatt
a3acd22f24
Implement transmissibilities using the generic GridHelpers interface.
2015-01-15 21:24:35 +01:00
Atgeirr Flø Rasmussen
656e688692
Merge pull request #272 from blattms/add-facetag-access-2
...
Adds free function to access the face tag to UgGridHelpers.
2015-01-15 20:30:51 +01:00
Atgeirr Flø Rasmussen
7086ece5a2
Merge pull request #273 from blattms/ports-transmissilities-test-to-grid-helpers
...
Ports transmissibilities test to grid helpers
2015-01-15 14:46:31 +01:00