Commit Graph

469 Commits

Author SHA1 Message Date
Atgeirr Flø Rasmussen
db06fa48f5 Merge pull request #374 from babrodtk/throw_causes_core_dumped
Changed throw in main() to return EXIT_FAILURE
2015-05-06 12:41:39 +02:00
babrodtk
aab8d2a008 Added missing include 2015-05-06 08:38:49 +02:00
babrodtk
fb99528673 Changed OPM_THROW to return EXIT_FAILURE in flow_cp.cpp 2015-05-06 08:38:18 +02:00
babrodtk
9edbf38439 Changed throw in main() to return EXIT_FAILURE 2015-05-05 15:48:58 +02:00
babrodtk
9f23ce7dbc Reformated flow header to fit 80 columns 2015-05-05 15:25:55 +02:00
Markus Blatt
c57a10ff76 [bugfix] Use full set of processes to determine whether to redistribute or not.
Previously we used the size of the communicator within the CpGrid to check
whether we are running in parallel and need to redistribute the grid.
Unfortunately, this is MPI_COMM_SELF until we actually loadbalance and redistribute.
Therefore we now use the size of the MPI_Helper (i.e. MPI_COMM_WORLD) which
gives us the number of all available processes.

Note that the wrong behaviour was provoked with 656e5de331. Before that we
redistributed in any case which luckily included runs with more than 1 process.
2015-04-30 14:02:13 +02:00
Edvin Brudevoll
58367e20fd Now also flow_cp.cpp takes the NOSIM keyword into account. 2015-04-28 10:22:36 +02:00
Edvin Brudevoll
7aa8d91f2d New commit, NOSIM keyword 2015-04-28 10:17:44 +02:00
Edvin Brudevoll
0d1cce2f26 Support for the NOSIM keyword. 2015-04-28 10:17:44 +02:00
Atgeirr Flø Rasmussen
2eb06d6d6c Use more appropriate end-of-sim timing output. 2015-04-21 10:42:40 +02:00
Kai Bao
807c528bef Removing a white space. 2015-04-15 16:56:05 +02:00
Kai Bao
fc36bc866a Accept single deck filename as command line argument. 2015-04-15 16:48:36 +02:00
Kai Bao
8c67dddf90 Adding the startup message for flow-polymer.
Three letters wider than flow.
2015-04-15 16:38:56 +02:00
Edvin Brudevoll
d300cb6eb6 Now also flow_polymer.cpp in project opm-polymer takes the NOSIM keyword into account. 2015-04-15 14:17:40 +02:00
Atgeirr Flø Rasmussen
e44ef09212 Accept single deck filename as command line argument.
Any argument that is not handled by the parameter parser will
be assumed to be a deck filename. Only one is accepted, and if
given, it will override any deck_filename=<something> on the
command line or in parameter files.

FYI:
The parameter parser handles arguments of the following types:
    key=value (note no space around = or in strings)
    parameterfile.xml
    parameterfile.param
2015-04-14 13:37:25 +02:00
Atgeirr Flø Rasmussen
c4655d7c00 Modify startup message, include version number. 2015-04-14 13:31:39 +02:00
Atgeirr Flø Rasmussen
22391ad144 Provide nicer startup message that includes opm-project URL. 2015-04-14 12:53:34 +02:00
Atgeirr Flø Rasmussen
656e5de331 Bugfix: distribute only if comm size is strictly > 1. 2015-04-08 10:16:25 +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
Andreas Lauser
239547e794 Revert "pass the deck to the output writer"
This reverts commit 71987ae3b038c141a673ae1c1037f63ed695e595.
2015-03-31 12:10:16 +02:00
Andreas Lauser
206d7b56e4 pass the deck to the output writer 2015-03-26 17:33:20 +01:00
Andreas Lauser
88730e855f also pass the deck to the output writer 2015-03-26 17:33:13 +01:00
Liu Ming
f23f5fac8e rename sim_poly_fibo_ad to flow_polymer. 2015-03-24 17:06:32 +08:00
Liu Ming
b4d834508c Updates FIBOPOLYMER simulator based on flow simulator.
Rename sim_poly_fibo_ad to flow_polymer.
2015-03-24 15:07:25 +08: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
ae31c034b6 Fix compile error instroduced by merging #275.
Moved output directory code near top again, changed rank query
to use Dune::MPIHelper instead of the grid.
2015-03-09 09:37:16 +01:00
Joakim Hove
9b7d84bd9f ERT-830: Using OpmLog instead of explicit logger 2015-03-09 08:00:13 +01:00
Atgeirr Flø Rasmussen
c6d38f543c Rename sim_fibo_ad[_cp] -> flow[_cp].
In line with the decision we made to use "flow" as name for the
fully implicit black-oil simulators.
2015-02-27 12:35:03 +01:00
Atgeirr Flø Rasmussen
d9ce8625cf Remove unused classes.
After this, the two affected tests fail due to bugs in PVT region
support in BlackoilPropsAdFromDeck.
2015-02-23 13:42:51 +01:00
Atgeirr Flø Rasmussen
eb89236552 Merge pull request #317 from blattms/generic-equil
Modified sim_fibo_ad_cp to also allow running with EQUIL keyword.
2015-02-20 18:24:05 +01:00
Markus Blatt
9517dc08b3 Do not print message about querying output parameter for p>0. 2015-02-20 15:47:57 +01:00
Markus Blatt
4b110fb00b Fixes missing indentation. 2015-02-20 15:44:28 +01:00
Markus Blatt
007acfe018 Modified sim_fibo_ad_cp to also allow running with EQUIL keyword.
With now generic implementation of the initStateEquil in opm-core
we added the necessary grid helper functionlality for CpGrid and activated
the processing if the EQUIL keyword is there.
2015-02-20 12:23:35 +01:00
Markus Blatt
d35d301a4b Print status output only on rank 0 for parallel runs. 2015-02-20 11:35:47 +01:00
Atgeirr Flø Rasmussen
fec50b491a Merge pull request #311 from totto82/fix_verticalscaling
Apply the swatinit scaling to new_props
2015-02-19 11:29:00 +01:00
Markus Blatt
5e72774b89 Remove the unsused grid members from BlackoilPropsDataHandle.
Previously BlackoilPropsDataHandle did hold a grid for sending
and receiving that were either not used or we could prevent their
usage. Therefore this commit removes them from the class and queries
all needed information from the property objects.
2015-02-19 09:35:18 +01:00
Tor Harald Sandve
44e9d2a34e Fix PR comments
1) swatinit() is changed to setSwatInitScaling() to make it obvious that
we are modifying the props.
2) the descriptions of saturation and pc now makes more sense
3) the method is removed from the sibling class and the interface and
the type of new_props is changed from BlackoilPropsAdInterface to
BlackoilPropsAdFromDeck
5) The same modification is added to sim_fibo_ad_cp
2015-02-19 08:34:55 +01:00
Tor Harald Sandve
013d1d3499 Apply the swatinit scaling to new_props
The capillary pressure function in new_props is scaled to match the
capillary pressure function in props.

This is a temporary workaround while the simulator uses two different
property object.
2015-02-19 08:18:39 +01:00
Atgeirr Flø Rasmussen
75d98c7e3b Remove uneeded function argument. 2015-02-17 13:40:09 +01:00
chflo
8870da536d OPM-166: opm-core method thresholdPressures signature has changed 2015-02-17 10:12:37 +01:00
chflo
82839f9580 opm-166: Fix due to signature change in method thresholdPressures 2015-02-17 09:53:57 +01:00
Markus Blatt
684da9aa84 Throw an excpetion if either eclipse or matlab output is activated. 2015-02-16 11:52:50 +01:00
Markus Blatt
f19a83bbda Remove superluous casts. 2015-02-16 11:40:49 +01:00
Markus Blatt
3575fdce6a Removes stackobject_to_heap. 2015-02-16 11:24:05 +01:00
Markus Blatt
60cdc583ae Make right hand passed to the linear solver consistent.
Previously, we had to use two layers of overlap cells such the
innermost layer contains the rightvalues automatically (as it is
surrounded by internal edges). No we use communication to get
the correct values in the whole overlap region and one layer
suffices as it should.
2015-02-12 21:33:41 +01:00
Markus Blatt
01ea7bacba Adds data redistribution capabilities and makes sim_fibo_ad_cp parallel.
With this commit we add the possibility to start with a global representation
of a simulator that is read on each process and afterwards this presentation
is redistributed among the processors together with the properties and
state data needed to initialize the simulation.

There still is no parallel well handling and no parallel output. But with the
equilibrium example of @dr-robertk and deactivated output we can already
perform parallel runs.
2015-02-12 21:33:41 +01:00
Markus Blatt
be7221aa9b Moved output parameters to the end of the list in extractParallelGridInformationToISTL 2015-02-12 10:41:44 +01:00
Markus Blatt
221565f038 Enable the use of parallel dune-istl solvers.
As with opm-core we use boost::any to provide additional
information about a parallel run. It is used to set a
ParallelISTLInformation object and and fill it with the
information obtained from a parallel Cpgrid.

Note that the simulator currently compiles sucessfully. Still,
we have to test the runs and do debugging.
2015-02-12 10:41:43 +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
Liu Ming
74332085dc change PolymerInflow constructor interface due to commit 6628941c9c9d781db9ec8e3ac05a3a8dc49dcf21 in opm-parser. 2015-01-27 12:24:26 +08:00
Atgeirr Flø Rasmussen
e52af158fc Fix call to DerivedGeology constructor.
New argument to constructor was not provided, still compiled
due to default argument.
2014-12-17 11:32:20 +01:00
Atgeirr Flø Rasmussen
5ae5525209 Revert "register the transmissibilities at the EcliseWriter" 2014-12-17 10:18:23 +01:00
Atgeirr Flø Rasmussen
1348658507 Merge pull request #249 from totto82/locTrans
Compute half transmissibilities based on local coordinate system
2014-12-17 00:20:11 +01:00
Atgeirr Flø Rasmussen
f8ad85d83e Merge pull request #241 from andlaus/write_transmissibilities
register the transmissibilities at the EcliseWriter
2014-12-16 23:35:26 +01:00
Joakim Hove
78ba6760da ERT-747: Renamed ParserLog -> Logger 2014-12-15 12:23:09 +01:00
Atgeirr Flø Rasmussen
a20f0291a1 Merge pull request #81 from qilicun/wpolymer_schedule
add new polymerInflow constructor, get polymer injection rate from schedule section
2014-12-12 09:38:34 +01:00
Tor Harald Sandve
02724b7f7a Implement comments for PR#249
1) Add the possibility for the user to chose between local and global
coordinate permeability in the transmissibility calculations.
2) Trow for CpGrid
3) Add default for switch
2014-12-10 07:29:05 +01:00
Andreas Lauser
47fe10e8fb adapt to the removal of the "strict parsing" concept 2014-12-09 14:20:26 +01:00
Andreas Lauser
69c4a6d591 adapt to the removal of the "strict parsing" concept 2014-12-09 14:18:42 +01:00
Bård Skaflestad
c69b2fd8ed Include <config.h> to fix build on GCC 4.8
GCC 4.8 provides 'nullptr' in C++11 mode.  That capability is
detected at configuration time and stored in <config.h> and we need
it when targeting Dune 2.2.1 to avoid diagnostics of the form

  [...]/dune/common/nullptr.hh:27:1:
  error: expected ‘;’ after class definition
   } nullptr = {};              // and whose name is nullptr
    ^

  [...]/dune/common/nullptr.hh:27:1:
  error: qualifiers can only be specified for objects and functions
  [...]/dune/common/nullptr.hh:27:3:
  error: expected unqualified-id before ‘nullptr’
   } nullptr = {};              // and whose name is nullptr
2014-11-27 15:12:56 +01:00
Joakim Hove
29a0c723ef Python class TransGraph to load json from opm_init_check 2014-11-26 14:56:45 +01:00
Joakim Hove
ad92edab89 Added opm_init_check to compare OPM and Eclipse. 2014-11-26 14:56:45 +01:00
Andreas Lauser
9e93fa2298 register the transmissibilities at the EcliseWriter
missing: the simulator using dune-cornerpoint. Once again, this is
because there is no good way to convert an intersection to a unique
global index (yet).
2014-11-21 13:20:53 +01:00
Liu Ming
9303e41966 add new polymerInflow constructor, get polymer injection rate from schedule section. 2014-11-20 16:32:02 +08:00
Liu Ming
ac764bd8a8 let sim_poly_fi2p_comp_ad works as the same way as sim_poly_fibo_ad.
- move time iteration to simulator class
 - add EclipseWriter and output Eclipse binaries.
 - add DeckConstPtr for polymer inflow.
2014-10-29 13:23:50 +08:00
Liu Ming
a23e4ca63b remove historical and un-used files. 2014-10-28 14:28:34 +08:00
Liu Ming
5242d6bbf7 move time iterations to Simulator class and pass deck to create polymer inflows.
This should solve the issues: write the final state to eclipse binaries.
2014-10-28 13:14:44 +08:00
Tor Harald Sandve
d0fc3eba77 Remove the check if porv is present in the Eclipsestate
The porv is computed if needed and the Eclipsestate will return false on
this test before it is called.

This commit applies the change to the sim_fibo_ad_cp.cpp
2014-10-27 08:11:27 +01:00
Tor Harald Sandve
0979346430 Remove the check if porv is present in the Eclipsestate.
The porv is computed if needed and the Eclipsestate will return false on
this test before it is called.

Tested on Norne
2014-10-27 08:01:20 +01:00
Liu Ming
ba6fef4fbd pass wells manager from sim_poly_fibo to Simulator class, instead of directly
create it in Simulator class, since polymer inflow need deck and wells.
2014-10-24 14:04:57 +08:00
Liu Ming
61c76c4294 use std::unique_ptr instead of boost::scoped_ptr. 2014-10-20 17:29:59 +08:00
Liu Ming
6b3b90500f Merge remote-tracking branch 'opm/master' into bo_polymer
Conflicts:
	opm/polymer/PolymerProperties.hpp
2014-10-20 13:51:37 +08:00
Liu Ming
6a051b7e4e adapte the API changes of PolymerProperties class. 2014-10-16 10:03:13 +08:00
Liu Ming
ddfb030b57 Merge remote-tracking branch 'opm/master' into bo_polymer 2014-10-16 10:00:37 +08:00
Andreas Lauser
7c122c18d3 use the TLMIXPAR keyword directly
instead of using a table class. This is because the keyword is not a
table...
2014-10-14 12:29:31 +02:00
Liu Ming
6d76151b6d use std::unique_ptr instead of std::shared_ptr for polymerInflowInterface. 2014-10-11 16:38:59 +08:00
Andreas Lauser
4f44cde846 fix the fallout caused by the slightly too premature merge of PR #213
I should have put some message at the end of that PR when the API of
opm-parser changed...
2014-10-10 16:17:41 +02:00
Liu Ming
c2d6347271 make some tricks for initialing polymer_inflow, this maybe wrong, but now no bugs. 2014-10-09 14:23:36 +08:00
Liu Ming
73c2032974 fix some bugs. 2014-10-09 10:04:17 +08:00
Liu Ming
be927741b8 create a blackoil+polymer simulator. 2014-10-08 14:46:43 +08:00
Andreas Lauser
b4f9a49bd6 fixup! sim_fibo_ad*: print the log messages from the parser/EclipseState 2014-10-06 10:12:57 +02:00
Andreas Lauser
566c7c03d7 sim_fibo_ad*: print the log messages from the parser/EclipseState 2014-10-03 15:53:57 +02:00
Liu Ming
979c2dc0f7 use Newton iteration solver interface from opm-autodiff, prepare for CPR supporting. 2014-09-26 14:54:57 +08:00
Liu Ming
8620ce2641 use std::shared_ptr instead of boost::scoped_ptr. 2014-09-26 14:03:55 +08:00
Liu Ming
e22398c098 make Opm::DerivedGeology as a direct arguement for simulator. 2014-09-25 16:40:01 +08:00
Liu Ming
9a41199bd4 Merge remote-tracking branch 'opm/master' into fim
Conflicts:
	cmake/Modules/Findopm-autodiff.cmake
2014-09-23 16:04:15 +08:00
Atgeirr Flø Rasmussen
25c9b36d4f Use new location of warning suppression header. 2014-09-20 10:39:34 +02:00
Andreas Lauser
0f436e12c9 adapt the the table related API changes of opm-parser 2014-09-18 16:49:29 +02:00
Andreas Lauser
9fbf4b2b3b adapt the the table related API changes of opm-parser 2014-09-17 13:28:39 +02:00
Atgeirr Flø Rasmussen
e597bbeca6 Merge pull request #193 from blattms/fix-176
Makes distinction between functions more clear. (#176)
2014-09-04 08:37:33 +02:00
Andreas Lauser
5f61781afd sim_fibo_ad*: change the default for the use_cpr parameter from false to true
SPE9 and Norne are basically unusable if UMFPack is used as linear solver...
2014-09-03 13:35:28 +02:00
Bård Skaflestad
be589ba5f3 Merge pull request #189 from atgeirr/add-minpv
Add MINPV support to grid creation for fully implicit sims.
2014-08-29 09:16:55 +02:00
Markus Blatt
7127101c1c Makes distinction between functions more clear.
Currently, there are two abstract interface for the grids. One that
usually returns pods and arrays of them that also can be used by C
and is used also in opm-core, and one that returns Eigen datastructures
 needed within opm-autodiff.

This commit adds a postfix ToEigen to those functions (faceCells, and
cellCentroidsZ) one could imagine to also return pods and arrays of them.
This should at least resolve the confusion about the two faceCells functions.

The next step will be issue #192
Fixes #176
2014-08-28 14:44:13 +02:00
Atgeirr Flø Rasmussen
6ba5068928 Make simulator programs actually obtain threshold pressures. 2014-08-27 18:23:11 +02:00
Atgeirr Flø Rasmussen
3fdfeec10c Pass dummy threshold pressures through simulator to solver. 2014-08-27 18:23:10 +02:00
Atgeirr Flø Rasmussen
09eb0d455e Add MINPV support to grid creation for fully implicit sims. 2014-08-25 16:05:42 +02:00
Bård Skaflestad
077b01b767 Merge pull request #188 from OPM/support-resv
Support RESV controls
2014-08-25 13:54:30 +02:00
Atgeirr Flø Rasmussen
e35546070f Use direct deck-using version of grid construction method. 2014-08-21 15:26:07 +02:00
Atgeirr Flø Rasmussen
e644c51750 Merge branch 'master' into support-resv
Conflicts:
	examples/sim_fibo_ad.cpp
	examples/sim_fibo_ad_cp.cpp
	opm/autodiff/SimulatorFullyImplicitBlackoil.hpp
	opm/autodiff/SimulatorFullyImplicitBlackoil_impl.hpp
2014-08-19 09:53:20 +02:00
Atgeirr Flø Rasmussen
1b7e748431 Update sim_fibo_ad_cp to use refactored simulator class.
Also add some other features that have been added to sim_fibo_ad
but not to sim_fibo_ad_cp:
 - (Un)Strict parsing parameter.
 - EQUIL init (currently throws, since initEquil not yet made generic).
2014-08-12 12:54:55 +02:00
Atgeirr Flø Rasmussen
bb118a9a39 Remove superfluous output and use const. 2014-08-12 12:53:11 +02:00
Atgeirr Flø Rasmussen
b85ba1bcc0 Clean up files and streams for timing output.
Total time will be written to walltime.txt, and single step times to
step_timing.txt (changed suffix from param to txt). This did not work
properly before this fix (step_timing file was overwritten each step).
2014-08-12 09:28:28 +02:00
Atgeirr Flø Rasmussen
d170de43cb Merge remote-tracking branch 'GitPaean/New_BLACKOIL_SIMULATOR' into restructure-sim
Conflicts:
	examples/sim_fibo_ad.cpp
	opm/autodiff/SimulatorFullyImplicitBlackoil_impl.hpp
2014-08-11 14:01:54 +02:00
Bård Skaflestad
23520be41a RESV: Prepare for dynamic rate distribution calculation
This commit changes the API of class SimulatorFullyImplicitBlackoil<>
in order to support wells controlled by (total) reservoir voidage
volume rates.  Specifically, we switch to holding a mutable Wells
object (backed by a std::shared_ptr<>) in class Impl rather than a
reference to a WellsManager.  This allows dynamically updating rate
distributions and targets of individual well controls.  That, in
turn, is a prerequisite to supporting ECL-style "RESV" control
modes--be it in prediction or history matching capacity.

While in the process of API changes, also prepare for the second
stage of "WCONHIST/RESV" support: Accept a ScheduleConstPtr that
holds the input deck's notion of the history matching vs. prediction
controls.  We need to distinguish the two in order to support the
exact semantics of "WCONHIST/RESV".

Update SimFIBO<> clients accordingly.
2014-08-08 11:40:50 +02:00
osae
8fa34b421a Strict parsing is now the default. 2014-08-07 19:14:36 +02:00
osae
a8d99d0443 Make non-strict parsing the default. 2014-08-07 16:39:41 +02:00
Bård Skaflestad
a612d2c96f Restore gravity effects
The refactorisation of class FullyImplicitBlackoilSolver<Grid> to
defer transmissibility and pore-volume calculation to the client in
order to support multipliers (net-to-gross &c) accidentally ended up
removing all effects of gravity.  This commit restores those effects.
2014-07-29 19:49:50 +02:00
Kai Bao
eb3445e6a1 Finishing compliation. 2014-07-27 17:31:00 +02:00
Kai Bao
1e8d5e65b7 Finishing changing. Testing Later 2014-07-25 19:13:23 +02:00
Andreas Lauser
63eaecf246 DerivedGeology: pass the EclipseState object to its constructor
this is required to implement pore volume and permeability multipliers
as discussed with [at]bska and [at]joakim-hove.

Note that this implies that the DerivedGeology class can't be
instantiated anymore if there is no EclipseState object. Thus all code
paths and tests that don't load a deck are removed by this patch. If
this is undesireable, there are two options: First, don't require
EclipseState for DerivedGeology which would imply to make the about 10
required multiplier functions part of the
BlackoilPropertiesAdInterface, or second, one can copy-and-paste the
DerivedGeology class as it was before this patch, derive from a newly
introduced DerivedGeologyInterface and pass DerivedGeologyInterface
objects to the simulator. IMHO, the second solution would be a bit
better but it would involve substantial overhead to implement and to
maintain it.

Anyway, in the mean time simulators cannot be instantiated without
decks.
2014-07-24 16:37:38 +02:00
Andreas Lauser
543d8d75b6 pass the DerivedGeology to the simulators
this was decided to be a good idea by [at]bska. (If I interpreted him
correctly, obviously.)
2014-07-24 16:37:38 +02:00
Andreas Lauser
8645d2c207 pass the EclipseState and the PhaseUsage objects to EclipseWriter 2014-07-18 11:22:28 +02:00
Andreas Lauser
6727fe28fe adapt construction of to EclipseWriter
i.e., don't pass around the UnstructuredGrid object directly, but use
the "generic" interface which is also used in the case Dune::CpGrid.
2014-07-14 17:55:30 +02:00
osae
24506cc637 Include EQUIL-based inititalisation for 3-phase. 2014-06-26 15:11:34 +02:00
Andreas Lauser
7c767e8686 sim_fibo_ad_cp: make it compile
The constructor for the simulator class changed recently...
2014-06-13 18:07:51 +02:00
Tor Harald Sandve
8a600747fa Read DISGAS and VAPOIL from deck and pass them to the simulator 2014-06-13 14:29:52 +02:00
Andreas Lauser
0219f83563 glue in support for property modifiers
i.e. reading the grid properties from EclipseState instead of from the
raw deck. This requires that all deck files exhibit a GRID and a
SCHEDULE section or else EclipseState will throw in the constructor.
2014-06-09 12:36:46 +02:00
Andreas Lauser
0dfa8680f7 use the EclipseState instead of the raw deck
this is needed to enable property modifiers...
2014-06-07 18:45:46 +02:00
Atgeirr Flø Rasmussen
4734052d86 Bugfix: local variable shadowed proper variable. 2014-05-21 19:48:48 +02:00
Bård Skaflestad
f0d908d104 Merge pull request #140 from atgeirr/cpr-preconditioning
Cpr preconditioner
2014-05-21 15:36:12 +02:00
Kai Bao
cd50b54ddf Finishing the modification for solver class. 2014-05-16 18:02:55 +02:00
Atgeirr Flø Rasmussen
54c07f3d0c Add choice of solution strategies to simulators.
The following is changed in this commit:
 - The constructor for NewtonIterationBlackoilSimple now takes
   a parameter object instead of a linear solver.
 - The fully implicit black-oil simulators can now use the CPR
   preconditioning strategy (by passing use_cpr=true) or the
   simple strategy (the default).
Note that as of this commit, the CPR preconditioning still has
not been implemented properly, and behaves just like the simple
strategy.
2014-05-12 11:10:59 +02:00
Andreas Lauser
ebb1da0662 replace all boost:: smart pointers by their std:: equivalents
The std variants are part of c++-2011 and it's 2014 now. (they are
also available in GCC 4.4.)
2014-05-02 16:17:54 +02:00
Andreas Lauser
b7f3ee7b79 rename "newParserDeck" to "deck" 2014-05-02 15:48:04 +02:00
Andreas Lauser
dbb19403fc completely remove the EclipseGridParser from the module 2014-05-02 15:47:52 +02:00
Andreas Lauser
3a6d989d5e move the code away from EclipsGridParser to opm-parser 2014-04-26 11:13:59 +02:00
Joakim Hove
a6ec0bb59c Using the Parser::EclipseGrid to create GridManager 2014-04-24 11:47:01 +02:00
Atgeirr Flø Rasmussen
d7ba3b0fbc Merge branch 'master' into suppress-warnings
Conflicts:
	cmake/Modules/UseWarnings.cmake
2014-04-22 14:50:15 +02:00
Atgeirr Flø Rasmussen
de695f3cd5 Avoid warning by not storing MPIHelper instance reference. 2014-04-15 20:47:37 +02:00
Atgeirr Flø Rasmussen
1e75efd097 Add generation and use of warning-suppressing headers. 2014-04-15 20:46:45 +02:00
Atgeirr Flø Rasmussen
5acb27f506 Update CpGrid version to use new classes. 2014-04-15 12:11:13 +02:00
Atgeirr Flø Rasmussen
9ae24f9380 Merge branch 'master' into cpr-preconditioning-again
Conflicts:
	CMakeLists_files.cmake
	examples/test_implicit_ad.cpp
2014-04-15 11:48:36 +02:00
Atgeirr Flø Rasmussen
55f5b0a10e Merge pull request #52 from qilicun/read_plyshear
make PolymerProperties handle PLYSHEAR keyword.
2014-04-15 08:18:49 +02:00
Bård Skaflestad
1cbffa09de Fix memory leak
Function GridManager::createGrdecl() generally allocates memory
(using std::malloc()) for the MAPAXES keyword data output of the
'grdecl' structure.  Release those resources before leaving the
scope to prevent memory leak introduced in commit fdca540.
2014-04-10 12:25:28 +02:00
Bård Skaflestad
fdca5404b7 Use new parser for all deck information
This commit switches to using the convenience method

    GridManager::createGrdecl()

to construct a "struct grdecl" that can be passed directly into
CpGrid::processEclipseFormat().  The practical benefit is that we
get to leverage the opm-parser that's in active development rather
than the calcifying "EclipseGridParser" that will only become less
relevant in the future.  We also don't parse the data twice.

Note: This is mostly compile tested.  In the few actual tests I ran,
I got into trouble with internal assertions in processEclipseFormat.
That problem is not yet analysed.
2014-04-10 01:01:55 +02:00
Bård Skaflestad
897a33c788 Support older versions of Dune
Retrieving the "mpihelper.hh" from <dune/common> rather than
<dune/common/parallel> means we can still support (e.g.,) Dune 2.2.1
if needed.
2014-04-10 00:59:31 +02:00
Bård Skaflestad
0f98ce7d6c Restore missing constructor argument
The 'grav' argument (gravity vector) was apparently lost in a
mis-merge.  This commit restores the missing argument.
2014-04-09 16:46:51 +02:00
Markus Blatt
b3ce9bd730 Updated examples/sim_fibo_ad_cp.cpp according to latest changes in examples/sim_fibo_ad.cpp 2014-04-09 14:40:56 +02:00
Markus Blatt
327f1b003d Merge branch 'tester' into master-refactor-for-cpgrid-support
Resolved conflicts:
	examples/sim_fibo_ad.cpp
	opm/autodiff/FullyImplicitBlackoilSolver_impl.hpp
2014-04-09 14:39:19 +02:00
Markus Blatt
3329e48c57 Adapted sim_fibo_ad_cp with latest changes for sim_fibo_ad 2014-04-09 13:18:28 +02:00
Bård Skaflestad
a784d50f1e Merge branch 'master' into blattms-master-refactor-for-cpgrid-support
Conflicts:
	examples/sim_fibo_ad.cpp
	opm/autodiff/FullyImplicitBlackoilSolver_impl.hpp

This brings the "CpGrid support" branch up to date with respect to
recent changes in opm-autodiff master.
2014-04-08 16:31:17 +02:00
Atgeirr Flø Rasmussen
bd44127bd6 Renamed more classes.
FullyImplicitSystemSolver{Interface, Simple} -> NewtonIterationBlackoil{Interface, Simple}.
Change suggested by B. Skaflestad.
2014-04-08 16:11:08 +02:00
Atgeirr Flø Rasmussen
f1956f05f9 Merge branch 'cpr-preconditioning' into cpr-preconditioning-again
Conflicts:
	examples/sim_fibo_ad.cpp
	examples/test_implicit_ad.cpp
	opm/autodiff/FullyImplicitBlackoilSolver.cpp
	opm/autodiff/SimulatorFullyImplicitBlackoil.cpp
	opm/autodiff/SimulatorFullyImplicitBlackoil.hpp
2014-04-08 15:06:01 +02:00
Andreas Lauser
8437051416 make everything compile with the newly refactored EclipseWriter
the states needed to be removed from the call to writeInit()...
2014-04-02 17:06:20 +02:00
Andreas Lauser
5e7064b337 sim_fibo_ad: remove compatibility code for old parser
this makes the simulator quite a bit more maintainable: setting
USE_NEW_PARSER to 0 did not even compile after the the constructor for
the wells manager which took the old deck was removed last
week. Since, according to Atgeirr, SPE-1 is now producing exactly the
same results as before, it also does no longer make too much sense to
keep that code on life support...
2014-03-31 16:39:17 +02:00
Markus Blatt
46f3607641 Merge remote-tracking branch 'upstream/master' into master-refactor-for-cpgrid-support
Resolved conflicts:
	opm/autodiff/FullyImplicitBlackoilSolver_impl.hpp
2014-03-31 11:39:37 +02:00
Atgeirr Flø Rasmussen
4b53f88685 Fix timer usage.
This makes the simulator produce proper summary output again.
2014-03-28 14:31:30 +01:00
Markus Blatt
b279a174db Merge remote-tracking branch 'upstream/master' into master-refactor-for-cpgrid-support
Conflicts:
	examples/sim_fibo_ad.cpp
	opm/autodiff/FullyImplicitBlackoilSolver_impl.hpp
2014-03-27 16:17:44 +01:00
Kai Bao
0914841823 A small fixing to make the sim_fibo_ad using the new timer. 2014-03-27 11:15:55 +01:00
Joakim Hove
2f23e72bea Removed calls to WellsManager() constructor which uses old EclipseGridParser. 2014-03-25 19:36:42 +01:00