continued with task 4
This commit is contained in:
parent
26b3523b4d
commit
51163cdf1c
|
@ -2,6 +2,10 @@ import numpy as np
|
||||||
import matplotlib.pyplot as plt
|
import matplotlib.pyplot as plt
|
||||||
import math
|
import math
|
||||||
|
|
||||||
|
# Aufgabe 4a)
|
||||||
|
# Da die Operation nicht gut konditioniert ist, erhält man für den Ausdruck inder Wurzel
|
||||||
|
# bei x = 1.1, -1.4e-14 => ein kleiner Rundungsfehler
|
||||||
|
# Somit kann die Wurzel für diesen x Werte nicht berechnet werden.
|
||||||
|
|
||||||
def h1(x):
|
def h1(x):
|
||||||
try:
|
try:
|
||||||
|
@ -22,6 +26,9 @@ def h2(x):
|
||||||
def kondnumb(x):
|
def kondnumb(x):
|
||||||
return (np.abs(h1_diff(x)) * np.abs(x)) / np.abs(h1(x))
|
return (np.abs(h1_diff(x)) * np.abs(x)) / np.abs(h1(x))
|
||||||
|
|
||||||
|
def kondnumb2(x):
|
||||||
|
return (np.abs(h2_diff(x)) * np.abs(x)) / np.abs(h2(x))
|
||||||
|
|
||||||
|
|
||||||
xStep = math.pow(10, -7)
|
xStep = math.pow(10, -7)
|
||||||
xStart = 1.1
|
xStart = 1.1
|
||||||
|
@ -31,10 +38,12 @@ x = np.arange(xStart, xStop + xStep, xStep)
|
||||||
y1 = [h1(x_val) for x_val in x]
|
y1 = [h1(x_val) for x_val in x]
|
||||||
y2 = [h2(x_val) for x_val in x]
|
y2 = [h2(x_val) for x_val in x]
|
||||||
|
|
||||||
# y3 = [kondnumb(x_val) for x_val in x]
|
y3 = [kondnumb(x_val) for x_val in x]
|
||||||
|
y4 = [kondnumb2(x_val) for x_val in x]
|
||||||
|
|
||||||
# plt.yscale('log', base=10)
|
plt.yscale('log', base=10)
|
||||||
# plt.plot(x, y3, label='Konditionszahl')
|
plt.plot(x, y3, label='Konditionszahl')
|
||||||
|
plt.plot(x, y4, label='Konditionszahl nach Umformung')
|
||||||
plt.title('4.b)')
|
plt.title('4.b)')
|
||||||
plt.legend()
|
plt.legend()
|
||||||
plt.figure()
|
plt.figure()
|
||||||
|
@ -46,7 +55,4 @@ plt.xlim(1.099, 1.101)
|
||||||
plt.legend()
|
plt.legend()
|
||||||
plt.show()
|
plt.show()
|
||||||
|
|
||||||
# Aufgabe 4a)
|
|
||||||
# Da die Operation nicht gut konditioniert ist, erhält man für den Ausdruck inder Wurzel
|
|
||||||
# bei x = 1.1, -1.4e-14 => ein kleiner Rundungsfehler
|
|
||||||
# Somit kann die Wurzel für diesen x Werte nicht berechnet werden.
|
|
||||||
|
|
Loading…
Reference in New Issue