functions.xml 8.88 KB
<?xml version="1.0"?>
<functions xml:id="functions">
    <function name="mean_(,)" args="1" kind="time">
        <prompt>input averaging time in secs</prompt>
        <info_brief>average</info_brief>
        <new_kernel>#sampling_classic</new_kernel>
    </function> 
    <function name="median_(,)" args="1" kind="time">
        <prompt>input averaging time in secs</prompt>
        <info_brief>median average</info_brief>
        <new_kernel>#median</new_kernel>
    </function>
    <function name="rms_(,)" args="1" kind="time">
        <prompt>input averaging time in secs</prompt>
        <info_brief>root mean square</info_brief>
        <new_kernel>#rms</new_kernel>
    </function>  
    <function name="min_(,)" args="1" kind="time">
        <prompt>input window time in secs</prompt>
        <info_brief>min() function</info_brief>
        <new_kernel>#min</new_kernel>
    </function> 
    <function name="max_(,)" args="1" kind="time">
        <prompt>input window time in secs</prompt>
        <info_brief>max() function</info_brief>
        <new_kernel>#max</new_kernel>
    </function>
    <function name="var_(,)" args="1" kind="time">
        <prompt>input window time in secs</prompt>
        <info_brief>variance() function</info_brief>
        <new_kernel>#var</new_kernel>
    </function>
    <function name="skew_(,)" args="1" kind="time">
        <prompt>input window time in secs</prompt>
        <info_brief>skewness() function</info_brief>
        <new_kernel>#skew</new_kernel>
    </function>
    <function name="mean_sm_(,)" args="1" kind="sliding">
        <prompt>input averaging time in secs</prompt>
        <info_brief>average</info_brief>
        <new_kernel>#sliding_average</new_kernel>
    </function> 
    <function name="rms_sm_(,)" args="1" kind="sliding">
        <prompt>input averaging time in secs</prompt>
        <info_brief>root mean square</info_brief>
        <new_kernel>#rms_sm</new_kernel>
    </function>
    <function name="min_sm_(,)" args="1" kind="sliding">
        <prompt>input window time in secs</prompt>
        <info_brief>min() function</info_brief>
        <new_kernel>#min_sm</new_kernel>
    </function> 
    <function name="max_sm_(,)" args="1" kind="sliding">
        <prompt>input window time in secs</prompt>
        <info_brief>max() function</info_brief>
        <new_kernel>#max_sm</new_kernel>
    </function>
    <function name="var_sm_(,)" args="1" kind="sliding">
        <prompt>input window time in secs</prompt>
        <info_brief>variance() function</info_brief>
        <new_kernel>#var_sm</new_kernel>
    </function>
    <function name="skew_sm_(,)" args="1" kind="sliding">
        <prompt>input window time in secs</prompt>
        <info_brief>skewness() function</info_brief>
        <new_kernel>#skew_sm</new_kernel>
    </function>
    <function name="smooth_(,)" args="1" kind="sliding">
        <prompt>input averaging time in secs</prompt>
        <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 &lt; 0) and forth (N &gt; 0)</info_brief>
    </function>-->
    <function name="shiftT_(,)" args="1" kind="amda">
        <prompt>input time interval T in secs to delay by</prompt>
        <info_brief>Delays array by T secs back (T &lt; 0) and forth (T &gt; 0))</info_brief>
        <new_kernel>#timeShift</new_kernel>
    </function>
    <!-- <function name="gsegsm_()" argv="vector" kind="amda">
      <prompt/>
      <info_brief>GSE to GSM transformation</info_brief>
           <new_kernel>#framesTransformation</new_kernel>
    </function>
    <function name="gsesm_()"  argv="vector" kind="amda">
      <prompt/>
      <info_brief>GSE to SM transformation</info_brief>
    </function>-->
    <function name="cross(,)" args="2" kind="vectors">
        <info_brief>Cross product</info_brief>
        <new_kernel>cross</new_kernel>
    </function>

    <function name="angle(,)" args="2" kind="vectors">
        <info_brief>Angle between two vectors</info_brief>
        <new_kernel>angle</new_kernel>
    </function>

    <function name="magnitude_(,)" args="2" kind="vectors">
        <info_brief>magnitude of a vector</info_brief>
        <new_kernel>magnitude</new_kernel>
    </function> 

    <function name="dot(,)" args="2" kind="vectors">
        <info_brief>Dot product</info_brief>
        <new_kernel>dot</new_kernel>
    </function>
    <function name="module()" kind="vectors">
        <info_brief>Magnitude</info_brief>
        <new_kernel>magnitude</new_kernel>
    </function>
    
    <function name="Valfven(,)" args="2" kind="amda">
        <info_brief>Alfven velocity Valfven(density[cm^⁻3], mag[nT])</info_brief>
        <new_kernel>alfvenVelocity</new_kernel>
    </function>
    
   <function name="fairfield70(,)" args="3" kind="physics">
        <info_brief>FAIRFIELD 1970 model of neutral sheet position Z = fairfield70(y_sm, z_sm, x_ss)</info_brief>
        <new_kernel>fairfield70</new_kernel>
    </function>
    
      <function name="perreault78(,)" args="3" kind="physics">
        <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="physics">
        <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="lopez90(,)" args="4" kind="physics">
        <info_brief>
            Lopez 1990 model of magnetic latitude of the neutral sheet  MLAT = lopez90(Kp, phi, R, DTA)
            where Kp is the 3-hour magnetic index, phi the magnetic local time in degrees (phi = 0° at midnight)
            R is the radial distance in RE and DTA is the dipole tilt angle 
        </info_brief>
        <new_kernel>lopez90</new_kernel>
    </function>

    <function name="abs()" kind="math">
        <info_brief>Absolute value</info_brief>
        <new_kernel>abs</new_kernel>
    </function>
    <function name="acos()" kind="math">
        <info_brief>Arc-cosine</info_brief>
        <new_kernel>acos</new_kernel>
    </function>
    <function name="alog()" kind="math">
        <info_brief>Natural logarithm</info_brief>
        <new_kernel>log</new_kernel>
    </function>
    <function name="alog10()" kind="math">
        <info_brief>Logarithm to the base 10</info_brief>
        <new_kernel>log10</new_kernel>
    </function>
    <function name="asin()" kind="math">
        <info_brief>Arc-sine</info_brief>
        <new_kernel>asin</new_kernel>
    </function>
    <function name="atan()" kind="math">
        <info_brief>Arc-tangent</info_brief>
        <new_kernel>atan</new_kernel>
    </function>
    <function name="atan2(,)" kind="math">
        <info_brief>Arc-tangent</info_brief>
        <new_kernel>atan_2f</new_kernel>
    </function>
    <function name="ceil()" kind="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">
        <info_brief>cosine</info_brief>
        <new_kernel>cos</new_kernel>
    </function>
    <function name="cosh()" kind="math">
        <info_brief>Hyperbolic cosine</info_brief>
        <new_kernel>cosh</new_kernel>
    </function>
    <function name="deriv_()" kind="math">
        <info_brief>deriv() function with possibly unequal point spacing</info_brief>
        <new_kernel>#deriv</new_kernel>
    </function>
    <function name="exp()" kind="math">
        <info_brief>Natural exponential function</info_brief>
        <new_kernel>exp</new_kernel>
    </function>
    <function name="fix()" kind="math">
        <info_brief>Integer</info_brief>
        <new_kernel>Fix</new_kernel>
    </function>
    <function name="floor()" kind="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">
        <info_brief>Sign</info_brief>
        <new_kernel>Sign</new_kernel>
    </function>
    <function name="sin()" kind="math">
        <info_brief>Sine</info_brief>
        <new_kernel>sin</new_kernel>
    </function>
    <function name="sinh()" kind="math">
        <info_brief>Hyperbolic sine</info_brief>
        <new_kernel>sinh</new_kernel>
    </function>
    <function name="tan()" kind="math">
        <info_brief>Tangent</info_brief>
        <new_kernel>tan</new_kernel>
    </function>
    <function name="tanh()" kind="math">
        <info_brief>Hyperbolic tangent</info_brief>
        <new_kernel>tanh</new_kernel>
    </function>
    <function name="sqrt()" kind="math">
        <info_brief>Square root</info_brief>
        <new_kernel>sqrt</new_kernel>
    </function>
</functions>