replaced all find&insert to emplace
parent
0675b82c1f
commit
151809c89c
|
@ -313,11 +313,9 @@ VectorValues HessianFactor::hessianDiagonal() const {
|
|||
/* ************************************************************************* */
|
||||
void HessianFactor::hessianDiagonalAdd(VectorValues &d) const {
|
||||
for (DenseIndex j = 0; j < (DenseIndex)size(); ++j) {
|
||||
auto item = d.find(keys_[j]);
|
||||
if(item != d.end()) {
|
||||
item->second += info_.diagonal(j);
|
||||
} else {
|
||||
d.emplace(keys_[j], info_.diagonal(j));
|
||||
auto result = d.emplace(keys_[j], info_.diagonal(j));
|
||||
if(!result.second) {
|
||||
result.first->second += info_.diagonal(j);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -552,29 +552,16 @@ VectorValues JacobianFactor::hessianDiagonal() const {
|
|||
void JacobianFactor::hessianDiagonalAdd(VectorValues& d) const {
|
||||
for (size_t pos = 0; pos < size(); ++pos) {
|
||||
Key j = keys_[pos];
|
||||
auto item = d.find(j);
|
||||
|
||||
if(item != d.end()) {
|
||||
size_t nj = Ab_(pos).cols();
|
||||
Vector& dj = item->second;
|
||||
auto result = d.emplace(j, nj);
|
||||
|
||||
Vector& dj = result.first->second;
|
||||
for (size_t k = 0; k < nj; ++k) {
|
||||
Vector column_k = Ab_(pos).col(k);
|
||||
if (model_)
|
||||
model_->whitenInPlace(column_k);
|
||||
dj(k) += dot(column_k, column_k);
|
||||
}
|
||||
} else {
|
||||
size_t nj = Ab_(pos).cols();
|
||||
Vector dj(nj);
|
||||
for (size_t k = 0; k < nj; ++k) {
|
||||
Vector column_k = Ab_(pos).col(k);
|
||||
if (model_)
|
||||
model_->whitenInPlace(column_k);
|
||||
dj(k) = dot(column_k, column_k);
|
||||
}
|
||||
|
||||
d.emplace(j, dj);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -172,11 +172,9 @@ public:
|
|||
dj(k) -= FtE.row(k) * PointCovariance_ * FtE.row(k).transpose();
|
||||
}
|
||||
|
||||
auto item = d.find(j);
|
||||
if(item != d.end()) {
|
||||
item->second += dj;
|
||||
} else {
|
||||
d.emplace(j, dj);
|
||||
auto result = d.emplace(j, dj);
|
||||
if(!result.second) {
|
||||
result.first->second += dj;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue