There is no need to use Bash-specific operators when the pure sh(1)
built-in test operators have the exact same semantics. This increases
portability to systems for which /bin/sh is *not* Bash (or Dash).
Specifically, the tests
if (!wells->type[self_index] == INJECTOR)
if (!wells->type[self_index] == PRODUCER)
produced the expected results *only* because INJECTOR==0 and PRODUCER==1
in the WellType enumeration, thus (!INJECTOR == PRODUCER) and
(!PRODUCER == INJECTOR).
Installing the (much) more appropriate
if (wells->type[self_index] != INJECTOR)
if (wells->type[self_index] != PRODUCER)
is not only more readable, it is also future-proof and scales better if
we ever introduce new WellTypes (e.g., a MONITOR).
Using headers and libraries from a DUNE built with different options
than OPM, can result in strange ABI errors such as a segmentation
fault in the static initialization section.
Load average of 0.9 is something that even a PhD student's crappy
laptop computer should be able to handle, without completely killing
it.
It really should be something like:
make -j -l $(echo \($(grep "^processor" /proc/cpuinfo)+1\)\*0.9 | bc)
but that is probably far too complex to put in a README. The average
developer should be able to pick a reasonable value themselves.
It complains about not finding a match for the pair<> template class,
because the first parameter (this) is allegedly const. However, this
isn't a const method, so I suspect it is a compiler bug.
In order to move on, I slap on a harmless cast which will make this
particular compiler happy, and which should have no effects elsewhere,
but put it in a #if..#else..#endif macro to avoid warnings on others;
hopefully this also makes it easier to spot and remove in the future.
Client programs/libraries that uses CMake as their build system should
be able to point at the directory of a OPM-core build tree and have its
library picked up from there.
The class TransportModelTracerTofDiscGal now uses
VelocityInterpolationInterface, and acts as a factory
internally, choosing an interpolation method depending on
the parameter 'use_cvi'.
Only probe for libraries on system if no library is specified. If there
is an error with the library that is specified as an argument, then
raise an error instead of continuing to look for other libraries with a
simple warning buried deep in the configuration log.