Commit Graph

621 Commits

Author SHA1 Message Date
Andreas Lauser
168b4379d5 don't pass the eclipsewriter to the simulator anymore
i.e., the simulator does not deal with any output operations
anymore. This makes sense because report steps are handled by
Opm::TimeMap and the constructor for the simulator already needs more
arguments than appropriate even without this...
2014-03-25 13:17:30 +01:00
Markus Blatt
8df314e90f Merge remote-tracking branch 'upstream/master' into master-refactor-for-cpgrid-support
Manually resolved conficts in the following files
	examples/sim_fibo_ad.cpp
	opm/autodiff/FullyImplicitBlackoilSolver_impl.hpp
	opm/autodiff/SimulatorFullyImplicitBlackoil_impl.hpp

In additions examples/sim_fibo_ad_cp.cpp was adapted to compile again.
2014-03-25 11:11:08 +01:00
Atgeirr Flø Rasmussen
cdeac8eed8 Merge pull request #105 from andlaus/sim_fibo_ad_dont_instantiate_old_parser
sim_fibo_ad: don't instantiate an old parser object if USE_NEW_PARSER is set anymore
2014-03-21 09:03:20 +01:00
Andreas Lauser
79c93953f8 sim_fibo_ad: don't instantiate an old parser object if USE_NEW_PARSER is set anymore
I thought I included this in a previous PR. Seems like I was wrong...
2014-03-20 15:44:53 +01:00
Andreas Lauser
dee6f683cb sim_fibo_ad: re-add ouputting of the current report step when using opm-parser
in the old parser, this was called 'epoch'...
2014-03-20 13:14:34 +01:00
Andreas Lauser
49a5b67137 sim_fibo_ad: fix writing
the initial condition was written multiple times. We now fix this by
not writing anything in the simulator and moving this logic to the
main loop..
2014-03-19 17:40:51 +01:00
Andreas Lauser
66d73083b2 sim_fibo_ad: convert to the new-style wells manager
i.e. it now uses Opm::EclipseState. This change required to re-add the
the epoch concept in some sense, but the loop variables now call it
"episode" which sounds less ethernal IMO.
2014-03-19 17:40:38 +01:00
Atgeirr Flø Rasmussen
295677c8c1 Use WellStateFullyImplicitBlackoil class instead of WellState. 2014-03-18 11:27:40 +01:00
Liu Ming
1e41e58ce7 makd PolymerProperties handle PLYSHEAR keyword. 2014-03-18 13:25:52 +08:00
Markus Blatt
ec32758822 Removed last occurence of the grid adapter in the EclipseOutputWriter. 2014-03-13 16:33:36 +01:00
Markus Blatt
f4812c21eb Add an example program of FIBOS that uses CpGrid. 2014-03-13 16:33:36 +01:00
Andreas Lauser
5de11630d5 use the SimulatorTimer which is based on opm-parser's TimeMap
at least if the USE_NEW_PARSER preprocessor macro in sim_fibo_ad.cpp
is set to 1. (if it is false, nothing changes.)
2014-02-27 11:56:33 +01:00
Andreas Lauser
c23b38f60b re-add the epoch stuff
this is required until the new time step handling code lands...
2014-02-14 17:57:08 +01:00
Andreas Lauser
d7d25253f3 adapt to the changes in the APIs of the parser-integrate branch in opm-core
Since the SimulationTimer, EclipseWriter and WellsManager stuff has
not (yet?) been merged, the old parser is required to be around. Use
my parser-integrate-hacks_for_norne branches to test your stuff on the
Norne deck...
2014-02-14 17:57:08 +01:00
Andreas Lauser
09f56b416f sim_fibo_ad: add macro to easily switch between the old and the new parser 2014-02-14 17:56:25 +01:00
Andreas Lauser
6b0e1d4562 sim_fibo_ad: completely replace the old eclipse parser by the new one
this required to abandon the "Epoch" stuff which the new parser does
not have (as well as the ECLIPSE file format knows nothing about
epochs). Handling well controls properly thus has to wait until Joakim
and Kristian finish refurbishing the WellsManager, so as a stop-gap
measure, only the first "epoch" is run.
2014-02-14 17:56:20 +01:00
Andreas Lauser
2deeeef4e4 really use the new parser
in the previous commit this was #if 0'ed...
2014-02-14 17:56:08 +01:00
Andreas Lauser
7f485626a2 use the new parser to read the PVT and grid data from the deck
the old code has not yet been removed, but in the long term, this is
probably the way to go.
2014-02-14 17:56:07 +01:00
Andreas Lauser
627b1f3906 make the deck from opm-parser available to the black-oil PVT property classes 2014-02-14 17:56:07 +01:00
Atgeirr Flø Rasmussen
a14cff7834 Use new linear solver interface in fully implicit solver.
This includes:
 - Using the class FullyImplicitBlackoilResidual instead of
   in-class definition for the residual object.
 - Changing residual field name mass_balance to material_balance_eq.
 - Letting the simulator and solver classes accept a
   FullyImplicitSystemSolverInterface instead of a LinearSolverInterface.
 - In sim_fibo_ad and test_implicit_ad, instantiate class
   FullyImplicitSystemSolverSimple, replicating existing behaviour.
2014-02-10 10:47:21 +01:00
Atgeirr Flø Rasmussen
0de82f3172 Remove more unused code. 2014-01-31 12:29:15 +01:00
Liu Ming
12318fe754 output watercut by using utilities.cpp/computeInjectedProduced function. 2014-01-22 14:17:04 +08:00
Joakim Hove
37274035bc Changed direct access to struct WellControls to rather use well_controls_get_xxx() api. 2014-01-09 09:39:08 +01:00
Liu Ming
cf28164a5a new simulator for fully implicit compressible twophase
polymer works.
2013-12-27 15:48:04 +08:00
Liu Ming
c37539b3ab add well controls for polymer, but rate control just for
water phase and oil phase.
2013-12-24 17:31:11 +08:00
Liu Ming
2985dc7cce make the simulator read from deckfile
make it much more gerenal.
2013-12-17 23:49:09 +08:00
Liu Ming
970fe665d8 add the bhp well controls. 2013-12-17 17:36:43 +08:00
Liu Ming
11ea882ed8 remove some output commits.
get values from command line for exapmes.
2013-12-11 18:27:05 +08:00
Liu Ming
a358da7afa fix the polymer source bug,
warnning: water initial saturation should not bt zero when
running this simulator.
2013-12-10 20:36:30 +08:00
Liu Ming
6fc24236df fix FullyImplicitTwophasePolymersolver constructor problem.
add some input commits for debugging.
2013-12-09 22:57:44 +08:00
Andreas Lauser
2cf32b6f4f Use EclipseWriter from opm-core
Note: The interface here requires opm/opm-core#424.
2013-11-27 15:45:45 +01:00
Andreas Lauser
1c62934034 fix some clang 3.3 warnings
The most severe change probably is the removal of the AutoDiff
debugging helper functions which were useful from within a debugger
but unfortunately had to rely on a presumed linker bug in order not to
be removed in the final binary.

Also, some private attributes were unused. These have been removed and
the constructors of their respective classes have been adapted. Once
their intended functionality is actually implemented, they should be
brought back on an as-needed basis.

Thanks to @bska for the review!
2013-11-14 14:33:38 +01:00
Bård Skaflestad
8159104218 Fix null-pointer dereference during well construction
The three-argument WellsManager constructor needs access to the real
permeability field lest a null-pointer dereference result when the
problem actually contains any wells.
2013-09-25 15:11:14 +02:00
Atgeirr Flø Rasmussen
cc58bc3cef Fix minor issues pointed out by bska. 2013-09-23 13:02:56 +02:00
Atgeirr Flø Rasmussen
a10eb61b66 Require deck and remove simple source term in fully implicit sim. 2013-09-20 14:32:29 +02:00
Atgeirr Flø Rasmussen
9337a6227b Renamed misleading adfi -> fi.
Some classes and a program were renamed since they were not fully implicit
solvers despite their names indicating it.
2013-09-19 14:52:39 +02:00
Atgeirr Flø Rasmussen
85f79c0e84 Rename AutoDiff::ForwardBlock -> Opm::AutoDiffBlock.
Also moved AutoDiffHelpers.hpp content to Opm namespace, and modified other
files as required by these two changes.
2013-09-19 12:53:28 +02:00
Atgeirr Flø Rasmussen
e9b933bf4f Rename AutoDiff::Forward -> Opm::AutoDiff. 2013-09-19 11:32:47 +02:00
Atgeirr Flø Rasmussen
a33f7e964b Let sim_2p_comp_ad throw if not given an input deck.
There is some code in place now to create wells for the no-deck case,
but since it does not work correctly yet, the simulator intercepts this
and throws.
2013-09-19 10:09:53 +02:00
Andreas Lauser
aa62980fbf catch all exceptions in all tutorials and examples 2013-09-05 13:04:38 +02:00
Andreas Lauser
4e96915af1 catch all exceptions in all tutorials and examples 2013-09-05 13:04:38 +02:00
Andreas Lauser
1605b88d66 convert THROW to OPM_THROW 2013-09-05 13:04:37 +02:00
Andreas Lauser
0582ef08d8 explicitly include <iostream>
instead of relying on relying that some header includes it...
2013-09-05 12:28:16 +02:00
Andreas Lauser
8ee63106c5 Replace THROW by OPM_THROW 2013-09-05 12:28:16 +02:00
Andreas Lauser
51cb4f2cb8 Add exception handlers to all tutorials and examples 2013-09-05 12:28:04 +02:00
Andreas Lauser
05af2ab6ff Replace MESSAGE by OPM_MESSAGE 2013-09-03 15:43:58 +02:00
Andreas Lauser
7e8d941a6f Replace THROW by OPM_THROW 2013-09-03 15:43:58 +02:00
Andreas Lauser
8ce809c400 Add exception handlers to all unit tests, tutorials and examples 2013-09-03 15:43:51 +02:00
Andreas Lauser
2a26964c7d replace boost::scoped_ptr by std::unique_ptr
thanks to Bård Skaflestad, Atgeirr Rasmusen and Roland Kaufmann for
the hint.
2013-08-08 15:21:38 +02:00
Bård Skaflestad
a9b90b34f8 Use UMFPACK solver if available in sim_simple.cpp.
Fall back to Eigen's BiCGSTAB solver if UMFPACK is not available.  The
BiCGSTAB is built into Eigen and consequently always available when
Eigen is found.
2013-07-09 14:39:44 +02:00