-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathmain.py
More file actions
51 lines (33 loc) · 1.35 KB
/
Copy pathmain.py
File metadata and controls
51 lines (33 loc) · 1.35 KB
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
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
import diffeqssolver
import graph
while(True):
print("Please provide initial value of the program:")
print("x0:")
x0 = input()
print("y0:")
y0 = input()
print("xf:")
xf = input()
print("n:")
n = input()
diffeqssolver.setInitData(float(x0), float(y0), float(xf), int(n))
x, y = diffeqssolver.getEulersMethodSolution()
graph.addFunctionPlot(x, y, "Euler's method Solution")
x, y = diffeqssolver.getImprovedEulersMethod()
graph.addFunctionPlot(x, y, "Improved Euler's method Solution")
x, y = diffeqssolver.getRungeKuttaMethodSolution()
graph.addFunctionPlot(x, y, "Runge Kutta method Solution")
x, y = diffeqssolver.getExactSolution()
graph.addFunctionPlot(x, y, "Exact Solution")
x, y = diffeqssolver.getEulersMethodError()
graph.addFunctionErrorPlot(x, y, "Error of Euler's method")
x, y = diffeqssolver.getImprovedEulersMethodError()
graph.addFunctionErrorPlot(x, y, "Error of Improved Euler's method")
x, y = diffeqssolver.getRungeKuttaMethodError()
graph.addFunctionErrorPlot(x, y, "Error of Runge-Kutta method")
graph.showPlot()
print("Please enter Exit to stop execution of the program. Or press enter to continue.")
str_input = input()
if str(str_input) == "Exit":
break
graph.clearPlot()