@@ -24,6 +24,7 @@ function sin_main(X::IntervalBox)
2424end
2525
2626# TODO : Be careful with the pi constants if using e.g. BigFloats
27+ sin_full = symmetrise (sin_main, reflect_x (half_pi))
2728sin_reverse = symmetrise (sin_main, reflect_x (half_pi))
2829
2930"""
@@ -33,7 +34,8 @@ Contractor for `sin`.
3334Takes an `IntervalBox` containing the `x` and `y` component intervals.
3435Returns an `IntervalBox` contracted down to the set ``y = \\ sin(x)``.
3536"""
36- sin! (X:: IntervalBox ) = periodise (sin_main, two_pi)(X) ∪ periodise (sin_reverse, two_pi)(X)
37+ sin! (X:: IntervalBox ) = # periodise(sin_main, two_pi)(X) ∪ periodise(sin_reverse, two_pi)(X)
38+ periodise (sin_full, two_pi)(X)
3739
3840# Reverse function for sin; does not alter y
3941"""
8587# TODO : Be careful with the pi constants if using e.g. BigFloats
8688cos_reverse = symmetrise (cos_main, reflect_x (0.0 ))
8789
90+ cos_full = symmetrise (cos_main, reflect_x (0.0 ))
91+
8892"""
8993 cos!(X::IntervalBox)
9094
9195Contractor for `cos`.
9296Takes an `IntervalBox` containing the `x` and `y` component intervals.
9397Returns an `IntervalBox` contracted down to the set ``y = \\ cos(x)``.
9498"""
95- cos! (X:: IntervalBox ) = periodise (cos_main, two_pi)(X) ∪ periodise (cos_reverse, two_pi)(X)
96-
99+ cos! (X:: IntervalBox ) = # periodise(cos_main, two_pi)(X) ∪ periodise(cos_reverse, two_pi)(X)
100+ periodise (cos_full, two_pi)(X)
97101
98102# Reverse function for cos; does not alter y
99103"""
0 commit comments