fix errors for debugging.

This commit is contained in:
Liu Ming
2013-12-12 21:58:25 +08:00
parent 25160d019a
commit 2eaf24decf
5 changed files with 22 additions and 25 deletions

View File

@@ -326,14 +326,14 @@ namespace Opm {
const int nc = c.size();
V one = V::Ones(nc);
V ads = adsorption(c);
V ads = adsorption(c, cmax_cells);
double max_ads = polymer_props_.cMaxAds();
double res_factor = polymer_props_.resFactor();
double factor = (res_factor -1.) / max_ads;
V rk = one + factor * ads;
V krw_eff = krw / rk;
return eff_relperm;
return krw_eff;
}
@@ -347,20 +347,20 @@ namespace Opm {
V one = V::Ones(nc);
ADB ads = adsorption(c);
ADB ads = adsorption(c, cmax_cells);
V krw_eff = effectiveRelPerm(c.value(), cmax_cells.value(), krw.value());
double max_ads = polymer_props_.cMaxAds();
double res_factor = polymer_props_.resFactor();
double factor = (res_factor - 1.) / max_ads;
ADB rk = one + ads * factor;
ADB::M dkrw_ds = krw.derivative() / rk.derivative();
ADB::M dkrw_dc = -krw.value() / (rk.value * rk.value()) * ads.derivative() * factor;
ADB dkrw_ds = krw / rk.value();
ADB dkrw_dc = -krw.value() / (rk.value() * rk.value()) * ads * factor;
const int num_blocks = c.numBlocks();
std::vector<ADB::M> jacs(num_blocks);
for (int block = 0; block < num_blocks; ++block) {
jac[block] = dkrw_ds * sw.derivative()[block] + dkrw_dc * c.derivative()[block];
jacs[block] = dkrw_ds.derivative()[block] * sw.derivative()[block] + dkrw_dc.derivative()[block] * c.derivative()[block];
}
return ADB::function(krw_eff, jacs);