Minor reformulations

This commit is contained in:
babrodtk 2015-08-28 16:04:17 +02:00
parent 2f83f9268e
commit 0a2b898b33

View File

@ -393,12 +393,11 @@ namespace Opm
{ {
assert(lhs.type_ == S); assert(lhs.type_ == S);
assert(rhs.type_ == I); assert(rhs.type_ == I);
Sparse ident = spdiag(Eigen::VectorXd::Ones(lhs.rows_));
AutoDiffMatrix retval; AutoDiffMatrix retval;
retval.type_ = S; retval.type_ = S;
retval.rows_ = lhs.rows_; retval.rows_ = lhs.rows_;
retval.cols_ = rhs.cols_; retval.cols_ = rhs.cols_;
retval.s_ = lhs.s_ + ident; retval.s_ = lhs.s_ + spdiag(Eigen::VectorXd::Ones(lhs.rows_));;
return retval; return retval;
} }
@ -406,12 +405,11 @@ namespace Opm
{ {
assert(lhs.type_ == S); assert(lhs.type_ == S);
assert(rhs.type_ == D); assert(rhs.type_ == D);
Sparse diag = spdiag(rhs.d_);
AutoDiffMatrix retval; AutoDiffMatrix retval;
retval.type_ = S; retval.type_ = S;
retval.rows_ = lhs.rows_; retval.rows_ = lhs.rows_;
retval.cols_ = rhs.cols_; retval.cols_ = rhs.cols_;
retval.s_ = lhs.s_ + diag; retval.s_ = lhs.s_ + spdiag(rhs.d_);
return retval; return retval;
} }
@ -419,11 +417,8 @@ namespace Opm
{ {
assert(lhs.type_ == S); assert(lhs.type_ == S);
assert(rhs.type_ == S); assert(rhs.type_ == S);
AutoDiffMatrix retval; AutoDiffMatrix retval = lhs;
retval.type_ = S; retval.s_ += rhs.s_;
retval.rows_ = lhs.rows_;
retval.cols_ = rhs.cols_;
retval.s_ = lhs.s_ + rhs.s_;
return retval; return retval;
} }
@ -435,13 +430,9 @@ namespace Opm
{ {
assert(lhs.type_ == D); assert(lhs.type_ == D);
assert(rhs.type_ == D); assert(rhs.type_ == D);
AutoDiffMatrix retval; AutoDiffMatrix retval = lhs;
retval.type_ = D;
retval.rows_ = lhs.rows_;
retval.cols_ = rhs.cols_;
retval.d_.resize(lhs.rows_);
for (int r = 0; r < lhs.rows_; ++r) { for (int r = 0; r < lhs.rows_; ++r) {
retval.d_[r] = lhs.d_[r] * rhs.d_[r]; retval.d_[r] *= rhs.d_[r];
} }
return retval; return retval;
} }