Solving IVP w/ Finite Difference: Strange Oscillations

Join the discussion
Ask a follow-up here, or get your own question answered by working scientists, mathematicians and engineers — people, not an autocomplete.
Real named experts · corrections over time · the nuance an AI answer skips
1 reply · 3K views
gstar2002
Messages
3
Reaction score
0
Hallo, I tried to use 'finite difference' method to solve a Initial Value Problem(IVP). For the two boundaries I used periodical condtion and for the differential operators I used 4th degree center approximations. But as result, I got this thing. Where comes this strange oscillation What do you think could be the problem. Should I use a smaller x stepsize? Will use a forward approximation help? Thanks.
Actually I am using matlab's odes15s.

update:
The strange thing is that, if I use a biger x stepsize, say 0.1, i will get a smooth result. With smaller stepsize from 0.08, I will get the result showed in the picture.
I tried ode45, which is based on an explicit Runge-Kutta (4,5) formula, the Dormand-Prince pair and ode23tb, which is an implementation of TR-BDF2. I got the same result.

Thanks.
96eXy.png



\begin{aligned}
\dot{q} & = -\frac{\partial (6*q^2/5*h)}{\partial x}-\frac{3*q}{h^2}+h*h'''-(1+10*cos(pi*t))*h*h'\\
\end{aligned}

\begin{aligned}
\dot{h} & = -\frac{\partial q}{\partial x}
\end{aligned}

\begin{aligned}
h(t,0) = h(t,10),q(t,0) = q(t,10)
\end{aligned}


h(0,x), q(0,x) are known.
Thanks.
 
Physics news on Phys.org