Commit Graph

3387 Commits

Author SHA1 Message Date
Atgeirr Flø Rasmussen
a147ff93d0 Can now solve with bhp-controlled wells.
Simple initial code. Assumes that well_state.bhp() contains
well bhp targets, does not check control structures.
2013-05-21 09:33:52 +02:00
Atgeirr Flø Rasmussen
4d794b79dc Added Selector class.
Used to choose element-by-element between two (potentially AD) vectors,
depending on signs of elements of a third vector. Simple and not optimized.
2013-05-21 09:29:51 +02:00
Atgeirr Flø Rasmussen
defae7b96d Moved UpwindSelector out of anonymous namespace. 2013-05-21 09:28:54 +02:00
Atgeirr Flø Rasmussen
a301477655 Remove more unused code. 2013-05-20 23:42:12 +02:00
Atgeirr Flø Rasmussen
aea69d328b Clean out dead uncommented code. 2013-05-20 23:09:06 +02:00
Atgeirr Flø Rasmussen
f822cb4739 Test case working again with new fluid. 2013-05-16 16:31:05 +02:00
Atgeirr Flø Rasmussen
cc1f8ed21a Refactored ImpesTPFAAD to use BlackoilPropsAd interface.
Not yet tested, but compiles and runs. Stops on error message
due to lack of viscosity derivatives.
2013-05-16 16:05:47 +02:00
Atgeirr Flø Rasmussen
f6c6ee0fa0 Fixes in computeFluxes().
- Give AD variables the correct block pattern (although as we
   change fluid interface they will not need to be ad types).
 - Make sure 'flux' is only on inner faces.
 - Copy full fluxes to state.faceflux().
2013-05-16 14:46:54 +02:00
Atgeirr Flø Rasmussen
84d163e9fa Bugfix: convert array to matrix type for matrix multiply. 2013-05-16 14:44:16 +02:00
Bård Skaflestad
0063799e86 Merge remote-tracking branch 'atgeirr/master' 2013-05-16 10:29:19 +02:00
Bård Skaflestad
c8fb7169aa Move rel-perm and viscosity calculations closer to use
This is an aesthetic change, only.
2013-05-16 09:58:34 +02:00
Atgeirr Flø Rasmussen
c20a67aa1b Merge remote-tracking branch 'bska/master' 2013-05-16 09:55:11 +02:00
Bård Skaflestad
fa2e02a579 The 'pflux' is really the hydraulic head.
Rename variable accordingly.
2013-05-16 09:51:34 +02:00
Bård Skaflestad
ef354792cd Implement first cut at Darcy (total) flux calculation.
This is compile-tested only.
2013-05-16 09:48:56 +02:00
Roland Kaufmann
fe84822e52 Provide template functions in separate header
Template functions must be defined in the header since the library
cannot contain generic code. To keep only the interface in the main
header, all such function bodies are put in a separate _impl file.
2013-05-15 21:32:32 +02:00
Bård Skaflestad
24204cf33e Merge remote-tracking branch 'atgeirr/master' 2013-05-15 16:10:54 +02:00
Bård Skaflestad
e0c85a2fdb Adapt to CMake-based build system.
Specifically,

  - #include <config.h> where appropriate (all .cpp files)
  - Adjust include statements to account for sub-directory locations
    of .hpp files.
2013-05-15 16:10:20 +02:00
Bård Skaflestad
9309024d1e First partitioning into source/examples/tests
Reorganisations are likely.
2013-05-15 10:35:39 +02:00
Roland Kaufmann
d3db4922b4 Subtract time spend in callbacks from total
Since this is not time spent on the simulation itself, it is "unfair"
that this is accounted on the simulator.
2013-05-14 11:38:09 +02:00
Roland Kaufmann
37906058f5 Notify callbacks when a timestep has completed
Client code can do additional processing for the output of each
timestep.
2013-05-14 11:36:13 +02:00
Roland Kaufmann
f240e79880 Make implementation class "package" visible
Since a definition of the class is not in the header, no other
compilation units can safely access the internals of the Impl class
anyway, so it may as well be a regular struct so that the outer class
(SimulatorIncompTwophase) can access it.
2013-05-14 11:11:18 +02:00
Andreas Lauser
a2065b4101 make config.h the first header to be included in any compile unit
this is required for consistency amongst the compile units which are
linked into the same library and seems to be forgotten quite
frequently.
2013-04-10 12:56:14 +02:00
Atgeirr Flø Rasmussen
7d5d314fc0 Update to match opm-core changes. 2013-03-18 13:10:32 +01:00
Atgeirr Flø Rasmussen
4fc8f52fb2 Moved ColumnExtract and initState.
ColumnExtract -> opm/core/grid/ and initState -> opm/core/simulator/.
2013-03-18 12:47:23 +01:00
Atgeirr Flø Rasmussen
44fa7ec920 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
e319fd1e38 Renamed newwells.h -> wells.h.
Also moved implementation file to subdir.
2013-03-18 10:33:34 +01:00
Atgeirr Flø Rasmussen
c16cb6987b Renames classes in line with opm-core changes. 2013-03-15 18:33:41 +01:00
Atgeirr Flø Rasmussen
04abba4d5e Adapt to changed opm-core header name. 2013-03-15 17:55:24 +01:00
Atgeirr Flø Rasmussen
e42cfc1303 Reinstate correct porevolume usage.
The porevolume at the start of the timestep should be provided to
the solver.
2013-03-15 15:10:16 +01:00
Atgeirr Flø Rasmussen
63c7380d04 Bugfix: check for null ptr before use. 2013-03-15 15:02:42 +01:00
Atgeirr Flø Rasmussen
3a063e22d9 Bugfix: order of arguments in function call. 2013-03-15 15:00:18 +01:00
Atgeirr Flø Rasmussen
25bacfd231 Make SimulatorIncompTwophase flexible w.r.t. transport solver.
It can now use the reordering or the full Newton-Raphson solvers.
2013-03-15 14:16:59 +01:00
Atgeirr Flø Rasmussen
b8ed52d89e Removed unused rock compressibilty objects from interface. 2013-03-15 11:45:53 +01:00
Atgeirr Flø Rasmussen
8a6e8fd8fa Remove unused well objects from TransportSolverTwophaseImplicit. 2013-03-15 11:38:37 +01:00
Atgeirr Flø Rasmussen
6579abb853 Fixed implicit transport solver interface.
There were significant lifetime issues, now handled by moving
objects inside the class. Work in progress.
2013-03-15 11:15:17 +01:00
Atgeirr Flø Rasmussen
fb09c4b7a1 Modify solve() interface, fix source term bug in implicit solver. 2013-03-15 08:21:55 +01:00
Atgeirr Flø Rasmussen
3b1346173e Minor adjustments. 2013-03-15 08:05:23 +01:00
Atgeirr Flø Rasmussen
1868285f23 Modified TransportSolverTwophaseInterface::solve(), general cleanup.
Move output arguments last in argument list.
2013-03-14 22:51:44 +01:00
Atgeirr Flø Rasmussen
2b4cb11ebc Rename ImplicitTwoPhaseTransportSolver -> TransportSolverTwophaseImplicit. 2013-03-14 22:39:08 +01:00
Atgeirr Flø Rasmussen
d4f5338358 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
1106538d85 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
864cce5f5e Adapt to moved opm-core headers. 2013-03-14 13:59:31 +01:00
Atgeirr Flø Rasmussen
6127afc1c6 Adapt include statements to moved headers. 2013-03-14 10:29:42 +01:00
Atgeirr Flø Rasmussen
23cef788fc Adapt to changed include paths for some opm-core headers. 2013-03-12 11:08:33 +01:00
Atgeirr Flø Rasmussen
2d871c1402 Moved writeECLData and writeVtkData to opm/core/io subdirs. 2013-03-08 08:06:18 +01:00
Atgeirr Flø Rasmussen
ddd41bfcd7 Moved opm/core/eclipse/* to opm/core/io/eclipse/*. 2013-03-07 22:59:06 +01:00
Atgeirr Flø Rasmussen
b4d5e03c61 Add eclipse output to simulator.
Note: so far only for incompressible fluid simulator.
2012-11-26 11:01:23 +01:00
Atgeirr Flø Rasmussen
b6b59918e1 Suppress output of multi-cell-block sizes and #iterations. 2012-11-26 11:00:20 +01:00
Atgeirr Flø Rasmussen
f893adbda6 Document function currentDateTime(). 2012-11-26 10:49:15 +01:00
Halvor Møll Nilsen
772aae6a62 Corrected include statements after renaming files. 2012-11-16 16:24:54 +01:00