moving-average-arima
Version:
ARIMA, SARIMA, SARIMAX and AutoARIMA models for time series analysis and forecasting
386 lines (385 loc) • 20.8 kB
JavaScript
;
var Module = (function () {
var _scriptDir = typeof document !== 'undefined' && document.currentScript ? document.currentScript.src : undefined;
if (typeof __filename !== 'undefined')
_scriptDir = _scriptDir || __filename;
return (function (Module) {
Module = Module || {};
var Module = typeof Module != "undefined" ? Module : {};
var readyPromiseResolve, readyPromiseReject;
Module["ready"] = new Promise(function (resolve, reject) { readyPromiseResolve = resolve; readyPromiseReject = reject; });
var moduleOverrides = Object.assign({}, Module);
var arguments_ = [];
var thisProgram = "./this.program";
var quit_ = function (status, toThrow) { throw toThrow; };
var ENVIRONMENT_IS_WEB = typeof window == "object";
var ENVIRONMENT_IS_WORKER = typeof importScripts == "function";
var ENVIRONMENT_IS_NODE = typeof process == "object" && typeof process.versions == "object" && typeof process.versions.node == "string";
var scriptDirectory = "";
function locateFile(path) { if (Module["locateFile"]) {
return Module["locateFile"](path, scriptDirectory);
} return scriptDirectory + path; }
var read_, readAsync, readBinary, setWindowTitle;
function logExceptionOnExit(e) { if (e instanceof ExitStatus)
return; var toLog = e; err("exiting due to exception: " + toLog); }
if (ENVIRONMENT_IS_NODE) {
if (ENVIRONMENT_IS_WORKER) {
scriptDirectory = require("path").dirname(scriptDirectory) + "/";
}
else {
scriptDirectory = __dirname + "/";
}
var fs, nodePath;
if (typeof require === "function") {
fs = require("fs");
nodePath = require("path");
}
read_ = function (filename, binary) { filename = nodePath["normalize"](filename); return fs.readFileSync(filename, binary ? undefined : "utf8"); };
readBinary = function (filename) { var ret = read_(filename, true); if (!ret.buffer) {
ret = new Uint8Array(ret);
} return ret; };
readAsync = function (filename, onload, onerror) { filename = nodePath["normalize"](filename); fs.readFile(filename, function (err, data) { if (err)
onerror(err);
else
onload(data.buffer); }); };
if (process["argv"].length > 1) {
thisProgram = process["argv"][1].replace(/\\/g, "/");
}
arguments_ = process["argv"].slice(2);
process["on"]("uncaughtException", function (ex) { if (!(ex instanceof ExitStatus)) {
throw ex;
} });
process["on"]("unhandledRejection", function (reason) { throw reason; });
quit_ = function (status, toThrow) { if (keepRuntimeAlive()) {
process["exitCode"] = status;
throw toThrow;
} logExceptionOnExit(toThrow); process["exit"](status); };
Module["inspect"] = function () { return "[Emscripten Module object]"; };
}
else if (ENVIRONMENT_IS_WEB || ENVIRONMENT_IS_WORKER) {
if (ENVIRONMENT_IS_WORKER) {
scriptDirectory = self.location.href;
}
else if (typeof document != "undefined" && document.currentScript) {
scriptDirectory = document.currentScript.src;
}
if (_scriptDir) {
scriptDirectory = _scriptDir;
}
if (scriptDirectory.indexOf("blob:") !== 0) {
scriptDirectory = scriptDirectory.substr(0, scriptDirectory.replace(/[?#].*/, "").lastIndexOf("/") + 1);
}
else {
scriptDirectory = "";
}
{
read_ = function (url) { var xhr = new XMLHttpRequest; xhr.open("GET", url, false); xhr.send(null); return xhr.responseText; };
if (ENVIRONMENT_IS_WORKER) {
readBinary = function (url) { var xhr = new XMLHttpRequest; xhr.open("GET", url, false); xhr.responseType = "arraybuffer"; xhr.send(null); return new Uint8Array(xhr.response); };
}
readAsync = function (url, onload, onerror) { var xhr = new XMLHttpRequest; xhr.open("GET", url, true); xhr.responseType = "arraybuffer"; xhr.onload = function () { if (xhr.status == 200 || xhr.status == 0 && xhr.response) {
onload(xhr.response);
return;
} onerror(); }; xhr.onerror = onerror; xhr.send(null); };
}
setWindowTitle = function (title) { return document.title = title; };
}
else { }
var out = Module["print"] || console.log.bind(console);
var err = Module["printErr"] || console.warn.bind(console);
Object.assign(Module, moduleOverrides);
moduleOverrides = null;
if (Module["arguments"])
arguments_ = Module["arguments"];
if (Module["thisProgram"])
thisProgram = Module["thisProgram"];
if (Module["quit"])
quit_ = Module["quit"];
var wasmBinary;
if (Module["wasmBinary"])
wasmBinary = Module["wasmBinary"];
var noExitRuntime = Module["noExitRuntime"] || true;
if (typeof WebAssembly != "object") {
abort("no native wasm support detected");
}
var wasmMemory;
var ABORT = false;
var EXITSTATUS;
var UTF8Decoder = typeof TextDecoder != "undefined" ? new TextDecoder("utf8") : undefined;
function UTF8ArrayToString(heapOrArray, idx, maxBytesToRead) { var endIdx = idx + maxBytesToRead; var endPtr = idx; while (heapOrArray[endPtr] && !(endPtr >= endIdx))
++endPtr; if (endPtr - idx > 16 && heapOrArray.buffer && UTF8Decoder) {
return UTF8Decoder.decode(heapOrArray.subarray(idx, endPtr));
} var str = ""; while (idx < endPtr) {
var u0 = heapOrArray[idx++];
if (!(u0 & 128)) {
str += String.fromCharCode(u0);
continue;
}
var u1 = heapOrArray[idx++] & 63;
if ((u0 & 224) == 192) {
str += String.fromCharCode((u0 & 31) << 6 | u1);
continue;
}
var u2 = heapOrArray[idx++] & 63;
if ((u0 & 240) == 224) {
u0 = (u0 & 15) << 12 | u1 << 6 | u2;
}
else {
u0 = (u0 & 7) << 18 | u1 << 12 | u2 << 6 | heapOrArray[idx++] & 63;
}
if (u0 < 65536) {
str += String.fromCharCode(u0);
}
else {
var ch = u0 - 65536;
str += String.fromCharCode(55296 | ch >> 10, 56320 | ch & 1023);
}
} return str; }
function UTF8ToString(ptr, maxBytesToRead) { return ptr ? UTF8ArrayToString(HEAPU8, ptr, maxBytesToRead) : ""; }
function stringToUTF8Array(str, heap, outIdx, maxBytesToWrite) { if (!(maxBytesToWrite > 0))
return 0; var startIdx = outIdx; var endIdx = outIdx + maxBytesToWrite - 1; for (var i = 0; i < str.length; ++i) {
var u = str.charCodeAt(i);
if (u >= 55296 && u <= 57343) {
var u1 = str.charCodeAt(++i);
u = 65536 + ((u & 1023) << 10) | u1 & 1023;
}
if (u <= 127) {
if (outIdx >= endIdx)
break;
heap[outIdx++] = u;
}
else if (u <= 2047) {
if (outIdx + 1 >= endIdx)
break;
heap[outIdx++] = 192 | u >> 6;
heap[outIdx++] = 128 | u & 63;
}
else if (u <= 65535) {
if (outIdx + 2 >= endIdx)
break;
heap[outIdx++] = 224 | u >> 12;
heap[outIdx++] = 128 | u >> 6 & 63;
heap[outIdx++] = 128 | u & 63;
}
else {
if (outIdx + 3 >= endIdx)
break;
heap[outIdx++] = 240 | u >> 18;
heap[outIdx++] = 128 | u >> 12 & 63;
heap[outIdx++] = 128 | u >> 6 & 63;
heap[outIdx++] = 128 | u & 63;
}
} heap[outIdx] = 0; return outIdx - startIdx; }
function stringToUTF8(str, outPtr, maxBytesToWrite) { return stringToUTF8Array(str, HEAPU8, outPtr, maxBytesToWrite); }
var buffer, HEAP8, HEAPU8, HEAP16, HEAPU16, HEAP32, HEAPU32, HEAPF32, HEAPF64;
function updateGlobalBufferAndViews(buf) { buffer = buf; Module["HEAP8"] = HEAP8 = new Int8Array(buf); Module["HEAP16"] = HEAP16 = new Int16Array(buf); Module["HEAP32"] = HEAP32 = new Int32Array(buf); Module["HEAPU8"] = HEAPU8 = new Uint8Array(buf); Module["HEAPU16"] = HEAPU16 = new Uint16Array(buf); Module["HEAPU32"] = HEAPU32 = new Uint32Array(buf); Module["HEAPF32"] = HEAPF32 = new Float32Array(buf); Module["HEAPF64"] = HEAPF64 = new Float64Array(buf); }
var INITIAL_MEMORY = Module["INITIAL_MEMORY"] || 16777216;
var wasmTable;
var __ATPRERUN__ = [];
var __ATINIT__ = [];
var __ATPOSTRUN__ = [];
var runtimeInitialized = false;
function keepRuntimeAlive() { return noExitRuntime; }
function preRun() { if (Module["preRun"]) {
if (typeof Module["preRun"] == "function")
Module["preRun"] = [Module["preRun"]];
while (Module["preRun"].length) {
addOnPreRun(Module["preRun"].shift());
}
} callRuntimeCallbacks(__ATPRERUN__); }
function initRuntime() { runtimeInitialized = true; callRuntimeCallbacks(__ATINIT__); }
function postRun() { if (Module["postRun"]) {
if (typeof Module["postRun"] == "function")
Module["postRun"] = [Module["postRun"]];
while (Module["postRun"].length) {
addOnPostRun(Module["postRun"].shift());
}
} callRuntimeCallbacks(__ATPOSTRUN__); }
function addOnPreRun(cb) { __ATPRERUN__.unshift(cb); }
function addOnInit(cb) { __ATINIT__.unshift(cb); }
function addOnPostRun(cb) { __ATPOSTRUN__.unshift(cb); }
var runDependencies = 0;
var runDependencyWatcher = null;
var dependenciesFulfilled = null;
function addRunDependency(id) { runDependencies++; if (Module["monitorRunDependencies"]) {
Module["monitorRunDependencies"](runDependencies);
} }
function removeRunDependency(id) { runDependencies--; if (Module["monitorRunDependencies"]) {
Module["monitorRunDependencies"](runDependencies);
} if (runDependencies == 0) {
if (runDependencyWatcher !== null) {
clearInterval(runDependencyWatcher);
runDependencyWatcher = null;
}
if (dependenciesFulfilled) {
var callback = dependenciesFulfilled;
dependenciesFulfilled = null;
callback();
}
} }
function abort(what) { if (Module["onAbort"]) {
Module["onAbort"](what);
} what = "Aborted(" + what + ")"; err(what); ABORT = true; EXITSTATUS = 1; what += ". Build with -sASSERTIONS for more info."; var e = new WebAssembly.RuntimeError(what); readyPromiseReject(e); throw e; }
var dataURIPrefix = "data:application/octet-stream;base64,";
function isDataURI(filename) { return filename.startsWith(dataURIPrefix); }
var wasmBinaryFile;
wasmBinaryFile = "native.wasm";
if (!isDataURI(wasmBinaryFile)) {
wasmBinaryFile = locateFile(wasmBinaryFile);
}
function getBinary(file) { try {
if (file == wasmBinaryFile && wasmBinary) {
return new Uint8Array(wasmBinary);
}
if (readBinary) {
return readBinary(file);
}
throw "sync fetching of the wasm failed: you can preload it to Module['wasmBinary'] manually, or emcc.py will do that for you when generating HTML (but not JS)";
}
catch (err) {
abort(err);
} }
function instantiateSync(file, info) { var instance; var module; var binary; try {
binary = getBinary(file);
module = new WebAssembly.Module(binary);
instance = new WebAssembly.Instance(module, info);
}
catch (e) {
var str = e.toString();
err("failed to compile wasm module: " + str);
if (str.includes("imported Memory") || str.includes("memory import")) {
err("Memory size incompatibility issues may be due to changing INITIAL_MEMORY at runtime to something too large. Use ALLOW_MEMORY_GROWTH to allow any size memory (and also make sure not to set INITIAL_MEMORY at runtime to something smaller than it was at compile time).");
}
throw e;
} return [instance, module]; }
function createWasm() { var info = { "a": asmLibraryArg }; function receiveInstance(instance, module) { var exports = instance.exports; Module["asm"] = exports; wasmMemory = Module["asm"]["e"]; updateGlobalBufferAndViews(wasmMemory.buffer); wasmTable = Module["asm"]["g"]; addOnInit(Module["asm"]["f"]); removeRunDependency("wasm-instantiate"); } addRunDependency("wasm-instantiate"); if (Module["instantiateWasm"]) {
try {
var exports = Module["instantiateWasm"](info, receiveInstance);
return exports;
}
catch (e) {
err("Module.instantiateWasm callback failed with error: " + e);
readyPromiseReject(e);
}
} var result = instantiateSync(wasmBinaryFile, info); receiveInstance(result[0]); return Module["asm"]; }
function ExitStatus(status) { this.name = "ExitStatus"; this.message = "Program terminated with exit(" + status + ")"; this.status = status; }
function callRuntimeCallbacks(callbacks) { while (callbacks.length > 0) {
callbacks.shift()(Module);
} }
function _emscripten_memcpy_big(dest, src, num) { HEAPU8.copyWithin(dest, src, src + num); }
function getHeapMax() { return 2147483648; }
function emscripten_realloc_buffer(size) { try {
wasmMemory.grow(size - buffer.byteLength + 65535 >>> 16);
updateGlobalBufferAndViews(wasmMemory.buffer);
return 1;
}
catch (e) { } }
function _emscripten_resize_heap(requestedSize) { var oldSize = HEAPU8.length; requestedSize = requestedSize >>> 0; var maxHeapSize = getHeapMax(); if (requestedSize > maxHeapSize) {
return false;
} var alignUp = function (x, multiple) { return x + (multiple - x % multiple) % multiple; }; for (var cutDown = 1; cutDown <= 4; cutDown *= 2) {
var overGrownHeapSize = oldSize * (1 + .2 / cutDown);
overGrownHeapSize = Math.min(overGrownHeapSize, requestedSize + 100663296);
var newSize = Math.min(maxHeapSize, alignUp(Math.max(requestedSize, overGrownHeapSize), 65536));
var replacement = emscripten_realloc_buffer(newSize);
if (replacement) {
return true;
}
} return false; }
var SYSCALLS = { varargs: undefined, get: function () { SYSCALLS.varargs += 4; var ret = HEAP32[SYSCALLS.varargs - 4 >> 2]; return ret; }, getStr: function (ptr) { var ret = UTF8ToString(ptr); return ret; } };
function _proc_exit(code) { EXITSTATUS = code; if (!keepRuntimeAlive()) {
if (Module["onExit"])
Module["onExit"](code);
ABORT = true;
} quit_(code, new ExitStatus(code)); }
function exitJS(status, implicit) { EXITSTATUS = status; _proc_exit(status); }
var _exit = exitJS;
var printCharBuffers = [null, [], []];
function printChar(stream, curr) { var buffer = printCharBuffers[stream]; if (curr === 0 || curr === 10) {
(stream === 1 ? out : err)(UTF8ArrayToString(buffer, 0));
buffer.length = 0;
}
else {
buffer.push(curr);
} }
function _fd_write(fd, iov, iovcnt, pnum) { var num = 0; for (var i = 0; i < iovcnt; i++) {
var ptr = HEAPU32[iov >> 2];
var len = HEAPU32[iov + 4 >> 2];
iov += 8;
for (var j = 0; j < len; j++) {
printChar(fd, HEAPU8[ptr + j]);
}
num += len;
} HEAPU32[pnum >> 2] = num; return 0; }
function getCFunc(ident) { var func = Module["_" + ident]; return func; }
function writeArrayToMemory(array, buffer) { HEAP8.set(array, buffer); }
function ccall(ident, returnType, argTypes, args, opts) { var toC = { "string": function (str) { var ret = 0; if (str !== null && str !== undefined && str !== 0) {
var len = (str.length << 2) + 1;
ret = stackAlloc(len);
stringToUTF8(str, ret, len);
} return ret; }, "array": function (arr) { var ret = stackAlloc(arr.length); writeArrayToMemory(arr, ret); return ret; } }; function convertReturnValue(ret) { if (returnType === "string") {
return UTF8ToString(ret);
} if (returnType === "boolean")
return Boolean(ret); return ret; } var func = getCFunc(ident); var cArgs = []; var stack = 0; if (args) {
for (var i = 0; i < args.length; i++) {
var converter = toC[argTypes[i]];
if (converter) {
if (stack === 0)
stack = stackSave();
cArgs[i] = converter(args[i]);
}
else {
cArgs[i] = args[i];
}
}
} var ret = func.apply(null, cArgs); function onDone(ret) { if (stack !== 0)
stackRestore(stack); return convertReturnValue(ret); } ret = onDone(ret); return ret; }
function cwrap(ident, returnType, argTypes, opts) { argTypes = argTypes || []; var numericArgs = argTypes.every(function (type) { return type === "number" || type === "boolean"; }); var numericRet = returnType !== "string"; if (numericRet && numericArgs && !opts) {
return getCFunc(ident);
} return function () { return ccall(ident, returnType, argTypes, arguments, opts); }; }
var asmLibraryArg = { "d": _emscripten_memcpy_big, "c": _emscripten_resize_heap, "a": _exit, "b": _fd_write };
var asm = createWasm();
var ___wasm_call_ctors = Module["___wasm_call_ctors"] = asm["f"];
var _fit_sarimax = Module["_fit_sarimax"] = asm["h"];
var _predict_sarimax = Module["_predict_sarimax"] = asm["i"];
var _fit_autoarima = Module["_fit_autoarima"] = asm["j"];
var _predict_autoarima = Module["_predict_autoarima"] = asm["k"];
var stackSave = Module["stackSave"] = asm["l"];
var stackRestore = Module["stackRestore"] = asm["m"];
var stackAlloc = Module["stackAlloc"] = asm["n"];
Module["ccall"] = ccall;
Module["cwrap"] = cwrap;
var calledRun;
dependenciesFulfilled = function runCaller() { if (!calledRun)
run(); if (!calledRun)
dependenciesFulfilled = runCaller; };
function run(args) { args = args || arguments_; if (runDependencies > 0) {
return;
} preRun(); if (runDependencies > 0) {
return;
} function doRun() { if (calledRun)
return; calledRun = true; Module["calledRun"] = true; if (ABORT)
return; initRuntime(); readyPromiseResolve(Module); if (Module["onRuntimeInitialized"])
Module["onRuntimeInitialized"](); postRun(); } if (Module["setStatus"]) {
Module["setStatus"]("Running...");
setTimeout(function () { setTimeout(function () { Module["setStatus"](""); }, 1); doRun(); }, 1);
}
else {
doRun();
} }
if (Module["preInit"]) {
if (typeof Module["preInit"] == "function")
Module["preInit"] = [Module["preInit"]];
while (Module["preInit"].length > 0) {
Module["preInit"].pop()();
}
}
run();
return Module;
});
})();
if (typeof exports === 'object' && typeof module === 'object')
module.exports = Module;
else if (typeof define === 'function' && define['amd'])
define([], function () { return Module; });
else if (typeof exports === 'object')
exports["Module"] = Module;