{"id":13523258,"url":"https://github.com/nearform/node-cephes","last_synced_at":"2025-08-09T13:07:12.073Z","repository":{"id":54503686,"uuid":"146277617","full_name":"nearform/node-cephes","owner":"nearform","description":"Implementation of special functions and distributions mathematical functions from the cephes library.","archived":false,"fork":false,"pushed_at":"2025-01-06T12:14:30.000Z","size":514,"stargazers_count":122,"open_issues_count":2,"forks_count":9,"subscribers_count":108,"default_branch":"master","last_synced_at":"2025-07-25T20:07:56.725Z","etag":null,"topics":["hacktoberfest"],"latest_commit_sha":null,"homepage":"","language":"C","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/nearform.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2018-08-27T09:40:56.000Z","updated_at":"2025-07-09T08:33:02.000Z","dependencies_parsed_at":"2024-02-19T07:23:36.354Z","dependency_job_id":"f2e14596-2931-4bfb-9834-26157b9b58d1","html_url":"https://github.com/nearform/node-cephes","commit_stats":null,"previous_names":[],"tags_count":8,"template":false,"template_full_name":null,"purl":"pkg:github/nearform/node-cephes","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nearform%2Fnode-cephes","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nearform%2Fnode-cephes/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nearform%2Fnode-cephes/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nearform%2Fnode-cephes/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/nearform","download_url":"https://codeload.github.com/nearform/node-cephes/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nearform%2Fnode-cephes/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":269523361,"owners_count":24431612,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-08-09T02:00:10.424Z","response_time":111,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["hacktoberfest"],"created_at":"2024-08-01T06:00:57.891Z","updated_at":"2025-08-09T13:07:12.014Z","avatar_url":"https://github.com/nearform.png","language":"C","funding_links":[],"categories":["C"],"sub_categories":[],"readme":"# node-cephes\n\n\u003c!--\nHello! curious reader. The README.md file is automatically generated, if you\nwish to make any corrections we wellcome you to do so, just make sure you\nmake then in the build/ directory and not in README.md, thanks :)\n--\u003e\n\nThis is a WebAssembly packaging of the [cephes library](http://www.netlib.org/cephes/).\nThe cephes library contains C implementations of most\n[special functions](https://en.wikipedia.org/wiki/Special_functions),\n[distributions](https://en.wikipedia.org/wiki/Probability_distribution),\nand other hard-to-implement mathematical functions.\n\n_Note that there are a few cephes functions that are not exposed here, as some\nof them are quite hard to make consumable in JavaScript using WebAssembly. Feel\nfree to send a pull request if you need one of them._\n\n## Install\n\n```\nnpm install cephes\n```\n\nIf you are looking on GitHub, you will notice some files are missing. These\nare statically built from the cephes library. See the\n[CONTRIBUTING.md](CONTRIBUTING.md) file, for how to build them.\n\n## Usage\n\nCephes is a WebAssembly module but is very small and fast to compile, as it\ndoesn't depend on any runtime libraries. In Node.js it is therefore compiled\nsynchronously and all you need to do is require the module.\n\n```js\nconst cephes = require('cephes'); // Node.js\n```\n\nIn the browser, it is, for good practice, compiled asynchronously. You must\ntherefore wait for the `.compiled` promise to be resolved.\n\n```js\nconst cephes = require('cephes'); // Browser\nawait cephes.compiled;\n```\n\nNote that the `.compiled` promise is also available in Node.js, but it is\nsimply a dummy promise that resolves immediately.\n\n### The JavaScript interface\n\nThere are three variations of functions to be aware of:\n\n#### 1. Plain numeric function\n\nThese don't require anything special.\n\n```js\nconst value = cephes.zeta(2, 1);\n```\n\n#### 2. Functions that return more than one value\n\nIn C, these functions return a primary value and then return extra value\nusing pointer arguments. In JavaScript this is implemented as a function\nthat returns an array of length 2. The first element is the primary returned\nvalue, the second is an object of the extra returned values.\n\n```js\nconst [value, {ai, aip, bi, bip}] = cephes.airy(-1);\n```\n\n#### 3. Functions that consumes an array\n\nSome functions consumes an array of values, these must be `TypedArrays` of\nthe appropriate type. These functions will typically also require a variation\nof `.length` value as a parameter, like you would do in C. Be aware, that in\nsome cases it may not be exactly the `.length` of the `TypedArray`, but may be\none less or one more. Check the specific function documentation to be sure.\n\n```js\nconst arrayInput = new Float64Array([2.2, 3.3, 4.4]);\nconst value = ephes.polevl(1.1, arrayInput, arrayInput.length - 1);\n```\n\n## Table of Content\n\n\u003ctable\u003e\n\u003cthead\u003e\n  \u003cth\u003eFunction\u003c/th\u003e\n  \u003cth\u003eDescription\u003c/th\u003e\n  \u003cth\u003eDocumentation\u003c/th\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n  \u003ctr\u003e\n    \u003ctd colspan=\"3\"\u003e\u003cstrong\u003eArithmetic and Algebraic\u003c/strong\u003e\u003c/td\u003e\n  \u003c/tr\u003e\n  \u003ctr\u003e\n    \u003ctd\u003e\u003ccode\u003esignbit(x)\u003c/code\u003e\u003c/td\u003e\n    \u003ctd\u003eReturns the sign bit\u003c/td\u003e\n    \u003ctd\u003e\u003ca href=\"http://www.netlib.org/cephes/doubldoc.html#signbit\"\u003ec-doc\u003c/a\u003e\u0026nbsp;\u0026nbsp;\u0026#8226;\u0026nbsp;\u0026nbsp;\u003ca href=\"#int--cephessignbitx-double\"\u003ejs-doc\u003c/a\u003e\u003c/td\u003e\n\u003c/tr\u003e\n  \u003ctr\u003e\n    \u003ctd\u003e\u003ccode\u003eisnan(x)\u003c/code\u003e\u003c/td\u003e\n    \u003ctd\u003eCheck if Not-A-Number\u003c/td\u003e\n    \u003ctd\u003e\u003ca href=\"http://www.netlib.org/cephes/doubldoc.html#isnan\"\u003ec-doc\u003c/a\u003e\u0026nbsp;\u0026nbsp;\u0026#8226;\u0026nbsp;\u0026nbsp;\u003ca href=\"#int--cephesisnanx-double\"\u003ejs-doc\u003c/a\u003e\u003c/td\u003e\n\u003c/tr\u003e\n  \u003ctr\u003e\n    \u003ctd\u003e\u003ccode\u003eisfinite(x)\u003c/code\u003e\u003c/td\u003e\n    \u003ctd\u003eCheck if finite\u003c/td\u003e\n    \u003ctd\u003e\u003ca href=\"http://www.netlib.org/cephes/doubldoc.html#isfinite\"\u003ec-doc\u003c/a\u003e\u0026nbsp;\u0026nbsp;\u0026#8226;\u0026nbsp;\u0026nbsp;\u003ca href=\"#int--cephesisfinitex-double\"\u003ejs-doc\u003c/a\u003e\u003c/td\u003e\n\u003c/tr\u003e\n  \u003ctr\u003e\n    \u003ctd\u003e\u003ccode\u003ecbrt(x)\u003c/code\u003e\u003c/td\u003e\n    \u003ctd\u003eCube root\u003c/td\u003e\n    \u003ctd\u003e\u003ca href=\"http://www.netlib.org/cephes/doubldoc.html#cbrt\"\u003ec-doc\u003c/a\u003e\u0026nbsp;\u0026nbsp;\u0026#8226;\u0026nbsp;\u0026nbsp;\u003ca href=\"#double--cephescbrtx-double\"\u003ejs-doc\u003c/a\u003e\u003c/td\u003e\n\u003c/tr\u003e\n  \u003ctr\u003e\n    \u003ctd\u003e\u003ccode\u003epolevl(x, coef, N)\u003c/code\u003e\u003c/td\u003e\n    \u003ctd\u003eEvaluate polynomial\u003c/td\u003e\n    \u003ctd\u003e\u003ca href=\"http://www.netlib.org/cephes/doubldoc.html#polevl\"\u003ec-doc\u003c/a\u003e\u0026nbsp;\u0026nbsp;\u0026#8226;\u0026nbsp;\u0026nbsp;\u003ca href=\"#double--cephespolevlx-double-coef-float64array-n-int\"\u003ejs-doc\u003c/a\u003e\u003c/td\u003e\n\u003c/tr\u003e\n  \u003ctr\u003e\n    \u003ctd\u003e\u003ccode\u003echbevl(x, array, n)\u003c/code\u003e\u003c/td\u003e\n    \u003ctd\u003eEvaluate Chebyshev series\u003c/td\u003e\n    \u003ctd\u003e\u003ca href=\"http://www.netlib.org/cephes/doubldoc.html#chbevl\"\u003ec-doc\u003c/a\u003e\u0026nbsp;\u0026nbsp;\u0026#8226;\u0026nbsp;\u0026nbsp;\u003ca href=\"#double--cepheschbevlx-double-array-float64array-n-int\"\u003ejs-doc\u003c/a\u003e\u003c/td\u003e\n\u003c/tr\u003e\n  \u003ctr\u003e\n    \u003ctd\u003e\u003ccode\u003eround(x)\u003c/code\u003e\u003c/td\u003e\n    \u003ctd\u003eRound to nearest integer value\u003c/td\u003e\n    \u003ctd\u003e\u003ca href=\"http://www.netlib.org/cephes/doubldoc.html#round\"\u003ec-doc\u003c/a\u003e\u0026nbsp;\u0026nbsp;\u0026#8226;\u0026nbsp;\u0026nbsp;\u003ca href=\"#double--cephesroundx-double\"\u003ejs-doc\u003c/a\u003e\u003c/td\u003e\n\u003c/tr\u003e\n  \u003ctr\u003e\n    \u003ctd\u003e\u003ccode\u003efrexp(x)\u003c/code\u003e\u003c/td\u003e\n    \u003ctd\u003eExtract exponent\u003c/td\u003e\n    \u003ctd\u003e\u003ca href=\"http://www.netlib.org/cephes/doubldoc.html#frexp\"\u003ec-doc\u003c/a\u003e\u0026nbsp;\u0026nbsp;\u0026#8226;\u0026nbsp;\u0026nbsp;\u003ca href=\"#double-extra--cephesfrexpx-double\"\u003ejs-doc\u003c/a\u003e\u003c/td\u003e\n\u003c/tr\u003e\n  \u003ctr\u003e\n    \u003ctd\u003e\u003ccode\u003eldexp(x, pw2)\u003c/code\u003e\u003c/td\u003e\n    \u003ctd\u003eAdd integer to exponent\u003c/td\u003e\n    \u003ctd\u003e\u003ca href=\"http://www.netlib.org/cephes/doubldoc.html#ldexp\"\u003ec-doc\u003c/a\u003e\u0026nbsp;\u0026nbsp;\u0026#8226;\u0026nbsp;\u0026nbsp;\u003ca href=\"#double--cephesldexpx-double-pw2-int\"\u003ejs-doc\u003c/a\u003e\u003c/td\u003e\n\u003c/tr\u003e\n  \u003ctr\u003e\n    \u003ctd colspan=\"3\"\u003e\u003cstrong\u003eExponential and Trigonometric\u003c/strong\u003e\u003c/td\u003e\n  \u003c/tr\u003e\n  \u003ctr\u003e\n    \u003ctd\u003e\u003ccode\u003eexpx2(x, sign)\u003c/code\u003e\u003c/td\u003e\n    \u003ctd\u003eExponential of squared argument\u003c/td\u003e\n    \u003ctd\u003e\u003ca href=\"http://www.netlib.org/cephes/doubldoc.html#expx2\"\u003ec-doc\u003c/a\u003e\u0026nbsp;\u0026nbsp;\u0026#8226;\u0026nbsp;\u0026nbsp;\u003ca href=\"#double--cephesexpx2x-double-sign-int\"\u003ejs-doc\u003c/a\u003e\u003c/td\u003e\n\u003c/tr\u003e\n  \u003ctr\u003e\n    \u003ctd\u003e\u003ccode\u003eradian(d, m, s)\u003c/code\u003e\u003c/td\u003e\n    \u003ctd\u003eDegrees, minutes, seconds to radians\u003c/td\u003e\n    \u003ctd\u003e\u003ca href=\"http://www.netlib.org/cephes/doubldoc.html#radian\"\u003ec-doc\u003c/a\u003e\u0026nbsp;\u0026nbsp;\u0026#8226;\u0026nbsp;\u0026nbsp;\u003ca href=\"#double--cephesradiand-double-m-double-s-double\"\u003ejs-doc\u003c/a\u003e\u003c/td\u003e\n\u003c/tr\u003e\n  \u003ctr\u003e\n    \u003ctd\u003e\u003ccode\u003esincos(x, flg)\u003c/code\u003e\u003c/td\u003e\n    \u003ctd\u003eCircular sine and cosine of argument in degrees\u003c/td\u003e\n    \u003ctd\u003e\u003ca href=\"http://www.netlib.org/cephes/doubldoc.html#sincos\"\u003ec-doc\u003c/a\u003e\u0026nbsp;\u0026nbsp;\u0026#8226;\u0026nbsp;\u0026nbsp;\u003ca href=\"#int-extra--cephessincosx-double-flg-int\"\u003ejs-doc\u003c/a\u003e\u003c/td\u003e\n\u003c/tr\u003e\n  \u003ctr\u003e\n    \u003ctd\u003e\u003ccode\u003ecot(x)\u003c/code\u003e\u003c/td\u003e\n    \u003ctd\u003eCircular cotangent\u003c/td\u003e\n    \u003ctd\u003e\u003ca href=\"http://www.netlib.org/cephes/doubldoc.html#cot\"\u003ec-doc\u003c/a\u003e\u0026nbsp;\u0026nbsp;\u0026#8226;\u0026nbsp;\u0026nbsp;\u003ca href=\"#double--cephescotx-double\"\u003ejs-doc\u003c/a\u003e\u003c/td\u003e\n\u003c/tr\u003e\n  \u003ctr\u003e\n    \u003ctd\u003e\u003ccode\u003ecotdg(x)\u003c/code\u003e\u003c/td\u003e\n    \u003ctd\u003eCircular cotangent of argument in degrees\u003c/td\u003e\n    \u003ctd\u003e\u003ca href=\"http://www.netlib.org/cephes/doubldoc.html#cotdg\"\u003ec-doc\u003c/a\u003e\u0026nbsp;\u0026nbsp;\u0026#8226;\u0026nbsp;\u0026nbsp;\u003ca href=\"#double--cephescotdgx-double\"\u003ejs-doc\u003c/a\u003e\u003c/td\u003e\n\u003c/tr\u003e\n  \u003ctr\u003e\n    \u003ctd\u003e\u003ccode\u003elog1p(x)\u003c/code\u003e\u003c/td\u003e\n    \u003ctd\u003eRelative error approximations for log(1 + x)\u003c/td\u003e\n    \u003ctd\u003e\u003ca href=\"http://www.netlib.org/cephes/doubldoc.html#log1p\"\u003ec-doc\u003c/a\u003e\u0026nbsp;\u0026nbsp;\u0026#8226;\u0026nbsp;\u0026nbsp;\u003ca href=\"#double--cepheslog1px-double\"\u003ejs-doc\u003c/a\u003e\u003c/td\u003e\n\u003c/tr\u003e\n  \u003ctr\u003e\n    \u003ctd\u003e\u003ccode\u003eexpm1(x)\u003c/code\u003e\u003c/td\u003e\n    \u003ctd\u003eRelative error approximations for exp(x) - 1\u003c/td\u003e\n    \u003ctd\u003e\u003ca href=\"http://www.netlib.org/cephes/doubldoc.html#expm1\"\u003ec-doc\u003c/a\u003e\u0026nbsp;\u0026nbsp;\u0026#8226;\u0026nbsp;\u0026nbsp;\u003ca href=\"#double--cephesexpm1x-double\"\u003ejs-doc\u003c/a\u003e\u003c/td\u003e\n\u003c/tr\u003e\n  \u003ctr\u003e\n    \u003ctd\u003e\u003ccode\u003ecosm1(x)\u003c/code\u003e\u003c/td\u003e\n    \u003ctd\u003eRelative error approximations for cos(x) - 1\u003c/td\u003e\n    \u003ctd\u003e\u003ca href=\"http://www.netlib.org/cephes/doubldoc.html#cosm1\"\u003ec-doc\u003c/a\u003e\u0026nbsp;\u0026nbsp;\u0026#8226;\u0026nbsp;\u0026nbsp;\u003ca href=\"#double--cephescosm1x-double\"\u003ejs-doc\u003c/a\u003e\u003c/td\u003e\n\u003c/tr\u003e\n  \u003ctr\u003e\n    \u003ctd\u003e\u003ccode\u003eacos(x)\u003c/code\u003e\u003c/td\u003e\n    \u003ctd\u003eArc cosine\u003c/td\u003e\n    \u003ctd\u003e\u003ca href=\"http://www.netlib.org/cephes/doubldoc.html#acos\"\u003ec-doc\u003c/a\u003e\u0026nbsp;\u0026nbsp;\u0026#8226;\u0026nbsp;\u0026nbsp;\u003ca href=\"#double--cephesacosx-double\"\u003ejs-doc\u003c/a\u003e\u003c/td\u003e\n\u003c/tr\u003e\n  \u003ctr\u003e\n    \u003ctd\u003e\u003ccode\u003eacosh(x)\u003c/code\u003e\u003c/td\u003e\n    \u003ctd\u003eArc hyperbolic cosine\u003c/td\u003e\n    \u003ctd\u003e\u003ca href=\"http://www.netlib.org/cephes/doubldoc.html#acosh\"\u003ec-doc\u003c/a\u003e\u0026nbsp;\u0026nbsp;\u0026#8226;\u0026nbsp;\u0026nbsp;\u003ca href=\"#double--cephesacoshx-double\"\u003ejs-doc\u003c/a\u003e\u003c/td\u003e\n\u003c/tr\u003e\n  \u003ctr\u003e\n    \u003ctd\u003e\u003ccode\u003easinh(xx)\u003c/code\u003e\u003c/td\u003e\n    \u003ctd\u003eArc hyperbolic sine\u003c/td\u003e\n    \u003ctd\u003e\u003ca href=\"http://www.netlib.org/cephes/doubldoc.html#asinh\"\u003ec-doc\u003c/a\u003e\u0026nbsp;\u0026nbsp;\u0026#8226;\u0026nbsp;\u0026nbsp;\u003ca href=\"#double--cephesasinhxx-double\"\u003ejs-doc\u003c/a\u003e\u003c/td\u003e\n\u003c/tr\u003e\n  \u003ctr\u003e\n    \u003ctd\u003e\u003ccode\u003eatanh(x)\u003c/code\u003e\u003c/td\u003e\n    \u003ctd\u003eArc hyperbolic tangent\u003c/td\u003e\n    \u003ctd\u003e\u003ca href=\"http://www.netlib.org/cephes/doubldoc.html#atanh\"\u003ec-doc\u003c/a\u003e\u0026nbsp;\u0026nbsp;\u0026#8226;\u0026nbsp;\u0026nbsp;\u003ca href=\"#double--cephesatanhx-double\"\u003ejs-doc\u003c/a\u003e\u003c/td\u003e\n\u003c/tr\u003e\n  \u003ctr\u003e\n    \u003ctd\u003e\u003ccode\u003easin(x)\u003c/code\u003e\u003c/td\u003e\n    \u003ctd\u003eArcsine\u003c/td\u003e\n    \u003ctd\u003e\u003ca href=\"http://www.netlib.org/cephes/doubldoc.html#asin\"\u003ec-doc\u003c/a\u003e\u0026nbsp;\u0026nbsp;\u0026#8226;\u0026nbsp;\u0026nbsp;\u003ca href=\"#double--cephesasinx-double\"\u003ejs-doc\u003c/a\u003e\u003c/td\u003e\n\u003c/tr\u003e\n  \u003ctr\u003e\n    \u003ctd\u003e\u003ccode\u003eatan(x)\u003c/code\u003e\u003c/td\u003e\n    \u003ctd\u003eArctangent\u003c/td\u003e\n    \u003ctd\u003e\u003ca href=\"http://www.netlib.org/cephes/doubldoc.html#atan\"\u003ec-doc\u003c/a\u003e\u0026nbsp;\u0026nbsp;\u0026#8226;\u0026nbsp;\u0026nbsp;\u003ca href=\"#double--cephesatanx-double\"\u003ejs-doc\u003c/a\u003e\u003c/td\u003e\n\u003c/tr\u003e\n  \u003ctr\u003e\n    \u003ctd\u003e\u003ccode\u003eatan2(y, x)\u003c/code\u003e\u003c/td\u003e\n    \u003ctd\u003eQuadrant correct arctangent\u003c/td\u003e\n    \u003ctd\u003e\u003ca href=\"http://www.netlib.org/cephes/doubldoc.html#atan2\"\u003ec-doc\u003c/a\u003e\u0026nbsp;\u0026nbsp;\u0026#8226;\u0026nbsp;\u0026nbsp;\u003ca href=\"#double--cephesatan2y-double-x-double\"\u003ejs-doc\u003c/a\u003e\u003c/td\u003e\n\u003c/tr\u003e\n  \u003ctr\u003e\n    \u003ctd\u003e\u003ccode\u003ecos(x)\u003c/code\u003e\u003c/td\u003e\n    \u003ctd\u003eCosine\u003c/td\u003e\n    \u003ctd\u003e\u003ca href=\"http://www.netlib.org/cephes/doubldoc.html#cos\"\u003ec-doc\u003c/a\u003e\u0026nbsp;\u0026nbsp;\u0026#8226;\u0026nbsp;\u0026nbsp;\u003ca href=\"#double--cephescosx-double\"\u003ejs-doc\u003c/a\u003e\u003c/td\u003e\n\u003c/tr\u003e\n  \u003ctr\u003e\n    \u003ctd\u003e\u003ccode\u003ecosdg(x)\u003c/code\u003e\u003c/td\u003e\n    \u003ctd\u003eCosine of arg in degrees\u003c/td\u003e\n    \u003ctd\u003e\u003ca href=\"http://www.netlib.org/cephes/doubldoc.html#cosdg\"\u003ec-doc\u003c/a\u003e\u0026nbsp;\u0026nbsp;\u0026#8226;\u0026nbsp;\u0026nbsp;\u003ca href=\"#double--cephescosdgx-double\"\u003ejs-doc\u003c/a\u003e\u003c/td\u003e\n\u003c/tr\u003e\n  \u003ctr\u003e\n    \u003ctd\u003e\u003ccode\u003eexp(x)\u003c/code\u003e\u003c/td\u003e\n    \u003ctd\u003eExponential, base e\u003c/td\u003e\n    \u003ctd\u003e\u003ca href=\"http://www.netlib.org/cephes/doubldoc.html#exp\"\u003ec-doc\u003c/a\u003e\u0026nbsp;\u0026nbsp;\u0026#8226;\u0026nbsp;\u0026nbsp;\u003ca href=\"#double--cephesexpx-double\"\u003ejs-doc\u003c/a\u003e\u003c/td\u003e\n\u003c/tr\u003e\n  \u003ctr\u003e\n    \u003ctd\u003e\u003ccode\u003eexp2(x)\u003c/code\u003e\u003c/td\u003e\n    \u003ctd\u003eExponential, base 2\u003c/td\u003e\n    \u003ctd\u003e\u003ca href=\"http://www.netlib.org/cephes/doubldoc.html#exp2\"\u003ec-doc\u003c/a\u003e\u0026nbsp;\u0026nbsp;\u0026#8226;\u0026nbsp;\u0026nbsp;\u003ca href=\"#double--cephesexp2x-double\"\u003ejs-doc\u003c/a\u003e\u003c/td\u003e\n\u003c/tr\u003e\n  \u003ctr\u003e\n    \u003ctd\u003e\u003ccode\u003eexp10(x)\u003c/code\u003e\u003c/td\u003e\n    \u003ctd\u003eExponential, base 10\u003c/td\u003e\n    \u003ctd\u003e\u003ca href=\"http://www.netlib.org/cephes/doubldoc.html#exp10\"\u003ec-doc\u003c/a\u003e\u0026nbsp;\u0026nbsp;\u0026#8226;\u0026nbsp;\u0026nbsp;\u003ca href=\"#double--cephesexp10x-double\"\u003ejs-doc\u003c/a\u003e\u003c/td\u003e\n\u003c/tr\u003e\n  \u003ctr\u003e\n    \u003ctd\u003e\u003ccode\u003ecosh(x)\u003c/code\u003e\u003c/td\u003e\n    \u003ctd\u003eHyperbolic cosine\u003c/td\u003e\n    \u003ctd\u003e\u003ca href=\"http://www.netlib.org/cephes/doubldoc.html#cosh\"\u003ec-doc\u003c/a\u003e\u0026nbsp;\u0026nbsp;\u0026#8226;\u0026nbsp;\u0026nbsp;\u003ca href=\"#double--cephescoshx-double\"\u003ejs-doc\u003c/a\u003e\u003c/td\u003e\n\u003c/tr\u003e\n  \u003ctr\u003e\n    \u003ctd\u003e\u003ccode\u003esinh(x)\u003c/code\u003e\u003c/td\u003e\n    \u003ctd\u003eHyperbolic sine\u003c/td\u003e\n    \u003ctd\u003e\u003ca href=\"http://www.netlib.org/cephes/doubldoc.html#sinh\"\u003ec-doc\u003c/a\u003e\u0026nbsp;\u0026nbsp;\u0026#8226;\u0026nbsp;\u0026nbsp;\u003ca href=\"#double--cephessinhx-double\"\u003ejs-doc\u003c/a\u003e\u003c/td\u003e\n\u003c/tr\u003e\n  \u003ctr\u003e\n    \u003ctd\u003e\u003ccode\u003etanh(x)\u003c/code\u003e\u003c/td\u003e\n    \u003ctd\u003eHyperbolic tangent\u003c/td\u003e\n    \u003ctd\u003e\u003ca href=\"http://www.netlib.org/cephes/doubldoc.html#tanh\"\u003ec-doc\u003c/a\u003e\u0026nbsp;\u0026nbsp;\u0026#8226;\u0026nbsp;\u0026nbsp;\u003ca href=\"#double--cephestanhx-double\"\u003ejs-doc\u003c/a\u003e\u003c/td\u003e\n\u003c/tr\u003e\n  \u003ctr\u003e\n    \u003ctd\u003e\u003ccode\u003elog(x)\u003c/code\u003e\u003c/td\u003e\n    \u003ctd\u003eLogarithm, base e\u003c/td\u003e\n    \u003ctd\u003e\u003ca href=\"http://www.netlib.org/cephes/doubldoc.html#log\"\u003ec-doc\u003c/a\u003e\u0026nbsp;\u0026nbsp;\u0026#8226;\u0026nbsp;\u0026nbsp;\u003ca href=\"#double--cepheslogx-double\"\u003ejs-doc\u003c/a\u003e\u003c/td\u003e\n\u003c/tr\u003e\n  \u003ctr\u003e\n    \u003ctd\u003e\u003ccode\u003elog2(x)\u003c/code\u003e\u003c/td\u003e\n    \u003ctd\u003eLogarithm, base 2\u003c/td\u003e\n    \u003ctd\u003e\u003ca href=\"http://www.netlib.org/cephes/doubldoc.html#log2\"\u003ec-doc\u003c/a\u003e\u0026nbsp;\u0026nbsp;\u0026#8226;\u0026nbsp;\u0026nbsp;\u003ca href=\"#double--cepheslog2x-double\"\u003ejs-doc\u003c/a\u003e\u003c/td\u003e\n\u003c/tr\u003e\n  \u003ctr\u003e\n    \u003ctd\u003e\u003ccode\u003elog10(x)\u003c/code\u003e\u003c/td\u003e\n    \u003ctd\u003eLogarithm, base 10\u003c/td\u003e\n    \u003ctd\u003e\u003ca href=\"http://www.netlib.org/cephes/doubldoc.html#log10\"\u003ec-doc\u003c/a\u003e\u0026nbsp;\u0026nbsp;\u0026#8226;\u0026nbsp;\u0026nbsp;\u003ca href=\"#double--cepheslog10x-double\"\u003ejs-doc\u003c/a\u003e\u003c/td\u003e\n\u003c/tr\u003e\n  \u003ctr\u003e\n    \u003ctd\u003e\u003ccode\u003epow(x, y)\u003c/code\u003e\u003c/td\u003e\n    \u003ctd\u003ePower\u003c/td\u003e\n    \u003ctd\u003e\u003ca href=\"http://www.netlib.org/cephes/doubldoc.html#pow\"\u003ec-doc\u003c/a\u003e\u0026nbsp;\u0026nbsp;\u0026#8226;\u0026nbsp;\u0026nbsp;\u003ca href=\"#double--cephespowx-double-y-double\"\u003ejs-doc\u003c/a\u003e\u003c/td\u003e\n\u003c/tr\u003e\n  \u003ctr\u003e\n    \u003ctd\u003e\u003ccode\u003epowi(x, nn)\u003c/code\u003e\u003c/td\u003e\n    \u003ctd\u003eInteger Power\u003c/td\u003e\n    \u003ctd\u003e\u003ca href=\"http://www.netlib.org/cephes/doubldoc.html#powi\"\u003ec-doc\u003c/a\u003e\u0026nbsp;\u0026nbsp;\u0026#8226;\u0026nbsp;\u0026nbsp;\u003ca href=\"#double--cephespowix-double-nn-int\"\u003ejs-doc\u003c/a\u003e\u003c/td\u003e\n\u003c/tr\u003e\n  \u003ctr\u003e\n    \u003ctd\u003e\u003ccode\u003esin(x)\u003c/code\u003e\u003c/td\u003e\n    \u003ctd\u003eSine\u003c/td\u003e\n    \u003ctd\u003e\u003ca href=\"http://www.netlib.org/cephes/doubldoc.html#sin\"\u003ec-doc\u003c/a\u003e\u0026nbsp;\u0026nbsp;\u0026#8226;\u0026nbsp;\u0026nbsp;\u003ca href=\"#double--cephessinx-double\"\u003ejs-doc\u003c/a\u003e\u003c/td\u003e\n\u003c/tr\u003e\n  \u003ctr\u003e\n    \u003ctd\u003e\u003ccode\u003esindg(x)\u003c/code\u003e\u003c/td\u003e\n    \u003ctd\u003eSine of arg in degrees\u003c/td\u003e\n    \u003ctd\u003e\u003ca href=\"http://www.netlib.org/cephes/doubldoc.html#sindg\"\u003ec-doc\u003c/a\u003e\u0026nbsp;\u0026nbsp;\u0026#8226;\u0026nbsp;\u0026nbsp;\u003ca href=\"#double--cephessindgx-double\"\u003ejs-doc\u003c/a\u003e\u003c/td\u003e\n\u003c/tr\u003e\n  \u003ctr\u003e\n    \u003ctd\u003e\u003ccode\u003etan(x)\u003c/code\u003e\u003c/td\u003e\n    \u003ctd\u003eTangent\u003c/td\u003e\n    \u003ctd\u003e\u003ca href=\"http://www.netlib.org/cephes/doubldoc.html#tan\"\u003ec-doc\u003c/a\u003e\u0026nbsp;\u0026nbsp;\u0026#8226;\u0026nbsp;\u0026nbsp;\u003ca href=\"#double--cephestanx-double\"\u003ejs-doc\u003c/a\u003e\u003c/td\u003e\n\u003c/tr\u003e\n  \u003ctr\u003e\n    \u003ctd\u003e\u003ccode\u003etandg(x)\u003c/code\u003e\u003c/td\u003e\n    \u003ctd\u003eTangent of arg in degrees\u003c/td\u003e\n    \u003ctd\u003e\u003ca href=\"http://www.netlib.org/cephes/doubldoc.html#tandg\"\u003ec-doc\u003c/a\u003e\u0026nbsp;\u0026nbsp;\u0026#8226;\u0026nbsp;\u0026nbsp;\u003ca href=\"#double--cephestandgx-double\"\u003ejs-doc\u003c/a\u003e\u003c/td\u003e\n\u003c/tr\u003e\n  \u003ctr\u003e\n    \u003ctd colspan=\"3\"\u003e\u003cstrong\u003eExponential integral\u003c/strong\u003e\u003c/td\u003e\n  \u003c/tr\u003e\n  \u003ctr\u003e\n    \u003ctd\u003e\u003ccode\u003eei(x)\u003c/code\u003e\u003c/td\u003e\n    \u003ctd\u003eExponential integral\u003c/td\u003e\n    \u003ctd\u003e\u003ca href=\"http://www.netlib.org/cephes/doubldoc.html#ei\"\u003ec-doc\u003c/a\u003e\u0026nbsp;\u0026nbsp;\u0026#8226;\u0026nbsp;\u0026nbsp;\u003ca href=\"#double--cepheseix-double\"\u003ejs-doc\u003c/a\u003e\u003c/td\u003e\n\u003c/tr\u003e\n  \u003ctr\u003e\n    \u003ctd\u003e\u003ccode\u003eexpn(n, x)\u003c/code\u003e\u003c/td\u003e\n    \u003ctd\u003eExponential integral\u003c/td\u003e\n    \u003ctd\u003e\u003ca href=\"http://www.netlib.org/cephes/doubldoc.html#expn\"\u003ec-doc\u003c/a\u003e\u0026nbsp;\u0026nbsp;\u0026#8226;\u0026nbsp;\u0026nbsp;\u003ca href=\"#double--cephesexpnn-int-x-double\"\u003ejs-doc\u003c/a\u003e\u003c/td\u003e\n\u003c/tr\u003e\n  \u003ctr\u003e\n    \u003ctd\u003e\u003ccode\u003eshichi(x)\u003c/code\u003e\u003c/td\u003e\n    \u003ctd\u003eHyperbolic cosine integral\u003c/td\u003e\n    \u003ctd\u003e\u003ca href=\"http://www.netlib.org/cephes/doubldoc.html#shichi\"\u003ec-doc\u003c/a\u003e\u0026nbsp;\u0026nbsp;\u0026#8226;\u0026nbsp;\u0026nbsp;\u003ca href=\"#int-extra--cephesshichix-double\"\u003ejs-doc\u003c/a\u003e\u003c/td\u003e\n\u003c/tr\u003e\n  \u003ctr\u003e\n    \u003ctd\u003e\u003ccode\u003esici(x)\u003c/code\u003e\u003c/td\u003e\n    \u003ctd\u003eCosine integral\u003c/td\u003e\n    \u003ctd\u003e\u003ca href=\"http://www.netlib.org/cephes/doubldoc.html#sici\"\u003ec-doc\u003c/a\u003e\u0026nbsp;\u0026nbsp;\u0026#8226;\u0026nbsp;\u0026nbsp;\u003ca href=\"#int-extra--cephessicix-double\"\u003ejs-doc\u003c/a\u003e\u003c/td\u003e\n\u003c/tr\u003e\n  \u003ctr\u003e\n    \u003ctd colspan=\"3\"\u003e\u003cstrong\u003eGamma\u003c/strong\u003e\u003c/td\u003e\n  \u003c/tr\u003e\n  \u003ctr\u003e\n    \u003ctd\u003e\u003ccode\u003elbeta(a, b)\u003c/code\u003e\u003c/td\u003e\n    \u003ctd\u003eNatural log of |beta|.\u003c/td\u003e\n    \u003ctd\u003e\u003ca href=\"http://www.netlib.org/cephes/doubldoc.html#lbeta\"\u003ec-doc\u003c/a\u003e\u0026nbsp;\u0026nbsp;\u0026#8226;\u0026nbsp;\u0026nbsp;\u003ca href=\"#double--cepheslbetaa-double-b-double\"\u003ejs-doc\u003c/a\u003e\u003c/td\u003e\n\u003c/tr\u003e\n  \u003ctr\u003e\n    \u003ctd\u003e\u003ccode\u003ebeta(a, b)\u003c/code\u003e\u003c/td\u003e\n    \u003ctd\u003eBeta\u003c/td\u003e\n    \u003ctd\u003e\u003ca href=\"http://www.netlib.org/cephes/doubldoc.html#beta\"\u003ec-doc\u003c/a\u003e\u0026nbsp;\u0026nbsp;\u0026#8226;\u0026nbsp;\u0026nbsp;\u003ca href=\"#double--cephesbetaa-double-b-double\"\u003ejs-doc\u003c/a\u003e\u003c/td\u003e\n\u003c/tr\u003e\n  \u003ctr\u003e\n    \u003ctd\u003e\u003ccode\u003efac(i)\u003c/code\u003e\u003c/td\u003e\n    \u003ctd\u003eFactorial\u003c/td\u003e\n    \u003ctd\u003e\u003ca href=\"http://www.netlib.org/cephes/doubldoc.html#fac\"\u003ec-doc\u003c/a\u003e\u0026nbsp;\u0026nbsp;\u0026#8226;\u0026nbsp;\u0026nbsp;\u003ca href=\"#double--cephesfaci-int\"\u003ejs-doc\u003c/a\u003e\u003c/td\u003e\n\u003c/tr\u003e\n  \u003ctr\u003e\n    \u003ctd\u003e\u003ccode\u003egamma(x)\u003c/code\u003e\u003c/td\u003e\n    \u003ctd\u003eGamma\u003c/td\u003e\n    \u003ctd\u003e\u003ca href=\"http://www.netlib.org/cephes/doubldoc.html#gamma\"\u003ec-doc\u003c/a\u003e\u0026nbsp;\u0026nbsp;\u0026#8226;\u0026nbsp;\u0026nbsp;\u003ca href=\"#double--cephesgammax-double\"\u003ejs-doc\u003c/a\u003e\u003c/td\u003e\n\u003c/tr\u003e\n  \u003ctr\u003e\n    \u003ctd\u003e\u003ccode\u003elgam(x)\u003c/code\u003e\u003c/td\u003e\n    \u003ctd\u003eLogarithm of gamma function\u003c/td\u003e\n    \u003ctd\u003e\u003ca href=\"http://www.netlib.org/cephes/doubldoc.html#lgam\"\u003ec-doc\u003c/a\u003e\u0026nbsp;\u0026nbsp;\u0026#8226;\u0026nbsp;\u0026nbsp;\u003ca href=\"#double--cepheslgamx-double\"\u003ejs-doc\u003c/a\u003e\u003c/td\u003e\n\u003c/tr\u003e\n  \u003ctr\u003e\n    \u003ctd\u003e\u003ccode\u003eincbet(aa, bb, xx)\u003c/code\u003e\u003c/td\u003e\n    \u003ctd\u003eIncomplete beta integral\u003c/td\u003e\n    \u003ctd\u003e\u003ca href=\"http://www.netlib.org/cephes/doubldoc.html#incbet\"\u003ec-doc\u003c/a\u003e\u0026nbsp;\u0026nbsp;\u0026#8226;\u0026nbsp;\u0026nbsp;\u003ca href=\"#double--cephesincbetaa-double-bb-double-xx-double\"\u003ejs-doc\u003c/a\u003e\u003c/td\u003e\n\u003c/tr\u003e\n  \u003ctr\u003e\n    \u003ctd\u003e\u003ccode\u003eincbi(aa, bb, yy0)\u003c/code\u003e\u003c/td\u003e\n    \u003ctd\u003eInverse beta integral\u003c/td\u003e\n    \u003ctd\u003e\u003ca href=\"http://www.netlib.org/cephes/doubldoc.html#incbi\"\u003ec-doc\u003c/a\u003e\u0026nbsp;\u0026nbsp;\u0026#8226;\u0026nbsp;\u0026nbsp;\u003ca href=\"#double--cephesincbiaa-double-bb-double-yy0-double\"\u003ejs-doc\u003c/a\u003e\u003c/td\u003e\n\u003c/tr\u003e\n  \u003ctr\u003e\n    \u003ctd\u003e\u003ccode\u003eigam(a, x)\u003c/code\u003e\u003c/td\u003e\n    \u003ctd\u003eIncomplete gamma integral\u003c/td\u003e\n    \u003ctd\u003e\u003ca href=\"http://www.netlib.org/cephes/doubldoc.html#igam\"\u003ec-doc\u003c/a\u003e\u0026nbsp;\u0026nbsp;\u0026#8226;\u0026nbsp;\u0026nbsp;\u003ca href=\"#double--cephesigama-double-x-double\"\u003ejs-doc\u003c/a\u003e\u003c/td\u003e\n\u003c/tr\u003e\n  \u003ctr\u003e\n    \u003ctd\u003e\u003ccode\u003eigamc(a, x)\u003c/code\u003e\u003c/td\u003e\n    \u003ctd\u003eComplemented gamma integral\u003c/td\u003e\n    \u003ctd\u003e\u003ca href=\"http://www.netlib.org/cephes/doubldoc.html#igamc\"\u003ec-doc\u003c/a\u003e\u0026nbsp;\u0026nbsp;\u0026#8226;\u0026nbsp;\u0026nbsp;\u003ca href=\"#double--cephesigamca-double-x-double\"\u003ejs-doc\u003c/a\u003e\u003c/td\u003e\n\u003c/tr\u003e\n  \u003ctr\u003e\n    \u003ctd\u003e\u003ccode\u003eigami(a, y0)\u003c/code\u003e\u003c/td\u003e\n    \u003ctd\u003eInverse gamma integral\u003c/td\u003e\n    \u003ctd\u003e\u003ca href=\"http://www.netlib.org/cephes/doubldoc.html#igami\"\u003ec-doc\u003c/a\u003e\u0026nbsp;\u0026nbsp;\u0026#8226;\u0026nbsp;\u0026nbsp;\u003ca href=\"#double--cephesigamia-double-y0-double\"\u003ejs-doc\u003c/a\u003e\u003c/td\u003e\n\u003c/tr\u003e\n  \u003ctr\u003e\n    \u003ctd\u003e\u003ccode\u003epsi(x)\u003c/code\u003e\u003c/td\u003e\n    \u003ctd\u003ePsi (digamma) function\u003c/td\u003e\n    \u003ctd\u003e\u003ca href=\"http://www.netlib.org/cephes/doubldoc.html#psi\"\u003ec-doc\u003c/a\u003e\u0026nbsp;\u0026nbsp;\u0026#8226;\u0026nbsp;\u0026nbsp;\u003ca href=\"#double--cephespsix-double\"\u003ejs-doc\u003c/a\u003e\u003c/td\u003e\n\u003c/tr\u003e\n  \u003ctr\u003e\n    \u003ctd\u003e\u003ccode\u003ergamma(x)\u003c/code\u003e\u003c/td\u003e\n    \u003ctd\u003eReciprocal Gamma\u003c/td\u003e\n    \u003ctd\u003e\u003ca href=\"http://www.netlib.org/cephes/doubldoc.html#rgamma\"\u003ec-doc\u003c/a\u003e\u0026nbsp;\u0026nbsp;\u0026#8226;\u0026nbsp;\u0026nbsp;\u003ca href=\"#double--cephesrgammax-double\"\u003ejs-doc\u003c/a\u003e\u003c/td\u003e\n\u003c/tr\u003e\n  \u003ctr\u003e\n    \u003ctd colspan=\"3\"\u003e\u003cstrong\u003eError function\u003c/strong\u003e\u003c/td\u003e\n  \u003c/tr\u003e\n  \u003ctr\u003e\n    \u003ctd\u003e\u003ccode\u003eerf(x)\u003c/code\u003e\u003c/td\u003e\n    \u003ctd\u003eError function\u003c/td\u003e\n    \u003ctd\u003e\u003ca href=\"http://www.netlib.org/cephes/doubldoc.html#erf\"\u003ec-doc\u003c/a\u003e\u0026nbsp;\u0026nbsp;\u0026#8226;\u0026nbsp;\u0026nbsp;\u003ca href=\"#double--cepheserfx-double\"\u003ejs-doc\u003c/a\u003e\u003c/td\u003e\n\u003c/tr\u003e\n  \u003ctr\u003e\n    \u003ctd\u003e\u003ccode\u003eerfc(a)\u003c/code\u003e\u003c/td\u003e\n    \u003ctd\u003eComplemented error function\u003c/td\u003e\n    \u003ctd\u003e\u003ca href=\"http://www.netlib.org/cephes/doubldoc.html#erfc\"\u003ec-doc\u003c/a\u003e\u0026nbsp;\u0026nbsp;\u0026#8226;\u0026nbsp;\u0026nbsp;\u003ca href=\"#double--cepheserfca-double\"\u003ejs-doc\u003c/a\u003e\u003c/td\u003e\n\u003c/tr\u003e\n  \u003ctr\u003e\n    \u003ctd\u003e\u003ccode\u003edawsn(xx)\u003c/code\u003e\u003c/td\u003e\n    \u003ctd\u003eDawson's integral\u003c/td\u003e\n    \u003ctd\u003e\u003ca href=\"http://www.netlib.org/cephes/doubldoc.html#dawsn\"\u003ec-doc\u003c/a\u003e\u0026nbsp;\u0026nbsp;\u0026#8226;\u0026nbsp;\u0026nbsp;\u003ca href=\"#double--cephesdawsnxx-double\"\u003ejs-doc\u003c/a\u003e\u003c/td\u003e\n\u003c/tr\u003e\n  \u003ctr\u003e\n    \u003ctd\u003e\u003ccode\u003efresnl(xxa)\u003c/code\u003e\u003c/td\u003e\n    \u003ctd\u003eFresnel integral\u003c/td\u003e\n    \u003ctd\u003e\u003ca href=\"http://www.netlib.org/cephes/doubldoc.html#fresnl\"\u003ec-doc\u003c/a\u003e\u0026nbsp;\u0026nbsp;\u0026#8226;\u0026nbsp;\u0026nbsp;\u003ca href=\"#int-extra--cephesfresnlxxa-double\"\u003ejs-doc\u003c/a\u003e\u003c/td\u003e\n\u003c/tr\u003e\n  \u003ctr\u003e\n    \u003ctd colspan=\"3\"\u003e\u003cstrong\u003eBessel\u003c/strong\u003e\u003c/td\u003e\n  \u003c/tr\u003e\n  \u003ctr\u003e\n    \u003ctd\u003e\u003ccode\u003eairy(x)\u003c/code\u003e\u003c/td\u003e\n    \u003ctd\u003eAiry\u003c/td\u003e\n    \u003ctd\u003e\u003ca href=\"http://www.netlib.org/cephes/doubldoc.html#airy\"\u003ec-doc\u003c/a\u003e\u0026nbsp;\u0026nbsp;\u0026#8226;\u0026nbsp;\u0026nbsp;\u003ca href=\"#int-extra--cephesairyx-double\"\u003ejs-doc\u003c/a\u003e\u003c/td\u003e\n\u003c/tr\u003e\n  \u003ctr\u003e\n    \u003ctd\u003e\u003ccode\u003ej0(x)\u003c/code\u003e\u003c/td\u003e\n    \u003ctd\u003eBessel, order 0\u003c/td\u003e\n    \u003ctd\u003e\u003ca href=\"http://www.netlib.org/cephes/doubldoc.html#j0\"\u003ec-doc\u003c/a\u003e\u0026nbsp;\u0026nbsp;\u0026#8226;\u0026nbsp;\u0026nbsp;\u003ca href=\"#double--cephesj0x-double\"\u003ejs-doc\u003c/a\u003e\u003c/td\u003e\n\u003c/tr\u003e\n  \u003ctr\u003e\n    \u003ctd\u003e\u003ccode\u003ej1(x)\u003c/code\u003e\u003c/td\u003e\n    \u003ctd\u003eBessel, order 1\u003c/td\u003e\n    \u003ctd\u003e\u003ca href=\"http://www.netlib.org/cephes/doubldoc.html#j1\"\u003ec-doc\u003c/a\u003e\u0026nbsp;\u0026nbsp;\u0026#8226;\u0026nbsp;\u0026nbsp;\u003ca href=\"#double--cephesj1x-double\"\u003ejs-doc\u003c/a\u003e\u003c/td\u003e\n\u003c/tr\u003e\n  \u003ctr\u003e\n    \u003ctd\u003e\u003ccode\u003ejn(n, x)\u003c/code\u003e\u003c/td\u003e\n    \u003ctd\u003eBessel, order n\u003c/td\u003e\n    \u003ctd\u003e\u003ca href=\"http://www.netlib.org/cephes/doubldoc.html#jn\"\u003ec-doc\u003c/a\u003e\u0026nbsp;\u0026nbsp;\u0026#8226;\u0026nbsp;\u0026nbsp;\u003ca href=\"#double--cephesjnn-int-x-double\"\u003ejs-doc\u003c/a\u003e\u003c/td\u003e\n\u003c/tr\u003e\n  \u003ctr\u003e\n    \u003ctd\u003e\u003ccode\u003ejv(n, x)\u003c/code\u003e\u003c/td\u003e\n    \u003ctd\u003eBessel, noninteger order\u003c/td\u003e\n    \u003ctd\u003e\u003ca href=\"http://www.netlib.org/cephes/doubldoc.html#jv\"\u003ec-doc\u003c/a\u003e\u0026nbsp;\u0026nbsp;\u0026#8226;\u0026nbsp;\u0026nbsp;\u003ca href=\"#double--cephesjvn-double-x-double\"\u003ejs-doc\u003c/a\u003e\u003c/td\u003e\n\u003c/tr\u003e\n  \u003ctr\u003e\n    \u003ctd\u003e\u003ccode\u003ey0(x)\u003c/code\u003e\u003c/td\u003e\n    \u003ctd\u003eBessel, second kind, order 0\u003c/td\u003e\n    \u003ctd\u003e\u003ca href=\"http://www.netlib.org/cephes/doubldoc.html#y0\"\u003ec-doc\u003c/a\u003e\u0026nbsp;\u0026nbsp;\u0026#8226;\u0026nbsp;\u0026nbsp;\u003ca href=\"#double--cephesy0x-double\"\u003ejs-doc\u003c/a\u003e\u003c/td\u003e\n\u003c/tr\u003e\n  \u003ctr\u003e\n    \u003ctd\u003e\u003ccode\u003ey1(x)\u003c/code\u003e\u003c/td\u003e\n    \u003ctd\u003eBessel, second kind, order 1\u003c/td\u003e\n    \u003ctd\u003e\u003ca href=\"http://www.netlib.org/cephes/doubldoc.html#y1\"\u003ec-doc\u003c/a\u003e\u0026nbsp;\u0026nbsp;\u0026#8226;\u0026nbsp;\u0026nbsp;\u003ca href=\"#double--cephesy1x-double\"\u003ejs-doc\u003c/a\u003e\u003c/td\u003e\n\u003c/tr\u003e\n  \u003ctr\u003e\n    \u003ctd\u003e\u003ccode\u003eyn(n, x)\u003c/code\u003e\u003c/td\u003e\n    \u003ctd\u003eBessel, second kind, order n\u003c/td\u003e\n    \u003ctd\u003e\u003ca href=\"http://www.netlib.org/cephes/doubldoc.html#yn\"\u003ec-doc\u003c/a\u003e\u0026nbsp;\u0026nbsp;\u0026#8226;\u0026nbsp;\u0026nbsp;\u003ca href=\"#double--cephesynn-int-x-double\"\u003ejs-doc\u003c/a\u003e\u003c/td\u003e\n\u003c/tr\u003e\n  \u003ctr\u003e\n    \u003ctd\u003e\u003ccode\u003eyv(v, x)\u003c/code\u003e\u003c/td\u003e\n    \u003ctd\u003eBessel, noninteger order\u003c/td\u003e\n    \u003ctd\u003e\u003ca href=\"http://www.netlib.org/cephes/doubldoc.html#yv\"\u003ec-doc\u003c/a\u003e\u0026nbsp;\u0026nbsp;\u0026#8226;\u0026nbsp;\u0026nbsp;\u003ca href=\"#double--cephesyvv-double-x-double\"\u003ejs-doc\u003c/a\u003e\u003c/td\u003e\n\u003c/tr\u003e\n  \u003ctr\u003e\n    \u003ctd\u003e\u003ccode\u003ei0(x)\u003c/code\u003e\u003c/td\u003e\n    \u003ctd\u003eModified Bessel, order 0\u003c/td\u003e\n    \u003ctd\u003e\u003ca href=\"http://www.netlib.org/cephes/doubldoc.html#i0\"\u003ec-doc\u003c/a\u003e\u0026nbsp;\u0026nbsp;\u0026#8226;\u0026nbsp;\u0026nbsp;\u003ca href=\"#double--cephesi0x-double\"\u003ejs-doc\u003c/a\u003e\u003c/td\u003e\n\u003c/tr\u003e\n  \u003ctr\u003e\n    \u003ctd\u003e\u003ccode\u003ei0e(x)\u003c/code\u003e\u003c/td\u003e\n    \u003ctd\u003eExponentially scaled i0\u003c/td\u003e\n    \u003ctd\u003e\u003ca href=\"http://www.netlib.org/cephes/doubldoc.html#i0e\"\u003ec-doc\u003c/a\u003e\u0026nbsp;\u0026nbsp;\u0026#8226;\u0026nbsp;\u0026nbsp;\u003ca href=\"#double--cephesi0ex-double\"\u003ejs-doc\u003c/a\u003e\u003c/td\u003e\n\u003c/tr\u003e\n  \u003ctr\u003e\n    \u003ctd\u003e\u003ccode\u003ei1(x)\u003c/code\u003e\u003c/td\u003e\n    \u003ctd\u003eModified Bessel, order 1\u003c/td\u003e\n    \u003ctd\u003e\u003ca href=\"http://www.netlib.org/cephes/doubldoc.html#i1\"\u003ec-doc\u003c/a\u003e\u0026nbsp;\u0026nbsp;\u0026#8226;\u0026nbsp;\u0026nbsp;\u003ca href=\"#double--cephesi1x-double\"\u003ejs-doc\u003c/a\u003e\u003c/td\u003e\n\u003c/tr\u003e\n  \u003ctr\u003e\n    \u003ctd\u003e\u003ccode\u003ei1e(x)\u003c/code\u003e\u003c/td\u003e\n    \u003ctd\u003eExponentially scaled i1\u003c/td\u003e\n    \u003ctd\u003e\u003ca href=\"http://www.netlib.org/cephes/doubldoc.html#i1e\"\u003ec-doc\u003c/a\u003e\u0026nbsp;\u0026nbsp;\u0026#8226;\u0026nbsp;\u0026nbsp;\u003ca href=\"#double--cephesi1ex-double\"\u003ejs-doc\u003c/a\u003e\u003c/td\u003e\n\u003c/tr\u003e\n  \u003ctr\u003e\n    \u003ctd\u003e\u003ccode\u003eiv(v, x)\u003c/code\u003e\u003c/td\u003e\n    \u003ctd\u003eModified Bessel, nonint. order\u003c/td\u003e\n    \u003ctd\u003e\u003ca href=\"http://www.netlib.org/cephes/doubldoc.html#iv\"\u003ec-doc\u003c/a\u003e\u0026nbsp;\u0026nbsp;\u0026#8226;\u0026nbsp;\u0026nbsp;\u003ca href=\"#double--cephesivv-double-x-double\"\u003ejs-doc\u003c/a\u003e\u003c/td\u003e\n\u003c/tr\u003e\n  \u003ctr\u003e\n    \u003ctd\u003e\u003ccode\u003ek0(x)\u003c/code\u003e\u003c/td\u003e\n    \u003ctd\u003eMod. Bessel, 3rd kind, order 0\u003c/td\u003e\n    \u003ctd\u003e\u003ca href=\"http://www.netlib.org/cephes/doubldoc.html#k0\"\u003ec-doc\u003c/a\u003e\u0026nbsp;\u0026nbsp;\u0026#8226;\u0026nbsp;\u0026nbsp;\u003ca href=\"#double--cephesk0x-double\"\u003ejs-doc\u003c/a\u003e\u003c/td\u003e\n\u003c/tr\u003e\n  \u003ctr\u003e\n    \u003ctd\u003e\u003ccode\u003ek0e(x)\u003c/code\u003e\u003c/td\u003e\n    \u003ctd\u003eExponentially scaled k0\u003c/td\u003e\n    \u003ctd\u003e\u003ca href=\"http://www.netlib.org/cephes/doubldoc.html#k0e\"\u003ec-doc\u003c/a\u003e\u0026nbsp;\u0026nbsp;\u0026#8226;\u0026nbsp;\u0026nbsp;\u003ca href=\"#double--cephesk0ex-double\"\u003ejs-doc\u003c/a\u003e\u003c/td\u003e\n\u003c/tr\u003e\n  \u003ctr\u003e\n    \u003ctd\u003e\u003ccode\u003ek1(x)\u003c/code\u003e\u003c/td\u003e\n    \u003ctd\u003eMod. Bessel, 3rd kind, order 1\u003c/td\u003e\n    \u003ctd\u003e\u003ca href=\"http://www.netlib.org/cephes/doubldoc.html#k1\"\u003ec-doc\u003c/a\u003e\u0026nbsp;\u0026nbsp;\u0026#8226;\u0026nbsp;\u0026nbsp;\u003ca href=\"#double--cephesk1x-double\"\u003ejs-doc\u003c/a\u003e\u003c/td\u003e\n\u003c/tr\u003e\n  \u003ctr\u003e\n    \u003ctd\u003e\u003ccode\u003ek1e(x)\u003c/code\u003e\u003c/td\u003e\n    \u003ctd\u003eExponentially scaled k1\u003c/td\u003e\n    \u003ctd\u003e\u003ca href=\"http://www.netlib.org/cephes/doubldoc.html#k1e\"\u003ec-doc\u003c/a\u003e\u0026nbsp;\u0026nbsp;\u0026#8226;\u0026nbsp;\u0026nbsp;\u003ca href=\"#double--cephesk1ex-double\"\u003ejs-doc\u003c/a\u003e\u003c/td\u003e\n\u003c/tr\u003e\n  \u003ctr\u003e\n    \u003ctd\u003e\u003ccode\u003ekn(nn, x)\u003c/code\u003e\u003c/td\u003e\n    \u003ctd\u003eMod. Bessel, 3rd kind, order n\u003c/td\u003e\n    \u003ctd\u003e\u003ca href=\"http://www.netlib.org/cephes/doubldoc.html#kn\"\u003ec-doc\u003c/a\u003e\u0026nbsp;\u0026nbsp;\u0026#8226;\u0026nbsp;\u0026nbsp;\u003ca href=\"#double--cephesknnn-int-x-double\"\u003ejs-doc\u003c/a\u003e\u003c/td\u003e\n\u003c/tr\u003e\n  \u003ctr\u003e\n    \u003ctd colspan=\"3\"\u003e\u003cstrong\u003eHypergeometric\u003c/strong\u003e\u003c/td\u003e\n  \u003c/tr\u003e\n  \u003ctr\u003e\n    \u003ctd\u003e\u003ccode\u003ehyperg(a, b, x)\u003c/code\u003e\u003c/td\u003e\n    \u003ctd\u003eConfluent hypergeometric\u003c/td\u003e\n    \u003ctd\u003e\u003ca href=\"http://www.netlib.org/cephes/doubldoc.html#hyperg\"\u003ec-doc\u003c/a\u003e\u0026nbsp;\u0026nbsp;\u0026#8226;\u0026nbsp;\u0026nbsp;\u003ca href=\"#double--cepheshyperga-double-b-double-x-double\"\u003ejs-doc\u003c/a\u003e\u003c/td\u003e\n\u003c/tr\u003e\n  \u003ctr\u003e\n    \u003ctd\u003e\u003ccode\u003ehyp2f1(a, b, c, x)\u003c/code\u003e\u003c/td\u003e\n    \u003ctd\u003eGauss hypergeometric function\u003c/td\u003e\n    \u003ctd\u003e\u003ca href=\"http://www.netlib.org/cephes/doubldoc.html#hyp2f1\"\u003ec-doc\u003c/a\u003e\u0026nbsp;\u0026nbsp;\u0026#8226;\u0026nbsp;\u0026nbsp;\u003ca href=\"#double--cepheshyp2f1a-double-b-double-c-double-x-double\"\u003ejs-doc\u003c/a\u003e\u003c/td\u003e\n\u003c/tr\u003e\n  \u003ctr\u003e\n    \u003ctd colspan=\"3\"\u003e\u003cstrong\u003eElliptic\u003c/strong\u003e\u003c/td\u003e\n  \u003c/tr\u003e\n  \u003ctr\u003e\n    \u003ctd\u003e\u003ccode\u003eellpe(x)\u003c/code\u003e\u003c/td\u003e\n    \u003ctd\u003eComplete elliptic integral\u003c/td\u003e\n    \u003ctd\u003e\u003ca href=\"http://www.netlib.org/cephes/doubldoc.html#ellpe\"\u003ec-doc\u003c/a\u003e\u0026nbsp;\u0026nbsp;\u0026#8226;\u0026nbsp;\u0026nbsp;\u003ca href=\"#double--cephesellpex-double\"\u003ejs-doc\u003c/a\u003e\u003c/td\u003e\n\u003c/tr\u003e\n  \u003ctr\u003e\n    \u003ctd\u003e\u003ccode\u003eellie(phi, m)\u003c/code\u003e\u003c/td\u003e\n    \u003ctd\u003eIncomplete elliptic integral\u003c/td\u003e\n    \u003ctd\u003e\u003ca href=\"http://www.netlib.org/cephes/doubldoc.html#ellie\"\u003ec-doc\u003c/a\u003e\u0026nbsp;\u0026nbsp;\u0026#8226;\u0026nbsp;\u0026nbsp;\u003ca href=\"#double--cepheselliephi-double-m-double\"\u003ejs-doc\u003c/a\u003e\u003c/td\u003e\n\u003c/tr\u003e\n  \u003ctr\u003e\n    \u003ctd\u003e\u003ccode\u003eellpk(x)\u003c/code\u003e\u003c/td\u003e\n    \u003ctd\u003eComplete elliptic integral\u003c/td\u003e\n    \u003ctd\u003e\u003ca href=\"http://www.netlib.org/cephes/doubldoc.html#ellpk\"\u003ec-doc\u003c/a\u003e\u0026nbsp;\u0026nbsp;\u0026#8226;\u0026nbsp;\u0026nbsp;\u003ca href=\"#double--cephesellpkx-double\"\u003ejs-doc\u003c/a\u003e\u003c/td\u003e\n\u003c/tr\u003e\n  \u003ctr\u003e\n    \u003ctd\u003e\u003ccode\u003eellik(phi, m)\u003c/code\u003e\u003c/td\u003e\n    \u003ctd\u003eIncomplete elliptic integral\u003c/td\u003e\n    \u003ctd\u003e\u003ca href=\"http://www.netlib.org/cephes/doubldoc.html#ellik\"\u003ec-doc\u003c/a\u003e\u0026nbsp;\u0026nbsp;\u0026#8226;\u0026nbsp;\u0026nbsp;\u003ca href=\"#double--cephesellikphi-double-m-double\"\u003ejs-doc\u003c/a\u003e\u003c/td\u003e\n\u003c/tr\u003e\n  \u003ctr\u003e\n    \u003ctd\u003e\u003ccode\u003eellpj(u, m)\u003c/code\u003e\u003c/td\u003e\n    \u003ctd\u003eJacobian elliptic function\u003c/td\u003e\n    \u003ctd\u003e\u003ca href=\"http://www.netlib.org/cephes/doubldoc.html#ellpj\"\u003ec-doc\u003c/a\u003e\u0026nbsp;\u0026nbsp;\u0026#8226;\u0026nbsp;\u0026nbsp;\u003ca href=\"#int-extra--cephesellpju-double-m-double\"\u003ejs-doc\u003c/a\u003e\u003c/td\u003e\n\u003c/tr\u003e\n  \u003ctr\u003e\n    \u003ctd colspan=\"3\"\u003e\u003cstrong\u003eProbability\u003c/strong\u003e\u003c/td\u003e\n  \u003c/tr\u003e\n  \u003ctr\u003e\n    \u003ctd\u003e\u003ccode\u003ebtdtr(a, b, x)\u003c/code\u003e\u003c/td\u003e\n    \u003ctd\u003eBeta distribution\u003c/td\u003e\n    \u003ctd\u003e\u003ca href=\"http://www.netlib.org/cephes/doubldoc.html#btdtr\"\u003ec-doc\u003c/a\u003e\u0026nbsp;\u0026nbsp;\u0026#8226;\u0026nbsp;\u0026nbsp;\u003ca href=\"#double--cephesbtdtra-double-b-double-x-double\"\u003ejs-doc\u003c/a\u003e\u003c/td\u003e\n\u003c/tr\u003e\n  \u003ctr\u003e\n    \u003ctd\u003e\u003ccode\u003esmirnov(n, e)\u003c/code\u003e\u003c/td\u003e\n    \u003ctd\u003eExact Smirnov statistic, for one-sided test.\u003c/td\u003e\n    \u003ctd\u003e\u003ca href=\"http://www.netlib.org/cephes/doubldoc.html#smirnov\"\u003ec-doc\u003c/a\u003e\u0026nbsp;\u0026nbsp;\u0026#8226;\u0026nbsp;\u0026nbsp;\u003ca href=\"#double--cephessmirnovn-int-e-double\"\u003ejs-doc\u003c/a\u003e\u003c/td\u003e\n\u003c/tr\u003e\n  \u003ctr\u003e\n    \u003ctd\u003e\u003ccode\u003ekolmogorov(y)\u003c/code\u003e\u003c/td\u003e\n    \u003ctd\u003eKolmogorov's limiting distribution of two-sided test.\u003c/td\u003e\n    \u003ctd\u003e\u003ca href=\"http://www.netlib.org/cephes/doubldoc.html#kolmogorov\"\u003ec-doc\u003c/a\u003e\u0026nbsp;\u0026nbsp;\u0026#8226;\u0026nbsp;\u0026nbsp;\u003ca href=\"#double--cepheskolmogorovy-double\"\u003ejs-doc\u003c/a\u003e\u003c/td\u003e\n\u003c/tr\u003e\n  \u003ctr\u003e\n    \u003ctd\u003e\u003ccode\u003esmirnovi(n, p)\u003c/code\u003e\u003c/td\u003e\n    \u003ctd\u003eFunctional inverse of Smirnov distribution.\u003c/td\u003e\n    \u003ctd\u003e\u003ca href=\"http://www.netlib.org/cephes/doubldoc.html#smirnovi\"\u003ec-doc\u003c/a\u003e\u0026nbsp;\u0026nbsp;\u0026#8226;\u0026nbsp;\u0026nbsp;\u003ca href=\"#double--cephessmirnovin-int-p-double\"\u003ejs-doc\u003c/a\u003e\u003c/td\u003e\n\u003c/tr\u003e\n  \u003ctr\u003e\n    \u003ctd\u003e\u003ccode\u003ekolmogi(p)\u003c/code\u003e\u003c/td\u003e\n    \u003ctd\u003eFunctional inverse of Kolmogorov statistic for two-sided test.\u003c/td\u003e\n    \u003ctd\u003e\u003ca href=\"http://www.netlib.org/cephes/doubldoc.html#kolmogi\"\u003ec-doc\u003c/a\u003e\u0026nbsp;\u0026nbsp;\u0026#8226;\u0026nbsp;\u0026nbsp;\u003ca href=\"#double--cepheskolmogip-double\"\u003ejs-doc\u003c/a\u003e\u003c/td\u003e\n\u003c/tr\u003e\n  \u003ctr\u003e\n    \u003ctd\u003e\u003ccode\u003enbdtri(k, n, p)\u003c/code\u003e\u003c/td\u003e\n    \u003ctd\u003eInverse Negative binomial distribution\u003c/td\u003e\n    \u003ctd\u003e\u003ca href=\"http://www.netlib.org/cephes/doubldoc.html#nbdtri\"\u003ec-doc\u003c/a\u003e\u0026nbsp;\u0026nbsp;\u0026#8226;\u0026nbsp;\u0026nbsp;\u003ca href=\"#double--cephesnbdtrik-int-n-int-p-double\"\u003ejs-doc\u003c/a\u003e\u003c/td\u003e\n\u003c/tr\u003e\n  \u003ctr\u003e\n    \u003ctd\u003e\u003ccode\u003estdtri(k, p)\u003c/code\u003e\u003c/td\u003e\n    \u003ctd\u003eFunctional inverse of Student's t distribution\u003c/td\u003e\n    \u003ctd\u003e\u003ca href=\"http://www.netlib.org/cephes/doubldoc.html#stdtri\"\u003ec-doc\u003c/a\u003e\u0026nbsp;\u0026nbsp;\u0026#8226;\u0026nbsp;\u0026nbsp;\u003ca href=\"#double--cephesstdtrik-int-p-double\"\u003ejs-doc\u003c/a\u003e\u003c/td\u003e\n\u003c/tr\u003e\n  \u003ctr\u003e\n    \u003ctd\u003e\u003ccode\u003ebdtr(k, n, p)\u003c/code\u003e\u003c/td\u003e\n    \u003ctd\u003eBinomial distribution\u003c/td\u003e\n    \u003ctd\u003e\u003ca href=\"http://www.netlib.org/cephes/doubldoc.html#bdtr\"\u003ec-doc\u003c/a\u003e\u0026nbsp;\u0026nbsp;\u0026#8226;\u0026nbsp;\u0026nbsp;\u003ca href=\"#double--cephesbdtrk-int-n-int-p-double\"\u003ejs-doc\u003c/a\u003e\u003c/td\u003e\n\u003c/tr\u003e\n  \u003ctr\u003e\n    \u003ctd\u003e\u003ccode\u003ebdtrc(k, n, p)\u003c/code\u003e\u003c/td\u003e\n    \u003ctd\u003eComplemented binomial\u003c/td\u003e\n    \u003ctd\u003e\u003ca href=\"http://www.netlib.org/cephes/doubldoc.html#bdtrc\"\u003ec-doc\u003c/a\u003e\u0026nbsp;\u0026nbsp;\u0026#8226;\u0026nbsp;\u0026nbsp;\u003ca href=\"#double--cephesbdtrck-int-n-int-p-double\"\u003ejs-doc\u003c/a\u003e\u003c/td\u003e\n\u003c/tr\u003e\n  \u003ctr\u003e\n    \u003ctd\u003e\u003ccode\u003ebdtri(k, n, y)\u003c/code\u003e\u003c/td\u003e\n    \u003ctd\u003eInverse binomial\u003c/td\u003e\n    \u003ctd\u003e\u003ca href=\"http://www.netlib.org/cephes/doubldoc.html#bdtri\"\u003ec-doc\u003c/a\u003e\u0026nbsp;\u0026nbsp;\u0026#8226;\u0026nbsp;\u0026nbsp;\u003ca href=\"#double--cephesbdtrik-int-n-int-y-double\"\u003ejs-doc\u003c/a\u003e\u003c/td\u003e\n\u003c/tr\u003e\n  \u003ctr\u003e\n    \u003ctd\u003e\u003ccode\u003echdtr(df, x)\u003c/code\u003e\u003c/td\u003e\n    \u003ctd\u003eChi square distribution\u003c/td\u003e\n    \u003ctd\u003e\u003ca href=\"http://www.netlib.org/cephes/doubldoc.html#chdtr\"\u003ec-doc\u003c/a\u003e\u0026nbsp;\u0026nbsp;\u0026#8226;\u0026nbsp;\u0026nbsp;\u003ca href=\"#double--cepheschdtrdf-double-x-double\"\u003ejs-doc\u003c/a\u003e\u003c/td\u003e\n\u003c/tr\u003e\n  \u003ctr\u003e\n    \u003ctd\u003e\u003ccode\u003echdtrc(df, x)\u003c/code\u003e\u003c/td\u003e\n    \u003ctd\u003eComplemented Chi square\u003c/td\u003e\n    \u003ctd\u003e\u003ca href=\"http://www.netlib.org/cephes/doubldoc.html#chdtrc\"\u003ec-doc\u003c/a\u003e\u0026nbsp;\u0026nbsp;\u0026#8226;\u0026nbsp;\u0026nbsp;\u003ca href=\"#double--cepheschdtrcdf-double-x-double\"\u003ejs-doc\u003c/a\u003e\u003c/td\u003e\n\u003c/tr\u003e\n  \u003ctr\u003e\n    \u003ctd\u003e\u003ccode\u003echdtri(df, y)\u003c/code\u003e\u003c/td\u003e\n    \u003ctd\u003eInverse Chi square\u003c/td\u003e\n    \u003ctd\u003e\u003ca href=\"http://www.netlib.org/cephes/doubldoc.html#chdtri\"\u003ec-doc\u003c/a\u003e\u0026nbsp;\u0026nbsp;\u0026#8226;\u0026nbsp;\u0026nbsp;\u003ca href=\"#double--cepheschdtridf-double-y-double\"\u003ejs-doc\u003c/a\u003e\u003c/td\u003e\n\u003c/tr\u003e\n  \u003ctr\u003e\n    \u003ctd\u003e\u003ccode\u003efdtr(ia, ib, x)\u003c/code\u003e\u003c/td\u003e\n    \u003ctd\u003eF distribution\u003c/td\u003e\n    \u003ctd\u003e\u003ca href=\"http://www.netlib.org/cephes/doubldoc.html#fdtr\"\u003ec-doc\u003c/a\u003e\u0026nbsp;\u0026nbsp;\u0026#8226;\u0026nbsp;\u0026nbsp;\u003ca href=\"#double--cephesfdtria-int-ib-int-x-double\"\u003ejs-doc\u003c/a\u003e\u003c/td\u003e\n\u003c/tr\u003e\n  \u003ctr\u003e\n    \u003ctd\u003e\u003ccode\u003efdtrc(ia, ib, x)\u003c/code\u003e\u003c/td\u003e\n    \u003ctd\u003eComplemented F\u003c/td\u003e\n    \u003ctd\u003e\u003ca href=\"http://www.netlib.org/cephes/doubldoc.html#fdtrc\"\u003ec-doc\u003c/a\u003e\u0026nbsp;\u0026nbsp;\u0026#8226;\u0026nbsp;\u0026nbsp;\u003ca href=\"#double--cephesfdtrcia-int-ib-int-x-double\"\u003ejs-doc\u003c/a\u003e\u003c/td\u003e\n\u003c/tr\u003e\n  \u003ctr\u003e\n    \u003ctd\u003e\u003ccode\u003efdtri(ia, ib, y)\u003c/code\u003e\u003c/td\u003e\n    \u003ctd\u003eInverse F distribution\u003c/td\u003e\n    \u003ctd\u003e\u003ca href=\"http://www.netlib.org/cephes/doubldoc.html#fdtri\"\u003ec-doc\u003c/a\u003e\u0026nbsp;\u0026nbsp;\u0026#8226;\u0026nbsp;\u0026nbsp;\u003ca href=\"#double--cephesfdtriia-int-ib-int-y-double\"\u003ejs-doc\u003c/a\u003e\u003c/td\u003e\n\u003c/tr\u003e\n  \u003ctr\u003e\n    \u003ctd\u003e\u003ccode\u003egdtr(a, b, x)\u003c/code\u003e\u003c/td\u003e\n    \u003ctd\u003eGamma distribution\u003c/td\u003e\n    \u003ctd\u003e\u003ca href=\"http://www.netlib.org/cephes/doubldoc.html#gdtr\"\u003ec-doc\u003c/a\u003e\u0026nbsp;\u0026nbsp;\u0026#8226;\u0026nbsp;\u0026nbsp;\u003ca href=\"#double--cephesgdtra-double-b-double-x-double\"\u003ejs-doc\u003c/a\u003e\u003c/td\u003e\n\u003c/tr\u003e\n  \u003ctr\u003e\n    \u003ctd\u003e\u003ccode\u003egdtrc(a, b, x)\u003c/code\u003e\u003c/td\u003e\n    \u003ctd\u003eComplemented gamma\u003c/td\u003e\n    \u003ctd\u003e\u003ca href=\"http://www.netlib.org/cephes/doubldoc.html#gdtrc\"\u003ec-doc\u003c/a\u003e\u0026nbsp;\u0026nbsp;\u0026#8226;\u0026nbsp;\u0026nbsp;\u003ca href=\"#double--cephesgdtrca-double-b-double-x-double\"\u003ejs-doc\u003c/a\u003e\u003c/td\u003e\n\u003c/tr\u003e\n  \u003ctr\u003e\n    \u003ctd\u003e\u003ccode\u003enbdtr(k, n, p)\u003c/code\u003e\u003c/td\u003e\n    \u003ctd\u003eNegative binomial distribution\u003c/td\u003e\n    \u003ctd\u003e\u003ca href=\"http://www.netlib.org/cephes/doubldoc.html#nbdtr\"\u003ec-doc\u003c/a\u003e\u0026nbsp;\u0026nbsp;\u0026#8226;\u0026nbsp;\u0026nbsp;\u003ca href=\"#double--cephesnbdtrk-int-n-int-p-double\"\u003ejs-doc\u003c/a\u003e\u003c/td\u003e\n\u003c/tr\u003e\n  \u003ctr\u003e\n    \u003ctd\u003e\u003ccode\u003enbdtrc(k, n, p)\u003c/code\u003e\u003c/td\u003e\n    \u003ctd\u003eComplemented negative binomial\u003c/td\u003e\n    \u003ctd\u003e\u003ca href=\"http://www.netlib.org/cephes/doubldoc.html#nbdtrc\"\u003ec-doc\u003c/a\u003e\u0026nbsp;\u0026nbsp;\u0026#8226;\u0026nbsp;\u0026nbsp;\u003ca href=\"#double--cephesnbdtrck-int-n-int-p-double\"\u003ejs-doc\u003c/a\u003e\u003c/td\u003e\n\u003c/tr\u003e\n  \u003ctr\u003e\n    \u003ctd\u003e\u003ccode\u003endtr(a)\u003c/code\u003e\u003c/td\u003e\n    \u003ctd\u003eNormal distribution\u003c/td\u003e\n    \u003ctd\u003e\u003ca href=\"http://www.netlib.org/cephes/doubldoc.html#ndtr\"\u003ec-doc\u003c/a\u003e\u0026nbsp;\u0026nbsp;\u0026#8226;\u0026nbsp;\u0026nbsp;\u003ca href=\"#double--cephesndtra-double\"\u003ejs-doc\u003c/a\u003e\u003c/td\u003e\n\u003c/tr\u003e\n  \u003ctr\u003e\n    \u003ctd\u003e\u003ccode\u003endtri(y0)\u003c/code\u003e\u003c/td\u003e\n    \u003ctd\u003eInverse normal distribution\u003c/td\u003e\n    \u003ctd\u003e\u003ca href=\"http://www.netlib.org/cephes/doubldoc.html#ndtri\"\u003ec-doc\u003c/a\u003e\u0026nbsp;\u0026nbsp;\u0026#8226;\u0026nbsp;\u0026nbsp;\u003ca href=\"#double--cephesndtriy0-double\"\u003ejs-doc\u003c/a\u003e\u003c/td\u003e\n\u003c/tr\u003e\n  \u003ctr\u003e\n    \u003ctd\u003e\u003ccode\u003epdtr(k, m)\u003c/code\u003e\u003c/td\u003e\n    \u003ctd\u003ePoisson distribution\u003c/td\u003e\n    \u003ctd\u003e\u003ca href=\"http://www.netlib.org/cephes/doubldoc.html#pdtr\"\u003ec-doc\u003c/a\u003e\u0026nbsp;\u0026nbsp;\u0026#8226;\u0026nbsp;\u0026nbsp;\u003ca href=\"#double--cephespdtrk-int-m-double\"\u003ejs-doc\u003c/a\u003e\u003c/td\u003e\n\u003c/tr\u003e\n  \u003ctr\u003e\n    \u003ctd\u003e\u003ccode\u003epdtrc(k, m)\u003c/code\u003e\u003c/td\u003e\n    \u003ctd\u003eComplemented Poisson\u003c/td\u003e\n    \u003ctd\u003e\u003ca href=\"http://www.netlib.org/cephes/doubldoc.html#pdtrc\"\u003ec-doc\u003c/a\u003e\u0026nbsp;\u0026nbsp;\u0026#8226;\u0026nbsp;\u0026nbsp;\u003ca href=\"#double--cephespdtrck-int-m-double\"\u003ejs-doc\u003c/a\u003e\u003c/td\u003e\n\u003c/tr\u003e\n  \u003ctr\u003e\n    \u003ctd\u003e\u003ccode\u003epdtri(k, y)\u003c/code\u003e\u003c/td\u003e\n    \u003ctd\u003eInverse Poisson distribution\u003c/td\u003e\n    \u003ctd\u003e\u003ca href=\"http://www.netlib.org/cephes/doubldoc.html#pdtri\"\u003ec-doc\u003c/a\u003e\u0026nbsp;\u0026nbsp;\u0026#8226;\u0026nbsp;\u0026nbsp;\u003ca href=\"#double--cephespdtrik-int-y-double\"\u003ejs-doc\u003c/a\u003e\u003c/td\u003e\n\u003c/tr\u003e\n  \u003ctr\u003e\n    \u003ctd\u003e\u003ccode\u003estdtr(k, t)\u003c/code\u003e\u003c/td\u003e\n    \u003ctd\u003eStudent's t distribution\u003c/td\u003e\n    \u003ctd\u003e\u003ca href=\"http://www.netlib.org/cephes/doubldoc.html#stdtr\"\u003ec-doc\u003c/a\u003e\u0026nbsp;\u0026nbsp;\u0026#8226;\u0026nbsp;\u0026nbsp;\u003ca href=\"#double--cephesstdtrk-int-t-double\"\u003ejs-doc\u003c/a\u003e\u003c/td\u003e\n\u003c/tr\u003e\n  \u003ctr\u003e\n    \u003ctd colspan=\"3\"\u003e\u003cstrong\u003eMiscellaneous\u003c/strong\u003e\u003c/td\u003e\n  \u003c/tr\u003e\n  \u003ctr\u003e\n    \u003ctd\u003e\u003ccode\u003eplancki(w, T)\u003c/code\u003e\u003c/td\u003e\n    \u003ctd\u003eIntegral of Planck's black body radiation formula\u003c/td\u003e\n    \u003ctd\u003e\u003ca href=\"http://www.netlib.org/cephes/doubldoc.html#plancki\"\u003ec-doc\u003c/a\u003e\u0026nbsp;\u0026nbsp;\u0026#8226;\u0026nbsp;\u0026nbsp;\u003ca href=\"#double--cephesplanckiw-double-t-double\"\u003ejs-doc\u003c/a\u003e\u003c/td\u003e\n\u003c/tr\u003e\n  \u003ctr\u003e\n    \u003ctd\u003e\u003ccode\u003eplanckc(w, T)\u003c/code\u003e\u003c/td\u003e\n    \u003ctd\u003eComplemented Planck radiation integral\u003c/td\u003e\n    \u003ctd\u003e\u003ca href=\"http://www.netlib.org/cephes/doubldoc.html#planckc\"\u003ec-doc\u003c/a\u003e\u0026nbsp;\u0026nbsp;\u0026#8226;\u0026nbsp;\u0026nbsp;\u003ca href=\"#double--cephesplanckcw-double-t-double\"\u003ejs-doc\u003c/a\u003e\u003c/td\u003e\n\u003c/tr\u003e\n  \u003ctr\u003e\n    \u003ctd\u003e\u003ccode\u003eplanckd(w, T)\u003c/code\u003e\u003c/td\u003e\n    \u003ctd\u003ePlanck's black body radiation formula\u003c/td\u003e\n    \u003ctd\u003e\u003ca href=\"http://www.netlib.org/cephes/doubldoc.html#planckd\"\u003ec-doc\u003c/a\u003e\u0026nbsp;\u0026nbsp;\u0026#8226;\u0026nbsp;\u0026nbsp;\u003ca href=\"#double--cephesplanckdw-double-t-double\"\u003ejs-doc\u003c/a\u003e\u003c/td\u003e\n\u003c/tr\u003e\n  \u003ctr\u003e\n    \u003ctd\u003e\u003ccode\u003eplanckw(T)\u003c/code\u003e\u003c/td\u003e\n    \u003ctd\u003eWavelength, w, of maximum radiation at given temperature T.\u003c/td\u003e\n    \u003ctd\u003e\u003ca href=\"http://www.netlib.org/cephes/doubldoc.html#planckw\"\u003ec-doc\u003c/a\u003e\u0026nbsp;\u0026nbsp;\u0026#8226;\u0026nbsp;\u0026nbsp;\u003ca href=\"#double--cephesplanckwt-double\"\u003ejs-doc\u003c/a\u003e\u003c/td\u003e\n\u003c/tr\u003e\n  \u003ctr\u003e\n    \u003ctd\u003e\u003ccode\u003espence(x)\u003c/code\u003e\u003c/td\u003e\n    \u003ctd\u003eDilogarithm\u003c/td\u003e\n    \u003ctd\u003e\u003ca href=\"http://www.netlib.org/cephes/doubldoc.html#spence\"\u003ec-doc\u003c/a\u003e\u0026nbsp;\u0026nbsp;\u0026#8226;\u0026nbsp;\u0026nbsp;\u003ca href=\"#double--cephesspencex-double\"\u003ejs-doc\u003c/a\u003e\u003c/td\u003e\n\u003c/tr\u003e\n  \u003ctr\u003e\n    \u003ctd\u003e\u003ccode\u003ezetac(x)\u003c/code\u003e\u003c/td\u003e\n    \u003ctd\u003eRiemann Zeta function\u003c/td\u003e\n    \u003ctd\u003e\u003ca href=\"http://www.netlib.org/cephes/doubldoc.html#zetac\"\u003ec-doc\u003c/a\u003e\u0026nbsp;\u0026nbsp;\u0026#8226;\u0026nbsp;\u0026nbsp;\u003ca href=\"#double--cepheszetacx-double\"\u003ejs-doc\u003c/a\u003e\u003c/td\u003e\n\u003c/tr\u003e\n  \u003ctr\u003e\n    \u003ctd\u003e\u003ccode\u003ezeta(x, q)\u003c/code\u003e\u003c/td\u003e\n    \u003ctd\u003eTwo argument zeta function\u003c/td\u003e\n    \u003ctd\u003e\u003ca href=\"http://www.netlib.org/cephes/doubldoc.html#zeta\"\u003ec-doc\u003c/a\u003e\u0026nbsp;\u0026nbsp;\u0026#8226;\u0026nbsp;\u0026nbsp;\u003ca href=\"#double--cepheszetax-double-q-double\"\u003ejs-doc\u003c/a\u003e\u003c/td\u003e\n\u003c/tr\u003e\n  \u003ctr\u003e\n    \u003ctd\u003e\u003ccode\u003estruve(v, x)\u003c/code\u003e\u003c/td\u003e\n    \u003ctd\u003eStruve function\u003c/td\u003e\n    \u003ctd\u003e\u003ca href=\"http://www.netlib.org/cephes/doubldoc.html#struve\"\u003ec-doc\u003c/a\u003e\u0026nbsp;\u0026nbsp;\u0026#8226;\u0026nbsp;\u0026nbsp;\u003ca href=\"#double--cephesstruvev-double-x-double\"\u003ejs-doc\u003c/a\u003e\u003c/td\u003e\n\u003c/tr\u003e\n  \u003ctr\u003e\n    \u003ctd colspan=\"3\"\u003e\u003cstrong\u003ePolynomials and Power Series\u003c/strong\u003e\u003c/td\u003e\n  \u003c/tr\u003e\n  \u003ctr\u003e\n    \u003ctd\u003e\u003ccode\u003ep1evl(x, coef, N)\u003c/code\u003e\u003c/td\u003e\n    \u003ctd\u003eEvaluate polynomial when coefficient of x is 1.0.\u003c/td\u003e\n    \u003ctd\u003e\u003ca href=\"http://www.netlib.org/cephes/doubldoc.html#p1evl\"\u003ec-doc\u003c/a\u003e\u0026nbsp;\u0026nbsp;\u0026#8226;\u0026nbsp;\u0026nbsp;\u003ca href=\"#double--cephesp1evlx-double-coef-float64array-n-int\"\u003ejs-doc\u003c/a\u003e\u003c/td\u003e\n\u003c/tr\u003e\n  \u003ctr\u003e\n    \u003ctd\u003e\u003ccode\u003epolylog(n, x)\u003c/code\u003e\u003c/td\u003e\n    \u003ctd\u003eThe polylogarithm of order n\u003c/td\u003e\n    \u003ctd\u003e\u003ca href=\"http://www.netlib.org/cephes/doubldoc.html#polylog\"\u003ec-doc\u003c/a\u003e\u0026nbsp;\u0026nbsp;\u0026#8226;\u0026nbsp;\u0026nbsp;\u003ca href=\"#double--cephespolylogn-int-x-double\"\u003ejs-doc\u003c/a\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\n\u003c/tbody\u003e\n\u003c/table\u003e\n\n## Documentation\n\n### Arithmetic and Algebraic\n\n#### int = cephes.signbit(x: double)\n\n`signbit` is the \"Returns the sign bit\". You can read the full documentation at http://www.netlib.org/cephes/doubldoc.html#signbit.\n\n```js\nconst ret = cephes.signbit(x);\n```\n\n#### int = cephes.isnan(x: double)\n\n`isnan` is the \"Check if Not-A-Number\". You can read the full documentation at http://www.netlib.org/cephes/doubldoc.html#isnan.\n\n```js\nconst ret = cephes.isnan(x);\n```\n\n#### int = cephes.isfinite(x: double)\n\n`isfinite` is the \"Check if finite\". You can read the full documentation at http://www.netlib.org/cephes/doubldoc.html#isfinite.\n\n```js\nconst ret = cephes.isfinite(x);\n```\n\n#### double = cephes.cbrt(x: double)\n\n`cbrt` is the \"Cube root\". You can read the full documentation at http://www.netlib.org/cephes/doubldoc.html#cbrt.\n\n```js\nconst ret = cephes.cbrt(x);\n```\n\n#### double = cephes.polevl(x: double, coef: Float64Array, N: int)\n\n`polevl` is the \"Evaluate polynomial\". You can read the full documentation at http://www.netlib.org/cephes/doubldoc.html#polevl.\n\n```js\nconst ret = cephes.polevl(x, new Float64Array(coef), N);\n```\n\n#### double = cephes.chbevl(x: double, array: Float64Array, n: int)\n\n`chbevl` is the \"Evaluate Chebyshev series\". You can read the full documentation at http://www.netlib.org/cephes/doubldoc.html#chbevl.\n\n```js\nconst ret = cephes.chbevl(x, new Float64Array(array), n);\n```\n\n#### double = cephes.round(x: double)\n\n`round` is the \"Round to nearest integer value\". You can read the full documentation at http://www.netlib.org/cephes/doubldoc.html#round.\n\n```js\nconst ret = cephes.round(x);\n```\n\n#### [double, extra] = cephes.frexp(x: double)\n\n`frexp` is the \"Extract exponent\". You can read the full documentation at http://www.netlib.org/cephes/doubldoc.html#frexp.\n\n```js\nconst [ret, extra] = cephes.frexp(x);\n```\n\nThe `extra` object contains the following values: \n\n```js\nconst {\n  pw2: int\n} = extra;\n```\n\n#### double = cephes.ldexp(x: double, pw2: int)\n\n`ldexp` is the \"Add integer to exponent\". You can read the full documentation at http://www.netlib.org/cephes/doubldoc.html#ldexp.\n\n```js\nconst ret = cephes.ldexp(x, pw2);\n```\n\n### Exponential and Trigonometric\n\n#### double = cephes.expx2(x: double, sign: int)\n\n`expx2` is the \"Exponential of squared argument\". You can read the full documentation at http://www.netlib.org/cephes/doubldoc.html#expx2.\n\n```js\nconst ret = cephes.expx2(x, sign);\n```\n\n#### double = cephes.radian(d: double, m: double, s: double)\n\n`radian` is the \"Degrees, minutes, seconds to radians\". You can read the full documentation at http://www.netlib.org/cephes/doubldoc.html#radian.\n\n```js\nconst ret = cephes.radian(d, m, s);\n```\n\n#### [int, extra] = cephes.sincos(x: double, flg: int)\n\n`sincos` is the \"Circular sine and cosine of argument in degrees\". You can read the full documentation at http://www.netlib.org/cephes/doubldoc.html#sincos.\n\n```js\nconst [ret, extra] = cephes.sincos(x, flg);\n```\n\nThe `extra` object contains the following values: \n\n```js\nconst {\n  s: double,\n  c: double\n} = extra;\n```\n\n#### double = cephes.cot(x: double)\n\n`cot` is the \"Circular cotangent\". You can read the full documentation at http://www.netlib.org/cephes/doubldoc.html#cot.\n\n```js\nconst ret = cephes.cot(x);\n```\n\n#### double = cephes.cotdg(x: double)\n\n`cotdg` is the \"Circular cotangent of argument in degrees\". You can read the full documentation at http://www.netlib.org/cephes/doubldoc.html#cotdg.\n\n```js\nconst ret = cephes.cotdg(x);\n```\n\n#### double = cephes.log1p(x: double)\n\n`log1p` is the \"Relative error approximations for log(1 + x)\". You can read the full documentation at http://www.netlib.org/cephes/doubldoc.html#log1p.\n\n```js\nconst ret = cephes.log1p(x);\n```\n\n#### double = cephes.expm1(x: double)\n\n`expm1` is the \"Relative error approximations for exp(x) - 1\". You can read the full documentation at http://www.netlib.org/cephes/doubldoc.html#expm1.\n\n```js\nconst ret = cephes.expm1(x);\n```\n\n#### double = cephes.cosm1(x: double)\n\n`cosm1` is the \"Relative error approximations for cos(x) - 1\". You can read the full documentation at http://www.netlib.org/cephes/doubldoc.html#cosm1.\n\n```js\nconst ret = cephes.cosm1(x);\n```\n\n#### double = cephes.acos(x: double)\n\n`acos` is the \"Arc cosine\". You can read the full documentation at http://www.netlib.org/cephes/doubldoc.html#acos.\n\n```js\nconst ret = cephes.acos(x);\n```\n\n#### double = cephes.acosh(x: double)\n\n`acosh` is the \"Arc hyperbolic cosine\". You can read the full documentation at http://www.netlib.org/cephes/doubldoc.html#acosh.\n\n```js\nconst ret = cephes.acosh(x);\n```\n\n#### double = cephes.asinh(xx: double)\n\n`asinh` is the \"Arc hyperbolic sine\". You can read the full documentation at http://www.netlib.org/cephes/doubldoc.html#asinh.\n\n```js\nconst ret = cephes.asinh(xx);\n```\n\n#### double = cephes.atanh(x: double)\n\n`atanh` is the \"Arc hyperbolic tangent\". You can read the full documentation at http://www.netlib.org/cephes/doubldoc.html#atanh.\n\n```js\nconst ret = cephes.atanh(x);\n```\n\n#### double = cephes.asin(x: double)\n\n`asin` is the \"Arcsine\". You can read the full documentation at http://www.netlib.org/cephes/doubldoc.html#asin.\n\n```js\nconst ret = cephes.asin(x);\n```\n\n#### double = cephes.atan(x: double)\n\n`atan` is the \"Arctangent\". You can read the full documentation at http://www.netlib.org/cephes/doubldoc.html#atan.\n\n```js\nconst ret = cephes.atan(x);\n```\n\n#### double = cephes.atan2(y: double, x: double)\n\n`atan2` is the \"Quadrant correct arctangent\". You can read the full documentation at http://www.netlib.org/cephes/doubldoc.html#atan2.\n\n```js\nconst ret = cephes.atan2(y, x);\n```\n\n#### double = cephes.cos(x: double)\n\n`cos` is the \"Cosine\". You can read the full documentation at http://www.netlib.org/cephes/doubldoc.html#cos.\n\n```js\nconst ret = cephes.cos(x);\n```\n\n#### double = cephes.cosdg(x: double)\n\n`cosdg` is the \"Cosine of arg in degrees\". You can read the full documentation at http://www.netlib.org/cephes/doubldoc.html#cosdg.\n\n```js\nconst ret = cephes.cosdg(x);\n```\n\n#### double = cephes.exp(x: double)\n\n`exp` is the \"Exponential, base e\". You can read the full documentation at http://www.netlib.org/cephes/doubldoc.html#exp.\n\n```js\nconst ret = cephes.exp(x);\n```\n\n#### double = cephes.exp2(x: double)\n\n`exp2` is the \"Exponential, base 2\". You can read the full documentation at http://www.netlib.org/cephes/doubldoc.html#exp2.\n\n```js\nconst ret = cephes.exp2(x);\n```\n\n#### double = cephes.exp10(x: double)\n\n`exp10` is the \"Exponential, base 10\". You can read the full documentation at http://www.netlib.org/cephes/doubldoc.html#exp10.\n\n```js\nconst ret = cephes.exp10(x);\n```\n\n#### double = cephes.cosh(x: double)\n\n`cosh` is the \"Hyperbolic cosine\". You can read the full documentation at http://www.netlib.org/cephes/doubldoc.html#cosh.\n\n```js\nconst ret = cephes.cosh(x);\n```\n\n#### double = cephes.sinh(x: double)\n\n`sinh` is the \"Hyperbolic sine\". You can read the full documentation at http://www.netlib.org/cephes/doubldoc.html#sinh.\n\n```js\nconst ret = cephes.sinh(x);\n```\n\n#### double = cephes.tanh(x: double)\n\n`tanh` is the \"Hyperbolic tangent\". You can read the full documentation at http://www.netlib.org/cephes/doubldoc.html#tanh.\n\n```js\nconst ret = cephes.tanh(x);\n```\n\n#### double = cephes.log(x: double)\n\n`log` is the \"Logarithm, base e\". You can read the full documentation at http://www.netlib.org/cephes/doubldoc.html#log.\n\n```js\nconst ret = cephes.log(x);\n```\n\n#### double = cephes.log2(x: double)\n\n`log2` is the \"Logarithm, base 2\". You can read the full documentation at http://www.netlib.org/cephes/doubldoc.html#log2.\n\n```js\nconst ret = cephes.log2(x);\n```\n\n#### double = cephes.log10(x: double)\n\n`log10` is the \"Logarithm, base 10\". You can read the full documentation at http://www.netlib.org/cephes/doubldoc.html#log10.\n\n```js\nconst ret = cephes.log10(x);\n```\n\n#### double = cephes.pow(x: double, y: double)\n\n`pow` is the \"Power\". You can read the full documentation at http://www.netlib.org/cephes/doubldoc.html#pow.\n\n```js\nconst ret = cephes.pow(x, y);\n```\n\n#### double = cephes.powi(x: double, nn: int)\n\n`powi` is the \"Integer Power\". You can read the full documentation at http://www.netlib.org/cephes/doubldoc.html#powi.\n\n```js\nconst ret = cephes.powi(x, nn);\n```\n\n#### double = cephes.sin(x: double)\n\n`sin` is the \"Sine\". You can read the full documentation at http://www.netlib.org/cephes/doubldoc.html#sin.\n\n```js\nconst ret = cephes.sin(x);\n```\n\n#### double = cephes.sindg(x: double)\n\n`sindg` is the \"Sine of arg in degrees\". You can read the full documentation at http://www.netlib.org/cephes/doubldoc.html#sindg.\n\n```js\nconst ret = cephes.sindg(x);\n```\n\n#### double = cephes.tan(x: double)\n\n`tan` is the \"Tangent\". You can read the full documentation at http://www.netlib.org/cephes/doubldoc.html#tan.\n\n```js\nconst ret = cephes.tan(x);\n```\n\n#### double = cephes.tandg(x: double)\n\n`tandg` is the \"Tangent of arg in degrees\". You can read the full documentation at http://www.netlib.org/cephes/doubldoc.html#tandg.\n\n```js\nconst ret = cephes.tandg(x);\n```\n\n### Exponential integral\n\n#### double = cephes.ei(x: double)\n\n`ei` is the \"Exponential integral\". You can read the full documentation at http://www.netlib.org/cephes/doubldoc.html#ei.\n\n```js\nconst ret = cephes.ei(x);\n```\n\n#### double = cephes.expn(n: int, x: double)\n\n`expn` is the \"Exponential integral\". You can read the full documentation at http://www.netlib.org/cephes/doubldoc.html#expn.\n\n```js\nconst ret = cephes.expn(n, x);\n```\n\n#### [int, extra] = cephes.shichi(x: double)\n\n`shichi` is the \"Hyperbolic cosine integral\". You can read the full documentation at http://www.netlib.org/cephes/doubldoc.html#shichi.\n\n```js\nconst [ret, extra] = cephes.shichi(x);\n```\n\nThe `extra` object contains the following values: \n\n```js\nconst {\n  si: double,\n  ci: double\n} = extra;\n```\n\n#### [int, extra] = cephes.sici(x: double)\n\n`sici` is the \"Cosine integral\". You can read the full documentation at http://www.netlib.org/cephes/doubldoc.html#sici.\n\n```js\nconst [ret, extra] = cephes.sici(x);\n```\n\nThe `extra` object contains the following values: \n\n```js\nconst {\n  si: double,\n  ci: double\n} = extra;\n```\n\n### Gamma\n\n#### double = cephes.lbeta(a: double, b: double)\n\n`lbeta` is the \"Natural log of |beta|.\". You can read the full documentation at http://www.netlib.org/cephes/doubldoc.html#lbeta.\n\n```js\nconst ret = cephes.lbeta(a, b);\n```\n\n#### double = cephes.beta(a: double, b: double)\n\n`beta` is the \"Beta\". You can read the full documentation at http://www.netlib.org/cephes/doubldoc.html#beta.\n\n```js\nconst ret = cephes.beta(a, b);\n```\n\n#### double = cephes.fac(i: int)\n\n`fac` is the \"Factorial\". You can read the full documentation at http://www.netlib.org/cephes/doubldoc.html#fac.\n\n```js\nconst ret = cephes.fac(i);\n```\n\n#### double = cephes.gamma(x: double)\n\n`gamma` is the \"Gamma\". You can read the full documentation at http://www.netlib.org/cephes/doubldoc.html#gamma.\n\n```js\nconst ret = cephes.gamma(x);\n```\n\n#### double = cephes.lgam(x: double)\n\n`lgam` is the \"Logarithm of gamma function\". You can read the full documentation at http://www.netlib.org/cephes/doubldoc.html#lgam.\n\n```js\nconst ret = cephes.lgam(x);\n```\n\n#### double = cephes.incbet(aa: double, bb: double, xx: double)\n\n`incbet` is the \"Incomplete beta integral\". You can read the full documentation at http://www.netlib.org/cephes/doubldoc.html#incbet.\n\n```js\nconst ret = cephes.incbet(aa, bb, xx);\n```\n\n#### double = cephes.incbi(aa: double, bb: double, yy0: double)\n\n`incbi` is the \"Inverse beta integral\". You can read the full documentation at http://www.netlib.org/cephes/doubldoc.html#incbi.\n\n```js\nconst ret = cephes.incbi(aa, bb, yy0);\n```\n\n#### double = cephes.igam(a: double, x: double)\n\n`igam` is the \"Incomplete gamma integral\". You can read the full documentation at http://www.netlib.org/cephes/doubldoc.html#igam.\n\n```js\nconst ret = cephes.igam(a, x);\n```\n\n#### double = cephes.igamc(a: double, x: double)\n\n`igamc` is the \"Complemented gamma integral\". You can read the full documentation at http://www.netlib.org/cephes/doubldoc.html#igamc.\n\n```js\nconst ret = cephes.igamc(a, x);\n```\n\n#### double = cephes.igami(a: double, y0: double)\n\n`igami` is the \"Inverse gamma integral\". You can read the full documentation at http://www.netlib.org/cephes/doubldoc.html#igami.\n\n```js\nconst ret = cephes.igami(a, y0);\n```\n\n#### double = cephes.psi(x: double)\n\n`psi` is the \"Psi (digamma) function\". You can read the full documentation at http://www.netlib.org/cephes/doubldoc.html#psi.\n\n```js\nconst ret = cephes.psi(x);\n```\n\n#### double = cephes.rgamma(x: double)\n\n`rgamma` is the \"Reciprocal Gamma\". You can read the full documentation at http://www.netlib.org/cephes/doubldoc.html#rgamma.\n\n```js\nconst ret = cephes.rgamma(x);\n```\n\n### Error function\n\n#### double = cephes.erf(x: double)\n\n`erf` is the \"Error function\". You can read the full documentation at http://www.netlib.org/cephes/doubldoc.html#erf.\n\n```js\nconst ret = cephes.erf(x);\n```\n\n#### double = cephes.erfc(a: double)\n\n`erfc` is the \"Complemented error function\". You can read the full documentation at http://www.netlib.org/cephes/doubldoc.html#erfc.\n\n```js\nconst ret = cephes.erfc(a);\n```\n\n#### double = cephes.dawsn(xx: double)\n\n`dawsn` is the \"Dawson's integral\". You can read the full documentation at http://www.netlib.org/cephes/doubldoc.html#dawsn.\n\n```js\nconst ret = cephes.dawsn(xx);\n```\n\n#### [int, extra] = cephes.fresnl(xxa: double)\n\n`fresnl` is the \"Fresnel integral\". You can read the full documentation at http://www.netlib.org/cephes/doubldoc.html#fresnl.\n\n```js\nconst [ret, extra] = cephes.fresnl(xxa);\n```\n\nThe `extra` object contains the following values: \n\n```js\nconst {\n  ssa: double,\n  cca: double\n} = extra;\n```\n\n### Bessel\n\n#### [int, extra] = cephes.airy(x: double)\n\n`airy` is the \"Airy\". You can read the full documentation at http://www.netlib.org/cephes/doubldoc.html#airy.\n\n```js\nconst [ret, extra] = cephes.airy(x);\n```\n\nThe `extra` object contains the following values: \n\n```js\nconst {\n  ai: double,\n  aip: double,\n  bi: double,\n  bip: double\n} = extra;\n```\n\n#### double = cephes.j0(x: double)\n\n`j0` is the \"Bessel, order 0\". You can read the full documentation at http://www.netlib.org/cephes/doubldoc.html#j0.\n\n```js\nconst ret = cephes.j0(x);\n```\n\n#### double = cephes.j1(x: double)\n\n`j1` is the \"Bessel, order 1\". You can read the full documentation at http://www.netlib.org/cephes/doubldoc.html#j1.\n\n```js\nconst ret = cephes.j1(x);\n```\n\n#### double = cephes.jn(n: int, x: double)\n\n`jn` is the \"Bessel, order n\". You can read the full documentation at http://www.netlib.org/cephes/doubldoc.html#jn.\n\n```js\nconst ret = cephes.jn(n, x);\n```\n\n#### double = cephes.jv(n: double, x: double)\n\n`jv` is the \"Bessel, noninteger order\". You can read the full documentation at http://www.netlib.org/cephes/doubldoc.html#jv.\n\n```js\nconst ret = cephes.jv(n, x);\n```\n\n#### double = cephes.y0(x: double)\n\n`y0` is the \"Bessel, second kind, order 0\". You can read the full documentation at http://www.netlib.org/cephes/doubldoc.html#y0.\n\n```js\nconst ret = cephes.y0(x);\n```\n\n#### double = cephes.y1(x: double)\n\n`y1` is the \"Bessel, second kind, order 1\". You can read the full documentation at http://www.netlib.org/cephes/doubldoc.html#y1.\n\n```js\nconst ret = cephes.y1(x);\n```\n\n#### double = cephes.yn(n: int, x: double)\n\n`yn` is the \"Bessel, second kind, order n\". You can read the full documentation at http://www.netlib.org/cephes/doubldoc.html#yn.\n\n```js\nconst ret = cephes.yn(n, x);\n```\n\n#### double = cephes.yv(v: double, x: double)\n\n`yv` is the \"Bessel, noninteger order\". You can read the full documentation at http://www.netlib.org/cephes/doubldoc.html#yv.\n\n```js\nconst ret = cephes.yv(v, x);\n```\n\n#### double = cephes.i0(x: double)\n\n`i0` is the \"Modified Bessel, order 0\". You can read the full documentation at http://www.netlib.org/cephes/doubldoc.html#i0.\n\n```js\nconst ret = cephes.i0(x);\n```\n\n#### double = cephes.i0e(x: double)\n\n`i0e` is the \"Exponentially scaled i0\". You can read the full documentation at http://www.netlib.org/cephes/doubldoc.html#i0e.\n\n```js\nconst ret = cephes.i0e(x);\n```\n\n#### double = cephes.i1(x: double)\n\n`i1` is the \"Modified Bessel, order 1\". You can read the full documentation at http://www.netlib.org/cephes/doubldoc.html#i1.\n\n```js\nconst ret = cephes.i1(x);\n```\n\n#### double = cephes.i1e(x: double)\n\n`i1e` is the \"Exponentially scaled i1\". You can read the full documentation at http://www.netlib.org/cephes/doubldoc.html#i1e.\n\n```js\nconst ret = cephes.i1e(x);\n```\n\n#### double = cephes.iv(v: double, x: double)\n\n`iv` is the \"Modified Bessel, nonint. order\". You can read the full documentation at http://www.netlib.org/cephes/doubldoc.html#iv.\n\n```js\nconst ret = cephes.iv(v, x);\n```\n\n#### double = cephes.k0(x: double)\n\n`k0` is the \"Mod. Bessel, 3rd kind, order 0\". You can read the full documentation at http://www.netlib.org/cephes/doubldoc.html#k0.\n\n```js\nconst ret = cephes.k0(x);\n```\n\n#### double = cephes.k0e(x: double)\n\n`k0e` is the \"Exponentially scaled k0\". You can read the full documentation at http://www.netlib.org/cephes/doubldoc.html#k0e.\n\n```js\nconst ret = cephes.k0e(x);\n```\n\n#### double = cephes.k1(x: double)\n\n`k1` is the \"Mod. Bessel, 3rd kind, order 1\". You can read the full documentation at http://www.netlib.org/cephes/doubldoc.html#k1.\n\n```js\nconst ret = cephes.k1(x);\n```\n\n#### double = cephes.k1e(x: double)\n\n`k1e` is the \"Exponentially scaled k1\". You can read the full documentation at http://www.netlib.org/cephes/doubldoc.html#k1e.\n\n```js\nconst ret = cephes.k1e(x);\n```\n\n#### double = cephes.kn(nn: int, x: double)\n\n`kn` is the \"Mod. Bessel, 3rd kind, order n\". You can read the full documentation at http://www.netlib.org/cephes/doubldoc.html#kn.\n\n```js\nconst ret = cephes.kn(nn, x);\n```\n\n### Hypergeometric\n\n#### double = cephes.hyperg(a: double, b: double, x: double)\n\n`hyperg` is the \"Confluent hypergeometric\". You can read the full documentation at http://www.netlib.org/cephes/doubldoc.html#hyperg.\n\n```js\nconst ret = cephes.hyperg(a, b, x);\n```\n\n#### double = cephes.hyp2f1(a: double, b: double, c: double, x: double)\n\n`hyp2f1` is the \"Gauss hypergeometric function\". You can read the full documentation at http://www.netlib.org/cephes/doubldoc.html#hyp2f1.\n\n```js\nconst ret = cephes.hyp2f1(a, b, c, x);\n```\n\n### Elliptic\n\n#### double = cephes.ellpe(x: double)\n\n`ellpe` is the \"Complete elliptic integral\". You can read the full documentation at http://www.netlib.org/cephes/doubldoc.html#ellpe.\n\n```js\nconst ret = cephes.ellpe(x);\n```\n\n#### double = cephes.ellie(phi: double, m: double)\n\n`ellie` is the \"Incomplete elliptic integral\". You can read the full documentation at http://www.netlib.org/cephes/doubldoc.html#ellie.\n\n```js\nconst ret = cephes.ellie(phi, m);\n```\n\n#### double = cephes.ellpk(x: double)\n\n`ellpk` is the \"Complete elliptic integral\". You can read the full documentation at http://www.netlib.org/cephes/doubldoc.html#ellpk.\n\n```js\nconst ret = cephes.ellpk(x);\n```\n\n#### double = cephes.ellik(phi: double, m: double)\n\n`ellik` is the \"Incomplete elliptic integral\". You can read the full documentation at http://www.netlib.org/cephes/doubldoc.html#ellik.\n\n```js\nconst ret = cephes.ellik(phi, m);\n```\n\n#### [int, extra] = cephes.ellpj(u: double, m: double)\n\n`ellpj` is the \"Jacobian elliptic function\". You can read the full documentation at http://www.netlib.org/cephes/doubldoc.html#ellpj.\n\n```js\nconst [ret, extra] = cephes.ellpj(u, m);\n```\n\nThe `extra` object contains the following values: \n\n```js\nconst {\n  sn: double,\n  cn: double,\n  dn: double,\n  ph: double\n} = extra;\n```\n\n### Probability\n\n#### double = cephes.btdtr(a: double, b: double, x: double)\n\n`btdtr` is the \"Beta distribution\". You can read the full documentation at http://www.netlib.org/cephes/doubldoc.html#btdtr.\n\n```js\nconst ret = cephes.btdtr(a, b, x);\n```\n\n#### double = cephes.smirnov(n: int, e: double)\n\n`smirnov` is the \"Exact Smirnov statistic, for one-sided test.\". You can read the full documentation at http://www.netlib.org/cephes/doubldoc.html#smirnov.\n\n```js\nconst ret = cephes.smirnov(n, e);\n```\n\n#### double = cephes.kolmogorov(y: double)\n\n`kolmogorov` is the \"Kolmogorov's limiting distribution of two-sided test.\". You can read the full documentation at http://www.netlib.org/cephes/doubldoc.html#kolmogorov.\n\n```js\nconst ret = cephes.kolmogorov(y);\n```\n\n#### double = cephes.smirnovi(n: int, p: double)\n\n`smirnovi` is the \"Functional inverse of Smirnov distribution.\". You can read the full documentation at http://www.netlib.org/cephes/doubldoc.html#smirnovi.\n\n```js\nconst ret = cephes.smirnovi(n, p);\n```\n\n#### double = cephes.kolmogi(p: double)\n\n`kolmogi` is the \"Functional inverse of Kolmogorov statistic for two-sided test.\". You can read the full documentation at http://www.netlib.org/cephes/doubldoc.html#kolmogi.\n\n```js\nconst ret = cephes.kolmogi(p);\n```\n\n#### double = cephes.nbdtri(k: int, n: int, p: double)\n\n`nbdtri` is the \"Inverse Negative binomial distribution\". You can read the full documentation at http://www.netlib.org/cephes/doubldoc.html#nbdtri.\n\n```js\nconst ret = cephes.nbdtri(k, n, p);\n```\n\n#### double = cephes.stdtri(k: int, p: double)\n\n`stdtri` is the \"Functional inverse of Student's t distribution\". You can read the full documentation at http://www.netlib.org/cephes/doubldoc.html#stdtri.\n\n```js\nconst ret = cephes.stdtri(k, p);\n```\n\n#### double = cephes.bdtr(k: int, n: int, p: double)\n\n`bdtr` is the \"Binomial distribution\". You can read the full documentation at http://www.netlib.org/cephes/doubldoc.html#bdtr.\n\n```js\nconst ret = cephes.bdtr(k, n, p);\n```\n\n#### double = cephes.bdtrc(k: int, n: int, p: double)\n\n`bdtrc` is the \"Complemented binomial\". You can read the full documentation at http://www.netlib.org/cephes/doubldoc.html#bdtrc.\n\n```js\nconst ret = cephes.bdtrc(k, n, p);\n```\n\n#### double = cephes.bdtri(k: int, n: int, y: double)\n\n`bdtri` is the \"Inverse binomial\". You can read the full documentation at http://www.netlib.org/cephes/doubldoc.html#bdtri.\n\n```js\nconst ret = cephes.bdtri(k, n, y);\n```\n\n#### double = cephes.chdtr(df: double, x: double)\n\n`chdtr` is the \"Chi square distribution\". You can read the full documentation at http://www.netlib.org/cephes/doubldoc.html#chdtr.\n\n```js\nconst ret = cephes.chdtr(df, x);\n```\n\n#### double = cephes.chdtrc(df: double, x: double)\n\n`chdtrc` is the \"Complemented Chi square\". You can read the full documentation at http://www.netlib.org/cephes/doubldoc.html#chdtrc.\n\n```js\nconst ret = cephes.chdtrc(df, x);\n```\n\n#### double = cephes.chdtri(df: double, y: double)\n\n`chdtri` is the \"Inverse Chi square\". You can read the full documentation at http://www.netlib.org/cephes/doubldoc.html#chdtri.\n\n```js\nconst ret = cephes.chdtri(df, y);\n```\n\n#### double = cephes.fdtr(ia: int, ib: int, x: double)\n\n`fdtr` is the \"F distribution\". You can read the full documentation at http://www.netlib.org/cephes/doubldoc.html#fdtr.\n\n```js\nconst ret = cephes.fdtr(ia, ib, x);\n```\n\n#### double = cephes.fdtrc(ia: int, ib: int, x: double)\n\n`fdtrc` is the \"Complemented F\". You can read the full documentation at http://www.netlib.org/cephes/doubldoc.html#fdtrc.\n\n```js\nconst ret = cephes.fdtrc(ia, ib, x);\n```\n\n#### double = cephes.fdtri(ia: int, ib: int, y: double)\n\n`fdtri` is the \"Inverse F distribution\". You can read the full documentation at http://www.netlib.org/cephes/doubldoc.html#fdtri.\n\n```js\nconst ret = cephes.fdtri(ia, ib, y);\n```\n\n#### double = cephes.gdtr(a: double, b: double, x: double)\n\n`gdtr` is the \"Gamma distribution\". You can read the full documentation at http://www.netlib.org/cephes/doubldoc.html#gdtr.\n\n```js\nconst ret = cephes.gdtr(a, b, x);\n```\n\n#### double = cephes.gdtrc(a: double, b: double, x: double)\n\n`gdtrc` is the \"Complemented gamma\". You can read the full documentation at http://www.netlib.org/cephes/doubldoc.html#gdtrc.\n\n```js\nconst ret = cephes.gdtrc(a, b, x);\n```\n\n#### double = cephes.nbdtr(k: int, n: int, p: double)\n\n`nbdtr` is the \"Negative binomial distribution\". You can read the full documentation at http://www.netlib.org/cephes/doubldoc.html#nbdtr.\n\n```js\nconst ret = cephes.nbdtr(k, n, p);\n```\n\n#### double = cephes.nbdtrc(k: int, n: int, p: double)\n\n`nbdtrc` is the \"Complemented negative binomial\". You can read the full documentation at http://www.netlib.org/cephes/doubldoc.html#nbdtrc.\n\n```js\nconst ret = cephes.nbdtrc(k, n, p);\n```\n\n#### double = cephes.ndtr(a: double)\n\n`ndtr` is the \"Normal distribution\". You can read the full documentation at http://www.netlib.org/cephes/doubldoc.html#ndtr.\n\n```js\nconst ret = cephes.ndtr(a);\n```\n\n#### double = cephes.ndtri(y0: double)\n\n`ndtri` is the \"Inverse normal distribution\". You can read the full documentation at http://www.netlib.org/cephes/doubldoc.html#ndtri.\n\n```js\nconst ret = cephes.ndtri(y0);\n```\n\n#### double = cephes.pdtr(k: int, m: double)\n\n`pdtr` is the \"Poisson distribution\". You can read the full documentation at http://www.netlib.org/cephes/doubldoc.html#pdtr.\n\n```js\nconst ret = cephes.pdtr(k, m);\n```\n\n#### double = cephes.pdtrc(k: int, m: double)\n\n`pdtrc` is the \"Complemented Poisson\". You can read the full documentation at http://www.netlib.org/cephes/doubldoc.html#pdtrc.\n\n```js\nconst ret = cephes.pdtrc(k, m);\n```\n\n#### double = cephes.pdtri(k: int, y: double)\n\n`pdtri` is the \"Inverse Poisson distribution\". You can read the full documentation at http://www.netlib.org/cephes/doubldoc.html#pdtri.\n\n```js\nconst ret = cephes.pdtri(k, y);\n```\n\n#### double = cephes.stdtr(k: int, t: double)\n\n`stdtr` is the \"Student's t distribution\". You can read the full documentation at http://www.netlib.org/cephes/doubldoc.html#stdtr.\n\n```js\nconst ret = cephes.stdtr(k, t);\n```\n\n### Miscellaneous\n\n#### double = cephes.plancki(w: double, T: double)\n\n`plancki` is the \"Integral of Planck's black body radiation formula\". You can read the full documentation at http://www.netlib.org/cephes/doubldoc.html#plancki.\n\n```js\nconst ret = cephes.plancki(w, T);\n```\n\n#### double = cephes.planckc(w: double, T: double)\n\n`planckc` is the \"Complemented Planck radiation integral\". You can read the full documentation at http://www.netlib.org/cephes/doubldoc.html#planckc.\n\n```js\nconst ret = cephes.planckc(w, T);\n```\n\n#### double = cephes.planckd(w: double, T: double)\n\n`planckd` is the \"Planck's black body radiation formula\". You can read the full documentation at http://www.netlib.org/cephes/doubldoc.html#planckd.\n\n```js\nconst ret = cephes.planckd(w, T);\n```\n\n#### double = cephes.planckw(T: double)\n\n`planckw` is the \"Wavelength, w, of maximum radiation at given temperature T.\". You can read the full documentation at http://www.netlib.org/cephes/doubldoc.html#planckw.\n\n```js\nconst ret = cephes.planckw(T);\n```\n\n#### double = cephes.spence(x: double)\n\n`spence` is the \"Dilogarithm\". You can read the full documentation at http://www.netlib.org/cephes/doubldoc.html#spence.\n\n```js\nconst ret = cephes.spence(x);\n```\n\n#### double = cephes.zetac(x: double)\n\n`zetac` is the \"Riemann Zeta function\". You can read the full documentation at http://www.netlib.org/cephes/doubldoc.html#zetac.\n\n```js\nconst ret = cephes.zetac(x);\n```\n\n#### double = cephes.zeta(x: double, q: double)\n\n`zeta` is the \"Two argument zeta function\". You can read the full documentation at http://www.netlib.org/cephes/doubldoc.html#zeta.\n\n```js\nconst ret = cephes.zeta(x, q);\n```\n\n#### double = cephes.struve(v: double, x: double)\n\n`struve` is the \"Struve function\". You can read the full documentation at http://www.netlib.org/cephes/doubldoc.html#struve.\n\n```js\nconst ret = cephes.struve(v, x);\n```\n\n### Polynomials and Power Series\n\n#### double = cephes.p1evl(x: double, coef: Float64Array, N: int)\n\n`p1evl` is the \"Evaluate polynomial when coefficient of x is 1.0.\". You can read the full documentation at http://www.netlib.org/cephes/doubldoc.html#p1evl.\n\n```js\nconst ret = cephes.p1evl(x, new Float64Array(coef), N);\n```\n\n#### double = cephes.polylog(n: int, x: double)\n\n`polylog` is the \"The polylogarithm of order n\". You can read the full documentation at http://www.netlib.org/cephes/doubldoc.html#polylog.\n\n```js\nconst ret = cephes.polylog(n, x);\n```\n\n\n## LICENSE\n\nThe cephes library, that this module wraps, can be found at\nhttp://www.netlib.org/cephes/. The cephes library from the NetLib website,\ndoesn't have any license. However, the author Stephen Moshier, has kindly given\npermission for it to be included in a BSD-licensed package.\n\nPlease see the [LICENSE](LICENSE) file, for all the details.\n\n[![banner](https://raw.githubusercontent.com/nearform/.github/refs/heads/master/assets/os-banner-green.svg)](https://www.nearform.com/contact/?utm_source=open-source\u0026utm_medium=banner\u0026utm_campaign=os-project-pages)","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnearform%2Fnode-cephes","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fnearform%2Fnode-cephes","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnearform%2Fnode-cephes/lists"}