@GustavW/

Euler

Python 2.7

No description

fork
loading
Files
  • main.py
  • plot.png
  • requirements.txt
main.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
import matplotlib as mpl
import numpy as np
from matplotlib import pyplot as plt


x0=0    #startvärde x
y0=25   #startvärde y
xf=50   #Hela x-intervallet
n=100   #antal små intervall

deltax=(xf-x0)/(n-1)    #sätt steglängd 

x=np.linspace(x0, xf, n) #skapa en array för x-värden, som börjar med x0 och slutar i xf, och med n element
y=np.zeros([n])             #skapa en array för y-värden. Börja med att sätta nollor.


y[0]=y0                     #Första y-värdet
for i in range (1, n):
    #y[i]=deltax*(-y[i-1]+np.sin(x[i-1]))+y[i-1]   #algoritm för att få fram nästa y-värde
    y[i]=y[i-1]+deltax*(0.00006*y[i-1]*(5000-y[i-1]))
    
for i in range(n):
    print(x[i], y[i])


plt.plot(x, y)
plt.xlabel("value of x")
plt.ylabel("value of y")
plt.title("approximate solution with forward Euler Method")
plt.show()