Responsive Navbar with Google Search
Ordinary Differential Equation-1: Euler Algorithm
Python runs in your browser. Heavy or infinite loops may freeze your browser tab. Use "Stop" if needed; for heavy jobs, run locally.
Program 1

Euler Algorithm

Euler's Method for Solving ODE

To solve the first-order ODE given by:

\(\frac{dy}{dx} = f(x, y)\)

with an initial value:

\(y(x_0) = y_0\)

Euler's method uses the following formula to approximate the value of \(y\) at each step:

\(y_{i+1} = y_i + h \cdot f(x_i, y_i)\)

Where:

  • \(h\) is the step size (how far you move along the x-axis at each step).
  • \(y_i\) is the current value of \(y\) at \(x_i\).
  • \(f(x_i, y_i)\) is the slope at the point \((x_i, y_i)\).

Steps to Implement:

  1. Write down the ODE and the initial value.
  2. Choose a step size \(h\). Smaller steps usually give better results.
  3. Start with the initial value \(y_0\).
  4. Use the formula to calculate \(y\) at each step \(x_i\).

Algorithm: Euler's Method for Solving ODE

Input:

  • Function \(f(x, y)\) representing the ODE \(\frac{dy}{dx} = f(x, y)\).
  • Initial condition \(x_0\), \(y_0\) where \(y(x_0) = y_0\).
  • Step size \(h\).
  • End value \(x_{\text{end}}\) where the solution is to be approximated.

Output:

Approximate values of \(y\) at discrete points \(x_0, x_1, x_2, \dots, x_n\) where \(x_n \leq x_{\text{end}}\).

Steps:

  1. Initialization:
    • Set \(x = x_0\).
    • Set \(y = y_0\).
    • Initialize a list \(x_values\) to store the values of \(x\).
    • Initialize a list \(y_values\) to store the values of \(y\).
    • Add the initial values \(x_0\) and \(y_0\) to \(x_values\) and \(y_values\).
  2. Iterate:
    • While \(x < x_{\text{end}}\):
      • Calculate the slope at the current point using the function \(f(x, y)\):
        \(\text{slope} = f(x, y)\)
      • Update the value of \(y\) using Euler's formula:
        \(y_{\text{new}} = y + h \cdot \text{slope}\)
      • Update the value of \(x\) to the next step:
        \(x_{\text{new}} = x + h\)
      • Append the new values \(x_{\text{new}}\) and \(y_{\text{new}}\) to \(x_values\) and \(y_values\).
      • Set \(x = x_{\text{new}}\) and \(y = y_{\text{new}}\).
  3. Termination:
    • Continue the iteration until \(x\) reaches or exceeds \(x_{\text{end}}\).
  4. Output the Results:
    • Return the lists \(x_(values)\) and \(y_(values)\), which contain the discrete points \(x\) and the corresponding approximated values \(y\).

Example:

Given the ODE:

\(\frac{dy}{dx} = x + y\)

with the initial condition:

\(y(0) = 1\)

Let’s find the value of \(y\) at \(x = 0.2\) with \(h = 0.1\).

Output 1