<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
		>
<channel>
	<title>Comments on: Fourth order Runge-Kutta numerical integration</title>
	<atom:link href="http://doswa.com/blog/2009/01/02/fourth-order-runge-kutta-numerical-integration/feed/" rel="self" type="application/rss+xml" />
	<link>http://doswa.com/blog/2009/01/02/fourth-order-runge-kutta-numerical-integration/</link>
	<description>Programming, physics, mathematics</description>
	<lastBuildDate>Thu, 19 Aug 2010 18:20:38 +0000</lastBuildDate>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0.1</generator>
	<item>
		<title>By: Jerry Rude</title>
		<link>http://doswa.com/blog/2009/01/02/fourth-order-runge-kutta-numerical-integration/comment-page-1/#comment-1121</link>
		<dc:creator>Jerry Rude</dc:creator>
		<pubDate>Mon, 22 Mar 2010 00:22:21 +0000</pubDate>
		<guid isPermaLink="false">http://doswa.com/?p=16#comment-1121</guid>
		<description>What a pretty little snippet of code. I was playing with the Runge-Kutta method today and stumbled upon your code. I am playing around with some stellar atmosphere equations and decided I might be able to produce a computer model. I always assumed numerically solving a differential equation was very difficult, however this proved me wrong.  Now I am off to figure out how to solve simultaneous DE&#039;s, what a treat!

Cheers,
Jerry</description>
		<content:encoded><![CDATA[<p>What a pretty little snippet of code. I was playing with the Runge-Kutta method today and stumbled upon your code. I am playing around with some stellar atmosphere equations and decided I might be able to produce a computer model. I always assumed numerically solving a differential equation was very difficult, however this proved me wrong.  Now I am off to figure out how to solve simultaneous DE&#8217;s, what a treat!</p>
<p>Cheers,<br />
Jerry</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Improved RK4 Implementation &#124; Doswa</title>
		<link>http://doswa.com/blog/2009/01/02/fourth-order-runge-kutta-numerical-integration/comment-page-1/#comment-874</link>
		<dc:creator>Improved RK4 Implementation &#124; Doswa</dc:creator>
		<pubDate>Sat, 23 Jan 2010 14:54:33 +0000</pubDate>
		<guid isPermaLink="false">http://doswa.com/?p=16#comment-874</guid>
		<description>[...] you&#8217;re new to numerical integration or even RK4 integration, please read my other post first. It&#8217;s easier to understand because it&#8217;s a less generalized function. def [...]</description>
		<content:encoded><![CDATA[<p>[...] you&#8217;re new to numerical integration or even RK4 integration, please read my other post first. It&#8217;s easier to understand because it&#8217;s a less generalized function. def [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: David</title>
		<link>http://doswa.com/blog/2009/01/02/fourth-order-runge-kutta-numerical-integration/comment-page-1/#comment-873</link>
		<dc:creator>David</dc:creator>
		<pubDate>Sat, 23 Jan 2010 00:03:25 +0000</pubDate>
		<guid isPermaLink="false">http://doswa.com/?p=16#comment-873</guid>
		<description>Hi simmuskhan:

I had never heard of the RKF method until now, but after looking into it, I feel that it overcomplicates things. For many situations, RK4 is &quot;good enough&quot;.

However, here&#039;s a basic implementation of RKF. You&#039;ll probably want to add some code to put minimum/maximum values on dt. This one is hardcoded for 1st order differential equations, but it shouldn&#039;t be too hard to modify for higher orders.

&lt;pre lang=&quot;python&quot;&gt;
def rkf45(t, dt, y, f, tolerance=1e-5):
	&quot;&quot;&quot;Runge-Kutta-Fehlberg method.
	
	t = Current time.
	dt = Timestep.
	y = Initial value.
	f = Derivative function y&#039; = f(t, y).
	tolerance = Error tolerance.
	
	Returns a (tf, dtf, yf) tuple after time dt has passed, where:
	tf = Final time.
	yf = Final value.
	dtf = Error-corrected timestep for next step.&quot;&quot;&quot;
	
	
	# Calculate the slopes at various points.
	# Values taken from http://en.wikipedia.org/wiki/Runge-Kutta-Fehlberg_method.
	k1 = f(t, y)
	k2 = f(t+(1/4.0)*dt, y + k1*(1/4.0)*dt)
	k3 = f(t+(3/8.0)*dt, y + k1*(3/32.0)*dt + k2*(9/32.0)*dt)
	k4 = f(t+(12/13.0)*dt, y + k1*(1932/2197.0)*dt + k2*(-7200/2197.0)*dt + k3*(7296/2197.0)*dt)
	k5 = f(t+dt, y + k1*(439/216.0)*dt + k2*(-8)*dt + k3*(3680/513.0)*dt + k4*(-845/4104.0)*dt)
	k6 = f(t+(1/2.0)*dt, y + k1*(-8/27.0)*dt + k2*(2)*dt + k3*(-3544/2565.0)*dt + k4*(1859/4104.0)*dt + k5*(-11/40.0)*dt)
	
	# 4th order approximation of the final value.
	yf4 = y + k1*(25/216.0)*dt + k3*(1408/2565.0)*dt + k4*(2197/4104.0)*dt + k5*(-1/5.0)*dt
	
	# 5th order approximation of the final value.
	yf5 = y + k1*(16/135.0)*dt + k3*(6656/12825.0)*dt + k4*(28561/56430.0)*dt + k5*(-9/50.0)*dt + k6*(2/55.0)*dt
	
	# Timestep scaling factor. From http://math.fullerton.edu/mathews/n2003/RungeKuttaFehlbergMod.html.
	err = abs(yf5-yf4)
	s = 1 if err==0 else (tolerance*dt/(2*err))**(1/4.0)
	
	return t+dt, s*dt, yf4
&lt;/pre&gt;

And here&#039;s an example usage of that:
&lt;pre lang=&quot;python&quot;&gt;
import math

t = 0
dt = 1/40.0
dt_min = 1/100.0
dt_max = 1/10.0
y = math.sin(t)

print &quot;Integrating cos(t) over 0&lt;t&lt;100.&quot;

while t &lt; 100:
	t, dt, y = rkf45(t, dt, y, lambda t,y: math.cos(t))
	if dt &lt; dt_min: dt = dt_min
	if dt &gt; dt_max: dt = dt_max

print &quot;Final value with RKF45: &quot;+str(y)
print &quot;Final value (exact): &quot;+str(math.sin(100)) # sin(x) = integral(cos(x))
&lt;/pre&gt;</description>
		<content:encoded><![CDATA[<p>Hi simmuskhan:</p>
<p>I had never heard of the RKF method until now, but after looking into it, I feel that it overcomplicates things. For many situations, RK4 is &#8220;good enough&#8221;.</p>
<p>However, here&#8217;s a basic implementation of RKF. You&#8217;ll probably want to add some code to put minimum/maximum values on dt. This one is hardcoded for 1st order differential equations, but it shouldn&#8217;t be too hard to modify for higher orders.</p>

<div class="wp_syntax"><div class="code"><pre class="python" style="font-family:monospace;"><span style="color: #ff7700;font-weight:bold;">def</span> rkf45<span style="color: black;">&#40;</span>t, dt, y, f, tolerance=1e-5<span style="color: black;">&#41;</span>:
	<span style="color: #483d8b;">&quot;&quot;&quot;Runge-Kutta-Fehlberg method.
&nbsp;
	t = Current time.
	dt = Timestep.
	y = Initial value.
	f = Derivative function y' = f(t, y).
	tolerance = Error tolerance.
&nbsp;
	Returns a (tf, dtf, yf) tuple after time dt has passed, where:
	tf = Final time.
	yf = Final value.
	dtf = Error-corrected timestep for next step.&quot;&quot;&quot;</span>
&nbsp;
&nbsp;
	<span style="color: #808080; font-style: italic;"># Calculate the slopes at various points.</span>
	<span style="color: #808080; font-style: italic;"># Values taken from http://en.wikipedia.org/wiki/Runge-Kutta-Fehlberg_method.</span>
	k1 = f<span style="color: black;">&#40;</span>t, y<span style="color: black;">&#41;</span>
	k2 = f<span style="color: black;">&#40;</span>t+<span style="color: black;">&#40;</span><span style="color: #ff4500;">1</span>/<span style="color: #ff4500;">4.0</span><span style="color: black;">&#41;</span><span style="color: #66cc66;">*</span>dt, y + k1<span style="color: #66cc66;">*</span><span style="color: black;">&#40;</span><span style="color: #ff4500;">1</span>/<span style="color: #ff4500;">4.0</span><span style="color: black;">&#41;</span><span style="color: #66cc66;">*</span>dt<span style="color: black;">&#41;</span>
	k3 = f<span style="color: black;">&#40;</span>t+<span style="color: black;">&#40;</span><span style="color: #ff4500;">3</span>/<span style="color: #ff4500;">8.0</span><span style="color: black;">&#41;</span><span style="color: #66cc66;">*</span>dt, y + k1<span style="color: #66cc66;">*</span><span style="color: black;">&#40;</span><span style="color: #ff4500;">3</span>/<span style="color: #ff4500;">32.0</span><span style="color: black;">&#41;</span><span style="color: #66cc66;">*</span>dt + k2<span style="color: #66cc66;">*</span><span style="color: black;">&#40;</span><span style="color: #ff4500;">9</span>/<span style="color: #ff4500;">32.0</span><span style="color: black;">&#41;</span><span style="color: #66cc66;">*</span>dt<span style="color: black;">&#41;</span>
	k4 = f<span style="color: black;">&#40;</span>t+<span style="color: black;">&#40;</span><span style="color: #ff4500;">12</span>/<span style="color: #ff4500;">13.0</span><span style="color: black;">&#41;</span><span style="color: #66cc66;">*</span>dt, y + k1<span style="color: #66cc66;">*</span><span style="color: black;">&#40;</span><span style="color: #ff4500;">1932</span>/<span style="color: #ff4500;">2197.0</span><span style="color: black;">&#41;</span><span style="color: #66cc66;">*</span>dt + k2<span style="color: #66cc66;">*</span><span style="color: black;">&#40;</span>-<span style="color: #ff4500;">7200</span>/<span style="color: #ff4500;">2197.0</span><span style="color: black;">&#41;</span><span style="color: #66cc66;">*</span>dt + k3<span style="color: #66cc66;">*</span><span style="color: black;">&#40;</span><span style="color: #ff4500;">7296</span>/<span style="color: #ff4500;">2197.0</span><span style="color: black;">&#41;</span><span style="color: #66cc66;">*</span>dt<span style="color: black;">&#41;</span>
	k5 = f<span style="color: black;">&#40;</span>t+dt, y + k1<span style="color: #66cc66;">*</span><span style="color: black;">&#40;</span><span style="color: #ff4500;">439</span>/<span style="color: #ff4500;">216.0</span><span style="color: black;">&#41;</span><span style="color: #66cc66;">*</span>dt + k2<span style="color: #66cc66;">*</span><span style="color: black;">&#40;</span>-<span style="color: #ff4500;">8</span><span style="color: black;">&#41;</span><span style="color: #66cc66;">*</span>dt + k3<span style="color: #66cc66;">*</span><span style="color: black;">&#40;</span><span style="color: #ff4500;">3680</span>/<span style="color: #ff4500;">513.0</span><span style="color: black;">&#41;</span><span style="color: #66cc66;">*</span>dt + k4<span style="color: #66cc66;">*</span><span style="color: black;">&#40;</span>-<span style="color: #ff4500;">845</span>/<span style="color: #ff4500;">4104.0</span><span style="color: black;">&#41;</span><span style="color: #66cc66;">*</span>dt<span style="color: black;">&#41;</span>
	k6 = f<span style="color: black;">&#40;</span>t+<span style="color: black;">&#40;</span><span style="color: #ff4500;">1</span>/<span style="color: #ff4500;">2.0</span><span style="color: black;">&#41;</span><span style="color: #66cc66;">*</span>dt, y + k1<span style="color: #66cc66;">*</span><span style="color: black;">&#40;</span>-<span style="color: #ff4500;">8</span>/<span style="color: #ff4500;">27.0</span><span style="color: black;">&#41;</span><span style="color: #66cc66;">*</span>dt + k2<span style="color: #66cc66;">*</span><span style="color: black;">&#40;</span><span style="color: #ff4500;">2</span><span style="color: black;">&#41;</span><span style="color: #66cc66;">*</span>dt + k3<span style="color: #66cc66;">*</span><span style="color: black;">&#40;</span>-<span style="color: #ff4500;">3544</span>/<span style="color: #ff4500;">2565.0</span><span style="color: black;">&#41;</span><span style="color: #66cc66;">*</span>dt + k4<span style="color: #66cc66;">*</span><span style="color: black;">&#40;</span><span style="color: #ff4500;">1859</span>/<span style="color: #ff4500;">4104.0</span><span style="color: black;">&#41;</span><span style="color: #66cc66;">*</span>dt + k5<span style="color: #66cc66;">*</span><span style="color: black;">&#40;</span>-<span style="color: #ff4500;">11</span>/<span style="color: #ff4500;">40.0</span><span style="color: black;">&#41;</span><span style="color: #66cc66;">*</span>dt<span style="color: black;">&#41;</span>
&nbsp;
	<span style="color: #808080; font-style: italic;"># 4th order approximation of the final value.</span>
	yf4 = y + k1<span style="color: #66cc66;">*</span><span style="color: black;">&#40;</span><span style="color: #ff4500;">25</span>/<span style="color: #ff4500;">216.0</span><span style="color: black;">&#41;</span><span style="color: #66cc66;">*</span>dt + k3<span style="color: #66cc66;">*</span><span style="color: black;">&#40;</span><span style="color: #ff4500;">1408</span>/<span style="color: #ff4500;">2565.0</span><span style="color: black;">&#41;</span><span style="color: #66cc66;">*</span>dt + k4<span style="color: #66cc66;">*</span><span style="color: black;">&#40;</span><span style="color: #ff4500;">2197</span>/<span style="color: #ff4500;">4104.0</span><span style="color: black;">&#41;</span><span style="color: #66cc66;">*</span>dt + k5<span style="color: #66cc66;">*</span><span style="color: black;">&#40;</span>-<span style="color: #ff4500;">1</span>/<span style="color: #ff4500;">5.0</span><span style="color: black;">&#41;</span><span style="color: #66cc66;">*</span>dt
&nbsp;
	<span style="color: #808080; font-style: italic;"># 5th order approximation of the final value.</span>
	yf5 = y + k1<span style="color: #66cc66;">*</span><span style="color: black;">&#40;</span><span style="color: #ff4500;">16</span>/<span style="color: #ff4500;">135.0</span><span style="color: black;">&#41;</span><span style="color: #66cc66;">*</span>dt + k3<span style="color: #66cc66;">*</span><span style="color: black;">&#40;</span><span style="color: #ff4500;">6656</span>/<span style="color: #ff4500;">12825.0</span><span style="color: black;">&#41;</span><span style="color: #66cc66;">*</span>dt + k4<span style="color: #66cc66;">*</span><span style="color: black;">&#40;</span><span style="color: #ff4500;">28561</span>/<span style="color: #ff4500;">56430.0</span><span style="color: black;">&#41;</span><span style="color: #66cc66;">*</span>dt + k5<span style="color: #66cc66;">*</span><span style="color: black;">&#40;</span>-<span style="color: #ff4500;">9</span>/<span style="color: #ff4500;">50.0</span><span style="color: black;">&#41;</span><span style="color: #66cc66;">*</span>dt + k6<span style="color: #66cc66;">*</span><span style="color: black;">&#40;</span><span style="color: #ff4500;">2</span>/<span style="color: #ff4500;">55.0</span><span style="color: black;">&#41;</span><span style="color: #66cc66;">*</span>dt
&nbsp;
	<span style="color: #808080; font-style: italic;"># Timestep scaling factor. From http://math.fullerton.edu/mathews/n2003/RungeKuttaFehlbergMod.html.</span>
	err = <span style="color: #008000;">abs</span><span style="color: black;">&#40;</span>yf5-yf4<span style="color: black;">&#41;</span>
	s = <span style="color: #ff4500;">1</span> <span style="color: #ff7700;font-weight:bold;">if</span> err==<span style="color: #ff4500;">0</span> <span style="color: #ff7700;font-weight:bold;">else</span> <span style="color: black;">&#40;</span>tolerance<span style="color: #66cc66;">*</span>dt/<span style="color: black;">&#40;</span><span style="color: #ff4500;">2</span><span style="color: #66cc66;">*</span>err<span style="color: black;">&#41;</span><span style="color: black;">&#41;</span><span style="color: #66cc66;">**</span><span style="color: black;">&#40;</span><span style="color: #ff4500;">1</span>/<span style="color: #ff4500;">4.0</span><span style="color: black;">&#41;</span>
&nbsp;
	<span style="color: #ff7700;font-weight:bold;">return</span> t+dt, s<span style="color: #66cc66;">*</span>dt, yf4</pre></div></div>

<p>And here&#8217;s an example usage of that:</p>

<div class="wp_syntax"><div class="code"><pre class="python" style="font-family:monospace;"><span style="color: #ff7700;font-weight:bold;">import</span> <span style="color: #dc143c;">math</span>
&nbsp;
t = <span style="color: #ff4500;">0</span>
dt = <span style="color: #ff4500;">1</span>/<span style="color: #ff4500;">40.0</span>
dt_min = <span style="color: #ff4500;">1</span>/<span style="color: #ff4500;">100.0</span>
dt_max = <span style="color: #ff4500;">1</span>/<span style="color: #ff4500;">10.0</span>
y = <span style="color: #dc143c;">math</span>.<span style="color: black;">sin</span><span style="color: black;">&#40;</span>t<span style="color: black;">&#41;</span>
&nbsp;
<span style="color: #ff7700;font-weight:bold;">print</span> <span style="color: #483d8b;">&quot;Integrating cos(t) over 0&lt;t&lt;100.&quot;</span>
&nbsp;
<span style="color: #ff7700;font-weight:bold;">while</span> t <span style="color: #66cc66;">&lt;</span> <span style="color: #ff4500;">100</span>:
	t, dt, y = rkf45<span style="color: black;">&#40;</span>t, dt, y, <span style="color: #ff7700;font-weight:bold;">lambda</span> t,y: <span style="color: #dc143c;">math</span>.<span style="color: black;">cos</span><span style="color: black;">&#40;</span>t<span style="color: black;">&#41;</span><span style="color: black;">&#41;</span>
	<span style="color: #ff7700;font-weight:bold;">if</span> dt <span style="color: #66cc66;">&lt;</span> dt_min: dt = dt_min
	<span style="color: #ff7700;font-weight:bold;">if</span> dt <span style="color: #66cc66;">&gt;</span> dt_max: dt = dt_max
&nbsp;
<span style="color: #ff7700;font-weight:bold;">print</span> <span style="color: #483d8b;">&quot;Final value with RKF45: &quot;</span>+<span style="color: #008000;">str</span><span style="color: black;">&#40;</span>y<span style="color: black;">&#41;</span>
<span style="color: #ff7700;font-weight:bold;">print</span> <span style="color: #483d8b;">&quot;Final value (exact): &quot;</span>+<span style="color: #008000;">str</span><span style="color: black;">&#40;</span><span style="color: #dc143c;">math</span>.<span style="color: black;">sin</span><span style="color: black;">&#40;</span><span style="color: #ff4500;">100</span><span style="color: black;">&#41;</span><span style="color: black;">&#41;</span> <span style="color: #808080; font-style: italic;"># sin(x) = integral(cos(x))</span></pre></div></div>

]]></content:encoded>
	</item>
	<item>
		<title>By: simmuskhan</title>
		<link>http://doswa.com/blog/2009/01/02/fourth-order-runge-kutta-numerical-integration/comment-page-1/#comment-870</link>
		<dc:creator>simmuskhan</dc:creator>
		<pubDate>Fri, 22 Jan 2010 10:43:20 +0000</pubDate>
		<guid isPermaLink="false">http://doswa.com/?p=16#comment-870</guid>
		<description>Thanks soooo much for the simple way you put that RK4 code together, really helped me see how it works, as I&#039;ve had difficulty with some of the other ways I&#039;ve seen it written.

Just a few questions if you&#039;ve got the time/inclination to help out!

I&#039;m putting together an orbital code, and need to use an Runge Kutta Fehlberg routine, but can&#039;t see how to adapt it to work. I think I&#039;m just not sure how the time fractions fit in with the function fractions.

Thanks again for the easy to read code, worked a treat!</description>
		<content:encoded><![CDATA[<p>Thanks soooo much for the simple way you put that RK4 code together, really helped me see how it works, as I&#8217;ve had difficulty with some of the other ways I&#8217;ve seen it written.</p>
<p>Just a few questions if you&#8217;ve got the time/inclination to help out!</p>
<p>I&#8217;m putting together an orbital code, and need to use an Runge Kutta Fehlberg routine, but can&#8217;t see how to adapt it to work. I think I&#8217;m just not sure how the time fractions fit in with the function fractions.</p>
<p>Thanks again for the easy to read code, worked a treat!</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: TheAstronomist</title>
		<link>http://doswa.com/blog/2009/01/02/fourth-order-runge-kutta-numerical-integration/comment-page-1/#comment-609</link>
		<dc:creator>TheAstronomist</dc:creator>
		<pubDate>Sun, 22 Nov 2009 09:51:40 +0000</pubDate>
		<guid isPermaLink="false">http://doswa.com/?p=16#comment-609</guid>
		<description>Fantastic code!  Just one thing your damping should be positive in order to be consistent with your other signs; currently it is adding energy to the system not absorbing energy.  Also I added a plotting function and did a pendulum.  So using the rk4 function as above this will make a nifty animated pendulum:
&lt;pre&gt;
def accel(x, v, dt):
    &quot;&quot;&quot;Determines acceleration from current position,
    velocity, and timestep. This particular acceleration
    function models a pendulum.  And plots!&quot;&quot;&quot;
    g=-9.8
    l=100.0
    return (g/l)*x

l=100.0 #pendulum_length
p=10 #postion for x axis
c=(np.pi/180.0) #conversion to radians
t = 0
dt = 1.0/10 # Timestep of 1/40 second
state =20*c, 0*c # start Position, velocity

do_plot=1 #switch off of zero to turn off plotting
if (do_plot==1):
  ion()
  line, =plot([p,p],[l,0],&#039;o-&#039;)

# Run for 100 seconds
while t &lt; 100:
    t += dt
    state = rk4(state[0], state[1], accel, dt)
    if (do_plot==1):
      line.set_xdata([p,p+np.sin(state[0])])
      line.set_ydata([l,l*(1.0-np.cos(state[0]))])
      draw()
&lt;/pre&gt;</description>
		<content:encoded><![CDATA[<p>Fantastic code!  Just one thing your damping should be positive in order to be consistent with your other signs; currently it is adding energy to the system not absorbing energy.  Also I added a plotting function and did a pendulum.  So using the rk4 function as above this will make a nifty animated pendulum:</p>
<pre>
def accel(x, v, dt):
    """Determines acceleration from current position,
    velocity, and timestep. This particular acceleration
    function models a pendulum.  And plots!"""
    g=-9.8
    l=100.0
    return (g/l)*x

l=100.0 #pendulum_length
p=10 #postion for x axis
c=(np.pi/180.0) #conversion to radians
t = 0
dt = 1.0/10 # Timestep of 1/40 second
state =20*c, 0*c # start Position, velocity

do_plot=1 #switch off of zero to turn off plotting
if (do_plot==1):
  ion()
  line, =plot([p,p],[l,0],'o-')

# Run for 100 seconds
while t &lt; 100:
    t += dt
    state = rk4(state[0], state[1], accel, dt)
    if (do_plot==1):
      line.set_xdata([p,p+np.sin(state[0])])
      line.set_ydata([l,l*(1.0-np.cos(state[0]))])
      draw()
</pre>
]]></content:encoded>
	</item>
	<item>
		<title>By: Improved RK4 Implementation &#171; Doswa</title>
		<link>http://doswa.com/blog/2009/01/02/fourth-order-runge-kutta-numerical-integration/comment-page-1/#comment-71</link>
		<dc:creator>Improved RK4 Implementation &#171; Doswa</dc:creator>
		<pubDate>Tue, 21 Apr 2009 07:15:27 +0000</pubDate>
		<guid isPermaLink="false">http://doswa.com/?p=16#comment-71</guid>
		<description>[...] you&#8217;re new to numerical integration or even RK4 integration, please read my other post first. It&#8217;s easier to understand because it&#8217;s a less generalized [...]</description>
		<content:encoded><![CDATA[<p>[...] you&#8217;re new to numerical integration or even RK4 integration, please read my other post first. It&#8217;s easier to understand because it&#8217;s a less generalized [...]</p>
]]></content:encoded>
	</item>
</channel>
</rss>
