functions.xml
11.8 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
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
<?xml version="1.0"?>
<functions xml:id="functions">
<function name="mean_(,)" args="1" kind="time" group="stat">
<prompts>
<prompt>input averaging time in secs</prompt>
</prompts>
<info_brief>average</info_brief>
<new_kernel>#sampling_classic</new_kernel>
</function>
<function name="median_(,)" args="1" kind="time" group="stat">
<prompts>
<prompt>input averaging time in secs</prompt>
</prompts>
<info_brief>median average</info_brief>
<new_kernel>#median</new_kernel>
</function>
<function name="rms_(,)" args="1" kind="time" group="stat">
<prompts>
<prompt>input averaging time in secs</prompt>
</prompts>
<info_brief>root mean square</info_brief>
<new_kernel>#rms</new_kernel>
</function>
<function name="min_(,)" args="1" kind="time" group="stat">
<prompts>
<prompt>input window time in secs</prompt>
</prompts>
<info_brief>min() function</info_brief>
<new_kernel>#min</new_kernel>
</function>
<function name="max_(,)" args="1" kind="time" group="stat">
<prompts>
<prompt>input window time in secs</prompt>
</prompts>
<info_brief>max() function</info_brief>
<new_kernel>#max</new_kernel>
</function>
<function name="var_(,)" args="1" kind="time" group="stat">
<prompts>
<prompt>input window time in secs</prompt>
</prompts>
<info_brief>variance() function</info_brief>
<new_kernel>#var</new_kernel>
</function>
<function name="skew_(,)" args="1" kind="time" group="stat">
<prompts>
<prompt>input window time in secs</prompt>
</prompts>
<info_brief>skewness() function</info_brief>
<new_kernel>#skew</new_kernel>
</function>
<function name="mean_sm_(,)" args="1" kind="sliding" group="stat">
<prompts>
<prompt>input averaging time in secs</prompt>
</prompts>
<info_brief>average</info_brief>
<new_kernel>#sliding_average</new_kernel>
</function>
<function name="rms_sm_(,)" args="1" kind="sliding" group="stat">
<prompts>
<prompt>input averaging time in secs</prompt>
</prompts>
<info_brief>root mean square</info_brief>
<new_kernel>#rms_sm</new_kernel>
</function>
<function name="min_sm_(,)" args="1" kind="sliding" group="stat">
<prompts>
<prompt>input window time in secs</prompt>
</prompts>
<info_brief>min() function</info_brief>
<new_kernel>#min_sm</new_kernel>
</function>
<function name="max_sm_(,)" args="1" kind="sliding" group="stat">
<prompts>
<prompt>input window time in secs</prompt>
</prompts>
<info_brief>max() function</info_brief>
<new_kernel>#max_sm</new_kernel>
</function>
<function name="var_sm_(,)" args="1" kind="sliding" group="stat">
<prompts>
<prompt>input window time in secs</prompt>
</prompts>
<info_brief>variance() function</info_brief>
<new_kernel>#var_sm</new_kernel>
</function>
<function name="skew_sm_(,)" args="1" kind="sliding" group="stat">
<prompts>
<prompt>input window time in secs</prompt>
</prompts>
<info_brief>skewness() function</info_brief>
<new_kernel>#skew_sm</new_kernel>
</function>
<function name="smooth_(,)" args="1" kind="sliding" group="stat">
<prompts>
<prompt>input averaging time in secs</prompt>
</prompts>
<info_brief>smooths with a boxcar average</info_brief>
<new_kernel>#boxcar</new_kernel>
</function>
<!-- <function name="shiftN_(,)" args="1" kind="amda">
<prompt>input number of points N to delay by</prompt>
<info_brief>Delays array by N points back (N < 0) and forth (N > 0)</info_brief>
</function>-->
<function name="shiftT_(,)" args="1" kind="amda" group="space">
<prompts>
<prompt>input time interval T in secs to delay by</prompt>
</prompts>
<info_brief>Shifts parameter by T secs back (T < 0) and forth (T > 0))</info_brief>
<new_kernel>#timeShift</new_kernel>
</function>
<function name="filter()" args="3" kind="filter" group="space">
<default_args>,6,100</default_args>
<info_brief>Remove Spikes: filter(param, factor,nPoints)</info_brief>
<new_kernel>#filter</new_kernel>
</function>
<function name="vAlfven(,)" args="2" kind="physics" group="space">
<prompt_param>density[cm^⁻3], b_magnitude[nT]</prompt_param>
<info_brief>Alfven velocity Valfven(density[cm^⁻3], b_magnitude[nT])</info_brief>
<new_kernel>alfvenVelocity</new_kernel>
</function>
<function name="perreault78(,,)" args="3" kind="model" group="space">
<info_brief>Perreault and Akasofu 1978 model u = perreault78(E_mag, B_mag, theta_p)</info_brief>
<new_kernel>perreault78</new_kernel>
</function>
<function name="newell2007(,)" args="3" kind="model" group="space">
<info_brief>NEWELL et al 2007 solar wind-magnetosphere coupling function d_phi/d_t = newell2007(mu, B_mag, theta) </info_brief>
<new_kernel>newell2007</new_kernel>
</function>
<function name="newell2011()" args="1" kind="model" group="space">
<info_brief>Newell et al 2011 auroral power</info_brief>
<new_kernel>newell2011</new_kernel>
</function>
<function name="fairfield70(,tilt_angle_60)" args="2" kind="model" group="space">
<prompt_param>xyz_sm (Re), dipole tilt angle (deg)</prompt_param>
<default_args>,tilt_angle_60</default_args>
<info_brief>Distance (Re) from s/c location to Fairfield1970 model neutral sheet position.<br/>
dZ = fairfield70(xyz_sm, tilt_angle),<br/> xyz_sm is the s/c SM coordinates (Re) and tilt angle is in degrees.<br/> Valid for y_sm < 15 Re.</info_brief>
<new_kernel>fairfield70</new_kernel>
</function>
<function name="fairfield80(,tilt_angle_60)" args="2" kind="model" group="space">
<prompt_param>xyz_sm (Re), dipole tilt angle (deg)</prompt_param>
<default_args>,tilt_angle_60</default_args>
<info_brief>Distance (Re) from s/c location to Fairfield1980 model neutral sheet position.<br/>
dZ = fairfield80(xyz_sm, tilt_angle),<br/> xyz_sm is the s/c SM coordinates (Re) and tilt angle is in degrees.<br/></info_brief>
<new_kernel>fairfield80</new_kernel>
</function>
<function name="lopez90(omni_kp,,,tilt_angle_60)" args="4" kind="model" group="space">
<prompt_param>Kp, MLT (deg), R (Re), dipole tilt angle (deg)</prompt_param>
<default_args>omni_kp,,,tilt_angle_60</default_args>
<info_brief>
Magnetic latitude of the neutral sheet (Lopez1990 model) <br/>
MLAT = lopez90(Kp, MLT, R, tilt_angle) <br/>
Kp is the 3-hour magnetic index, MLT the magnetic local time in degrees (MLT = 0° at midnight)
R is the radial distance in RE and dipole tilt angle in degrees
</info_brief>
<new_kernel>lopez90</new_kernel>
</function>
<function name="framesTransformation(,,,)" args="1" kind="frames" group="space">
<prompts>
<prompt type="list" subtype="frames" default="GSM">Input frame:</prompt>
<prompt type="list" subtype="frames" default="GSE">Output frame:</prompt>
<prompt type="boolean">The vector represent a position in space?</prompt>
</prompts>
<info_brief>Frames transformation</info_brief>
<new_kernel>#framesTransformation</new_kernel>
</function>
<function name="GSE2GSM()" kind="frames" group="space">
<info_brief>GSE to GSM frame transformation</info_brief>
<new_kernel>#GSE2GSM</new_kernel>
</function>
<function name="GSM2GSE()" kind="frames" group="space">
<info_brief>GSM to GSE frame transformation</info_brief>
<new_kernel>#GSM2GSE</new_kernel>
</function>
<function name="angle(,)" args="2" kind="vectors" group="math">
<info_brief>Angle between two vectors</info_brief>
<new_kernel>angle</new_kernel>
</function>
<function name="cross(,)" args="2" kind="vectors" group="math">
<info_brief>Cross product</info_brief>
<new_kernel>cross</new_kernel>
</function>
<function name="dot(,)" args="2" kind="vectors" group="math">
<info_brief>Dot product</info_brief>
<new_kernel>dot</new_kernel>
</function>
<function name="vector(,,)" args="3" kind="vectors" group="math">
<info_brief>Build vector from components</info_brief>
<new_kernel>vector_</new_kernel>
</function>
<function name="module()" kind="vectors" group="math">
<info_brief>Magnitude</info_brief>
<new_kernel>magnitude</new_kernel>
</function>
<function name="abs()" kind="math" group="math">
<info_brief>Absolute value</info_brief>
<new_kernel>abs</new_kernel>
</function>
<function name="acos()" kind="math" group="math">
<info_brief>Arc-cosine</info_brief>
<new_kernel>acos</new_kernel>
</function>
<function name="alog()" kind="math" group="math">
<info_brief>Natural logarithm</info_brief>
<new_kernel>log</new_kernel>
</function>
<function name="alog10()" kind="math" group="math">
<info_brief>Logarithm to the base 10</info_brief>
<new_kernel>log10</new_kernel>
</function>
<function name="asin()" kind="math" group="math">
<info_brief>Arc-sine</info_brief>
<new_kernel>asin</new_kernel>
</function>
<function name="atan()" kind="math" group="math">
<info_brief>Arc-tangent</info_brief>
<new_kernel>atan</new_kernel>
</function>
<function name="atan2(,)" args="2" kind="math" group="math">
<info_brief>Arc-tangent</info_brief>
<new_kernel>atan2</new_kernel>
</function>
<function name="ceil()" kind="math" group="math">
<info_brief>Closest integer greater than or equal to its argument</info_brief>
<new_kernel>Ceil</new_kernel>
</function>
<function name="cos()" kind="math" group="math">
<info_brief>cosine</info_brief>
<new_kernel>cos</new_kernel>
</function>
<function name="cosh()" kind="math" group="math">
<info_brief>Hyperbolic cosine</info_brief>
<new_kernel>cosh</new_kernel>
</function>
<function name="deriv_()" kind="math" group="math">
<info_brief>deriv() function with possibly unequal point spacing</info_brief>
<new_kernel>#deriv</new_kernel>
</function>
<function name="exp()" kind="math" group="math">
<info_brief>Natural exponential function</info_brief>
<new_kernel>exp</new_kernel>
</function>
<function name="fix()" kind="math" group="math">
<info_brief>Integer</info_brief>
<new_kernel>Fix</new_kernel>
</function>
<function name="floor()" kind="math" group="math">
<info_brief>Closest integer less than or equal to its argument</info_brief>
<new_kernel>Floor</new_kernel>
</function>
<function name="sign()" kind="math" group="math">
<info_brief>Sign</info_brief>
<new_kernel>Sign</new_kernel>
</function>
<function name="sin()" kind="math" group="math">
<info_brief>Sine</info_brief>
<new_kernel>sin</new_kernel>
</function>
<function name="sinh()" kind="math" group="math">
<info_brief>Hyperbolic sine</info_brief>
<new_kernel>sinh</new_kernel>
</function>
<function name="tan()" kind="math" group="math">
<info_brief>Tangent</info_brief>
<new_kernel>tan</new_kernel>
</function>
<function name="tanh()" kind="math" group="math">
<info_brief>Hyperbolic tangent</info_brief>
<new_kernel>tanh</new_kernel>
</function>
<function name="sqrt()" kind="math" group="math">
<info_brief>Square root</info_brief>
<new_kernel>sqrt</new_kernel>
</function>
</functions>