time-to-botec

Benchmark sampling in different programming languages
Log | Files | Refs | README

poly_p8.js (1749B)


      1 /**
      2 * @license Apache-2.0
      3 *
      4 * Copyright (c) 2019 The Stdlib Authors.
      5 *
      6 * Licensed under the Apache License, Version 2.0 (the "License");
      7 * you may not use this file except in compliance with the License.
      8 * You may obtain a copy of the License at
      9 *
     10 *    http://www.apache.org/licenses/LICENSE-2.0
     11 *
     12 * Unless required by applicable law or agreed to in writing, software
     13 * distributed under the License is distributed on an "AS IS" BASIS,
     14 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
     15 * See the License for the specific language governing permissions and
     16 * limitations under the License.
     17 */
     18 
     19 /* This is a generated file. Do not edit directly. */
     20 'use strict';
     21 
     22 // MAIN //
     23 
     24 /**
     25 * Evaluates a polynomial.
     26 *
     27 * ## Notes
     28 *
     29 * -   The implementation uses [Horner's rule][horners-method] for efficient computation.
     30 *
     31 * [horners-method]: https://en.wikipedia.org/wiki/Horner%27s_method
     32 *
     33 *
     34 * @private
     35 * @param {number} x - value at which to evaluate the polynomial
     36 * @returns {number} evaluated polynomial
     37 */
     38 function evalpoly( x ) {
     39 	if ( x === 0.0 ) {
     40 		return 2.1565156474996434;
     41 	}
     42 	return 2.1565156474996434 + (x * (1.7918056418494632 + (x * (3.8267512874657132 + (x * (10.386724683637972 + (x * (31.403314054680703 + (x * (100.92370394986955 + (x * (337.3268282632273 + (x * (1158.7079305678278 + (x * (4060.9907421936323 + (x * (14454.001840343448 + (x * (52076.661075994045 + (x * (189493.65914621568 + (x * (695184.5762413896 + (x * (2567994.048255285 + (x * (9541921.966748387 + (x * (35634927.44218076 + (x * (133669298.46120408 + (x * (503352186.68662846 + (x * (1901975729.53866 + (x * 7208915015.330104))))))))))))))))))))))))))))))))))))); // eslint-disable-line max-len
     43 }
     44 
     45 
     46 // EXPORTS //
     47 
     48 module.exports = evalpoly;