cancel
Showing results for
Did you mean:
cancel
Showing results for
Did you mean:

Community Tip - Learn all about the Community Ranking System, a fun gamification element of the PTC Community. X

13-Aquamarine

## ODE solve give very spiky response ?

To all

I am looking at the ODESolve with a “saw tooth” input (y’’) and I get a very spiky response – see attached (mcad 15 wsheet will follow)

Why is that?

Tried different time steps but always get this rather spiky response

Thanks

John

1 ACCEPTED SOLUTION

Accepted Solutions
16-Pearl
(To:JXBWk)

Works better as set of first order equations:

Avoid numerical differentiation wherever possible!

Alan

13 REPLIES 13
24-Ruby IV
(To:JXBWk)

Try to convert one 2-d ODE into two 1-st Odes!

24-Ruby V
(To:JXBWk)

Would suggest that you attach your worksheet.

Would adding more steps in odesolve (third, optional argument) be of help?

Maybe worth a try although i guess that the problem stems from the numeric derivations and not from the result of odesolve.

Hard to be of more hep without having the sheet to play with.

23-Emerald III
(To:JXBWk)

I guess Amax=20 and tf=0.011. What are your values for and   ?

If they are 3 and 5 respectively I get:

Success!

Luc

15-Moonstone
(To:JXBWk)

odesolve use to be mathcad's best solver. however, their statespace solver is much better. the help and quicksheets can get you started. if you want some example files, I can post them. the users here on the forum helped me get a pwm input working. i haven't tried a sawtooth wave but i expect it would handle it well. the nice thing about the statespace solver is it can handle a lot more inputs than odesolve can.

13-Aquamarine
(To:JXBWk)

can't find the option to edit original post ! attached mcad 15 worksheet.

The Prime 8 conversion is not quite working. Does not like the y''(t) notation

24-Ruby V
(To:JXBWk)

Still not perfect, but maybe its helps

Its interesting that even lowing the number of steps from the default 10^3 to 10^2 give a coarse but mainly spike-less result.

13-Aquamarine
(To:Werner_E)

Thanks. Yes. Have been playing with the number of time steps and it's almost as if 150-250 steps give the "best" results

No idea why numerically one gets all this spikes.

Maybe the transition back to zero be done in a zero time is creating some sort of infinity in the process

Maybe I'll try to have a the ramp-down i.e. max-back to zero in a very small time step

24-Ruby V
(To:JXBWk)

Maybe I'll try to have a the ramp-down i.e. max-back to zero in a very small time step

No, I already tried and it didn't help.

Actually odesolve creates a couple of discrete points and performs some sort of interpolation behind the scenes to be able to provide a function. You may do the very same manually but use some sort of smoothing before applying interpolation.

I found the expsmooth seems to provide a good result and using it the numeric derivative seems to produce less spikes. You may also play around using different interpolation methods (lspline, pspline or maybe simple linear interpolation).

But as long as we are dealing with numeric methods (odesolve and the derivative) we have to reckon with artifacts of some kind.

MC15 sheet attached

23-Emerald III
(To:JXBWk)

OK, the true answer is probably this:

and stems from:

With those,

we can:

(note that these expression run much further to the right of the vertical grey line).

Compare to the numerical approximation by Odesolve:

Note the difference in z''<>Z'':

Success!
Luc

13-Aquamarine
(To:LucMeekes)

Thaks for the input. I naively assumed that this is an academic case - a single degree of freedom (spring-mass) subjected to a "ground" acceleration

If I got this right another input shape will work just fine. It still remains as to why that profile shape is giving odd answer

Not having the worksheet from which you have taken the pictures I may have to re-do bits of it as I 'll be interested to see the effect of a different wn value. much smaller

Thanks

Regards

John

16-Pearl
(To:JXBWk)

Works better as set of first order equations:

Avoid numerical differentiation wherever possible!

Alan

13-Aquamarine
(To:AlanStevens)

a comparison of the "normal approach" and @AlanStevens suggestion

23-Emerald III
(To:JXBWk)

Ah, apologies. I made one mistake, sign of y''. With the correct sign the result is:

And that results in:

And the comparison with the Odesolve result:

Now the results match better.

With that corrected, you were wondering about a lower value of wn, How about f=60 instead of 600.

And the comparison with Odesolve shows as:

I attach the Mathcad sheet. For you to run it in Mathcad 15 you will have to get the LODEsolve.xmcd file from https://community.ptc.com/t5/Mathcad/Toolbox-Solving-Ordinary-Differential-Equations-symbolically/m-... and replace the referenced file (LODEsolve.mcd) with that LODEsolve.xmcd.

I can only hope it runs as smoothly in your Mathcad 15 as it does in my Mathcad 11.

Success!
Luc

Announcements
Top Tags