mirror of
https://github.com/OPM/opm-simulators.git
synced 2025-02-25 18:55:30 -06:00
Merge pull request #1004 from andlaus/fix_undefined_behaviour
avoid relying on undefined behaviour
This commit is contained in:
commit
c292dd4975
@ -158,7 +158,7 @@ BlackoilPropsAdFromDeck::BlackoilPropsAdFromDeck(const BlackoilPropsAdFromDeck&
|
||||
|
||||
phase_usage_ = phaseUsageFromDeck(deck);
|
||||
|
||||
if (! (&FluidSystem::oilPvt()) ) {
|
||||
if (!FluidSystem::isInitialized()) {
|
||||
// make sure that we don't initialize the fluid system twice
|
||||
FluidSystem::initFromDeck(deck, eclState);
|
||||
}
|
||||
|
@ -260,24 +260,28 @@ namespace Opm
|
||||
dxOld = dx;
|
||||
|
||||
switch (relaxType()) {
|
||||
case DAMPEN:
|
||||
case DAMPEN: {
|
||||
if (omega == 1.) {
|
||||
return;
|
||||
}
|
||||
for (size_t i = 0; i < dx.size(); ++i) {
|
||||
auto i = dx.size();
|
||||
for (i = 0; i < dx.size(); ++i) {
|
||||
dx[i] *= omega;
|
||||
}
|
||||
return;
|
||||
case SOR:
|
||||
}
|
||||
case SOR: {
|
||||
if (omega == 1.) {
|
||||
return;
|
||||
}
|
||||
for (size_t i = 0; i < dx.size(); ++i) {
|
||||
auto i = dx.size();
|
||||
for (i = 0; i < dx.size(); ++i) {
|
||||
dx[i] *= omega;
|
||||
tempDxOld[i] *= (1.-omega);
|
||||
dx[i] += tempDxOld[i];
|
||||
}
|
||||
return;
|
||||
}
|
||||
default:
|
||||
OPM_THROW(std::runtime_error, "Can only handle DAMPEN and SOR relaxation type.");
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user