Numerical Methods in Solving Initial Value Problems of ODEs
Numerical Methods in Solving Initial Value Problems of ODEs
Where:
𝑑𝑦
𝑥0 𝑎𝑛𝑑 𝑦0 = 𝑣𝑎𝑙𝑢𝑒𝑠 𝑡ℎ𝑎𝑡 𝑤𝑜𝑢𝑙𝑑 𝑚𝑎𝑘𝑒 =0
𝑑𝑥
𝑥→ = 𝑥 𝑣𝑎𝑙𝑢𝑒 𝑡𝑜 𝑡ℎ𝑒 𝑟𝑖𝑔ℎ𝑡 𝑜𝑓𝑥0 𝑎𝑡 𝑐𝑜𝑛𝑠𝑡𝑎𝑛𝑡 𝑦
𝑑𝑦
= 0 would give a horizontal lineal
𝑥← = 𝑥 𝑣𝑎𝑙𝑢𝑒 𝑡𝑜 𝑡ℎ𝑒 𝑙𝑒𝑓𝑡 𝑜𝑓𝑥0 𝑎𝑡 𝑐𝑜𝑛𝑠𝑡𝑎𝑛𝑡 𝑦 𝑑𝑥
element. From the given D.E., it can be seen
𝑦↑ = 𝑦 𝑣𝑎𝑙𝑢𝑒 𝑎𝑏𝑜𝑣𝑒 𝑦0 𝑎𝑡 𝑐𝑜𝑛𝑠𝑡𝑎𝑛𝑡 𝑥 that as long as x and y values are the same, it
𝑑𝑦
𝑦↓ = 𝑦 𝑣𝑎𝑙𝑢𝑒 𝑏𝑒𝑙𝑜𝑤 𝑦0 𝑎𝑡 𝑐𝑜𝑛𝑠𝑡𝑎𝑛𝑡 𝑥 would give 𝑑𝑥
= 0. This is bracketed in the
direction field.
a. (1st Quadrant) 𝑥0 = 𝑦0 b. (2nd Quadrant) −𝑥0 = 𝑦0
𝑑𝑦 𝑑𝑦
• 𝑥→ ; 𝑑𝑥
=+ • 𝑥→ ; 𝑑𝑥
=−
𝑑𝑦 𝑑𝑦
• 𝑥← ; 𝑑𝑥
=− • 𝑥← ; 𝑑𝑥
=+
𝑑𝑦 𝑑𝑦
• 𝑦↑ ; 𝑑𝑥
=− • 𝑦↑ ; 𝑑𝑥
=−
𝑑𝑦 𝑑𝑦
• 𝑦↓ ; 𝑑𝑥
=+ • 𝑦↓ ; 𝑑𝑥
=+
c. (3rd Quadrant) −𝑥0 = −𝑦0 d. (4th Quadrant) −𝑥0 = −𝑦0
𝑑𝑦 𝑑𝑦
• 𝑥→ ; 𝑑𝑥
=− • 𝑥→ ; 𝑑𝑥
=+
𝑑𝑦 𝑑𝑦
• 𝑥← ; 𝑑𝑥
=+ • 𝑥← ; 𝑑𝑥
=−
𝑑𝑦 𝑑𝑦
• 𝑦↑ ; 𝑑𝑥
=+ • 𝑦↑ ; 𝑑𝑥
=+
𝑑𝑦 𝑑𝑦
• 𝑦↓ ; 𝑑𝑥
=− • 𝑦↓ ; 𝑑𝑥
=−
Generating the whole Direction field could also be done in a more tedious manner, by solving the
𝑑𝑦
value of 𝑑𝑥
for all possible values of x and y in the rectangular grid and determine if the value is positive
or negative to determine the direction of the lineal element at that point. The importance of this direction
field is that it gives us an idea on what the solution curve for the given D.E. looks like. This is especially
helpful if the given D.E. cannot be solved using the presented Analytical methods (for 1st order D.E., these
methods include variable separable, exact D.E., and homogeneous equations). That is, the direction field
is the foundation of the Numerical methods in solving Differential equations [1].
[1]
The behavior of a solution curve near a certain point (initial conditions) is best observed if the
differential equation is autonomous. An Autonomous Ordinary Differential Equation, a third type of
ordinary D.E. (linear and non-linear being the other two types), is when the independent variable does
not appear explicitly. That is, it only depends on the dependent variable. This kind of Ordinary differential
equations may appear in Physics as equations where the variable of interest (dependent variable) does
not change in time (independent variable). Let us evaluate the behavior of the following autonomous 1 st
order differential equation [1].
𝒅𝒚
= 𝒚𝒍𝒏(𝒚 + 𝟐) → 0 = 𝑦𝑙𝑛(𝑦 + 2) → 𝒚 = 𝟎; ln(𝑦 + 2) = 0 → 𝒚 = −𝟏
𝒅𝒙
𝑑𝑦
The Critical Point/s are y values that will make 𝑑𝑥
= 0. For the given differential equation, the
critical points are 𝒚 = 𝟎; −𝟏. The critical points, as in differential calculus, are horizontal asymptotes that
tell what the solution curve behaves like if it approaches that critical point or a non-finite value (that is,
infinity). For the given D.E., we have the following behavior. Note that the differential equation only exists
at y > -2 [1].
The solution curves would only be affected by the y value of the initial condition because the
differential equation only depends on the y variable. The Direction field of the given differential equation
is shown below. A generalization of solution curve behavior base on the observation on the sample initial
conditions could be made as follows [1]:
The critical point provides the Equilibrium solution 𝑦(𝑥) = 𝑐 and therefore also called Equilibrium
point. Base on the critical points, the following conclusions can be drawn [1]:
• A solution curve stays in its subregion and cannot cross the Equilibrium solution for any values of
x. So, for initial conditions whose points have y values between 0 and ∞ for any values of x, then
its corresponding solution curves only stay in that subregion.
𝑑𝑦
• The sign of 𝑑𝑥 cannot change in a subregion.
𝑑𝑦
• The only possible signs of 𝑑𝑥 in a subregion are positive and negative. Thus, a curve can only either
behave as increasing or decreasing, making it monotonic.
• If the solution curve 𝑦(𝑥) is bounded above by a critical point or bounded below by a critical point,
it would approach one of the equilibrium solutions either as 𝑥 → −𝑋 or 𝑥 → +𝑋. If it is
sandwiched between two critical points, then its solution curve would approach both the
equilibrium solutions 𝑦(𝑥) = 𝑐1 and 𝑦(𝑥) = 𝑐2 , one as 𝑥 → −𝑋 and the other, 𝑥 → +𝑋.
The green line segments are the lineal elements. It can be seen that if the solution curve behavior
in a subregion is increasing, the lineal elements point upward, while they point downward if the
behavior is decreasing. A critical point is said to be Asymptotically Stable or Attractor if the subregions
above and below it has lineal elements pointing towards it (upper points downward, lower points
upward). Meanwhile, a critical point is said to be Asymptotically Unstable or Repeller if the
subregions above and below it has lineal elements pointing away from it (upper points upward, lower
points downward). An Asymptotically Semi-stable is achieved when both regions either point upward
or downward. In the diagrams, it can be seen that the critical point 0 is a Repeller while the critical
point -1 is an Attractor [1].
Euler’s Method
As was discussed earlier, if a 1st order ordinary differential equation cannot be solved using any
of the presented analytical methods, numerical methods could be employed to approximate the solution
curve. The first numerical method is the Euler’s method. We have seen that a set of lineal elements
(Direction field), which are line segments that are tangent to points along a solution curve, can describe
the behavior and visually depict the appearance of the solution curve. The Euler’s method utilizes this
realization. It approximates the y values for a given x values of a solution curve for a 1 st order ordinary
differential equation with the y values of their lineal elements [1].
𝑑𝑦
Let 𝑓(𝑥, 𝑦) =be the 1st Order D.E. and 𝑦(𝑥0 ) = 𝑦0 be the initial conditions. Then, 𝑓(𝑥0 , 𝑦0 ) is
𝑑𝑥
the corresponding slope value of the lineal element tangent to the point (𝑥0 , 𝑦0 ). The unknown solution
curve 𝑦(𝑥) at 𝑥 = 𝑥0 can be linearized by [1]:
𝑑𝑦
𝑦 ≈ 𝐿 (𝑥) = 𝑦0 + 𝑑𝑦 = 𝑦0 + 𝑑𝑥 → 𝒚(𝒙) ≈ 𝑳(𝒙) = 𝒚𝟎 + 𝒉𝒇(𝒙𝟎 , 𝒚𝟎 )
𝑑𝑥
.
.
.
𝒚𝒏+𝟏 ≈ 𝑳(𝒙𝒏+𝟏 ) = 𝒚𝒏 + 𝒉𝒇(𝒙𝒏 , 𝒚𝒏 )
𝑑𝑦 𝑦
Sample # 1: 𝑑𝑥 = 𝑥𝑦 2 − 𝑥 ; 𝑦(1) = 1
The following 1st order differential equation cannot be solved by any of the analytical methods
presented. Thus, we can only use numerical methods to approximate the solution curve given the initial
condition. The Euler’s method is done as follows.
𝑦𝑛
𝑦𝑛+1 ≈ 𝐿(𝑥𝑛+1 ) = 𝑦𝑛 + ℎ𝑓(𝑥𝑛 , 𝑦𝑛 ) → 𝑦(𝑥𝑛+1 ) ≈ 𝐿(𝑥𝑛+1 ) = 𝑦𝑛 + ℎ (𝑥𝑛 𝑦𝑛 2 − )
𝑥𝑛
a.) h=0.10 and up to n=10
Sample calculations:
𝑦0 1
𝑛 = 0: 𝑦1 ≈ 𝐿(𝑥1 ) = 𝑦0 + ℎ (𝑥0 𝑦0 2 − ) = 1 + 0.10 ((1 ∙ 12 ) − ) = 𝟏. 𝟎𝟎𝟎𝟎
𝑥0 1
𝑦1 1.0000
𝑛 = 1: 𝑦2 ≈ 𝐿(𝑥2 ) = 𝑦1 + ℎ (𝑥1 𝑦1 2 − ) = 1.0000 + 0.10 ((1.1 ∙ 1.00002 ) − ) =1.0191
𝑥1 1.1
𝑦2 1.0191
𝑛 = 2: 𝑦3 ≈ 𝐿(𝑥3 ) = 𝑦2 + ℎ (𝑥2 𝑦2 2 − ) = 1.0191 + 0.10 ((1.2 ∙ 1.01912 ) − ) =1.0588
𝑥2 1.2
Sample calculations:
𝑦0 1
𝑛 = 0: 𝑦1 ≈ 𝐿(𝑥1 ) = 𝑦0 + ℎ (𝑥0 𝑦0 2 − ) = 1 + 0.05 ((1 ∙ 12 ) − ) = 𝟏. 𝟎𝟎𝟎𝟎
𝑥0 1
𝑦 1.0000
𝑛 = 1: 𝑦2 ≈ 𝐿(𝑥2 ) = 𝑦1 + ℎ (𝑥1 𝑦1 2 − 𝑥1 ) = 1.0000 + 0.05 ((1.05 ∙ 1.00002 ) − 1.05
) =1.0049
1
𝑦 1.0049
𝑛 = 2: 𝑦3 ≈ 𝐿(𝑥3 ) = 𝑦2 + ℎ (𝑥2 𝑦2 2 − 𝑥2 ) = 1.0049 + 0.05 ((1.1 ∙ 1.00492 ) − 1.1
) =1.0147
2
The approximation would improve if the value of h gets smaller and smaller. Another factor that
can affect the quality of approximation is the number of decimal places used. The more the decimal places
retained, it could be generalized that the better the approximation would be [1].
Improved Euler’s Method
One way to improve the approximations is to use an average slope of 𝑦𝑛 and 𝑦𝑛+1 . It normally
proceeds with using the Euler’s formula to compute for the initial approximation or estimate of
the y value, to be now called 𝑦 ∗ 𝑛+1 . Then the improved estimate would be calculated based on
the average slope between 𝑦𝑛 and 𝑦 ∗ 𝑛+1 [1].
[1]
[4]
𝑑𝑦
Sample # 2: 𝑑𝑥 = 2𝑥 − 3𝑦 + 1 ; 𝑦(1) = 5
if ℎ = 0.05 𝑎𝑛𝑑 𝑢𝑝 𝑡𝑜 𝑛 = 20 𝑎𝑛𝑑 𝑠ℎ𝑜𝑤 𝑡ℎ𝑒 𝑟𝑒𝑙𝑎𝑡𝑖𝑣𝑒 𝑒𝑟𝑟𝑜𝑟 𝑏𝑒𝑡𝑤𝑒𝑒𝑛 𝑎𝑐𝑡𝑢𝑎𝑙 𝑎𝑛𝑑 𝑒𝑠𝑡𝑖𝑚𝑎𝑡𝑒 𝑣𝑎𝑙𝑢𝑒𝑠
Sample Calculations:
𝑛 = 0:
n=1:
The given differential equation can be solved using analytical methods (method Linear 1st order). The
𝑑𝑦
solution curve for the D.E. 𝑑𝑥 = 2𝑥 − 3𝑦 + 1 at the given initial condition of 𝑦(1) = 1 is:
1 2 38
𝑦= + 𝑥 + 𝑒 3(1−𝑥)
9 3 9
With the given actual solution curve, the actual y values can be computed and compared with the
estimate values approximated by the Improved Euler’s method. The following tabulation was done using
Excel:
Comparison between Improved Euler's Method and the Actual Solution Curve
x Estimated y values Actual y values Absolute error % Relative error
1 5.0000 5.0000 0.0000 0.0000
1.05 4.4475 4.4452 0.0023 0.0515
1.1 3.9763 3.9723 0.0039 0.0992
1.15 3.5751 3.5700 0.0051 0.1426
1.2 3.2342 3.2283 0.0058 0.1810
1.25 2.9452 2.9389 0.0063 0.2140
1.3 2.7009 2.6944 0.0065 0.2411
1.35 2.4952 2.4886 0.0065 0.2622
1.4 2.3226 2.3162 0.0064 0.2772
1.45 2.1786 2.1723 0.0062 0.2863
1.5 2.0592 2.0532 0.0059 0.2898
1.55 1.9610 1.9553 0.0056 0.2882
1.6 1.8810 1.8757 0.0053 0.2822
1.65 1.8168 1.8118 0.0049 0.2725
1.7 1.7661 1.7615 0.0046 0.2598
1.75 1.7270 1.7228 0.0042 0.2451
1.8 1.6980 1.6941 0.0039 0.2289
1.85 1.6777 1.6741 0.0035 0.2119
1.9 1.6648 1.6615 0.0032 0.1946
1.95 1.6583 1.6553 0.0029 0.1775
2 1.6573 1.6547 0.0027 0.1610
Plot of the Estimated y values using improved Euler's method
superimposed with the actual solution curve
6.0000
y values
4.0000
2.0000
0.0000
1
1.05
1.1
1.15
1.2
1.25
1.3
1.35
1.4
1.45
1.5
1.55
1.6
1.65
1.7
1.75
1.8
1.85
1.9
1.95
2
x values
As a comparison, if the Euler’s method is used instead of the Improved Euler’s method, it can be
observed that the % relative errors are greater relative to the actual y values of the solution curve. This
signifies that the Improved Euler’s method is a better approximation than the Euler’s method. The
following tabulations were done using Excel:
𝑑𝑦
Sample #3: 𝑑𝑥 = 𝑥 − 2𝑦 ; 𝑦(0) = 1 𝑖𝑓 ℎ = 0.10
a. Find y(2) using Euler’s and Improved Euler’s method (Hint: (2-0)/0.10 = 20; thus n=20)
b. The analytical solution is given as follows. Report the % relative errors for part a.
1 1 5
𝑦 = 𝑥 − + 𝑒 −2𝑥
2 4 4
Using Euler’s method:
Using Improved Euler’s method
Runge-Kutta Methods
It achieves the accuracy of a Taylor series method without the need of calculating higher-order
derivatives. It has the following general formula, where 𝜙(𝑥𝑖 , 𝑦𝑖 , ℎ ) is called the Increment function, 𝑝 and
𝑞 are constants, the 𝑘′𝑠 are recurrence relationships, and 𝑛 is the order. Euler’s method is actually a 1st-
order Runge-Kutta method. The 𝑘′𝑠 are slopes of the points, and so we are actually taking a weighted
average of the slopes, with the constants 𝑎𝑖 as the weighing factors [4].
𝑦𝑖+1 = 𝑦𝑖 + 𝜙(𝑥𝑖 , 𝑦𝑖 , ℎ )ℎ
𝜙 = 𝑎1 𝑘1 + 𝑎2 𝑘2 + ⋯ + 𝑎𝑛 𝑘𝑛
𝑘1 = 𝑓(𝑥𝑖 , 𝑦𝑖 )
𝑘2 = 𝑓(𝑥𝑖 + 𝑝1 ℎ, 𝑦𝑖 + 𝑞11 𝑘1 ℎ)
𝑘3 = 𝑓(𝑥𝑖 + 𝑝2 ℎ, 𝑦𝑖 + 𝑞21 𝑘1 ℎ + 𝑞22 𝑘2 ℎ)
For n=2 Runge-Kutta methods, we have the following general set of relationships:
𝑎1 + 𝑎2 = 1 → 𝑎1 = 1 − 𝑎2
1 1
𝑎2 𝑝1 = → 𝑝1 =
2 2𝑎2
1 1
𝑎2 𝑞11 = → 𝑞11 =
2 2𝑎2
Heun Method with a single corrector
1 1 1 1 1
𝑎2 = : 𝑎1 = 1 − = ; 𝑝1 = = 1; 𝑞11 = =1
2 2 2 1 1
2 (2) 2 (2)
𝟏 𝟏
𝒚𝒊+𝟏 = 𝒚𝒊 + ( 𝒌𝟏 + 𝒌𝟐 ) 𝒉
𝟐 𝟐
where:
𝒌𝟏 = 𝒇(𝒙𝒊 , 𝒚𝒊 )
𝒌𝟐 = 𝒇(𝒙𝒊 + 𝒉, 𝒚𝒊 + 𝒌𝟏 𝒉)
Midpoint Method
1 1 1 1
𝑎2 = 1: 𝑎1 = 1 − 1 = 0; 𝑝1 = = ; 𝑞11 = =
2(1) 2 2(1) 2
𝒚𝒊+𝟏 = 𝒚𝒊 + (𝒌𝟐 )𝒉
where:
𝒌𝟏 = 𝒇(𝒙𝒊 , 𝒚𝒊 )
𝟏 𝟏
𝒌𝟐 = 𝒇(𝒙𝒊 + 𝒉, 𝒚𝒊 + 𝒌𝟏 𝒉)
𝟐 𝟐
Ralston’s Method
2 2 1 1 3 1 3
𝑎2 = : 𝑎1 = 1 − = ; 𝑝1 = = ; 𝑞11 = =
3 3 3 2 2
2( ) 4 2( ) 4
3 3
1 2
𝒚𝒊+𝟏 = 𝒚𝒊 + ( 𝒌𝟏 + 𝒌𝟐 ) 𝒉
3 3
where:
𝒌𝟏 = 𝒇(𝒙𝒊 , 𝒚𝒊 )
3 3
𝒌𝟐 = 𝒇(𝒙𝒊 + 𝒉, 𝒚𝒊 + 𝒌𝟏 𝒉)
4 4
The same derivation for n=3 can be made, resulting into six equations with eight unknowns. The
local truncation error is 𝑂(ℎ 4 ). One common version is given below. It gives exact results for solutions
that are cubic, or for polynomials in which the O.D.E is cubic (and only x is the variable) such that the
solution is quadratic [4].
1
𝒚𝒊+𝟏 = 𝒚𝒊 + (𝒌𝟏 + 4𝒌𝟐 + 𝒌𝟑 )𝒉
6
where:
𝒌𝟏 = 𝒇(𝒙𝒊 , 𝒚𝒊 )
1 1
𝒌𝟐 = 𝒇 (𝒙𝒊 + 𝒉, 𝒚𝒊 + 𝒌𝟏 𝒉)
2 2
𝒌𝟑 = 𝒇(𝒙𝒊 + 𝒉, 𝒚𝒊 − 𝒌𝟏 𝒉 + 𝟐𝒌𝟐 𝒉)
The most preferred Runge-Kutta method is the fourth order. The most commonly used among
the variations is the Classical 4th order Runge-Kutta method or RK4 method [4].
1
𝒚𝒊+𝟏 = 𝒚𝒊 + (𝒌𝟏 + 2𝒌𝟐 + 2𝒌𝟑 + 𝒌𝟒 )𝒉
6
where:
𝒌𝟏 = 𝒇(𝒙𝒊 , 𝒚𝒊 )
1 1
𝒌𝟐 = 𝒇 (𝒙𝒊 + 𝒉, 𝒚𝒊 + 𝒌𝟏 𝒉)
2 2
1 1
𝒌𝟑 = 𝒇 (𝒙𝒊 + 𝒉, 𝒚𝒊 + 𝒌𝟐 𝒉)
2 2
𝒌𝟒 = 𝒇(𝒙𝒊 + 𝒉, 𝒚𝒊 + 𝒌𝟑 𝒉)
The most recommended 5th order RK method is that of Butcher’s (1964), as given below. It is
somehow similar with that of the Boole’s rule [4].
1
𝒚𝒊+𝟏 = 𝒚𝒊 + (𝟕𝒌𝟏 + 32𝒌𝟑 + 12𝒌𝟒 + 𝟑𝟐𝒌𝟓 + 𝟕𝒌𝟔 )𝒉
90
where:
𝒌𝟏 = 𝒇(𝒙𝒊 , 𝒚𝒊 )
1 1
𝒌𝟐 = 𝒇 (𝒙𝒊 + 𝒉, 𝒚𝒊 + 𝒌𝟏 𝒉)
4 4
1 1 1
𝒌𝟑 = 𝒇 (𝒙𝒊 + 𝒉, 𝒚𝒊 + 𝒌𝟏 𝒉 + 𝒌𝟐 𝒉)
4 8 8
1 1
𝒌𝟒 = 𝒇 (𝒙𝒊 + 𝒉, 𝒚𝒊 − 𝒌𝟐 𝒉 + 𝒌𝟑 𝒉)
2 2
3 3 9
𝒌𝟓 = 𝒇 (𝒙𝒊 + 𝒉, 𝒚𝒊 + 𝒌𝟏 𝒉 + 𝒌𝟒 𝒉)
4 16 16
3 2 12 12 8
𝒌𝟔 = 𝒇 (𝒙𝒊 + 𝒉, 𝒚𝒊 − 𝒌𝟏 𝒉 + 𝒌𝟐 𝒉 + 𝒌𝟑 𝒉 − 𝒌𝟒 𝒉 + 𝒌𝟓 𝒉)
7 7 7 7 7
Sample #1: Solve the given initial value problem over the interval t=0 to 1 where y(0)=1 using the midpoint
method with h=0.50.
𝑑𝑦
= 𝑦𝑡 3 − 1.5𝑦
𝑑𝑡
𝑦𝑖+1 = 𝑦𝑖 + (𝑘2 )ℎ
where:
𝑘1 = 𝑓 (𝑡𝑖 , 𝑦𝑖 )
1 1
𝑘2 = 𝑓(𝑡𝑖 + ℎ, 𝑦𝑖 + 𝑘1 ℎ)
2 2
Sample #2: Find y(1.5) of the solution curve for the given O.D.E with h=0.1 using the method listed below.
The initial condition is y(1)=1.
𝑑𝑦 𝑦
= (𝑥𝑦)2 −
𝑑𝑥 𝑥
b. Heun’s method
c. Midpoint method
d. Ralston’s method
e. 3rd order Runge Kutta method
Sample #3: A spherical tank has a circular orifice in its bottom through which the liquid flows out (Fig.
P25.20). The flow rate through the hole can be estimated with the given equation, where Qout = outflow
(m3/s), C = an empirically-derived coefficient, A = the area of the orifice (m2), g = the gravitational constant
(= 9.81 m/s2), and H = the depth of liquid in the tank. Use one of the numerical methods described in this
chapter to determine how long it will take for the water to flow out of a 3-m diameter tank with an initial
height of 2.75 m. Note that the orifice has a diameter of 3 cm and C = 0.55.
𝑑𝑉
𝑄𝑜𝑢𝑡 = = 𝐶𝐴√2𝑔𝐻
𝑑𝑡
𝑡0 = 0 𝑚 𝑎𝑛𝑑 𝐻 = 2.75 𝑚 → 𝐻 (0) = 2.75 𝑚 (𝑖𝑛𝑖𝑡𝑖𝑎𝑙 𝑐𝑜𝑛𝑑𝑖𝑡𝑖𝑜𝑛)
𝑑 2 0.03 2
𝐴 = 𝜋( ) = 𝜋( ) = 2.25 × 10−4 𝜋
2 2
-We have the following relationship between V and H of a sphere:
References:
[1] Zill, D. and Cullen, M. Differential Equations with Boundary-value Problems. 7th ed. Cengage Lea
rning, 2009.
[2] Available online at https://www.geogebra.org/m/m9TKgYVh
[3] Available online at https://guide.freecodecamp.org/mathematics/differential-equations/eulers-meth
od/
[4] Available online at https://www.geogebra.org/materials
[5] Chapra, S. C., & Canale, R. P. (2010). Numerical methods for engineers: with software and
programming applications (6th ed.). Boston: McGraw-Hill.