Commit Graph

731 Commits

Author SHA1 Message Date
Robert Kloefkorn
fd7059d6a0 Move assertFinalized_ to base class to avoid code duplication and allow for easy
toggle of functionality.
2017-02-07 11:29:38 +01:00
Tor Harald Sandve
2e51ae5079 Adpat to unit changes in opm-parser for JFUNC
The ECL Leverett function implementation "misuses" the pressure column
of the underlying tables (SWOF, SGOF, SWFN, etc.) for the
(dimensionless) J-Function. The correct converstion factor is now
applied in the parser and no converstions is needed no the opm-material
side.
2017-02-06 09:31:10 +01:00
Atgeirr Flø Rasmussen
b9d209a8b0 Merge pull request #196 from andlaus/consistency_improvements
Consistency improvements
2017-01-19 10:17:03 +01:00
Andreas Lauser
45da261142 move the '&' of references and the '*' of pointers to the type name
i.e., the new-style is `TypeName& var` instead of
`TypeName &var`. this patch is analogous to part of OPM/ewoms#83.
2017-01-18 17:57:54 +01:00
Andreas Lauser
19f1a27447 place the OPM_UNUSED macro after the variable name
this is analogous to OPM/ewoms#134.
2017-01-18 17:55:58 +01:00
Andreas Lauser
301be1ab8d Merge pull request #195 from andlaus/blackoilfluidsystem_isInitialized
BlackOilFluidSystem: add isInitialized()
2017-01-09 12:15:10 +01:00
Andreas Lauser
0d22035995 BlackOilFluidSystem: add isInitialized()
this allows to explicitly query if the fluid system has already been
initialized or not. the motiviation for this patch is that this method
can be used to avoid initializing the fluid system multiple times.
2017-01-09 12:11:06 +01:00
Andreas Lauser
affa356382 Merge pull request #194 from andlaus/valgrind_fix
properly initialize the VAPPAR parameters for wet gas and live oil
2017-01-06 09:20:42 +01:00
Andreas Lauser
a407546355 properly initialize the VAPPAR parameters for wet gas and live oil
valgrind complained about it. this is only relevant if initFromDeck()
is **not** used to initialize these objects. (e.g., this is the case
for the reservoir_blackoil_* tests of eWoms.)
2017-01-06 09:18:57 +01:00
Andreas Lauser
4e3b48688d Merge pull request #191 from atgeirr/remove-unused-deck-arg
Remove unused Deck arguments.
2017-01-02 11:01:25 +01:00
Atgeirr Flø Rasmussen
4abfb825eb Remove unused Deck arguments. 2017-01-02 09:46:30 +01:00
Pål Grønås Drange
42c739c679 Merge pull request #190 from andlaus/use_internalized_jfunc
use the new and shiny internalized JFUNC object from opm-parser
2016-12-30 09:33:52 +01:00
Andreas Lauser
7e0cb71002 use the new and shiny internalized JFUNC object from opm-parser
from my point of view, the main advantage is that the string
processing for the 'flag' and 'direction' items does no longer need to
be done by opm-material.
2016-12-29 13:48:25 +01:00
Andreas Lauser
8d27890544 Merge pull request #189 from andlaus/constexpr_quad
quad.hh: constexpressify std::numeric_limits<quad>
2016-12-27 22:17:00 +01:00
Andreas Lauser
f9aa063ba0 quad.hh: constexpressify std::numeric_limits<quad>
our oldest supported compiler (GCC 4.8) now has good enough constexpr
support and c++-2011 and above seem to use constexpr for the numeric
limits of the standard floating point types.
2016-12-27 17:01:06 +01:00
Atgeirr Flø Rasmussen
1f74a77730 Merge pull request #188 from andlaus/fix_twophase_ecl_hysteresis
EclTwoPhaseMaterial: do not update the oil-water hysteresis parameters for non-existing objects
2016-12-22 15:36:45 +01:00
Andreas Lauser
5bebabcd79 EclTwoPhaseMaterial: do not update the oil-water hysteresis parameters for non-existing objects
we must not update these parameters because the respective objects do
not exist in these cases. As far as I can see, both saturation function
objects need to exist for the gas-water twophase case despide the fact
that there is no oil because the capillary pressure between water and
gas is the sum of the capillary pressures between gas+oil and
oil+water. (also, I am not aware of any ECL keywords to provide the
gas-water saturation functions directly.)
2016-12-22 14:43:04 +01:00
Andreas Lauser
6075748dda Merge pull request #187 from andlaus/include_correct_header
quad.hh: include the correct header for std::runtime_error
2016-12-15 11:00:26 +01:00
Andreas Lauser
1d1f0e2095 quad.hh: include the correct header for std::runtime_error 2016-12-15 10:58:57 +01:00
Atgeirr Flø Rasmussen
16451b2bf9 Merge pull request #186 from andlaus/minor_reorg
Minor reorg
2016-12-14 21:46:05 +01:00
Andreas Lauser
4ab2b3dc70 move over the quadruple precision math code from eWoms 2016-12-14 12:36:09 +01:00
Andreas Lauser
39c5c94ac7 the new home of Valgrind.hpp is opm-common! 2016-12-14 09:46:21 +01:00
Andreas Lauser
a607daa6e1 delete ClassName.hpp
it is now replaced in favour of Dune::className() from dune/common/classname.hh
2016-12-14 09:46:16 +01:00
Andreas Lauser
36faf5d156 Merge pull request #185 from andlaus/inline_className
add missing "inline" to __float128 specialization of className()
2016-12-13 14:12:41 +01:00
Andreas Lauser
59c4d0f91b add missing "inline" to __float128 specialization of className()
if this specialization is not marked as "inline" it leads to linker
errors due to multiple definitions of the
`Opm::className<__float128>()` symbol. I consider this pretty
surprising behaviour of the C++ language because template functions do
not need to declared as `inline`.
2016-12-13 14:11:14 +01:00
Andreas Lauser
fde29dc7f3 Merge pull request #184 from andlaus/fix_2p_ecl_init
EclMaterialLawManager: fix and simpilfy the two-phase inititialization
2016-12-12 19:21:59 +01:00
Andreas Lauser
8fa3b6ee81 EclMaterialLawManager: fix and simpilfy the two-phase inititialization
this also fixes a bug where some parameter objects were not correctly
initialized in the two-phase (i.e., oil-water) case.
2016-12-12 14:39:43 +01:00
Atgeirr Flø Rasmussen
8dc4e0b2dc Merge pull request #179 from andlaus/move_Unused_hpp
delete Unused.hpp
2016-11-29 10:35:24 +01:00
Andreas Lauser
29de6a0174 Merge pull request #180 from andlaus/implement_two-phase_blackoil
make the BlackOilFluidSystem two-phase ready
2016-11-28 15:15:41 +01:00
Andreas Lauser
6592dc54f7 make the BlackOilFluidSystem two-phase ready 2016-11-22 15:10:28 +01:00
Andreas Lauser
69b2ebc5c6 delete Unused.hpp
it is moved to opm-common. use that file instead.
2016-11-22 14:43:00 +01:00
Joakim Hove
afa02f05d7 Merge pull request #178 from atgeirr/use-eclstate-tabdims
Use tabdims from EclipseState.
2016-11-18 11:30:19 +01:00
Atgeirr Flø Rasmussen
4514d5454c Use tabdims from EclipseState. 2016-11-17 22:39:32 +01:00
Andreas Lauser
051bff3e9b Merge pull request #177 from andlaus/fix_pedantic_warnings
fix some pedantic compiler warnings
2016-11-09 13:24:21 +01:00
Andreas Lauser
93fe614558 fix some pedantic compiler warnings
this allows the test suite of eWoms to be compiled on clang++ 3.8
using the following warning flags

```
    -Weverything
    -Wno-documentation
    -Wno-documentation-unknown-command
    -Wno-c++98-compat
    -Wno-c++98-compat-pedantic
    -Wno-undef
    -Wno-padded
    -Wno-global-constructors
    -Wno-exit-time-destructors
    -Wno-weak-vtables
    -Wno-float-equal
```

without triggering warnings in opm-material or eWoms.

Note that the test-suite for opm-material does *not* yet pass without
warnings with these flags because with these flags clang likes to
complain about reducing or increasing floating point precision which
results in a formidable nightmare. I will see what I can do about
these warnings in a separate PR.

v4: properly fix the unused parameter warnings for the valgrind client
requests. thanks to [at]atgeirr for finding the issue.
2016-11-09 12:06:36 +01:00
Andreas Lauser
4c0c570dbc Merge pull request #175 from dr-robertk/PR/reimp-evaluation
Re-implementation of Evaluation.
2016-11-04 12:42:52 +01:00
Robert Kloefkorn
fceaafdce1 [performance] re-implementation of Evaluation.hpp that avoid the use of high
level functions and clusters the data together in a CPU friendly way.
2016-11-01 21:57:59 +01:00
Andreas Lauser
acc29874aa Merge pull request #173 from andlaus/Evaluation_accessors
change Evaluation to accessor methods
2016-11-01 13:15:53 +01:00
Andreas Lauser
66ec787438 DenseAD: access the value and derivatives of Evaluations via accessor functions
this allows some flexibility of how an Evaluation object is
represented internally. the main motivation for this is to allow using
SIMD instruction which expect special data types as their operants.
2016-10-30 19:01:06 +01:00
Andreas Lauser
e047e85f54 DenseAD: simplify the min(), max() and abs() functions
note that while this simplifies the source code, the performance of
the binaries should be unaffected.
2016-10-30 19:01:06 +01:00
Andreas Lauser
48d570afc5 DenseAD: add copyDerivatives(x) and clearDerivatives() methods to Evaluation
this makes it possible to implement these functions more
efficiently...
2016-10-30 19:01:06 +01:00
Andreas Lauser
a289230202 Merge pull request #174 from andlaus/valgrind_cr_improvements
minor Valgrind client request improvements
2016-10-27 17:55:16 +02:00
Andreas Lauser
7bb2fdff20 fix some minor documentation bugs in Valgrind.hpp 2016-10-27 17:47:32 +02:00
Andreas Lauser
3f3d6355af Valgrind helpers: add client request to check if a memory range is accessible
the function is called `Valgrind::CheckAddressable(object)`.
2016-10-27 17:47:32 +02:00
Andreas Lauser
b7dd411c1c Merge pull request #169 from andlaus/implement_JFUNC
implement ECL-like Leverett capillary pressure scaling
2016-10-21 09:47:20 +02:00
Andreas Lauser
ab2650923d implement ECL-like Leverett capillary pressure scaling
i.e., this patch deals with the JFUNC ECL keyword.
2016-10-20 19:57:27 +02:00
jokva
0a09945fb6 Merge pull request #170 from jokva/remove-shared-ptr
The great shared_ptr purge
2016-10-20 19:19:13 +02:00
Andreas Lauser
c547e36877 Merge pull request #172 from andlaus/add_isfinite_and_isnan
MathToolbox: add isfinite() and isnan() methods
2016-10-19 21:49:24 +02:00
Andreas Lauser
98898cae1d MathToolbox: add isfinite() and isnan() methods
for primitive floating point objects, these correspond to
std::isfinite() and std::isnan() while for evaluations, they trigger
on the evaluation's value or any of its derivatives being non-finite
or NaN. (i.e., for evaluations they should be better called
containsnonfinite(), containsnan().)
2016-10-19 21:46:23 +02:00
Andreas Lauser
34c9e1efe9 Merge pull request #171 from andlaus/improve_comment
H2O-Air henry coefficient: improve citation in comment
2016-10-19 14:55:50 +02:00