add relative tolerance for linear solver and newton with line search

This commit is contained in:
Xuchen Han
2019-09-09 16:35:37 -07:00
committed by Xuchen Han
parent 36278edc00
commit 1bc75cc833
6 changed files with 167 additions and 15 deletions

View File

@@ -134,9 +134,19 @@ btScalar btDeformableBackwardEulerObjective::computeNorm(const TVStack& residual
btScalar mag = 0;
for (int i = 0; i < residual.size(); ++i)
{
mag += residual[i].length();
mag += residual[i].length2();
}
return mag;
return std::sqrt(mag);
}
btScalar btDeformableBackwardEulerObjective::totalEnergy()
{
btScalar e = 0;
for (int i = 0; i < m_lf.size(); ++i)
{
e += m_lf[i]->totalElasticEnergy();
}
return e;
}
void btDeformableBackwardEulerObjective::applyExplicitForce(TVStack& force)