Atgeirr Flø Rasmussen
b82a41df18
Work in progress on tracers.
...
- Changed interface.
- Read tracerheads (tracer start locations) from file in compute_tof_from_files.
- Initialize tracerheads from wells in compute_tof.
2013-04-22 14:02:45 +02:00
Atgeirr Flø Rasmussen
5d58dc4500
Fix typo and minimize formatting changes.
2013-04-22 11:29:59 +02:00
Atgeirr Flø Rasmussen
5578400e72
Removed experimental multi-cell solver code.
...
Since the Gauss-Seidel approach seems to be both simplest and
fastest, all parts dealing with assembling multicell systems
have been removed.
2013-04-22 11:22:23 +02:00
Atgeirr Flø Rasmussen
4fc5770fe2
Optimize multi-cell solve and add new Gauss-Seidel variant.
2013-04-22 11:11:55 +02:00
Atgeirr Flø Rasmussen
b0132b3b05
Make multidim upwind more forgiving of bad grids.
...
Now it will no longer trigger assertation failure when grids are not
edge-conformal (faulted cornerpoint grids processed by our code will
usually not be). Minor algorithm change to handle this.
2013-04-22 11:07:41 +02:00
Atgeirr Flø Rasmussen
52e96825a4
More refined and concise output of block info.
2013-04-17 13:18:22 +02:00
Atgeirr Flø Rasmussen
25a2c3d00b
Implement solveMultiCell() properly.
...
Interface change: solver now requires a linear solver (for the multi-cell blocks only).
Implementation uses new private method assembleSingleCell(), that is a modified copy
of solveSingleCell(). Should refactor.
2013-04-17 12:58:15 +02:00
Atgeirr Flø Rasmussen
f8db9cad66
Bugfix: do not compute MDU terms for noflow faces.
2013-04-17 10:38:08 +02:00
Atgeirr Flø Rasmussen
f8e00d0bc6
Make all codes use the same linear interpolation routines.
2013-03-22 15:28:16 +01:00
Atgeirr Flø Rasmussen
8dee94dc0f
Use markup for parameter lists.
2013-03-22 11:09:38 +01:00
Atgeirr Flø Rasmussen
5be528a646
Use markdown for parameter lists.
2013-03-22 10:02:04 +01:00
Atgeirr Flø Rasmussen
1bfcf77b38
Change doxygen syntax to use markdown.
2013-03-22 09:55:12 +01:00
Atgeirr Flø Rasmussen
3d382f8220
More minor doc fixes.
2013-03-22 09:45:00 +01:00
Atgeirr Flø Rasmussen
00e8606994
Fix minor doc errors.
2013-03-22 09:26:45 +01:00
Atgeirr Flø Rasmussen
c693c44d25
Fix docs for IncompPropertiesBasic.
2013-03-22 09:26:27 +01:00
Atgeirr Flø Rasmussen
b05fec38fd
Fixes and improvements to transport solver docs.
2013-03-21 14:52:21 +01:00
Atgeirr Flø Rasmussen
213e143c47
Fixes and improvements to time-of-flight solver docs.
2013-03-21 14:51:49 +01:00
Atgeirr Flø Rasmussen
71057d69db
Clean up well docs.
...
Needed to rename structs in legacy_well.h to avoid clash in docs.
2013-03-20 14:14:53 +01:00
Atgeirr Flø Rasmussen
1e02bd9905
Merge pull request #207 from blattms/release-dune-cmake
...
Add support for AMG improvements when using inofficial 2.2 DUNE release with CMake support
2013-03-19 08:11:44 -07:00
Atgeirr Flø Rasmussen
f9f5cbf321
Moved ColumnExtract and initState.
...
ColumnExtract -> opm/core/grid/ and initState -> opm/core/simulator/.
2013-03-18 12:47:23 +01:00
Atgeirr Flø Rasmussen
2d876925b7
Update to follow previous moves and deletes.
2013-03-18 12:40:34 +01:00
Atgeirr Flø Rasmussen
5b132acc70
Further reorganising of opm-core.
...
Deleted some unused code (or moved to opm-porsol), moved all code dealing with
time-of-flight to opm/core/tof, moved code for implicit transport solver to
opm/core/transport/implicit, spu_[im|ex]plicit.[ch] to opm/core/transport/minimal.
2013-03-18 12:38:04 +01:00
Atgeirr Flø Rasmussen
c78b7de680
Renamed newwells.h -> wells.h.
...
Also moved implementation file to subdir.
2013-03-18 10:33:34 +01:00
Atgeirr Flø Rasmussen
b14c145f10
Moved deprecated opm/core/well.h -> opm/core/pressure/legacy_well.h
...
Still used by some pressure system assemblers.
2013-03-18 10:23:51 +01:00
Atgeirr Flø Rasmussen
507b756dac
Move GridManager to grid subdir.
...
Also remove GridAdapter (moved to dune-cornerpoint), and
moved grid.c implementation file to grid subdir.
2013-03-18 10:16:46 +01:00
Atgeirr Flø Rasmussen
17ac731a0e
Make initGravity() to private, call from constructor.
...
Also modify interface of solveGravity() to be minimal,
construcing columns for segregations solver at construction time.
2013-03-15 13:53:37 +01:00
Atgeirr Flø Rasmussen
da985748d0
Make TransportSolverTwophaseReorder inherit TransportSolverTwophaseInterface.
...
This changes the solve() interface, which requires clients to change.
2013-03-15 11:31:31 +01:00
Atgeirr Flø Rasmussen
28fc68cf71
Modify solve() interface, fix source term bug in implicit solver.
2013-03-15 08:21:55 +01:00
Atgeirr Flø Rasmussen
dad6990d1d
Minor adjustments.
2013-03-15 08:05:23 +01:00
Atgeirr Flø Rasmussen
bdb8d48115
Modified TransportSolverTwophaseInterface::solve(), general cleanup.
...
Move output arguments last in argument list.
2013-03-14 22:51:44 +01:00
Atgeirr Flø Rasmussen
11015c11ef
Rename TwoPhaseTransportSolver -> TransportSolverTwophaseInterface.
...
To be more consistent with naming practices elsewhere in opm-core.
2013-03-14 22:24:36 +01:00
Atgeirr Flø Rasmussen
87c8d0dc28
Modified for added files and changed class names.
2013-03-14 21:43:21 +01:00
Atgeirr Flø Rasmussen
e99e023980
Merge remote-tracking branch 'hnil/hnil_class' into combined.
...
Conflicts:
CMakeLists.txt
examples/sim_wateroil.cpp
opm/core/grid/cpgpreprocess/geometry.c
opm/core/transport/reorder/ReorderSolverInterface.hpp
opm/core/transport/reorder/TofDiscGalReorder.cpp
opm/core/transport/reorder/TofDiscGalReorder.hpp
opm/core/transport/reorder/TofReorder.cpp
opm/core/transport/reorder/TofReorder.hpp
opm/core/transport/reorder/TransportSolverCompressibleTwophaseReorder.cpp
opm/core/transport/reorder/TransportSolverTwophaseReorder.cpp
2013-03-14 16:18:39 +01:00
Atgeirr Flø Rasmussen
b73a33f4af
Adapt include statements to moved headers.
2013-03-14 10:29:42 +01:00
Atgeirr Flø Rasmussen
4fb45f0e64
Moved fluid -> props and subdirs.
...
This is a non-compiling commit.
2013-03-14 09:56:48 +01:00
Atgeirr Flø Rasmussen
bb944b7e52
Moved writeECLData and writeVtkData to opm/core/io subdirs.
2013-03-08 08:06:18 +01:00
Atgeirr Flø Rasmussen
a154183b9d
Moved opm/core/eclipse/* to opm/core/io/eclipse/*.
2013-03-07 22:59:06 +01:00
Atgeirr Flø Rasmussen
358e9287f7
Fix error in doc.
2013-03-07 15:14:24 +01:00
Atgeirr Flø Rasmussen
f9cfb7d12d
Make destructor of CompressibleTpfa virtual.
2013-03-07 15:14:01 +01:00
Atgeirr Flø Rasmussen
7dd4720057
Changed OpenRS->OPM in copyright notices and #include guards.
2013-01-29 13:42:24 +01:00
Atgeirr Flø Rasmussen
977e8a19e2
Added evalFunc() method.
...
This public method is not virtual, and implemented in the base class using calls to
the virtual methods. Not yet used by the DG solver.
2013-01-23 09:51:30 +01:00
Atgeirr Flø Rasmussen
f99fd9254b
Refactored applyMinUpwindLimiter().
2013-01-23 09:50:25 +01:00
Atgeirr Flø Rasmussen
604be45871
Add methods totalFlux() and minCornerVal().
...
Also started refactoring applyMinUpwindLimiter() using the
added methods.
2013-01-21 14:55:27 +01:00
Atgeirr Flø Rasmussen
e02bf4f312
Use functionAverage() instead of direct coefficient access.
...
This fixes the issue with limiters on multilinear basis.
2013-01-21 11:09:43 +01:00
Atgeirr Flø Rasmussen
1093e09d65
Added functionAverage() method to DGBasis classes.
2013-01-21 11:09:07 +01:00
Atgeirr Flø Rasmussen
763d14ce4d
Refactored limiter functions.
...
The two limiter functions were very similar, and were unified in a single
method, with a bool argument to choose method variety.
2013-01-21 10:46:06 +01:00
Atgeirr Flø Rasmussen
e368094cd0
Merge remote-tracking branch 'upstream/master' into dg-improvements
2013-01-21 09:59:31 +01:00
Atgeirr Flø Rasmussen
13f945f081
Added test for DG basis classes.
...
Only 2d so far.
2013-01-17 14:35:50 +01:00
Atgeirr Flø Rasmussen
862c489cc3
Complete separation of basis func classes.
...
Also:
- Add use_tensorial_basis parameter allowing run-time choice of basis.
- Remove degree argument from solveTof() method, degree is instead obtained
from parameters in constructors. Modified compute_tof* programs to match.
2013-01-16 15:13:45 +01:00
Atgeirr Flø Rasmussen
dc7385204a
Implement (empty) virtual destructor, make methods public.
2013-01-16 15:11:46 +01:00
Atgeirr Flø Rasmussen
5288b84bdc
Increased quadrature order in a term.
...
This is for the benefit of bi/tri-linear basis functions, as stated
in the comments.
2013-01-16 13:45:15 +01:00
Atgeirr Flø Rasmussen
f539c4d183
Moved DG basis to separate classes in its own file.
...
Also introduced interface (base) class and changed the api, not used yet by the tof solver.
2013-01-16 13:38:02 +01:00
Atgeirr Flø Rasmussen
954ebfa837
Add methods addConstant() and multiplyGradient() to multilinear basis.
...
Not tested yet, though.
2013-01-15 20:44:28 +01:00
Atgeirr Flø Rasmussen
b61bb494dc
Implement limiters with addConstant() and multiplyGradient().
...
This is instead of directly manipulating the coefficients, requiring
assumptions on the basis used.
2013-01-15 13:52:44 +01:00
Atgeirr Flø Rasmussen
5ac24f9b8d
Added addConstant() and multiplyGradient() methods.
...
So far only to class DGBasisBoundedTotalDegree.
2013-01-15 13:44:18 +01:00
Atgeirr Flø Rasmussen
406965124a
Added class DGBasisMultilin.
...
Multilinear DG1 basis functions added. Will not work with current limiter.
2013-01-15 13:42:05 +01:00
Atgeirr Flø Rasmussen
e24795ba94
Reduce source sum failure from error to warning.
...
Should extend to sum over sources and boundaries before reinstating.
2013-01-15 13:39:35 +01:00
Atgeirr Flø Rasmussen
5548fd85f9
Renamed class DGBasis -> DGBasisBoundedTotalDegree.
2013-01-15 13:37:39 +01:00
Atgeirr Flø Rasmussen
81c8870ba8
Do not require unnecessary high quadrature precision.
2013-01-15 13:33:55 +01:00
Atgeirr Flø Rasmussen
7f05b1bb0e
Added (disabled) extra output for debugging purposes.
...
Enable by defining EXTRA_VERBOSE.
2013-01-15 13:17:43 +01:00
Atgeirr Flø Rasmussen
dd2e01ce9e
Do not assume that the first basis function is the constant 1.
...
Properly integrate b_i * porosity over the cell for all basis functions b_i.
2013-01-15 13:10:09 +01:00
Atgeirr Flø Rasmussen
e5ff636860
Merge branch 'master' into dg-improvements
2013-01-08 16:01:52 +01:00
Atgeirr Flø Rasmussen
89516931e4
Added MinUpwindAverage limiter method, made it default.
2013-01-08 16:00:17 +01:00
Atgeirr Flø Rasmussen
53932a8184
Documented new available limiting options in constructor doc.
2013-01-08 13:34:50 +01:00
Atgeirr Flø Rasmussen
a0827ab02d
Change constructor to take ParameterGroup argument.
...
Also make tof to limit against >= 0.0, for case when upstream cell values go
below zero.
Disabled some debug output.
2013-01-08 13:14:26 +01:00
Atgeirr Flø Rasmussen
832072a5cb
Improvements to DG1 flux limiter.
...
Skeleton in place for increased flexibility in methods and usage.
(So far behaviour choices are hardcoded, though.)
Added relative flux thresholding to existing limiter to avoid flux noise
strongly affecting solution. For example no-flow boundaries could be treated
as inflow boundaries and make the minimum upwind face limiter meaningless.
2013-01-08 11:04:43 +01:00
Atgeirr Flø Rasmussen
6a23ebe449
Add methods sequence() and components().
2013-01-08 11:04:07 +01:00
Atgeirr Flø Rasmussen
db7fe12a45
Simplify and correct implementation of limiter.
...
Now we check all corners' tof values for the cell under consideration,
not just the inflow face corners'.
2013-01-07 15:48:47 +01:00
Atgeirr Flø Rasmussen
bfa52cc5f2
Bugfix, again: it was correct to take the maximum, reinstating.
...
There is a different problem that needs fixing, however:
Flux inaccuracies (for example on boundaries) may tag some
face as inflow face for a cell, even if it should have been
no-flow. This may let the cell avoid limiting, even though it
should have been limited according to the proper inflow faces.
2013-01-07 15:10:43 +01:00
Atgeirr Flø Rasmussen
583c905a43
Bugfix: take minimum of allowed slopes, not maximum.
2013-01-04 19:59:05 +01:00
Atgeirr Flø Rasmussen
76868ebc1c
Added parameter compute_tracer. Defaults to false.
...
Triggers tracer computation and output, in addition to time-of-flight.
2013-01-03 14:08:09 +01:00
Atgeirr Flø Rasmussen
8cb2ea4c94
Added solveTofTracer() method.
2013-01-03 14:07:51 +01:00
Atgeirr Flø Rasmussen
538e1eab5f
Limiter now works reasonably well.
...
Case with no inflow faces should be checked.
2012-12-20 18:03:08 +01:00
Atgeirr Flø Rasmussen
3e723bc965
Added limiter for DG1, parameter 'use_limiter'.
...
The limiter is experimental and unfinished, untested work in progress.
Limiter is therefore inactive by default.
Also fixed a minor bug: use_cvi_ was not initialized.
2012-12-18 14:15:31 +01:00
Atgeirr Flø Rasmussen
94b128d6b6
Bugfix: use sufficient quadrature order.
2012-12-18 14:12:56 +01:00
Atgeirr Flø Rasmussen
5e04ec1448
Modify precision for quadrature depending on use of CVI method.
2012-12-06 10:18:57 +01:00
Atgeirr Flø Rasmussen
534f8f8bb6
No longer ignores boundary fluxes.
...
This means that the class does expect source terms that are just that, and not
'transport source' terms that include boundary inflows (like the transport
solvers expect). This is also consistent with the behaviour of the DG version.
2012-12-05 10:39:00 +01:00
Atgeirr Flø Rasmussen
8fce539d3d
Adapt to moved [Cell|Face]Quadrature classes.
...
Also fix a minor issue with potentially buggy error output after LAPACK failure.
2012-12-04 16:11:05 +01:00
Atgeirr Flø Rasmussen
6324408357
Update CompressibleTpfa wellbore gravity handling.
...
Should now be in sync with cfs_tpfa_residual C interface. Simple well
gravity model implemented.
More flexibility in well gravity models would be a natural future extension.
2012-11-06 19:28:22 +01:00
Atgeirr Flø Rasmussen
7deba2cce0
Bugfix tof computations with multidimensional upwinding.
...
Cell tof depends on downwind face tof in a more complicated way
with multidim upwinding, this was not done correctly.
2012-11-05 14:26:00 +01:00
Atgeirr Flø Rasmussen
a124d2e3be
Implemented multidimensional upwinding.
...
The 'SMU' variant is chosen for its smoothness.
2012-10-30 13:10:50 +01:00
Atgeirr Flø Rasmussen
1272575f1f
Add use_multidim_upwind parameter.
2012-10-30 10:32:29 +01:00
Atgeirr Flø Rasmussen
d2b935d74f
Merge branch 'tof_utilities' into multidim_upwind
2012-10-30 10:25:23 +01:00
Atgeirr Flø Rasmussen
bd013a7d4d
Added parameters for controlling use of multidim upwinding.
...
For now, you will simply get SPU even with use_multidim_upwind=true.
2012-10-29 17:23:17 +01:00
Atgeirr Flø Rasmussen
0f01da85c2
Merge branch 'master', remote-tracking branch 'upstream/master' into tof_utilities
2012-10-29 08:46:26 +01:00
Atgeirr Flø Rasmussen
43162d7d99
Increased number of digits in output.
2012-10-29 08:27:59 +01:00
Atgeirr Flø Rasmussen
29b2bcad45
Added new tof computation utility.
...
This program assumes that grid, porosity, flux field and sources are
available to read from files. It does not compute any flux field itself.
2012-10-25 14:47:26 +02:00
Atgeirr Flø Rasmussen
17ffcc77aa
Merge pull request #84 from bska/fix-equality-comparisons
...
Fix well classification that was only correct by accident
2012-10-25 01:08:48 -07:00
Atgeirr Flø Rasmussen
88af4a4ce3
Fix output in case of LAPACK error.
...
Make copy of matrix before calling dgesv, since it will overwrite it.
2012-10-17 12:40:43 +02:00
Atgeirr Flø Rasmussen
49af5dcd7b
Use new velocity interpolation interface.
...
The class TransportModelTracerTofDiscGal now uses
VelocityInterpolationInterface, and acts as a factory
internally, choosing an interpolation method depending on
the parameter 'use_cvi'.
2012-10-16 11:11:33 +02:00
Atgeirr Flø Rasmussen
ca15ce6eec
Fix comment.
2012-10-10 14:12:38 +02:00
Atgeirr Flø Rasmussen
89eee7e220
Bugfix: order of function arguments.
...
Order of arguments for computePhaseFlowRatesPerWell() was wrong.
This fix was done previously for SimulatorCompressibleTwophase,
but the incompressible sim was ignored.
Also added an ASSERT that may help catch some misuse.
2012-10-10 14:09:09 +02:00
Atgeirr Flø Rasmussen
c8498b76b6
Merge pull request #59 from kristinf/dev
...
sign error in total_produced
Looks correct.
2012-10-10 04:49:06 -07:00
Atgeirr Flø Rasmussen
31d17a0dcd
Whitespace cleanup.
2012-10-09 12:21:17 +02:00
Atgeirr Flø Rasmussen
76259dcd0f
Improve docs and give more info on error.
2012-10-09 09:54:54 +02:00
Atgeirr Flø Rasmussen
36721602b2
Add timing of topological sort.
2012-10-09 09:54:26 +02:00
Atgeirr Flø Rasmussen
256a5496b1
Merge branch 'master' into reorder_tof
2012-10-08 16:16:05 +02:00
Atgeirr Flø Rasmussen
9e90dcebe5
Fix sign of production rate controls.
...
In the Wells struct, production rate control targets must be negative
(and injection rate control targets are always positive).
In the WellsGroup classes, there are separate variables for injection
and production, and all rates are positive. Therefore, upon adding or
modification of a production rate control, the negated value must
be used.
2012-10-08 14:27:56 +02:00
Atgeirr Flø Rasmussen
a635140500
Merge branch 'master' into reorder_tof
2012-10-08 13:52:59 +02:00
Atgeirr Flø Rasmussen
108589a286
Merge branch 'master' into reorder_tof
2012-10-05 09:20:37 +02:00