Skip to main content
Mathematics LibreTexts

2.8: Approximating solution using Method of Successive Approximation

  • Page ID
    153675
  • \( \newcommand{\vecs}[1]{\overset { \scriptstyle \rightharpoonup} {\mathbf{#1}} } \)

    \( \newcommand{\vecd}[1]{\overset{-\!-\!\rightharpoonup}{\vphantom{a}\smash {#1}}} \)

    \( \newcommand{\dsum}{\displaystyle\sum\limits} \)

    \( \newcommand{\dint}{\displaystyle\int\limits} \)

    \( \newcommand{\dlim}{\displaystyle\lim\limits} \)

    \( \newcommand{\id}{\mathrm{id}}\) \( \newcommand{\Span}{\mathrm{span}}\)

    ( \newcommand{\kernel}{\mathrm{null}\,}\) \( \newcommand{\range}{\mathrm{range}\,}\)

    \( \newcommand{\RealPart}{\mathrm{Re}}\) \( \newcommand{\ImaginaryPart}{\mathrm{Im}}\)

    \( \newcommand{\Argument}{\mathrm{Arg}}\) \( \newcommand{\norm}[1]{\| #1 \|}\)

    \( \newcommand{\inner}[2]{\langle #1, #2 \rangle}\)

    \( \newcommand{\Span}{\mathrm{span}}\)

    \( \newcommand{\id}{\mathrm{id}}\)

    \( \newcommand{\Span}{\mathrm{span}}\)

    \( \newcommand{\kernel}{\mathrm{null}\,}\)

    \( \newcommand{\range}{\mathrm{range}\,}\)

    \( \newcommand{\RealPart}{\mathrm{Re}}\)

    \( \newcommand{\ImaginaryPart}{\mathrm{Im}}\)

    \( \newcommand{\Argument}{\mathrm{Arg}}\)

    \( \newcommand{\norm}[1]{\| #1 \|}\)

    \( \newcommand{\inner}[2]{\langle #1, #2 \rangle}\)

    \( \newcommand{\Span}{\mathrm{span}}\) \( \newcommand{\AA}{\unicode[.8,0]{x212B}}\)

    \( \newcommand{\vectorA}[1]{\vec{#1}}      % arrow\)

    \( \newcommand{\vectorAt}[1]{\vec{\text{#1}}}      % arrow\)

    \( \newcommand{\vectorB}[1]{\overset { \scriptstyle \rightharpoonup} {\mathbf{#1}} } \)

    \( \newcommand{\vectorC}[1]{\textbf{#1}} \)

    \( \newcommand{\vectorD}[1]{\overrightarrow{#1}} \)

    \( \newcommand{\vectorDt}[1]{\overrightarrow{\text{#1}}} \)

    \( \newcommand{\vectE}[1]{\overset{-\!-\!\rightharpoonup}{\vphantom{a}\smash{\mathbf {#1}}}} \)

    \( \newcommand{\vecs}[1]{\overset { \scriptstyle \rightharpoonup} {\mathbf{#1}} } \)

    \(\newcommand{\longvect}{\overrightarrow}\)

    \( \newcommand{\vecd}[1]{\overset{-\!-\!\rightharpoonup}{\vphantom{a}\smash {#1}}} \)

    \(\newcommand{\avec}{\mathbf a}\) \(\newcommand{\bvec}{\mathbf b}\) \(\newcommand{\cvec}{\mathbf c}\) \(\newcommand{\dvec}{\mathbf d}\) \(\newcommand{\dtil}{\widetilde{\mathbf d}}\) \(\newcommand{\evec}{\mathbf e}\) \(\newcommand{\fvec}{\mathbf f}\) \(\newcommand{\nvec}{\mathbf n}\) \(\newcommand{\pvec}{\mathbf p}\) \(\newcommand{\qvec}{\mathbf q}\) \(\newcommand{\svec}{\mathbf s}\) \(\newcommand{\tvec}{\mathbf t}\) \(\newcommand{\uvec}{\mathbf u}\) \(\newcommand{\vvec}{\mathbf v}\) \(\newcommand{\wvec}{\mathbf w}\) \(\newcommand{\xvec}{\mathbf x}\) \(\newcommand{\yvec}{\mathbf y}\) \(\newcommand{\zvec}{\mathbf z}\) \(\newcommand{\rvec}{\mathbf r}\) \(\newcommand{\mvec}{\mathbf m}\) \(\newcommand{\zerovec}{\mathbf 0}\) \(\newcommand{\onevec}{\mathbf 1}\) \(\newcommand{\real}{\mathbb R}\) \(\newcommand{\twovec}[2]{\left[\begin{array}{r}#1 \\ #2 \end{array}\right]}\) \(\newcommand{\ctwovec}[2]{\left[\begin{array}{c}#1 \\ #2 \end{array}\right]}\) \(\newcommand{\threevec}[3]{\left[\begin{array}{r}#1 \\ #2 \\ #3 \end{array}\right]}\) \(\newcommand{\cthreevec}[3]{\left[\begin{array}{c}#1 \\ #2 \\ #3 \end{array}\right]}\) \(\newcommand{\fourvec}[4]{\left[\begin{array}{r}#1 \\ #2 \\ #3 \\ #4 \end{array}\right]}\) \(\newcommand{\cfourvec}[4]{\left[\begin{array}{c}#1 \\ #2 \\ #3 \\ #4 \end{array}\right]}\) \(\newcommand{\fivevec}[5]{\left[\begin{array}{r}#1 \\ #2 \\ #3 \\ #4 \\ #5 \\ \end{array}\right]}\) \(\newcommand{\cfivevec}[5]{\left[\begin{array}{c}#1 \\ #2 \\ #3 \\ #4 \\ #5 \\ \end{array}\right]}\) \(\newcommand{\mattwo}[4]{\left[\begin{array}{rr}#1 \amp #2 \\ #3 \amp #4 \\ \end{array}\right]}\) \(\newcommand{\laspan}[1]{\text{Span}\{#1\}}\) \(\newcommand{\bcal}{\cal B}\) \(\newcommand{\ccal}{\cal C}\) \(\newcommand{\scal}{\cal S}\) \(\newcommand{\wcal}{\cal W}\) \(\newcommand{\ecal}{\cal E}\) \(\newcommand{\coords}[2]{\left\{#1\right\}_{#2}}\) \(\newcommand{\gray}[1]{\color{gray}{#1}}\) \(\newcommand{\lgray}[1]{\color{lightgray}{#1}}\) \(\newcommand{\rank}{\operatorname{rank}}\) \(\newcommand{\row}{\text{Row}}\) \(\newcommand{\col}{\text{Col}}\) \(\renewcommand{\row}{\text{Row}}\) \(\newcommand{\nul}{\text{Nul}}\) \(\newcommand{\var}{\text{Var}}\) \(\newcommand{\corr}{\text{corr}}\) \(\newcommand{\len}[1]{\left|#1\right|}\) \(\newcommand{\bbar}{\overline{\bvec}}\) \(\newcommand{\bhat}{\widehat{\bvec}}\) \(\newcommand{\bperp}{\bvec^\perp}\) \(\newcommand{\xhat}{\widehat{\xvec}}\) \(\newcommand{\vhat}{\widehat{\vvec}}\) \(\newcommand{\uhat}{\widehat{\uvec}}\) \(\newcommand{\what}{\widehat{\wvec}}\) \(\newcommand{\Sighat}{\widehat{\Sigma}}\) \(\newcommand{\lt}{<}\) \(\newcommand{\gt}{>}\) \(\newcommand{\amp}{&}\) \(\definecolor{fillinmathshade}{gray}{0.9}\)

    It should be noted that this method is also referred to as Picard's iteration method. For the Initial value problem \(y^{\prime}=f(t, y), y\left(t_0\right)=y_0\), We can always translate to have the initial value to the origin and translate back after solving. Hence for simplicity in section \(\mathbf{2 . 8}\), we will assume initial value is at the origin: \(y^{\prime}=f(t, y), y(0)=0\). Recall the following Theorem from earlier

    Theorem \(\PageIndex{1}\)

    Suppose the functions \(z=f(t, y)\) and \(z=\frac{\partial f}{\partial y}(t, y)\) are continuous on \((a, b) \times(c, d)\) and the point \(\left(t_0, y_0\right) \in(a, b) \times(c, d)\), then there exists an interval \(\left(t_0-h, t_0+h\right) \subset(a, b)\) such that there exists a unique function \(y=\phi(t)\) defined on \(\left(t_0-h, t_0+h\right)\) that satisfies the following initial value problem:
    \[  \notag
    y^{\prime}=f(t, y), \quad y\left(t_0\right)=y_0 .
    \]

    Thm 2.8.1 is translated to origin version of Thm 2.4.2:

    The next theorem is the previous theorem but using the assumption that we can move the initial condition.

    Theorem \(\PageIndex{1}\)

    Suppose the functions \(z=f(t, y)\) and \(z=\frac{\partial f}{\partial y}(t, y)\) are continuous for all \(t\) in \((-a, a) \times(-c, c)\), then there exists an interval \((-h, h) \subset(-a, a)\) such that there exists a unique function \(y=\phi(t)\) defined on \((-h, h)\) that satisfies the following initial value problem:
    \[  \notag
    y^{\prime}=f(t, y), \quad y(0)=0 .
    \]

     This is a constructive proof and so it can be very useful.

    Proof Outline

    Given: \(y^{\prime}=f(t, y), y(0)=0 \quad\) Eqn \((*)\) \(f, \partial f / \partial y\) continuous \(\forall(t, y) \in(-a, a) \times(-b, b)\). Then \(y=\phi(t)\) is a solution to \(\left(^*\right)\) iff \(\phi^{\prime}(t)=f(t, \phi(t)), \quad \phi(0)=0\) iff \(\int_0^t \phi^{\prime}(s) d s=\int_0^t f(s, \phi(s)) d s, \quad \phi(0)=0\) iff \(\phi(t)=\phi(t)-\phi(0)=\int_0^t f(s, \phi(s)) d s\)

    Thus \(y=\phi(t)\) is a solution to \((*)\) iff \(\phi(t)=\int_0^t f(s, \phi(s)) d s\)

    Construct \(\phi\) using method of successive approximation - also called Picard's iteration method.

    Let \(\phi_0(t)=0\) (or the function of your choice)
    Let \(\phi_1(t)=\int_0^t f\left(s, \phi_0(s)\right) d s\)
    Let \(\phi_2(t)=\int_0^t f\left(s, \phi_1(s)\right) d s\)

    Let \(\phi_{n+1}(t)=\int_0^t f\left(s, \phi_n(s)\right) d s\)
    Let \(\phi(t)=\lim _{n \rightarrow \infty} \phi_n(t)\)

    To finish the proof, need to answer the following questions (see book or more advanced class):
    1.) Does \(\phi_n(t)\) exist for all \(n\) ?
    2.) Does sequence \(\phi_n\) converge?
    3.) Is \(\phi(t)=\lim _{n \rightarrow \infty} \phi_n(t)\) a solution to \((*)\).
    4.) Is the solution unique.

     

    Example \(\PageIndex{1}\)

    \(y^{\prime}=t+2 y . \quad\) That is \(f(t, y)=t+2 y\)

    Solution

    Let \(\phi_0(t)=0\)
    Let \(\phi_1(t)=\int_0^t f(s, 0) d s=\int_0^t(s+2(0)) d s\)
    \[\notag
    =\int_0^t s d s=\left.\frac{s^2}{2}\right|_0 ^t=\frac{t^2}{2}
    \]

    Let \(\phi_2(t)=\int_0^t f\left(s, \phi_1(s)\right) d s=\int_0^t f\left(s, \frac{s^2}{2}\right) d s\)
    \[ \notag
    =\int_0^t\left(s+2\left(\frac{s^2}{2}\right)\right) d s=\frac{t^2}{2}+\frac{t^3}{3}
    \]

    Let \(\phi_3(t)=\int_0^t f\left(s, \phi_2(s)\right) d s=\int_0^t f\left(s, \frac{s^2}{2}+\frac{s^3}{3}\right) d s\)
    \[ \notag
    =\int_0^t\left(s+2\left(\frac{s^2}{2}+\frac{s^3}{3}\right)\right) d s=\frac{t^2}{2}+\frac{t^3}{3}+\frac{t^4}{6}
    \]

    Let \(\begin{aligned} \phi_4(t) & =\int_0^t f\left(s, \phi_3(s)\right) d s \\ & =\int_0^t f\left(s, \frac{s^2}{2}+\frac{s^3}{3}+\frac{s^4}{6}\right) d s \\ & =\int_0^t\left(s+2\left(\frac{s^2}{2}+\frac{s^3}{3}+\frac{s^4}{6}\right)\right) d s \\ & =\frac{t^2}{2}+\frac{t^3}{3}+\frac{t^4}{6}+\frac{t^5}{15}\end{aligned}\)

    # Importing libraries 
    import matplotlib.pyplot as plt 
    import numpy as np 
    import math 
    
    # Using Numpy to create an array X 
    X = np.arange(-0.3, 0.3, 0.01) 
    
    # Assign variables to the y axis part of the curve 
    A1 = X**2/2 
    A2 = X**2/2 + X**3/3 
    A3 = X**2/2 + X**3/3 + X**4/6 
    
    # Plotting both the curves simultaneously 
    plt.plot(X, A1, color='r', label='$\\phi_1$') 
    plt.plot(X, A2, color='g', label='$\\phi_2$') 
    plt.plot(X, A3, color='b', label='$\\phi_3$') 
    
    # Naming the x-axis, y-axis and the whole graph 
    #plt.xlabel(" ") 
    # plt.ylabel(" ") 
    # plt.title(" ") 
    
    # Adding legend, which helps us recognize the curve according to it's color 
    plt.legend() 
    
    # To load the display window 
    plt.show() 
    

    Determine formula for \(\phi_n\) :
    Note patterns:
    \[ \notag
    \begin{array}{l}
    \int_0^t s d s=\frac{t^2}{2}= \\
    \int_0^t \frac{s^2}{2} d s=\frac{t^3}{3 \cdot 2}= \\
    \int_0^t \frac{s^3}{3 \cdot 2} d s=\frac{t^4}{4 \cdot 3 \cdot 2}= \\
    \int_0^t \frac{s^4}{4 \cdot 3 \cdot 2} d s=\frac{t^5}{5 \cdot 4 \cdot 3 \cdot 2}=
    \end{array}
    \]

    Thus look for factorials.
    \[ \notag
    \begin{array}{l}
    \phi_0(t)=0 \\
    \phi_1(t)=\frac{t^2}{2} \\
    \phi_2(t)=\frac{t^2}{2}+\frac{t^3}{3} \\
    \phi_3(t)=\frac{t^2}{2}+\frac{t^3}{3}+\frac{t^4}{6} \\
    \phi_4(t)=\frac{t^2}{2}+\frac{t^3}{3}+\frac{t^4}{6}+\frac{t^5}{15}=\frac{t^2}{2}+\frac{t^3}{3}+\frac{t^4}{3 \cdot 2}+\frac{t^5}{5 \cdot 3}
    \end{array}
    \]

    Thus \( \phi_n(t) =\)

    Definition:

    \[ \notag
    \sum_{k=0}^{\infty} a_k x^k=  \lim _{n \rightarrow \infty} \sum_{k=0}^n a_k x^k  =a_0+a_1 x+a_2 x^2+a_3 x^3+\ldots
    \]

    Taylor's Theorem

    \[ \notag
    f(x)  =\sum_{k=0}^{\infty} \frac{f^{(k)}(0)}{k!} x^k =f(0)+f^{\prime}(0) x+\frac{f^{\prime \prime}(0)}{2} x^2+\frac{f^{\prime \prime \prime}(0)}{6} x^3+\ldots
    \]

    Example \(\PageIndex{2}\)

    Approximate \(e^{bt}\) near 0.

    Solution

    \(e^t=\sum_{k=0}^{\infty} \frac{t^k}{k!}\) and thus \(e^{b t}=\sum_{k=0}^{\infty} \frac{b^k t^k}{k!}\) for \(t\) near 0 .
    \[ \notag
    \phi_n(t)=\sum_{k=2}^n \frac{2^{k-2}}{k!} t^k
    \]

    Thus \(\phi(t)=\lim _{n \rightarrow \infty} \phi_n(t)=\sum_{k=2}^{\infty} \frac{2^{k-2}}{k!} t^k=\frac{1}{4} \sum_{k=2}^{\infty} \frac{2^k}{k!} t^k\)
    \[ \notag
    =\frac{1}{4} \left(\sum_{k=0}^{\infty} \frac{2^{k}}{k!} t^k \quad -\quad \frac{2}{1!} t^1 \quad -\quad \frac{2}{2!} t^2 \right)
    \] 

    2.8: Approximating soln to IVP using seq of fns.
    \[ \notag
    \begin{array}{l}
    \phi_0(t)=0, \quad \phi_1(t)=\frac{t^2}{2}, \quad \phi_2(t)=\frac{t^2}{2}+\frac{t^3}{3} \\
    \phi_3(t)=\frac{t^2}{2}+\frac{t^3}{3}+\frac{t^4}{6}, \quad \phi_4(t)=\frac{t^2}{2}+\frac{t^3}{3}+\frac{t^4}{6}+\frac{t^5}{15}
    \end{array}
    \]

    2.7: Approximating soln to IVP using multiple tangent lines.
    \[ \notag
    y(t)=\left\{\begin{array}{ll}
    0 & 0 \leq t \leq 0.1 \\
    0.1 t-0.01 & 0.1 \leq t \leq 0.2 \\
    0.22 t-0.034 & 0.2 \leq t \leq 0.3 \\
    0.364 t-0.0772 & 0.3 \leq t \leq 0.4 \\
    0.5328 t-0.14672 & 0.4 \leq t \leq 0.5
    \end{array}\right.
    \]

     


    This page titled 2.8: Approximating solution using Method of Successive Approximation is shared under a not declared license and was authored, remixed, and/or curated by Isabel K. Darcy.

    • Was this article helpful?