UNPKG

mingo

Version:

MongoDB query language for in-memory objects

19 lines (18 loc) 591 B
import { computeValue } from "../../../core/_internal"; import { isNil, isNumber } from "../../../util"; const PRECISION = 1e10; const $sigmoid = (obj, expr, options) => { if (isNil(expr)) return null; const args = computeValue(obj, expr, null, options); const { input, onNull } = isNumber(args) ? { input: args } : args; if (isNil(input)) return onNull ?? null; assert( isNumber(input), `$sigmoid: expression must resolve to number: ${input}` ); const result = 1 / (1 + Math.exp(-input)); return Math.round(result * PRECISION) / PRECISION; }; export { $sigmoid };