Bug introduced in 10.0.0 and fixed in 10.2.0
I was experiencing some kernel crash while using "ValuesOnGrid"
method of an InterpolatingFunction
returned by NDSolve
as a solution of a 3D time-dependent problem.
After some research I discovered this is related with my need of persisting the solution of NDSolve
. Because I need to exchange the solution between different platforms, and because the solution is really part of an Association
which contains also several aspects and statistics about solution process, the most natural way to serialize this Association
was the WDX
format.
The minimal code to reproduce the kernel crash (on Windows 8.1 x64 with Mathematica 10.1) is the following:
if = NDSolveValue[{D[u[t, x, y, z], t] == 0, u[0, x, y, z] == 0},
u, {x, y, z} \[Element] Ball[], {t, 0, 1},
Method -> "FiniteElement"]
if["ValuesOnGrid"] // Dimensions (* OK *)
Export["if.wdx", if];
if = Import["if.wdx"];
if["ValuesOnGrid"] (* Kernel crash *)
What is the proper way to cross-platform serialize an Association
containg some InterpolatingFunction
returned by NDSolve
FiniteElement method for ad 3D time-dependent problem?
Compress[]
yourInterpolatingFunction[]
? $\endgroup$.mx
files, so they would be compatible between 64-bit Linux, Windows and MacOS X. $\endgroup$