ABS(value) | Absolute of value / remove sign |
SIGN(value) | Returns an indication of the sign of values, -1, 0, or 1. |
MIN(value1, value2) | Minimum of two values |
MAX(value1, value2) | Maximum of two values |
MOD(a, n) | Modulo operation |
SIN(value) | Sine of value (which is expected to be in degrees) |
COS(value) | Cosine of value (which is expected to be in degrees) |
ARCTAN2(x, y) | Element-wise arc tangent (in degrees) of x /y choosing the quadrant correctly. |
FILTERPORT(value) | Retains the value only on port tack (AWA between -170 and -10) |
FILTERSTBD(value) | Retains the value only on starboard tack (AWA between 10 and 170) |
COALESCE(value1, value2) | Choose value1 if it's not empty, else value2 |
SELECTPORTSTBD(valuePort, valueStbd) | Select valuePort when sailing on port tack, valueStbd on starboard tack |
UNWRAP(value) | Removes wrap at 0/360 degrees, instead expands value below 0 or above 360 as needed for safe calculations |
SHIFT(value, rows) | Shifts value (series) by given number of rows |
SHIFTSEC(value, seconds) | Shifts value (series) by given number of seconds |
DELTASEC(value, seconds) | Delta of value compared to second seconds ago |
DELTAPERSEC(value) | Delta of value compared to previous datapoint, divided by number of seconds since last datapoint |
ROLLINGMEAN(value, seconds) | Rolling mean over second seconds |
ROLLINGSUM(value, seconds) | Rolling sum over second seconds |
FILTER(value, mask) | Filters value using the given mask, returning empty value where the mask is false |
INTERPOLATED(value) | Fill blanks between values by linear interpolation |
INTERPOLATEDBEARING(value) | Fill blanks between values by linear interpolation, correctly handling 0/360 degree wrap around |
SERIES(time1, value1, time2, value2, ...) | Produces a data series with the given values at the given times. Write times in ISO 8601 format with quotes, like "2022-10-01T10:00+02:00" . Use with INTERPOLATED() . |
TWA(awa, aws, sog) | Calculates true wind angle from apparent wind and SOG/boat speed |
TWS(awa, aws, sog) | Calculates true wind speed from apparent wind and SOG/boat speed |
AWA(twa, tws, sog) | Calculates apparent wind angle from true wind and SOG/boat speed |
AWS(twa, tws, sog) | Calculates apparent wind speed from true wind and SOG/boat speed |
INTEGRATE(value, gap) | Integration over time (in seconds) using the trapezoidal rule. gap is optional (defaults to 10 seconds) - any gaps in data greater than this are omitted. |
MAPLINEAR(value, x1, y1, x2, y2[, ...][, xn, yn][, extrapolate]) | For each value between x1 and x2 , produces an output value between y1 and y2 using linear interpolation, between x2 and x3 interpolates between y2 and y3 , etc. If extrapolate is 1 or true , input values below x1 and above the highest xn value are mapped using extrapolation of the nearest linear pair, otherwise those output values will be empty. |