Originally Posted by: hanskl Upon closer inspection, computational times using your method of stacking all the DE's increases dramcatically. To calculate temperature at a given time takes ~1,3sec using your method.
Using my method (granted much more primitive, and it does give some unatural results in the crossover between the DE's, the computational times are ~0.15sec.
You have several points in one remark:
1. The compactum method is not shorter in work sheet space. It is slower
because of the counter cumulative in "for loop" ... just interesting.
2. Your "steps*(,-,) computes more points 603 vs mine 491
thus slower up to the result. No interest as it produces the duplicates.
3.
unatural results in the crossover between the DE's You have put the finger in the wound !!!
There are very many more "splines" than Smath "ainterp [Akima], cinterp"
Of all the splines [lot] I'm familiar,
NONE will accept duplicate
points ... worse: in this work, the duplicates are zombies , Ah !
So, you must strip for duplicates [submatrix does it well]. By same token,
once striped and stacked, the piecewise "ainterp" is completely useless.
As a remark, Smath "ainterp, cinterp" are hyperfast ... they spit 1000 data points
before it seems to have digested .
"cinterp" looks 1/1 universal vs others [Mathcad ...]
"Akima ainterp", I have not seen under the hood of it. From using, it reveals
very excellent in some works, but also pure scrap in other type applications.
4. After stripping, the f(x):=ainterp(X,Y,x) is passed in the reconstruct
discretiser to re-tabulate for equal points spacing as an export. For
interpolation, just spline over this data table.
Thanks Collab for this most interesting DE application.
Jean
ODE Multiconditional [Carlos Compactum] Copy.sm (27kb) downloaded 19 time(s). ODE Multiconditional [Steel fire] Copy.sm (65kb) downloaded 19 time(s).