simple-squiggle

A restricted subset of Squiggle
Log | Files | Refs | README

exp.js (1619B)


      1 "use strict";
      2 
      3 Object.defineProperty(exports, "__esModule", {
      4   value: true
      5 });
      6 exports.createExp = void 0;
      7 
      8 var _factory = require("../../utils/factory.js");
      9 
     10 var _collection = require("../../utils/collection.js");
     11 
     12 var _index = require("../../plain/number/index.js");
     13 
     14 var name = 'exp';
     15 var dependencies = ['typed'];
     16 var createExp = /* #__PURE__ */(0, _factory.factory)(name, dependencies, function (_ref) {
     17   var typed = _ref.typed;
     18 
     19   /**
     20    * Calculate the exponent of a value.
     21    * For matrices, the function is evaluated element wise.
     22    *
     23    * Syntax:
     24    *
     25    *    math.exp(x)
     26    *
     27    * Examples:
     28    *
     29    *    math.exp(2)                  // returns number 7.3890560989306495
     30    *    math.pow(math.e, 2)          // returns number 7.3890560989306495
     31    *    math.log(math.exp(2))        // returns number 2
     32    *
     33    *    math.exp([1, 2, 3])
     34    *    // returns Array [
     35    *    //   2.718281828459045,
     36    *    //   7.3890560989306495,
     37    *    //   20.085536923187668
     38    *    // ]
     39    *
     40    * See also:
     41    *
     42    *    expm1, log, pow
     43    *
     44    * @param {number | BigNumber | Complex | Array | Matrix} x  A number or matrix to exponentiate
     45    * @return {number | BigNumber | Complex | Array | Matrix} Exponent of `x`
     46    */
     47   return typed(name, {
     48     number: _index.expNumber,
     49     Complex: function Complex(x) {
     50       return x.exp();
     51     },
     52     BigNumber: function BigNumber(x) {
     53       return x.exp();
     54     },
     55     'Array | Matrix': function ArrayMatrix(x) {
     56       // TODO: exp(sparse) should return a dense matrix since exp(0)==1
     57       return (0, _collection.deepMap)(x, this);
     58     }
     59   });
     60 });
     61 exports.createExp = createExp;