runmat 0.5.2-dev.6 → 0.5.3-dev.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/artifacts/stdlib.snapshot +0 -0
- package/dist/fs/index.d.ts +1 -1
- package/dist/fs/index.d.ts.map +1 -1
- package/dist/fs/provider-types.d.ts +15 -0
- package/dist/fs/provider-types.d.ts.map +1 -1
- package/dist/generated/builtin-examples-catalog.d.ts.map +1 -1
- package/dist/generated/builtin-examples-catalog.js +1 -1
- package/dist/generated/builtin-examples-catalog.js.map +1 -1
- package/dist/generated/builtins/addpath.d.ts.map +1 -1
- package/dist/generated/builtins/addpath.js +6 -0
- package/dist/generated/builtins/addpath.js.map +1 -1
- package/dist/generated/builtins/axis.d.ts.map +1 -1
- package/dist/generated/builtins/axis.js +11 -1
- package/dist/generated/builtins/axis.js.map +1 -1
- package/dist/generated/builtins/cd.d.ts.map +1 -1
- package/dist/generated/builtins/cd.js +6 -0
- package/dist/generated/builtins/cd.js.map +1 -1
- package/dist/generated/builtins/copyfile.d.ts.map +1 -1
- package/dist/generated/builtins/copyfile.js +1 -0
- package/dist/generated/builtins/copyfile.js.map +1 -1
- package/dist/generated/builtins/csvread.d.ts.map +1 -1
- package/dist/generated/builtins/csvread.js +1 -0
- package/dist/generated/builtins/csvread.js.map +1 -1
- package/dist/generated/builtins/diff.d.ts.map +1 -1
- package/dist/generated/builtins/diff.js +13 -2
- package/dist/generated/builtins/diff.js.map +1 -1
- package/dist/generated/builtins/downsample.d.ts +4 -0
- package/dist/generated/builtins/downsample.d.ts.map +1 -0
- package/dist/generated/builtins/downsample.js +104 -0
- package/dist/generated/builtins/downsample.js.map +1 -0
- package/dist/generated/builtins/eq.d.ts.map +1 -1
- package/dist/generated/builtins/eq.js +12 -1
- package/dist/generated/builtins/eq.js.map +1 -1
- package/dist/generated/builtins/figure.d.ts.map +1 -1
- package/dist/generated/builtins/figure.js +19 -2
- package/dist/generated/builtins/figure.js.map +1 -1
- package/dist/generated/builtins/fzero.d.ts.map +1 -1
- package/dist/generated/builtins/fzero.js +10 -2
- package/dist/generated/builtins/fzero.js.map +1 -1
- package/dist/generated/builtins/gauspuls.d.ts +4 -0
- package/dist/generated/builtins/gauspuls.d.ts.map +1 -0
- package/dist/generated/builtins/gauspuls.js +94 -0
- package/dist/generated/builtins/gauspuls.js.map +1 -0
- package/dist/generated/builtins/gca.d.ts.map +1 -1
- package/dist/generated/builtins/gca.js +5 -0
- package/dist/generated/builtins/gca.js.map +1 -1
- package/dist/generated/builtins/get.js +3 -3
- package/dist/generated/builtins/get.js.map +1 -1
- package/dist/generated/builtins/grid.d.ts.map +1 -1
- package/dist/generated/builtins/grid.js +10 -4
- package/dist/generated/builtins/grid.js.map +1 -1
- package/dist/generated/builtins/heaviside.d.ts +4 -0
- package/dist/generated/builtins/heaviside.d.ts.map +1 -0
- package/dist/generated/builtins/heaviside.js +139 -0
- package/dist/generated/builtins/heaviside.js.map +1 -0
- package/dist/generated/builtins/hilbert.d.ts +4 -0
- package/dist/generated/builtins/hilbert.d.ts.map +1 -0
- package/dist/generated/builtins/hilbert.js +134 -0
- package/dist/generated/builtins/hilbert.js.map +1 -0
- package/dist/generated/builtins/limit.d.ts +4 -0
- package/dist/generated/builtins/limit.d.ts.map +1 -0
- package/dist/generated/builtins/limit.js +84 -0
- package/dist/generated/builtins/limit.js.map +1 -0
- package/dist/generated/builtins/null.d.ts +4 -0
- package/dist/generated/builtins/null.d.ts.map +1 -0
- package/dist/generated/builtins/null.js +116 -0
- package/dist/generated/builtins/null.js.map +1 -0
- package/dist/generated/builtins/power.d.ts.map +1 -1
- package/dist/generated/builtins/power.js +1 -0
- package/dist/generated/builtins/power.js.map +1 -1
- package/dist/generated/builtins/pulstran.d.ts +4 -0
- package/dist/generated/builtins/pulstran.d.ts.map +1 -0
- package/dist/generated/builtins/pulstran.js +106 -0
- package/dist/generated/builtins/pulstran.js.map +1 -0
- package/dist/generated/builtins/rectpuls.d.ts +4 -0
- package/dist/generated/builtins/rectpuls.d.ts.map +1 -0
- package/dist/generated/builtins/rectpuls.js +95 -0
- package/dist/generated/builtins/rectpuls.js.map +1 -0
- package/dist/generated/builtins/rlocus.d.ts +4 -0
- package/dist/generated/builtins/rlocus.d.ts.map +1 -0
- package/dist/generated/builtins/rlocus.js +126 -0
- package/dist/generated/builtins/rlocus.js.map +1 -0
- package/dist/generated/builtins/set.js +2 -2
- package/dist/generated/builtins/set.js.map +1 -1
- package/dist/generated/builtins/spreadsheetImportOptions.d.ts +4 -0
- package/dist/generated/builtins/spreadsheetImportOptions.d.ts.map +1 -0
- package/dist/generated/builtins/spreadsheetImportOptions.js +93 -0
- package/dist/generated/builtins/spreadsheetImportOptions.js.map +1 -0
- package/dist/generated/builtins/sym.d.ts +4 -0
- package/dist/generated/builtins/sym.d.ts.map +1 -0
- package/dist/generated/builtins/sym.js +78 -0
- package/dist/generated/builtins/sym.js.map +1 -0
- package/dist/generated/builtins/syms.d.ts +4 -0
- package/dist/generated/builtins/syms.d.ts.map +1 -0
- package/dist/generated/builtins/syms.js +84 -0
- package/dist/generated/builtins/syms.js.map +1 -0
- package/dist/generated/builtins/tripuls.d.ts +4 -0
- package/dist/generated/builtins/tripuls.d.ts.map +1 -0
- package/dist/generated/builtins/tripuls.js +91 -0
- package/dist/generated/builtins/tripuls.js.map +1 -0
- package/dist/generated/builtins/uigetfile.d.ts +4 -0
- package/dist/generated/builtins/uigetfile.d.ts.map +1 -0
- package/dist/generated/builtins/uigetfile.js +95 -0
- package/dist/generated/builtins/uigetfile.js.map +1 -0
- package/dist/generated/builtins/unwrap.d.ts +4 -0
- package/dist/generated/builtins/unwrap.d.ts.map +1 -0
- package/dist/generated/builtins/unwrap.js +123 -0
- package/dist/generated/builtins/unwrap.js.map +1 -0
- package/dist/generated/builtins/upsample.d.ts +4 -0
- package/dist/generated/builtins/upsample.d.ts.map +1 -0
- package/dist/generated/builtins/upsample.js +104 -0
- package/dist/generated/builtins/upsample.js.map +1 -0
- package/dist/generated/builtins-manifest.d.ts.map +1 -1
- package/dist/generated/builtins-manifest.js +351 -10
- package/dist/generated/builtins-manifest.js.map +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js.map +1 -1
- package/dist/lsp/runmat_lsp.d.ts +2 -3
- package/dist/lsp/runmat_lsp.js +635 -439
- package/dist/lsp/runmat_lsp_bg.wasm +0 -0
- package/dist/lsp/runmat_lsp_bg.wasm.d.ts +2 -3
- package/dist/pkg-web/runmat_wasm_web.d.ts +18 -18
- package/dist/pkg-web/runmat_wasm_web.js +754 -313
- package/dist/pkg-web/runmat_wasm_web_bg.wasm +0 -0
- package/dist/pkg-web/runmat_wasm_web_bg.wasm.d.ts +11 -11
- package/dist/runtime/stdlib.snapshot +0 -0
- package/package.json +1 -1
|
@@ -0,0 +1,93 @@
|
|
|
1
|
+
// @generated by scripts/generate-builtins.cjs
|
|
2
|
+
// Do not edit by hand.
|
|
3
|
+
const builtinDoc = {
|
|
4
|
+
"title": "spreadsheetImportOptions",
|
|
5
|
+
"category": "io/tabular",
|
|
6
|
+
"keywords": [
|
|
7
|
+
"spreadsheetImportOptions",
|
|
8
|
+
"readtable",
|
|
9
|
+
"spreadsheet",
|
|
10
|
+
"xlsx",
|
|
11
|
+
"xls",
|
|
12
|
+
"DataRange",
|
|
13
|
+
"VariableTypes"
|
|
14
|
+
],
|
|
15
|
+
"summary": "Create spreadsheet import options structs for `readtable`.",
|
|
16
|
+
"references": [],
|
|
17
|
+
"gpu_support": {
|
|
18
|
+
"elementwise": false,
|
|
19
|
+
"reduction": false,
|
|
20
|
+
"precisions": [],
|
|
21
|
+
"broadcasting": "none",
|
|
22
|
+
"notes": "Builds host-side import metadata. File I/O and parsing happen later when the options are passed to `readtable`."
|
|
23
|
+
},
|
|
24
|
+
"fusion": {
|
|
25
|
+
"elementwise": false,
|
|
26
|
+
"reduction": false,
|
|
27
|
+
"max_inputs": 0,
|
|
28
|
+
"constants": "inline"
|
|
29
|
+
},
|
|
30
|
+
"requires_feature": null,
|
|
31
|
+
"tested": {
|
|
32
|
+
"unit": "builtins::table::tests",
|
|
33
|
+
"integration": "builtins::table::tests::readtable_consumes_spreadsheet_import_options_struct"
|
|
34
|
+
},
|
|
35
|
+
"description": "`opts = spreadsheetImportOptions(...)` returns an editable import-options struct accepted by `readtable` for spreadsheet files. The struct supports MATLAB-style dot assignment before import, including data ranges, sheet selection, variable names, and variable types.",
|
|
36
|
+
"behaviors": [
|
|
37
|
+
"Accepts name-value options including `'NumVariables'`, `'VariableNames'`, `'VariableTypes'`, `'DataRange'`, `'Range'`, `'Sheet'`, `'ReadVariableNames'`, `'ReadRowNames'`, `'TreatAsMissing'`, `'VariableNamingRule'`, `'TextType'`, `'DatetimeType'`, and `'EmptyLineRule'`.",
|
|
38
|
+
"`'NumVariables'` creates default `Var1`, `Var2`, ... names and `auto` variable types; edited `VariableNames` and `VariableTypes` are validated against that count.",
|
|
39
|
+
"`DataRange` is treated as the spreadsheet cell range for `readtable`, matching the common MATLAB workflow `opts.DataRange = 'C2:C37'`.",
|
|
40
|
+
"`VariableTypes` entries guide import coercion for double, single, uint8, uint16, logical, string, char, cellstr, datetime, and duration columns.",
|
|
41
|
+
"Requests for table column classes that RunMat cannot represent yet, including categorical and signed integer array imports, raise explicit errors instead of silently returning a different class.",
|
|
42
|
+
"Default options do not force a zero-column import; `readtable` infers the column count unless a positive `NumVariables` is supplied.",
|
|
43
|
+
"Invalid option names, malformed ranges, unsupported sheets, and unparseable typed values raise descriptive `readtable` errors instead of silently changing the schema."
|
|
44
|
+
],
|
|
45
|
+
"examples": [
|
|
46
|
+
{
|
|
47
|
+
"description": "Import A Spreadsheet Column With An Options Struct",
|
|
48
|
+
"input": "opts = spreadsheetImportOptions('NumVariables', 1);\nopts.DataRange = 'C2:C37';\nopts.VariableNames = {'Amount'};\nopts.VariableTypes = {'double'};\nT = readtable('data.xlsx', opts)"
|
|
49
|
+
},
|
|
50
|
+
{
|
|
51
|
+
"description": "Select A Worksheet And Preserve Variable Names",
|
|
52
|
+
"input": "opts = spreadsheetImportOptions('Sheet', 'Data', 'VariableNamingRule', 'preserve');\nT = readtable('workbook.xlsx', opts)"
|
|
53
|
+
}
|
|
54
|
+
],
|
|
55
|
+
"faqs": [
|
|
56
|
+
{
|
|
57
|
+
"question": "Is the returned value an object?",
|
|
58
|
+
"answer": "RunMat represents import options as a scalar struct so MATLAB-style field assignment works naturally and `readtable` can consume the same value directly."
|
|
59
|
+
},
|
|
60
|
+
{
|
|
61
|
+
"question": "What happens if `VariableTypes` asks for a type that cannot parse a column?",
|
|
62
|
+
"answer": "`readtable` raises a typed import error for the offending non-missing value. It does not fall back to a string column when the schema explicitly requested another type."
|
|
63
|
+
},
|
|
64
|
+
{
|
|
65
|
+
"question": "Can I use the options with text files?",
|
|
66
|
+
"answer": "The constructor is spreadsheet-focused, but the struct fields that also apply to text imports are parsed by `readtable`; spreadsheet-only fields such as `Sheet` remain valid only for spreadsheet files."
|
|
67
|
+
}
|
|
68
|
+
],
|
|
69
|
+
"links": [
|
|
70
|
+
{
|
|
71
|
+
"label": "readtable",
|
|
72
|
+
"url": "./readtable"
|
|
73
|
+
},
|
|
74
|
+
{
|
|
75
|
+
"label": "readmatrix",
|
|
76
|
+
"url": "./readmatrix"
|
|
77
|
+
}
|
|
78
|
+
],
|
|
79
|
+
"source": {
|
|
80
|
+
"label": "`crates/runmat-runtime/src/builtins/table/mod.rs`",
|
|
81
|
+
"url": "https://github.com/runmat-org/runmat/blob/main/crates/runmat-runtime/src/builtins/table/mod.rs"
|
|
82
|
+
},
|
|
83
|
+
"gpu_residency": "No GPU work is performed. Options are host metadata, and later `readtable` imports create host table variables.",
|
|
84
|
+
"key": "spreadsheetimportoptions",
|
|
85
|
+
"slug": "spreadsheetimportoptions",
|
|
86
|
+
"aliases": [],
|
|
87
|
+
"categoryPath": [
|
|
88
|
+
"io",
|
|
89
|
+
"tabular"
|
|
90
|
+
]
|
|
91
|
+
};
|
|
92
|
+
export default builtinDoc;
|
|
93
|
+
//# sourceMappingURL=spreadsheetImportOptions.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"spreadsheetImportOptions.js","sourceRoot":"","sources":["../../../src/generated/builtins/spreadsheetImportOptions.ts"],"names":[],"mappings":"AAAA,8CAA8C;AAC9C,uBAAuB;AAIvB,MAAM,UAAU,GAAe;IAC7B,OAAO,EAAE,0BAA0B;IACnC,UAAU,EAAE,YAAY;IACxB,UAAU,EAAE;QACV,0BAA0B;QAC1B,WAAW;QACX,aAAa;QACb,MAAM;QACN,KAAK;QACL,WAAW;QACX,eAAe;KAChB;IACD,SAAS,EAAE,4DAA4D;IACvE,YAAY,EAAE,EAAE;IAChB,aAAa,EAAE;QACb,aAAa,EAAE,KAAK;QACpB,WAAW,EAAE,KAAK;QAClB,YAAY,EAAE,EAAE;QAChB,cAAc,EAAE,MAAM;QACtB,OAAO,EAAE,iHAAiH;KAC3H;IACD,QAAQ,EAAE;QACR,aAAa,EAAE,KAAK;QACpB,WAAW,EAAE,KAAK;QAClB,YAAY,EAAE,CAAC;QACf,WAAW,EAAE,QAAQ;KACtB;IACD,kBAAkB,EAAE,IAAI;IACxB,QAAQ,EAAE;QACR,MAAM,EAAE,wBAAwB;QAChC,aAAa,EAAE,8EAA8E;KAC9F;IACD,aAAa,EAAE,4QAA4Q;IAC3R,WAAW,EAAE;QACX,+QAA+Q;QAC/Q,oKAAoK;QACpK,wIAAwI;QACxI,kJAAkJ;QAClJ,oMAAoM;QACpM,sIAAsI;QACtI,wKAAwK;KACzK;IACD,UAAU,EAAE;QACV;YACE,aAAa,EAAE,oDAAoD;YACnE,OAAO,EAAE,uLAAuL;SACjM;QACD;YACE,aAAa,EAAE,gDAAgD;YAC/D,OAAO,EAAE,2HAA2H;SACrI;KACF;IACD,MAAM,EAAE;QACN;YACE,UAAU,EAAE,kCAAkC;YAC9C,QAAQ,EAAE,2JAA2J;SACtK;QACD;YACE,UAAU,EAAE,6EAA6E;YACzF,QAAQ,EAAE,0KAA0K;SACrL;QACD;YACE,UAAU,EAAE,wCAAwC;YACpD,QAAQ,EAAE,2MAA2M;SACtN;KACF;IACD,OAAO,EAAE;QACP;YACE,OAAO,EAAE,WAAW;YACpB,KAAK,EAAE,aAAa;SACrB;QACD;YACE,OAAO,EAAE,YAAY;YACrB,KAAK,EAAE,cAAc;SACtB;KACF;IACD,QAAQ,EAAE;QACR,OAAO,EAAE,mDAAmD;QAC5D,KAAK,EAAE,gGAAgG;KACxG;IACD,eAAe,EAAE,iHAAiH;IAClI,KAAK,EAAE,0BAA0B;IACjC,MAAM,EAAE,0BAA0B;IAClC,SAAS,EAAE,EAAE;IACb,cAAc,EAAE;QACd,IAAI;QACJ,SAAS;KACV;CACF,CAAC;AAEF,eAAe,UAAU,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sym.d.ts","sourceRoot":"","sources":["../../../src/generated/builtins/sym.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAEpD,QAAA,MAAM,UAAU,EAAE,UAyEjB,CAAC;AAEF,eAAe,UAAU,CAAC"}
|
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
// @generated by scripts/generate-builtins.cjs
|
|
2
|
+
// Do not edit by hand.
|
|
3
|
+
const builtinDoc = {
|
|
4
|
+
"title": "sym",
|
|
5
|
+
"category": "math/symbolic",
|
|
6
|
+
"keywords": [
|
|
7
|
+
"sym",
|
|
8
|
+
"symbolic",
|
|
9
|
+
"variable",
|
|
10
|
+
"algebra"
|
|
11
|
+
],
|
|
12
|
+
"summary": "Create a scalar symbolic variable or constant.",
|
|
13
|
+
"references": [],
|
|
14
|
+
"gpu_support": {
|
|
15
|
+
"elementwise": false,
|
|
16
|
+
"reduction": false,
|
|
17
|
+
"precisions": [],
|
|
18
|
+
"broadcasting": "none",
|
|
19
|
+
"notes": "Symbolic expressions are host algebra values and are not uploaded to GPU providers."
|
|
20
|
+
},
|
|
21
|
+
"fusion": {
|
|
22
|
+
"elementwise": false,
|
|
23
|
+
"reduction": false,
|
|
24
|
+
"max_inputs": 0,
|
|
25
|
+
"constants": "none"
|
|
26
|
+
},
|
|
27
|
+
"requires_feature": null,
|
|
28
|
+
"tested": {
|
|
29
|
+
"unit": "builtins::math::symbolic::sym::tests",
|
|
30
|
+
"integration": "runmat_vm::bytecode::compile::tests::compile_interprets_symbolic_limit_workflow"
|
|
31
|
+
},
|
|
32
|
+
"description": "`sym` creates scalar symbolic variables from identifier text and scalar symbolic constants from numeric input. Nonconstant symbolic values remain symbolic through supported arithmetic, trigonometric, and limit operations.",
|
|
33
|
+
"behaviors": [
|
|
34
|
+
"Text that is a valid MATLAB identifier creates a symbolic variable with that name.",
|
|
35
|
+
"Finite numeric, integer, logical, and scalar numeric tensor inputs create scalar symbolic constants with class `sym`.",
|
|
36
|
+
"Text containing a finite numeric scalar creates that numeric symbolic constant.",
|
|
37
|
+
"Symbolic values are host-only and do not participate in GPU fusion or residency."
|
|
38
|
+
],
|
|
39
|
+
"examples": [
|
|
40
|
+
{
|
|
41
|
+
"description": "Create a symbolic variable",
|
|
42
|
+
"input": "x = sym('x')"
|
|
43
|
+
},
|
|
44
|
+
{
|
|
45
|
+
"description": "Create a symbolic numeric constant",
|
|
46
|
+
"input": "a = sym(2)"
|
|
47
|
+
}
|
|
48
|
+
],
|
|
49
|
+
"faqs": [
|
|
50
|
+
{
|
|
51
|
+
"question": "Does `sym` create symbolic arrays?",
|
|
52
|
+
"answer": "No. RunMat currently represents scalar symbolic expressions; array-valued symbolic containers are not materialized."
|
|
53
|
+
}
|
|
54
|
+
],
|
|
55
|
+
"links": [
|
|
56
|
+
{
|
|
57
|
+
"label": "syms",
|
|
58
|
+
"url": "./syms"
|
|
59
|
+
},
|
|
60
|
+
{
|
|
61
|
+
"label": "limit",
|
|
62
|
+
"url": "./limit"
|
|
63
|
+
}
|
|
64
|
+
],
|
|
65
|
+
"source": {
|
|
66
|
+
"label": "`crates/runmat-runtime/src/builtins/math/symbolic/sym.rs`",
|
|
67
|
+
"url": "https://github.com/runmat-org/runmat/blob/main/crates/runmat-runtime/src/builtins/math/symbolic/sym.rs"
|
|
68
|
+
},
|
|
69
|
+
"key": "sym",
|
|
70
|
+
"slug": "sym",
|
|
71
|
+
"aliases": [],
|
|
72
|
+
"categoryPath": [
|
|
73
|
+
"math",
|
|
74
|
+
"symbolic"
|
|
75
|
+
]
|
|
76
|
+
};
|
|
77
|
+
export default builtinDoc;
|
|
78
|
+
//# sourceMappingURL=sym.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sym.js","sourceRoot":"","sources":["../../../src/generated/builtins/sym.ts"],"names":[],"mappings":"AAAA,8CAA8C;AAC9C,uBAAuB;AAIvB,MAAM,UAAU,GAAe;IAC7B,OAAO,EAAE,KAAK;IACd,UAAU,EAAE,eAAe;IAC3B,UAAU,EAAE;QACV,KAAK;QACL,UAAU;QACV,UAAU;QACV,SAAS;KACV;IACD,SAAS,EAAE,gDAAgD;IAC3D,YAAY,EAAE,EAAE;IAChB,aAAa,EAAE;QACb,aAAa,EAAE,KAAK;QACpB,WAAW,EAAE,KAAK;QAClB,YAAY,EAAE,EAAE;QAChB,cAAc,EAAE,MAAM;QACtB,OAAO,EAAE,qFAAqF;KAC/F;IACD,QAAQ,EAAE;QACR,aAAa,EAAE,KAAK;QACpB,WAAW,EAAE,KAAK;QAClB,YAAY,EAAE,CAAC;QACf,WAAW,EAAE,MAAM;KACpB;IACD,kBAAkB,EAAE,IAAI;IACxB,QAAQ,EAAE;QACR,MAAM,EAAE,sCAAsC;QAC9C,aAAa,EAAE,iFAAiF;KACjG;IACD,aAAa,EAAE,+NAA+N;IAC9O,WAAW,EAAE;QACX,oFAAoF;QACpF,uHAAuH;QACvH,iFAAiF;QACjF,kFAAkF;KACnF;IACD,UAAU,EAAE;QACV;YACE,aAAa,EAAE,4BAA4B;YAC3C,OAAO,EAAE,cAAc;SACxB;QACD;YACE,aAAa,EAAE,oCAAoC;YACnD,OAAO,EAAE,YAAY;SACtB;KACF;IACD,MAAM,EAAE;QACN;YACE,UAAU,EAAE,oCAAoC;YAChD,QAAQ,EAAE,qHAAqH;SAChI;KACF;IACD,OAAO,EAAE;QACP;YACE,OAAO,EAAE,MAAM;YACf,KAAK,EAAE,QAAQ;SAChB;QACD;YACE,OAAO,EAAE,OAAO;YAChB,KAAK,EAAE,SAAS;SACjB;KACF;IACD,QAAQ,EAAE;QACR,OAAO,EAAE,2DAA2D;QACpE,KAAK,EAAE,wGAAwG;KAChH;IACD,KAAK,EAAE,KAAK;IACZ,MAAM,EAAE,KAAK;IACb,SAAS,EAAE,EAAE;IACb,cAAc,EAAE;QACd,MAAM;QACN,UAAU;KACX;CACF,CAAC;AAEF,eAAe,UAAU,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"syms.d.ts","sourceRoot":"","sources":["../../../src/generated/builtins/syms.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAEpD,QAAA,MAAM,UAAU,EAAE,UA+EjB,CAAC;AAEF,eAAe,UAAU,CAAC"}
|
|
@@ -0,0 +1,84 @@
|
|
|
1
|
+
// @generated by scripts/generate-builtins.cjs
|
|
2
|
+
// Do not edit by hand.
|
|
3
|
+
const builtinDoc = {
|
|
4
|
+
"title": "syms",
|
|
5
|
+
"category": "math/symbolic",
|
|
6
|
+
"keywords": [
|
|
7
|
+
"syms",
|
|
8
|
+
"symbolic",
|
|
9
|
+
"variable",
|
|
10
|
+
"workspace"
|
|
11
|
+
],
|
|
12
|
+
"summary": "Declare scalar symbolic variables in the active workspace.",
|
|
13
|
+
"references": [],
|
|
14
|
+
"gpu_support": {
|
|
15
|
+
"elementwise": false,
|
|
16
|
+
"reduction": false,
|
|
17
|
+
"precisions": [],
|
|
18
|
+
"broadcasting": "none",
|
|
19
|
+
"notes": "`syms` mutates the caller workspace and produces host-only symbolic values."
|
|
20
|
+
},
|
|
21
|
+
"fusion": {
|
|
22
|
+
"elementwise": false,
|
|
23
|
+
"reduction": false,
|
|
24
|
+
"max_inputs": 0,
|
|
25
|
+
"constants": "none"
|
|
26
|
+
},
|
|
27
|
+
"requires_feature": null,
|
|
28
|
+
"tested": {
|
|
29
|
+
"unit": "builtins::math::symbolic::syms::tests",
|
|
30
|
+
"integration": "runmat_vm::bytecode::compile::tests::compile_interprets_symbolic_limit_workflow",
|
|
31
|
+
"symbolic_function": "runmat_vm::bytecode::compile::tests::compile_interprets_symbolic_function_declaration_workflow"
|
|
32
|
+
},
|
|
33
|
+
"description": "`syms` supports MATLAB command syntax such as `syms x h`, symbolic function declarations such as `syms Y(X)`, and string function syntax such as `syms('x')` by declaring each named symbol in the caller workspace before later expressions are resolved.",
|
|
34
|
+
"behaviors": [
|
|
35
|
+
"Command syntax is supported for identifiers, for example `syms x h`; function syntax supports literal text names, for example `syms('x')`.",
|
|
36
|
+
"Declared identifiers are assigned scalar symbolic variables of the same name in the active workspace.",
|
|
37
|
+
"Symbolic function declarations such as `syms Y(X)` assign `X` as a symbolic variable and `Y` as a symbolic function expression. Calls such as `Y(0)` then produce symbolic applications rather than numeric indexing.",
|
|
38
|
+
"Common assumption tokens after the first declaration, such as `real`, `positive`, and `integer`, are accepted and ignored by the current scalar symbolic core.",
|
|
39
|
+
"`syms` is a sink builtin: it does not print or return a useful value when called as a statement."
|
|
40
|
+
],
|
|
41
|
+
"examples": [
|
|
42
|
+
{
|
|
43
|
+
"description": "Declare two symbolic variables",
|
|
44
|
+
"input": "syms x h"
|
|
45
|
+
},
|
|
46
|
+
{
|
|
47
|
+
"description": "Use declared variables in a symbolic expression",
|
|
48
|
+
"input": "syms x\nf = sin(x)/x"
|
|
49
|
+
},
|
|
50
|
+
{
|
|
51
|
+
"description": "Declare and apply a symbolic function",
|
|
52
|
+
"input": "syms Y(X)\ncond = Y(0) == 0\ndydx = diff(Y, X)"
|
|
53
|
+
}
|
|
54
|
+
],
|
|
55
|
+
"faqs": [
|
|
56
|
+
{
|
|
57
|
+
"question": "Are symbolic assumptions enforced?",
|
|
58
|
+
"answer": "Assumption tokens are parsed for MATLAB command compatibility, but the current scalar symbolic evaluator treats expressions as real-valued and does not maintain an assumption database."
|
|
59
|
+
}
|
|
60
|
+
],
|
|
61
|
+
"links": [
|
|
62
|
+
{
|
|
63
|
+
"label": "sym",
|
|
64
|
+
"url": "./sym"
|
|
65
|
+
},
|
|
66
|
+
{
|
|
67
|
+
"label": "limit",
|
|
68
|
+
"url": "./limit"
|
|
69
|
+
}
|
|
70
|
+
],
|
|
71
|
+
"source": {
|
|
72
|
+
"label": "`crates/runmat-runtime/src/builtins/math/symbolic/syms.rs`",
|
|
73
|
+
"url": "https://github.com/runmat-org/runmat/blob/main/crates/runmat-runtime/src/builtins/math/symbolic/syms.rs"
|
|
74
|
+
},
|
|
75
|
+
"key": "syms",
|
|
76
|
+
"slug": "syms",
|
|
77
|
+
"aliases": [],
|
|
78
|
+
"categoryPath": [
|
|
79
|
+
"math",
|
|
80
|
+
"symbolic"
|
|
81
|
+
]
|
|
82
|
+
};
|
|
83
|
+
export default builtinDoc;
|
|
84
|
+
//# sourceMappingURL=syms.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"syms.js","sourceRoot":"","sources":["../../../src/generated/builtins/syms.ts"],"names":[],"mappings":"AAAA,8CAA8C;AAC9C,uBAAuB;AAIvB,MAAM,UAAU,GAAe;IAC7B,OAAO,EAAE,MAAM;IACf,UAAU,EAAE,eAAe;IAC3B,UAAU,EAAE;QACV,MAAM;QACN,UAAU;QACV,UAAU;QACV,WAAW;KACZ;IACD,SAAS,EAAE,4DAA4D;IACvE,YAAY,EAAE,EAAE;IAChB,aAAa,EAAE;QACb,aAAa,EAAE,KAAK;QACpB,WAAW,EAAE,KAAK;QAClB,YAAY,EAAE,EAAE;QAChB,cAAc,EAAE,MAAM;QACtB,OAAO,EAAE,6EAA6E;KACvF;IACD,QAAQ,EAAE;QACR,aAAa,EAAE,KAAK;QACpB,WAAW,EAAE,KAAK;QAClB,YAAY,EAAE,CAAC;QACf,WAAW,EAAE,MAAM;KACpB;IACD,kBAAkB,EAAE,IAAI;IACxB,QAAQ,EAAE;QACR,MAAM,EAAE,uCAAuC;QAC/C,aAAa,EAAE,iFAAiF;QAChG,mBAAmB,EAAE,gGAAgG;KACtH;IACD,aAAa,EAAE,4PAA4P;IAC3Q,WAAW,EAAE;QACX,4IAA4I;QAC5I,uGAAuG;QACvG,uNAAuN;QACvN,gKAAgK;QAChK,kGAAkG;KACnG;IACD,UAAU,EAAE;QACV;YACE,aAAa,EAAE,gCAAgC;YAC/C,OAAO,EAAE,UAAU;SACpB;QACD;YACE,aAAa,EAAE,iDAAiD;YAChE,OAAO,EAAE,sBAAsB;SAChC;QACD;YACE,aAAa,EAAE,uCAAuC;YACtD,OAAO,EAAE,gDAAgD;SAC1D;KACF;IACD,MAAM,EAAE;QACN;YACE,UAAU,EAAE,oCAAoC;YAChD,QAAQ,EAAE,0LAA0L;SACrM;KACF;IACD,OAAO,EAAE;QACP;YACE,OAAO,EAAE,KAAK;YACd,KAAK,EAAE,OAAO;SACf;QACD;YACE,OAAO,EAAE,OAAO;YAChB,KAAK,EAAE,SAAS;SACjB;KACF;IACD,QAAQ,EAAE;QACR,OAAO,EAAE,4DAA4D;QACrE,KAAK,EAAE,yGAAyG;KACjH;IACD,KAAK,EAAE,MAAM;IACb,MAAM,EAAE,MAAM;IACd,SAAS,EAAE,EAAE;IACb,cAAc,EAAE;QACd,MAAM;QACN,UAAU;KACX;CACF,CAAC;AAEF,eAAe,UAAU,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tripuls.d.ts","sourceRoot":"","sources":["../../../src/generated/builtins/tripuls.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAEpD,QAAA,MAAM,UAAU,EAAE,UAsFjB,CAAC;AAEF,eAAe,UAAU,CAAC"}
|
|
@@ -0,0 +1,91 @@
|
|
|
1
|
+
// @generated by scripts/generate-builtins.cjs
|
|
2
|
+
// Do not edit by hand.
|
|
3
|
+
const builtinDoc = {
|
|
4
|
+
"title": "tripuls",
|
|
5
|
+
"category": "math/signal",
|
|
6
|
+
"keywords": [
|
|
7
|
+
"tripuls",
|
|
8
|
+
"triangular pulse",
|
|
9
|
+
"pulse train",
|
|
10
|
+
"signal processing",
|
|
11
|
+
"skew"
|
|
12
|
+
],
|
|
13
|
+
"summary": "Generate sampled triangular pulses.",
|
|
14
|
+
"references": [
|
|
15
|
+
"title: \"MATLAB tripuls documentation\""
|
|
16
|
+
],
|
|
17
|
+
"gpu_support": {
|
|
18
|
+
"elementwise": false,
|
|
19
|
+
"reduction": false,
|
|
20
|
+
"precisions": [
|
|
21
|
+
"f64"
|
|
22
|
+
],
|
|
23
|
+
"broadcasting": "none",
|
|
24
|
+
"notes": "GPU inputs are gathered to the host and evaluated with the scalar reference implementation."
|
|
25
|
+
},
|
|
26
|
+
"fusion": {
|
|
27
|
+
"elementwise": false,
|
|
28
|
+
"reduction": false,
|
|
29
|
+
"max_inputs": 1,
|
|
30
|
+
"constants": "inline",
|
|
31
|
+
"notes": "Fusion is disabled because width and skew validation are handled by the host builtin."
|
|
32
|
+
},
|
|
33
|
+
"requires_feature": null,
|
|
34
|
+
"tested": {
|
|
35
|
+
"unit": "builtins::math::signal::tripuls::tests",
|
|
36
|
+
"integration": null
|
|
37
|
+
},
|
|
38
|
+
"description": "`tripuls(T)` returns samples of a unit-width triangular pulse centered at zero. `tripuls(T, W, S)` uses width `W` and skew `S` in `[-1, 1]`.",
|
|
39
|
+
"behaviors": [
|
|
40
|
+
"Operates element-wise on real numeric scalars, vectors, matrices, and N-D tensors; preserves input shape.",
|
|
41
|
+
"The pulse is zero outside `[-W/2, W/2]` and reaches one at `S*W/2`.",
|
|
42
|
+
"The width must be positive and finite.",
|
|
43
|
+
"The skew must be finite and in `[-1, 1]`.",
|
|
44
|
+
"Complex and text inputs are rejected with a builtin-scoped error."
|
|
45
|
+
],
|
|
46
|
+
"examples": [
|
|
47
|
+
{
|
|
48
|
+
"description": "Default centered triangle",
|
|
49
|
+
"input": "t = -0.5:0.25:0.5;\ny = tripuls(t)",
|
|
50
|
+
"output": "y = [0 0.5 1 0.5 0]"
|
|
51
|
+
},
|
|
52
|
+
{
|
|
53
|
+
"description": "Skewed triangle",
|
|
54
|
+
"input": "t = -1:1;\ny = tripuls(t, 2, 1)",
|
|
55
|
+
"output": "y = [0 0.5 1]"
|
|
56
|
+
}
|
|
57
|
+
],
|
|
58
|
+
"faqs": [
|
|
59
|
+
{
|
|
60
|
+
"question": "Can `tripuls` be used inside `pulstran`?",
|
|
61
|
+
"answer": "Yes. `pulstran(T, D, 'tripuls', W, S)` evaluates triangular pulses centered at each delay."
|
|
62
|
+
}
|
|
63
|
+
],
|
|
64
|
+
"links": [
|
|
65
|
+
{
|
|
66
|
+
"label": "pulstran",
|
|
67
|
+
"url": "./pulstran"
|
|
68
|
+
},
|
|
69
|
+
{
|
|
70
|
+
"label": "rectpuls",
|
|
71
|
+
"url": "./rectpuls"
|
|
72
|
+
},
|
|
73
|
+
{
|
|
74
|
+
"label": "gauspuls",
|
|
75
|
+
"url": "./gauspuls"
|
|
76
|
+
}
|
|
77
|
+
],
|
|
78
|
+
"source": {
|
|
79
|
+
"label": "`crates/runmat-runtime/src/builtins/math/signal/tripuls.rs`",
|
|
80
|
+
"url": "https://github.com/runmat-org/runmat/blob/main/crates/runmat-runtime/src/builtins/math/signal/tripuls.rs"
|
|
81
|
+
},
|
|
82
|
+
"key": "tripuls",
|
|
83
|
+
"slug": "tripuls",
|
|
84
|
+
"aliases": [],
|
|
85
|
+
"categoryPath": [
|
|
86
|
+
"math",
|
|
87
|
+
"signal"
|
|
88
|
+
]
|
|
89
|
+
};
|
|
90
|
+
export default builtinDoc;
|
|
91
|
+
//# sourceMappingURL=tripuls.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tripuls.js","sourceRoot":"","sources":["../../../src/generated/builtins/tripuls.ts"],"names":[],"mappings":"AAAA,8CAA8C;AAC9C,uBAAuB;AAIvB,MAAM,UAAU,GAAe;IAC7B,OAAO,EAAE,SAAS;IAClB,UAAU,EAAE,aAAa;IACzB,UAAU,EAAE;QACV,SAAS;QACT,kBAAkB;QAClB,aAAa;QACb,mBAAmB;QACnB,MAAM;KACP;IACD,SAAS,EAAE,qCAAqC;IAChD,YAAY,EAAE;QACZ,yCAAyC;KAC1C;IACD,aAAa,EAAE;QACb,aAAa,EAAE,KAAK;QACpB,WAAW,EAAE,KAAK;QAClB,YAAY,EAAE;YACZ,KAAK;SACN;QACD,cAAc,EAAE,MAAM;QACtB,OAAO,EAAE,6FAA6F;KACvG;IACD,QAAQ,EAAE;QACR,aAAa,EAAE,KAAK;QACpB,WAAW,EAAE,KAAK;QAClB,YAAY,EAAE,CAAC;QACf,WAAW,EAAE,QAAQ;QACrB,OAAO,EAAE,uFAAuF;KACjG;IACD,kBAAkB,EAAE,IAAI;IACxB,QAAQ,EAAE;QACR,MAAM,EAAE,wCAAwC;QAChD,aAAa,EAAE,IAAI;KACpB;IACD,aAAa,EAAE,8IAA8I;IAC7J,WAAW,EAAE;QACX,2GAA2G;QAC3G,qEAAqE;QACrE,wCAAwC;QACxC,2CAA2C;QAC3C,mEAAmE;KACpE;IACD,UAAU,EAAE;QACV;YACE,aAAa,EAAE,2BAA2B;YAC1C,OAAO,EAAE,oCAAoC;YAC7C,QAAQ,EAAE,qBAAqB;SAChC;QACD;YACE,aAAa,EAAE,iBAAiB;YAChC,OAAO,EAAE,iCAAiC;YAC1C,QAAQ,EAAE,eAAe;SAC1B;KACF;IACD,MAAM,EAAE;QACN;YACE,UAAU,EAAE,0CAA0C;YACtD,QAAQ,EAAE,4FAA4F;SACvG;KACF;IACD,OAAO,EAAE;QACP;YACE,OAAO,EAAE,UAAU;YACnB,KAAK,EAAE,YAAY;SACpB;QACD;YACE,OAAO,EAAE,UAAU;YACnB,KAAK,EAAE,YAAY;SACpB;QACD;YACE,OAAO,EAAE,UAAU;YACnB,KAAK,EAAE,YAAY;SACpB;KACF;IACD,QAAQ,EAAE;QACR,OAAO,EAAE,6DAA6D;QACtE,KAAK,EAAE,0GAA0G;KAClH;IACD,KAAK,EAAE,SAAS;IAChB,MAAM,EAAE,SAAS;IACjB,SAAS,EAAE,EAAE;IACb,cAAc,EAAE;QACd,MAAM;QACN,QAAQ;KACT;CACF,CAAC;AAEF,eAAe,UAAU,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"uigetfile.d.ts","sourceRoot":"","sources":["../../../src/generated/builtins/uigetfile.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAEpD,QAAA,MAAM,UAAU,EAAE,UA0FjB,CAAC;AAEF,eAAe,UAAU,CAAC"}
|
|
@@ -0,0 +1,95 @@
|
|
|
1
|
+
// @generated by scripts/generate-builtins.cjs
|
|
2
|
+
// Do not edit by hand.
|
|
3
|
+
const builtinDoc = {
|
|
4
|
+
"title": "uigetfile",
|
|
5
|
+
"category": "io/repl_fs",
|
|
6
|
+
"keywords": [
|
|
7
|
+
"uigetfile",
|
|
8
|
+
"file picker",
|
|
9
|
+
"file dialog",
|
|
10
|
+
"open file",
|
|
11
|
+
"filesystem",
|
|
12
|
+
"ui"
|
|
13
|
+
],
|
|
14
|
+
"summary": "Open a host file-selection dialog and return the selected file name and path.",
|
|
15
|
+
"references": [],
|
|
16
|
+
"gpu_support": {
|
|
17
|
+
"elementwise": false,
|
|
18
|
+
"reduction": false,
|
|
19
|
+
"precisions": [],
|
|
20
|
+
"broadcasting": "none",
|
|
21
|
+
"notes": "Runs through the host filesystem provider. GPU-resident textual arguments are gathered before the file-selection request is made."
|
|
22
|
+
},
|
|
23
|
+
"fusion": {
|
|
24
|
+
"elementwise": false,
|
|
25
|
+
"reduction": false,
|
|
26
|
+
"max_inputs": 0,
|
|
27
|
+
"constants": "inline"
|
|
28
|
+
},
|
|
29
|
+
"requires_feature": null,
|
|
30
|
+
"tested": {
|
|
31
|
+
"unit": "builtins::io::repl_fs::uigetfile::tests",
|
|
32
|
+
"integration": "builtins::io::repl_fs::uigetfile::tests::parses_filter_title_default_and_selection_outputs"
|
|
33
|
+
},
|
|
34
|
+
"description": "`uigetfile` requests an open-file selection from the active RunMat filesystem provider and returns MATLAB-compatible output values. Interactive hosts can implement the provider hook to show a native or browser picker; noninteractive hosts return the standard cancellation values.",
|
|
35
|
+
"behaviors": [
|
|
36
|
+
"`file = uigetfile()` uses an all-files filter.",
|
|
37
|
+
"`uigetfile(filter)` accepts a character vector, string scalar, semicolon-delimited pattern list, or an N-by-1/N-by-2 cell array of patterns and descriptions.",
|
|
38
|
+
"`uigetfile(filter, title, defaultName)` forwards the dialog title and initial file or directory path to the filesystem provider.",
|
|
39
|
+
"`uigetfile(..., 'MultiSelect', 'on')` allows multiple selected files. When multiple files are selected, `file` is a cell array of character vectors. A single selected file is returned as a character vector.",
|
|
40
|
+
"The selected `path` output is the containing directory with a trailing path separator. The `index` output is the one-based selected filter index.",
|
|
41
|
+
"Cancellation returns numeric zero for `file`, `path`, and `index`, matching MATLAB. This is also the behavior for filesystem providers that do not implement an open-file picker."
|
|
42
|
+
],
|
|
43
|
+
"examples": [
|
|
44
|
+
{
|
|
45
|
+
"description": "Select A Spreadsheet",
|
|
46
|
+
"input": "[file, path] = uigetfile('*.xlsx', 'Select a spreadsheet');\nif isequal(file, 0)\n return;\nend\nscores = readtable(fullfile(path, file));"
|
|
47
|
+
},
|
|
48
|
+
{
|
|
49
|
+
"description": "Use Multiple Filters",
|
|
50
|
+
"input": "filters = {'*.m;*.mlx', 'MATLAB files'; '*.txt', 'Text files'};\n[file, path, index] = uigetfile(filters, 'Open source file');"
|
|
51
|
+
},
|
|
52
|
+
{
|
|
53
|
+
"description": "Allow Multiple Files",
|
|
54
|
+
"input": "[files, path] = uigetfile('*.csv', 'Select CSV files', pwd, 'MultiSelect', 'on');\nif isequal(files, 0)\n return;\nend"
|
|
55
|
+
}
|
|
56
|
+
],
|
|
57
|
+
"faqs": [
|
|
58
|
+
{
|
|
59
|
+
"question": "What happens in noninteractive or headless RunMat hosts?",
|
|
60
|
+
"answer": "RunMat returns the MATLAB cancellation values (`0`) unless the active filesystem provider implements `selectFileOpen` / `select_file_open`."
|
|
61
|
+
},
|
|
62
|
+
{
|
|
63
|
+
"question": "How does a browser host provide a real file picker?",
|
|
64
|
+
"answer": "Install a filesystem provider with a `selectFileOpen(request)` function. Return `null` or `false` for cancellation, a string path for one file, an array of string paths for multiple files, or an object such as `{ paths: ['/data/a.csv'], filterIndex: 1 }`."
|
|
65
|
+
},
|
|
66
|
+
{
|
|
67
|
+
"question": "Does `uigetfile` read the selected file?",
|
|
68
|
+
"answer": "No. It only returns the selected file name and directory. Use `fullfile(path, file)` with `readtable`, `fopen`, `load`, or another file-reading builtin to consume the file."
|
|
69
|
+
}
|
|
70
|
+
],
|
|
71
|
+
"links": [
|
|
72
|
+
{
|
|
73
|
+
"label": "fullfile",
|
|
74
|
+
"url": "./fullfile"
|
|
75
|
+
},
|
|
76
|
+
{
|
|
77
|
+
"label": "readtable",
|
|
78
|
+
"url": "./readtable"
|
|
79
|
+
}
|
|
80
|
+
],
|
|
81
|
+
"source": {
|
|
82
|
+
"label": "`crates/runmat-runtime/src/builtins/io/repl_fs/uigetfile.rs`",
|
|
83
|
+
"url": "https://github.com/runmat-org/runmat/blob/main/crates/runmat-runtime/src/builtins/io/repl_fs/uigetfile.rs"
|
|
84
|
+
},
|
|
85
|
+
"gpu_residency": "No. File-selection dialogs are host/UI operations and always execute outside GPU residency. The provider hook returns paths in the active filesystem namespace, so browser hosts that import user-selected files should map them into the mounted provider namespace before returning the path.",
|
|
86
|
+
"key": "uigetfile",
|
|
87
|
+
"slug": "uigetfile",
|
|
88
|
+
"aliases": [],
|
|
89
|
+
"categoryPath": [
|
|
90
|
+
"io",
|
|
91
|
+
"repl_fs"
|
|
92
|
+
]
|
|
93
|
+
};
|
|
94
|
+
export default builtinDoc;
|
|
95
|
+
//# sourceMappingURL=uigetfile.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"uigetfile.js","sourceRoot":"","sources":["../../../src/generated/builtins/uigetfile.ts"],"names":[],"mappings":"AAAA,8CAA8C;AAC9C,uBAAuB;AAIvB,MAAM,UAAU,GAAe;IAC7B,OAAO,EAAE,WAAW;IACpB,UAAU,EAAE,YAAY;IACxB,UAAU,EAAE;QACV,WAAW;QACX,aAAa;QACb,aAAa;QACb,WAAW;QACX,YAAY;QACZ,IAAI;KACL;IACD,SAAS,EAAE,+EAA+E;IAC1F,YAAY,EAAE,EAAE;IAChB,aAAa,EAAE;QACb,aAAa,EAAE,KAAK;QACpB,WAAW,EAAE,KAAK;QAClB,YAAY,EAAE,EAAE;QAChB,cAAc,EAAE,MAAM;QACtB,OAAO,EAAE,mIAAmI;KAC7I;IACD,QAAQ,EAAE;QACR,aAAa,EAAE,KAAK;QACpB,WAAW,EAAE,KAAK;QAClB,YAAY,EAAE,CAAC;QACf,WAAW,EAAE,QAAQ;KACtB;IACD,kBAAkB,EAAE,IAAI;IACxB,QAAQ,EAAE;QACR,MAAM,EAAE,yCAAyC;QACjD,aAAa,EAAE,4FAA4F;KAC5G;IACD,aAAa,EAAE,yRAAyR;IACxS,WAAW,EAAE;QACX,gDAAgD;QAChD,+JAA+J;QAC/J,kIAAkI;QAClI,gNAAgN;QAChN,mJAAmJ;QACnJ,mLAAmL;KACpL;IACD,UAAU,EAAE;QACV;YACE,aAAa,EAAE,sBAAsB;YACrC,OAAO,EAAE,+IAA+I;SACzJ;QACD;YACE,aAAa,EAAE,sBAAsB;YACrC,OAAO,EAAE,gIAAgI;SAC1I;QACD;YACE,aAAa,EAAE,sBAAsB;YACrC,OAAO,EAAE,2HAA2H;SACrI;KACF;IACD,MAAM,EAAE;QACN;YACE,UAAU,EAAE,0DAA0D;YACtE,QAAQ,EAAE,6IAA6I;SACxJ;QACD;YACE,UAAU,EAAE,qDAAqD;YACjE,QAAQ,EAAE,iQAAiQ;SAC5Q;QACD;YACE,UAAU,EAAE,0CAA0C;YACtD,QAAQ,EAAE,8KAA8K;SACzL;KACF;IACD,OAAO,EAAE;QACP;YACE,OAAO,EAAE,UAAU;YACnB,KAAK,EAAE,YAAY;SACpB;QACD;YACE,OAAO,EAAE,WAAW;YACpB,KAAK,EAAE,aAAa;SACrB;KACF;IACD,QAAQ,EAAE;QACR,OAAO,EAAE,8DAA8D;QACvE,KAAK,EAAE,2GAA2G;KACnH;IACD,eAAe,EAAE,iSAAiS;IAClT,KAAK,EAAE,WAAW;IAClB,MAAM,EAAE,WAAW;IACnB,SAAS,EAAE,EAAE;IACb,cAAc,EAAE;QACd,IAAI;QACJ,SAAS;KACV;CACF,CAAC;AAEF,eAAe,UAAU,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"unwrap.d.ts","sourceRoot":"","sources":["../../../src/generated/builtins/unwrap.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAEpD,QAAA,MAAM,UAAU,EAAE,UAsHjB,CAAC;AAEF,eAAe,UAAU,CAAC"}
|
|
@@ -0,0 +1,123 @@
|
|
|
1
|
+
// @generated by scripts/generate-builtins.cjs
|
|
2
|
+
// Do not edit by hand.
|
|
3
|
+
const builtinDoc = {
|
|
4
|
+
"title": "unwrap",
|
|
5
|
+
"category": "math/signal",
|
|
6
|
+
"keywords": [
|
|
7
|
+
"unwrap",
|
|
8
|
+
"phase",
|
|
9
|
+
"angle",
|
|
10
|
+
"signal processing",
|
|
11
|
+
"radians"
|
|
12
|
+
],
|
|
13
|
+
"summary": "Correct phase-angle jumps by adding multiples of `2*pi`.",
|
|
14
|
+
"references": [
|
|
15
|
+
"title: \"MATLAB unwrap documentation\""
|
|
16
|
+
],
|
|
17
|
+
"gpu_support": {
|
|
18
|
+
"elementwise": false,
|
|
19
|
+
"reduction": false,
|
|
20
|
+
"precisions": [
|
|
21
|
+
"f32",
|
|
22
|
+
"f64"
|
|
23
|
+
],
|
|
24
|
+
"broadcasting": "none",
|
|
25
|
+
"notes": "GPU inputs are accepted through the active provider gather path. The host implementation performs stateful phase correction along the requested dimension."
|
|
26
|
+
},
|
|
27
|
+
"fusion": {
|
|
28
|
+
"elementwise": false,
|
|
29
|
+
"reduction": false,
|
|
30
|
+
"max_inputs": 1,
|
|
31
|
+
"constants": "inline"
|
|
32
|
+
},
|
|
33
|
+
"requires_feature": null,
|
|
34
|
+
"tested": {
|
|
35
|
+
"unit": "builtins::math::signal::unwrap::tests",
|
|
36
|
+
"integration": "runmat-vm basics hilbert_builtin_executes_for_fm_demod_shape"
|
|
37
|
+
},
|
|
38
|
+
"description": "`Q = unwrap(P)` adjusts phase angles in radians by adding integer multiples of `2*pi` whenever adjacent samples jump by more than the tolerance.",
|
|
39
|
+
"behaviors": [
|
|
40
|
+
"Accepts real numeric, logical, integer, vector, matrix, and N-D tensor inputs.",
|
|
41
|
+
"Operates along the first non-singleton dimension by default.",
|
|
42
|
+
"`unwrap(P, tol)` uses `max(tol, pi)` as the discontinuity threshold, matching MATLAB behavior for tolerances below `pi`.",
|
|
43
|
+
"`unwrap(P, [], dim)` keeps the default tolerance and unwraps along `dim`.",
|
|
44
|
+
"Preserves the input shape and numeric dtype metadata.",
|
|
45
|
+
"Complex inputs are rejected because `unwrap` expects real phase angles."
|
|
46
|
+
],
|
|
47
|
+
"examples": [
|
|
48
|
+
{
|
|
49
|
+
"description": "Correct a wrapped phase vector",
|
|
50
|
+
"input": "p = [0 1 2 2-2*pi 3-2*pi];\nq = unwrap(p)",
|
|
51
|
+
"output": "q = [0 1 2 2 3]"
|
|
52
|
+
},
|
|
53
|
+
{
|
|
54
|
+
"description": "Use a custom tolerance",
|
|
55
|
+
"input": "p = [0 1 1-2*pi];\nq = unwrap(p, 10)",
|
|
56
|
+
"output": "q = [0 1 -5.2832]"
|
|
57
|
+
},
|
|
58
|
+
{
|
|
59
|
+
"description": "Unwrap across matrix rows",
|
|
60
|
+
"input": "P = [0 1 1-2*pi; 0 -1 -1+2*pi];\nQ = unwrap(P, [], 2)",
|
|
61
|
+
"output": "Q =\n 0 1 1\n 0 -1 -1"
|
|
62
|
+
},
|
|
63
|
+
{
|
|
64
|
+
"description": "Recover continuous phase from an analytic signal",
|
|
65
|
+
"input": "x = cos(0:0.1:10);\nz = hilbert(x);\nphase = unwrap(angle(z));"
|
|
66
|
+
}
|
|
67
|
+
],
|
|
68
|
+
"faqs": [
|
|
69
|
+
{
|
|
70
|
+
"question": "What tolerance does `unwrap` use by default?",
|
|
71
|
+
"answer": "The default tolerance is `pi`. If you pass a tolerance below `pi`, RunMat uses `pi`, matching MATLAB's documented behavior."
|
|
72
|
+
},
|
|
73
|
+
{
|
|
74
|
+
"question": "Which dimension is unwrapped?",
|
|
75
|
+
"answer": "The first non-singleton dimension is used unless you pass `dim`."
|
|
76
|
+
},
|
|
77
|
+
{
|
|
78
|
+
"question": "Does `unwrap` change the shape?",
|
|
79
|
+
"answer": "No. The output has the same shape as the input."
|
|
80
|
+
},
|
|
81
|
+
{
|
|
82
|
+
"question": "Can I pass complex input?",
|
|
83
|
+
"answer": "No. Use `angle(z)` first to convert complex samples to real phase angles, then call `unwrap`."
|
|
84
|
+
}
|
|
85
|
+
],
|
|
86
|
+
"links": [
|
|
87
|
+
{
|
|
88
|
+
"label": "angle",
|
|
89
|
+
"url": "./angle"
|
|
90
|
+
},
|
|
91
|
+
{
|
|
92
|
+
"label": "hilbert",
|
|
93
|
+
"url": "./hilbert"
|
|
94
|
+
},
|
|
95
|
+
{
|
|
96
|
+
"label": "diff",
|
|
97
|
+
"url": "./diff"
|
|
98
|
+
},
|
|
99
|
+
{
|
|
100
|
+
"label": "fft",
|
|
101
|
+
"url": "./fft"
|
|
102
|
+
}
|
|
103
|
+
],
|
|
104
|
+
"source": {
|
|
105
|
+
"label": "`crates/runmat-runtime/src/builtins/math/signal/unwrap.rs`",
|
|
106
|
+
"url": "https://github.com/runmat-org/runmat/blob/main/crates/runmat-runtime/src/builtins/math/signal/unwrap.rs"
|
|
107
|
+
},
|
|
108
|
+
"gpu_residency": "`unwrap` accepts GPU tensors through the normal gather path. Because phase unwrapping is stateful along a dimension and currently materialized on the host, downstream GPU residency resumes only after an explicit `gpuArray` or another operation that uploads the result.",
|
|
109
|
+
"gpu_behavior": [
|
|
110
|
+
"GPU inputs are downloaded through the active provider with dtype normalization.",
|
|
111
|
+
"The host implementation performs MATLAB-compatible phase correction.",
|
|
112
|
+
"The output is a host tensor with the same shape as the input."
|
|
113
|
+
],
|
|
114
|
+
"key": "unwrap",
|
|
115
|
+
"slug": "unwrap",
|
|
116
|
+
"aliases": [],
|
|
117
|
+
"categoryPath": [
|
|
118
|
+
"math",
|
|
119
|
+
"signal"
|
|
120
|
+
]
|
|
121
|
+
};
|
|
122
|
+
export default builtinDoc;
|
|
123
|
+
//# sourceMappingURL=unwrap.js.map
|