UNPKG

2.19 kBtext/coffeescriptView Raw
1test_sin = ->
2 run_test [
3
4 "sin(x)",
5 "sin(x)",
6
7 "sin(-x)",
8 "-sin(x)",
9
10 "sin(b-a)",
11 "-sin(a-b)",
12
13 # check against the floating point math library
14
15 "f(a,x)=1+sin(float(a/360*2*pi))-float(x)+sin(a/360*2*pi)-x",
16 "",
17
18 "f(0,0)", # 0
19 "1.0",
20
21 "f(90,1)", # 90
22 "1.0",
23
24 "f(180,0)", # 180
25 "1.0",
26
27 "f(270,-1)", # 270
28 "1.0",
29
30 "f(360,0)", # 360
31 "1.0",
32
33 "f(-90,-1)", # -90
34 "1.0",
35
36 "f(-180,0)", # -180
37 "1.0",
38
39 "f(-270,1)", # -270
40 "1.0",
41
42 "f(-360,0)", # -360
43 "1.0",
44
45 "f(45,sqrt(2)/2)", # 45
46 "1.0",
47
48 "f(135,sqrt(2)/2)", # 135
49 "1.0",
50
51 "f(225,-sqrt(2)/2)", # 225
52 "1.0",
53
54 "f(315,-sqrt(2)/2)", # 315
55 "1.0",
56
57 "f(-45,-sqrt(2)/2)", # -45
58 "1.0",
59
60 "f(-135,-sqrt(2)/2)", # -135
61 "1.0",
62
63 "f(-225,sqrt(2)/2)", # -225
64 "1.0",
65
66 "f(-315,sqrt(2)/2)", # -315
67 "1.0",
68
69 "f(30,1/2)", # 30
70 "1.0",
71
72 "f(150,1/2)", # 150
73 "1.0",
74
75 "f(210,-1/2)", # 210
76 "1.0",
77
78 "f(330,-1/2)", # 330
79 "1.0",
80
81 "f(-30,-1/2)", # -30
82 "1.0",
83
84 "f(-150,-1/2)", # -150
85 "1.0",
86
87 "f(-210,1/2)", # -210
88 "1.0",
89
90 "f(-330,1/2)", # -330
91 "1.0",
92
93 "f(60,sqrt(3)/2)", # 60
94 "1.0",
95
96 "f(120,sqrt(3)/2)", # 120
97 "1.0",
98
99 "f(240,-sqrt(3)/2)", # 240
100 "1.0",
101
102 "f(300,-sqrt(3)/2)", # 300
103 "1.0",
104
105 "f(-60,-sqrt(3)/2)", # -60
106 "1.0",
107
108 "f(-120,-sqrt(3)/2)", # -120
109 "1.0",
110
111 "f(-240,sqrt(3)/2)", # -240
112 "1.0",
113
114 "f(-300,sqrt(3)/2)", # -300
115 "1.0",
116
117 "f=quote(f)",
118 "",
119
120 "sin(arcsin(x))",
121 "x",
122
123 # check the default case
124
125 "sin(1/12*pi)",
126 "sin(1/12*pi)",
127
128 "sin(arctan(4/3))",
129 "4/5",
130
131 "sin(-arctan(4/3))",
132 "-4/5",
133
134 # phase
135
136 "sin(x-8/2*pi)",
137 "sin(x)",
138
139 "sin(x-7/2*pi)",
140 "cos(x)",
141
142 "sin(x-6/2*pi)",
143 "-sin(x)",
144
145 "sin(x-5/2*pi)",
146 "-cos(x)",
147
148 "sin(x-4/2*pi)",
149 "sin(x)",
150
151 "sin(x-3/2*pi)",
152 "cos(x)",
153
154 "sin(x-2/2*pi)",
155 "-sin(x)",
156
157 "sin(x-1/2*pi)",
158 "-cos(x)",
159
160 "sin(x+0/2*pi)",
161 "sin(x)",
162
163 "sin(x+1/2*pi)",
164 "cos(x)",
165
166 "sin(x+2/2*pi)",
167 "-sin(x)",
168
169 "sin(x+3/2*pi)",
170 "-cos(x)",
171
172 "sin(x+4/2*pi)",
173 "sin(x)",
174
175 "sin(x+5/2*pi)",
176 "cos(x)",
177
178 "sin(x+6/2*pi)",
179 "-sin(x)",
180
181 "sin(x+7/2*pi)",
182 "-cos(x)",
183
184 "sin(x+8/2*pi)",
185 "sin(x)",
186 ]