Nutze Skyfield fuer praezisere Daemmerungsberechnung
This commit is contained in:
+32
@@ -0,0 +1,32 @@
|
||||
from skyfield.curvelib import Splines, build_spline_given_ends
|
||||
|
||||
def test_spline_and_derivative():
|
||||
parameters = 10, 12, 2.0, 3.0, 5.0, 7.0
|
||||
x = 8.0, 9.0, 10.0, 11.0, 12.0
|
||||
expected_values = 3.0, 5.0, 7.0, 10.5, 17.0
|
||||
expected_slope = 2.5, 1.75, 2.5, 4.75, 8.5
|
||||
|
||||
# Does the Spline class work?
|
||||
|
||||
curve = Splines(parameters)
|
||||
assert tuple(curve(x)) == expected_values
|
||||
assert tuple(curve.derivative(x)) == expected_slope
|
||||
|
||||
# Can we rebuild the parameters from its endpoints and slopes?
|
||||
|
||||
parameters2 = build_spline_given_ends(
|
||||
10, curve(10), curve.derivative(10),
|
||||
12, curve(12), curve.derivative(12))
|
||||
|
||||
assert parameters == parameters2
|
||||
|
||||
# If we rebuild the spline around different bounds, does it still
|
||||
# produce the same curve?
|
||||
|
||||
for lower, upper in (8,10), (8,9), (21,23):
|
||||
parameters3 = build_spline_given_ends(
|
||||
lower, curve(lower), curve.derivative(lower),
|
||||
upper, curve(upper), curve.derivative(upper))
|
||||
curve3 = Splines(parameters3)
|
||||
assert tuple(curve3(x)) == expected_values
|
||||
assert tuple(curve3.derivative(x)) == expected_slope
|
||||
Reference in New Issue
Block a user