Thanks a lor for all the patches. I will try to review them as soon as
possible. Don''t worry if it takes more than a few days, this is high
on my priority list (but not right at the top!).
> All the test passes except circle, plateau, reynolds and
> shear/concentration. Most of the test fails seem to be related to the
> precision of the calculation since the fails seems to came in those cases in
> which its is performed a comparative with (somehow) themselves (i.e values
> of references) except the case of circle for which the error was more
Yes, this is a bit strange. I think it is related to the way
floating-point calculations are handled by the processor. This can
depend on the exact type of processor (for example AMD versus Intel
etc...). Also, for example (some?) Intel 32 bits processors use
"extended precision" for 64-bits floating-point numbers (i.e.
"double") which are stored using 80 bits in internal registers:
depending on the way these registers are used to perform a given
sequence of calculations (which also depends on compilers,
optimisations etc..!) this may results in floating point errors being
_smaller_ on (some?) 32-bits processors rather than (some?) 64-bits
I believe that this mess was standardised by some ISO floating point
specification but I haven't really looked more into it.
> FAIL: circle
> [taylor2:29455] *** Process received signal ***
> [taylor2:29455] Signal: Floating point exception (8)
> [taylor2:29455] Signal code: Floating point divide-by-zero (3)
> [taylor2:29455] Failing at address: 0x103c191
> [taylor2:29455] [ 0] [0x8b4410]
> [taylor2:29455] [ 1]
Hm, yes this one is more worrying but is probably due to hypre rather
than Gerris per se. Unfortunately the convergence of the HYPRE solvers
is not as robust as one would wish. We are pushing it quite hard with
the poisson/ tests and accumulation of floating-point errors may also
explain why it crashes (fails to converge?) on some configurations.
> If these failed test cases are now run in other machine with debian:
> python test.py circle plateau reynolds and shear/concentration
> ALL pass without a problem.
It could be interesting to check the type of processors etc...