-
Notifications
You must be signed in to change notification settings - Fork 3
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
ODE assertion fails #3
Comments
We can't because it is in ODE and not in our code! This is a very classic issue with ODE.
In PURE_INLINE void _dNormalize3(dVector3 a)
{
int bNormalizationResult = _dSafeNormalize3(a);
if(bNormalizationResult==false)
throw(3);
dIVERIFY(bNormalizationResult);
}
PURE_INLINE void _dNormalize4(dVector4 a)
{
int bNormalizationResult = _dSafeNormalize4(a);
if(bNormalizationResult==false)
throw(4);
dIVERIFY(bNormalizationResult);
} This is a dirty way to solve the problem, but it works. If you have time, you can look around if there is an option (like a Cflags, or an configure parameter) that disables these assert. By the way, do not forget to set ODE in double precision mode with this option: --enable-double-precision (by doing ./configure --enable-double-precision ) |
In addition, if you were thinking about changing our code so that this error never happens, this is not a good idea. We did try for a long time, and we can minimize them, but we can never be sure that these errors will not happen when we use learning/evolutionary algorithms (that will try crazy things!). |
Sometimes when running the ITE experiments I am getting the following error/assertion failure:
We should fix this.
The text was updated successfully, but these errors were encountered: