Dear all,
I hope you are well.
It is me again pestering you all with questions or looking for advice :).

We are currently working on our DEM simulation engine using deal.II 
particles features. DEM lead to very chaotic systems (with positive 
Lyapunov exponents, like in MD), which means that slight discrepancies in 
floating point numbers can lead to exponentially different results. You can 
imagine for example that if a particle is to fall exactly on top of 
another, a slight difference in round-off error can lead to the particle 
sliding to the right or to the left of the other particle. Consequently, 
very small differences accumulate and lead to drastically different results.

Right now, we are testing everything using numdiff within a ctest framework 
identical to deal.II. However, since we are comparing text files with 
particles positions and velocities, the tests end up being extremely 
fragile because they depend on the compiler version and MPI library being 
used (I guess?).

I was wondering if any of you had experience on what would be the best way 
to write functional tests that test the full code in the context of systems 
which show highly chaotic behavior like this? Right now we try to test for 
very small time, thus ensuring that differences don't have the time to 
propagate, but this is becoming more and more fragile and sometimes tests 
will crash on a peculiar machine, yet work on 95% of the other ones (such 
as our github actions).

Thanks and I wish you all great holidays!
Bruno

-- 
The deal.II project is located at http://www.dealii.org/
For mailing list/forum options, see 
https://groups.google.com/d/forum/dealii?hl=en
--- 
You received this message because you are subscribed to the Google Groups 
"deal.II User Group" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/dealii/22c85579-d403-4431-b150-e0520271df75n%40googlegroups.com.

Reply via email to