Hi,
This is a different question about the multilayer method, based on the test code large.c discussed in J. Comp. Phys 418.
I am getting very often an error "basilisk/src/hessenberg.h:64:error: Program received signal SIGFPE, Arithmetic exception." and I haven't been able to pinpoint what causes this. It happens when changing the initial amplitude, the wavelength, the equilibrium depth zb[] or the event times.
I first thought it was related to the initial amplitude being too high or the equilibrium depth zb[] being too shallow causing too strong nonlinearities but from more trial and error this seems not to be the case. As a random example I attach here a slightly modified version of large.c (my modifcations are annotated); the version large-modified-working.c runs without error. However, when I request a smaller amount of output profiles, i.e. I change t = 0.1e-4; t += 0.1e-4; t <= 50e-4 to t = 0.1e-4; t += 1e-4; t <= 50e-4 I get the artihmetic exception error. I chose this example because I think nothing in the physics here should change; also the exact same output times are requested, only less.
(One note: there is no evolution in the film profile in the working code large-modified-working.c; all traces look exactly the same which made me think I had to increase the output time but that too gives arithmetic erros and will not run.)
All the best,
Yasmine