formulab 0.28.0 → 0.29.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/CHANGELOG.md +67 -0
- package/README.md +14 -9
- package/dist/automotive/evCharging.d.ts +4 -0
- package/dist/automotive/evCharging.d.ts.map +1 -1
- package/dist/automotive/evCharging.js +4 -0
- package/dist/automotive/evCharging.js.map +1 -1
- package/dist/construction/rebar.d.ts.map +1 -1
- package/dist/construction/rebar.js +13 -2
- package/dist/construction/rebar.js.map +1 -1
- package/dist/electronics/resistor.d.ts.map +1 -1
- package/dist/electronics/resistor.js +13 -9
- package/dist/electronics/resistor.js.map +1 -1
- package/dist/metal/tolerance.d.ts +5 -0
- package/dist/metal/tolerance.d.ts.map +1 -1
- package/dist/metal/tolerance.js +5 -0
- package/dist/metal/tolerance.js.map +1 -1
- package/dist/metal/welding.d.ts +6 -0
- package/dist/metal/welding.d.ts.map +1 -1
- package/dist/metal/welding.js +21 -4
- package/dist/metal/welding.js.map +1 -1
- package/package.json +6 -4
package/CHANGELOG.md
CHANGED
|
@@ -5,6 +5,73 @@ All notable changes to this project will be documented in this file.
|
|
|
5
5
|
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
|
|
6
6
|
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
|
|
7
7
|
|
|
8
|
+
## [0.29.0] - 2026-08-19
|
|
9
|
+
|
|
10
|
+
### Fixed
|
|
11
|
+
|
|
12
|
+
- **`check:dependency-drift` silently hid every outdated dependency once the Node engine floor
|
|
13
|
+
moved above the machine's own Node version.** `pnpm outdated --format json`'s output can be
|
|
14
|
+
prefixed with a plain-text `WARN Unsupported engine` line that itself contains `{...}`
|
|
15
|
+
characters; the script's naive "parse from the first `{`" recovery grabbed the warning's brace
|
|
16
|
+
instead of the real JSON payload's, so `JSON.parse` failed and the script fell back to an
|
|
17
|
+
unhelpful "check manually" placeholder instead of the actual outdated-package list. Introduced
|
|
18
|
+
by this same release's engine-floor bump (a Node <24 dev machine now always sees that warning).
|
|
19
|
+
Now finds the payload by its own line (`{` alone on a line), which pnpm's pretty-printed JSON
|
|
20
|
+
always starts with, regardless of what precedes it.
|
|
21
|
+
|
|
22
|
+
### Changed
|
|
23
|
+
|
|
24
|
+
- **Raised the minimum supported `Node.js` version from 20 to 24.** Node 20 reached end-of-life
|
|
25
|
+
on 2026-04-30 and stopped receiving security patches; the release build itself (`publish.yml`)
|
|
26
|
+
was still running on it. `engines.node` is now `>=24` (Active LTS until 2028-04-30), and CI now
|
|
27
|
+
matrixes Node 24 & 26 instead of 20 & 22. No library API changed — this only affects the
|
|
28
|
+
runtime you install the package into.
|
|
29
|
+
|
|
30
|
+
### Added
|
|
31
|
+
|
|
32
|
+
- Golden reference tests for `electronics/resistor`'s 6-band temperature-coefficient table's six
|
|
33
|
+
previously-unconfirmed colors (black, orange, yellow, green, violet, grey) — cross-checked
|
|
34
|
+
against Panasonic's industrial TCR reference table and Wikipedia's IEC 60062:2016 TCR color
|
|
35
|
+
table, both agreeing with every value already in this table. No values changed; this closes the
|
|
36
|
+
confirmation gap that previously covered only brown/red/blue.
|
|
37
|
+
|
|
38
|
+
## [0.28.1] - 2026-08-16
|
|
39
|
+
|
|
40
|
+
Golden reference test coverage for the Metal domain's remaining two functions, a deprecation
|
|
41
|
+
notice, and doc/tooling accuracy fixes.
|
|
42
|
+
|
|
43
|
+
### Fixed
|
|
44
|
+
|
|
45
|
+
- **`metal/welding` — the aluminum electrode list included a designation that doesn't exist.**
|
|
46
|
+
`E5356` is not classified under AWS A5.3 (the specification this function's SMAW rod-diameter/
|
|
47
|
+
current-range output represents) — AWS A5.3 covers exactly three SMAW aluminum electrodes
|
|
48
|
+
(E1100, E3003, E4043); "5356" only exists as a GTAW/GMAW filler-wire alloy under AWS A5.10's
|
|
49
|
+
`ER5356` designation, a different welding process. Replaced with `E3003` (a real A5.3
|
|
50
|
+
designation). `welding({ baseMetal: 'aluminum', ... })` could previously recommend a rod that
|
|
51
|
+
doesn't exist.
|
|
52
|
+
|
|
53
|
+
### Added
|
|
54
|
+
|
|
55
|
+
- Golden reference tests credited for `metal/tolerance` (already golden — cell-level ISO 286-1/
|
|
56
|
+
286-2 transcriptions with a documented prior defect fix, just missing a formal citation) and
|
|
57
|
+
`metal/welding` (cross-checked against all five AWS specifications it uses).
|
|
58
|
+
- Two new dev-only scripts (not part of the published library surface, same category as
|
|
59
|
+
`audit-constant-provenance.mjs`): `check:dependency-drift` (checks `pnpm outdated` + the
|
|
60
|
+
declared Node engine floor's EOL date; backed by a new monthly-scheduled CI workflow that
|
|
61
|
+
files/updates a tracking issue on drift) and `check:function-counts` (verifies README's
|
|
62
|
+
Verification Status table against the codebase using a documented counting convention).
|
|
63
|
+
|
|
64
|
+
### Changed
|
|
65
|
+
|
|
66
|
+
- **`automotive/evCharging` is deprecated in favor of `chargingLoss`.** `chargingLoss` computes
|
|
67
|
+
the same energy/charging-time values from the same inputs and additionally provides a charger/
|
|
68
|
+
battery loss breakdown, charger-type default efficiencies, ambient-temperature derating, and
|
|
69
|
+
cited standards. `evCharging` is unchanged and not scheduled for removal.
|
|
70
|
+
- Corrected the project's own function/test-count claims, which had drifted out of sync with
|
|
71
|
+
each other and with the codebase: README's Features bullet, Verification Status table (5
|
|
72
|
+
domains), and test count; `package.json`'s description field. All now verified by
|
|
73
|
+
`check:function-counts` rather than hand-maintained.
|
|
74
|
+
|
|
8
75
|
## [0.28.0] - 2026-08-16
|
|
9
76
|
|
|
10
77
|
### Added
|
package/README.md
CHANGED
|
@@ -11,29 +11,34 @@ A comprehensive collection of engineering formulas and calculations for manufact
|
|
|
11
11
|
|
|
12
12
|
## Features
|
|
13
13
|
|
|
14
|
-
- **
|
|
14
|
+
- **203 industrial calculations + 8 type guards** — OEE, Cpk, SPC control charts, Gage R&R, Weibull, metal weight, CNC machining, GD&T, pipe flow, CBM, NIOSH lifting, PMV/PPD, arc flash, battery SOH, GHG emissions, PID tuning, and more
|
|
15
15
|
- **15 specialized domains** — Quality, Metal, Chemical, Electronics, Construction, Automotive, Logistics, Energy, Safety, Food, Utility, Battery, Environmental, Machining, Industrial Engineering
|
|
16
16
|
- **Zero dependencies** — Lightweight and fast
|
|
17
17
|
- **TypeScript first** — Full type definitions included
|
|
18
18
|
- **Tree-shakeable** — Import only what you need
|
|
19
|
-
- **3,
|
|
19
|
+
- **3,042 tests** — Coverage thresholds: 90% lines, 95% functions, 85% branches ([CI pipeline](https://github.com/iyulab/formulab/actions/workflows/ci.yml))
|
|
20
20
|
- **Research-based** — Golden reference tests verified against NIOSH 94-110, AIAG/ASTM E2587, JIPM, ASME B16.5, ISO 22514-2, and more
|
|
21
21
|
|
|
22
22
|
## Verification Status
|
|
23
23
|
|
|
24
|
+
> **Functions** counts primary calculation functions only — type guards (8 total, listed
|
|
25
|
+
> separately above) and helper accessor/lookup functions (`getX`) and exported constants
|
|
26
|
+
> (`ALL_CAPS`) are not counted here. Verified against the codebase by
|
|
27
|
+
> `pnpm check:function-counts` (`scripts/count-functions.mjs`).
|
|
28
|
+
|
|
24
29
|
| Domain | Functions | Golden Tests | Key References |
|
|
25
30
|
|--------|-----------|-------------|----------------|
|
|
26
31
|
| Quality | 21 | oee, cpk, controlChart, gageRR | ISO 22400-2, AIAG/ASTM E2587, JIPM, AIAG MSA |
|
|
27
|
-
| Metal |
|
|
32
|
+
| Metal | 32 | metalWeight, flangeSpec, pipeSpec, pressFit, spring, weldStrength, tolerance, welding | Machinery's Handbook, ASME B36.10/B16.5, ISO 286, AWS A5 series |
|
|
28
33
|
| Logistics | 17 | cbm | Physical formula |
|
|
29
34
|
| Safety | 14 | nioshLifting | NIOSH 94-110, ISO 7730, IEEE 1584, OSHA |
|
|
30
35
|
| Chemical | 12 | pid, reliefValve | Darcy-Weisbach, Fourier, API 520, ISA |
|
|
31
|
-
| Electronics |
|
|
32
|
-
| Construction |
|
|
36
|
+
| Electronics | 11 | awgProperties, resistorDecode | IPC-2221, IEC 60062 |
|
|
37
|
+
| Construction | 13 | momentOfInertia | AISC, Timoshenko, Roark's (momentOfInertia only — see note) |
|
|
33
38
|
| Automotive | 9 | chargingLoss | AASHTO, SAE J1772 |
|
|
34
39
|
| Energy | 15 | degreeDay, windOutput | NREL PVWatts, ISO 50001 |
|
|
35
|
-
| Food |
|
|
36
|
-
| Utility |
|
|
40
|
+
| Food | 6 | waterActivity, stabilityStudy | HACCP, ICH Q1A |
|
|
41
|
+
| Utility | 16 | — | — |
|
|
37
42
|
| Battery | 10 | stateOfHealth, thermalRunaway | IEEE 1188, IEC 62620, Battery University |
|
|
38
43
|
| Environmental | 10 | gwpCalculator | GHG Protocol, IPCC AR6, IEA 2023 |
|
|
39
44
|
| Machining | 12 | all 12 functions — truePosition, gaugeBlockStack, boltCircle, sineBarHeight, effectiveDiameter, radialChipThinning, cuspHeight, boringBarDeflection, toolDeflection, cycleTimeEstimator, threadOverWires, triangleSolver | Machinery's Handbook, ASME Y14.5/B1.2, Sandvik Coromant |
|
|
@@ -110,7 +115,7 @@ Three functions solve NP-hard combinatorial problems using **heuristic** algorit
|
|
|
110
115
|
|
|
111
116
|
GitHub Actions runs on every push to `main` and every pull request:
|
|
112
117
|
|
|
113
|
-
- **Matrix**: Node.js
|
|
118
|
+
- **Matrix**: Node.js 24, 26
|
|
114
119
|
- **Steps**: `pnpm install` → `tsc` (type check) → `vitest run --coverage`
|
|
115
120
|
- **Coverage enforcement**: Fails if below thresholds (lines 90%, functions 95%, branches 85%, statements 90%)
|
|
116
121
|
|
|
@@ -322,7 +327,7 @@ import { batteryRuntime, evCharging, torque, brakingDistance, chargingLoss } fro
|
|
|
322
327
|
|----------|-------------|
|
|
323
328
|
| `brakingDistance()` | Stopping distance (AASHTO method) |
|
|
324
329
|
| `batteryRuntime()` | Battery capacity/runtime |
|
|
325
|
-
| `evCharging()` | EV charging time estimation |
|
|
330
|
+
| `evCharging()` | EV charging time estimation *(deprecated — use `chargingLoss()`)* |
|
|
326
331
|
| `fuelEconomy()` | Fuel economy conversion |
|
|
327
332
|
| `gearRatio()` | Gear ratio calculation |
|
|
328
333
|
| `tireCompare()` | Tire size comparison |
|
|
@@ -7,6 +7,10 @@ import type { ChargingInput, ChargingResult } from './types.js';
|
|
|
7
7
|
* - Energy From Grid (kWh) = Energy Needed / Efficiency
|
|
8
8
|
* - Charging Time (h) = Energy From Grid / Charger Power
|
|
9
9
|
*
|
|
10
|
+
* @deprecated Use {@link chargingLoss} instead — it computes the same energy and charging-time
|
|
11
|
+
* values from a single combined efficiency, and additionally provides a charger/battery loss
|
|
12
|
+
* breakdown with standard citations, charger-type default efficiencies, and ambient-temperature
|
|
13
|
+
* derating. `evCharging` is unchanged and will keep working; no removal is planned.
|
|
10
14
|
* @param input - Charging parameters
|
|
11
15
|
* @returns Charging result with energy and time
|
|
12
16
|
* @throws RangeError if socEndPercent is not greater than socStartPercent,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"evCharging.d.ts","sourceRoot":"","sources":["../../src/automotive/evCharging.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAEhE
|
|
1
|
+
{"version":3,"file":"evCharging.d.ts","sourceRoot":"","sources":["../../src/automotive/evCharging.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAEhE;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,UAAU,CAAC,KAAK,EAAE,aAAa,GAAG,cAAc,CAsB/D"}
|
|
@@ -7,6 +7,10 @@ import { roundTo } from '../utils.js';
|
|
|
7
7
|
* - Energy From Grid (kWh) = Energy Needed / Efficiency
|
|
8
8
|
* - Charging Time (h) = Energy From Grid / Charger Power
|
|
9
9
|
*
|
|
10
|
+
* @deprecated Use {@link chargingLoss} instead — it computes the same energy and charging-time
|
|
11
|
+
* values from a single combined efficiency, and additionally provides a charger/battery loss
|
|
12
|
+
* breakdown with standard citations, charger-type default efficiencies, and ambient-temperature
|
|
13
|
+
* derating. `evCharging` is unchanged and will keep working; no removal is planned.
|
|
10
14
|
* @param input - Charging parameters
|
|
11
15
|
* @returns Charging result with energy and time
|
|
12
16
|
* @throws RangeError if socEndPercent is not greater than socStartPercent,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"evCharging.js","sourceRoot":"","sources":["../../src/automotive/evCharging.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AAGtC
|
|
1
|
+
{"version":3,"file":"evCharging.js","sourceRoot":"","sources":["../../src/automotive/evCharging.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AAGtC;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,UAAU,UAAU,CAAC,KAAoB;IAC7C,MAAM,EAAE,kBAAkB,EAAE,cAAc,EAAE,eAAe,EAAE,aAAa,EAAE,UAAU,EAAE,GAAG,KAAK,CAAC;IAEjG,IAAI,aAAa,IAAI,eAAe,EAAE,CAAC;QACrC,MAAM,IAAI,UAAU,CAAC,oDAAoD,CAAC,CAAC;IAC7E,CAAC;IACD,IAAI,cAAc,IAAI,CAAC,EAAE,CAAC;QACxB,MAAM,IAAI,UAAU,CAAC,uCAAuC,CAAC,CAAC;IAChE,CAAC;IAED,MAAM,OAAO,GAAG,CAAC,aAAa,GAAG,eAAe,CAAC,GAAG,GAAG,CAAC;IACxD,MAAM,YAAY,GAAG,kBAAkB,GAAG,OAAO,CAAC;IAClD,MAAM,cAAc,GAAG,YAAY,GAAG,UAAU,CAAC;IACjD,MAAM,iBAAiB,GAAG,cAAc,GAAG,cAAc,CAAC;IAC1D,MAAM,mBAAmB,GAAG,iBAAiB,GAAG,EAAE,CAAC;IAEnD,OAAO;QACL,YAAY,EAAE,OAAO,CAAC,YAAY,EAAE,CAAC,CAAC;QACtC,cAAc,EAAE,OAAO,CAAC,cAAc,EAAE,CAAC,CAAC;QAC1C,iBAAiB,EAAE,OAAO,CAAC,iBAAiB,EAAE,CAAC,CAAC;QAChD,mBAAmB,EAAE,OAAO,CAAC,mBAAmB,EAAE,CAAC,CAAC;KACrD,CAAC;AACJ,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"rebar.d.ts","sourceRoot":"","sources":["../../src/construction/rebar.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"rebar.d.ts","sourceRoot":"","sources":["../../src/construction/rebar.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAqCrE;;;;;GAKG;AACH,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,SAAS,GAAG,MAAM,CAE1D;AAED;;;;;;GAMG;AACH,wBAAgB,WAAW,CAAC,KAAK,EAAE,UAAU,GAAG,WAAW,CAe1D"}
|
|
@@ -8,8 +8,19 @@ import { roundTo } from '../utils.js';
|
|
|
8
8
|
* an already-published "standard" figure that differs slightly from that formula (see per-entry
|
|
9
9
|
* comments) — but the specific standard responsible for those two overrides (KS D 3504? a
|
|
10
10
|
* particular mill's published table?) is not cited here, and a 2026-08-11 doc audit could not
|
|
11
|
-
* confirm it from freely available sources (see claudedocs/issues in this repo).
|
|
12
|
-
*
|
|
11
|
+
* confirm it from freely available sources (see claudedocs/issues in this repo).
|
|
12
|
+
*
|
|
13
|
+
* A 2026-08-19 follow-up check found two independently-published Korean rebar unit-weight tables
|
|
14
|
+
* (informational/vendor pages, not the primary KS D 3504 text itself) that closely match D16 and
|
|
15
|
+
* D25's override figures here — but diverge from this table's *formula*-derived entries for D10,
|
|
16
|
+
* D13, D29, and D32 by several percent, and disagree with each other on D22. So the provenance
|
|
17
|
+
* doubt is not confined to D16/D25: the generic-formula entries may also not match the actual
|
|
18
|
+
* published table. No value here has been changed on that basis — neither source names an
|
|
19
|
+
* edition, so neither clears this project's citation bar (see the issue draft for the full
|
|
20
|
+
* comparison).
|
|
21
|
+
*
|
|
22
|
+
* Do not swap ANY of these for another unconfirmed secondary-source value without resolving which
|
|
23
|
+
* standard applies.
|
|
13
24
|
*/
|
|
14
25
|
const REBAR_UNIT_WEIGHTS = {
|
|
15
26
|
D10: 0.617, // 10² × 0.00617 = 0.617
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"rebar.js","sourceRoot":"","sources":["../../src/construction/rebar.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AAEtC
|
|
1
|
+
{"version":3,"file":"rebar.js","sourceRoot":"","sources":["../../src/construction/rebar.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AAEtC;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,MAAM,kBAAkB,GAA8B;IACpD,GAAG,EAAE,KAAK,EAAG,wBAAwB;IACrC,GAAG,EAAE,IAAI,EAAI,uBAAuB;IACpC,GAAG,EAAE,IAAI,EAAI,4DAA4D;IACzE,GAAG,EAAE,IAAI,EAAI,uBAAuB;IACpC,GAAG,EAAE,IAAI,EAAI,uBAAuB;IACpC,GAAG,EAAE,IAAI,EAAI,4DAA4D;IACzE,GAAG,EAAE,IAAI,EAAI,uBAAuB;IACpC,GAAG,EAAE,IAAI,EAAI,uBAAuB;CACrC,CAAC;AAEF;;;;;GAKG;AACH,MAAM,UAAU,kBAAkB,CAAC,IAAe;IAChD,OAAO,kBAAkB,CAAC,IAAI,CAAC,CAAC;AAClC,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,WAAW,CAAC,KAAiB;IAC3C,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,GAAG,KAAK,CAAC;IAEzC,MAAM,UAAU,GAAG,kBAAkB,CAAC,IAAI,CAAC,CAAC;IAC5C,IAAI,UAAU,KAAK,SAAS,EAAE,CAAC;QAC7B,MAAM,IAAI,UAAU,CAAC,uBAAuB,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAC9D,CAAC;IACD,MAAM,WAAW,GAAG,OAAO,CAAC,MAAM,GAAG,QAAQ,EAAE,CAAC,CAAC,CAAC;IAClD,MAAM,WAAW,GAAG,OAAO,CAAC,UAAU,GAAG,WAAW,EAAE,CAAC,CAAC,CAAC;IAEzD,OAAO;QACL,UAAU;QACV,WAAW;QACX,WAAW;KACZ,CAAC;AACJ,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"resistor.d.ts","sourceRoot":"","sources":["../../src/electronics/resistor.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,cAAc,EAAa,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"resistor.d.ts","sourceRoot":"","sources":["../../src/electronics/resistor.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,cAAc,EAAa,MAAM,YAAY,CAAC;AAkJ3E;;;;;;GAMG;AACH,wBAAgB,cAAc,CAAC,KAAK,EAAE,aAAa,GAAG,cAAc,CAsDnE"}
|
|
@@ -55,15 +55,19 @@ const TOLERANCES = {
|
|
|
55
55
|
/**
|
|
56
56
|
* Temperature coefficient values (ppm/C) for the 6th band of a 6-band resistor.
|
|
57
57
|
*
|
|
58
|
-
* brown=100, red=50, blue=10
|
|
59
|
-
*
|
|
60
|
-
*
|
|
61
|
-
*
|
|
62
|
-
*
|
|
63
|
-
*
|
|
64
|
-
*
|
|
65
|
-
*
|
|
66
|
-
*
|
|
58
|
+
* brown=100, red=50, blue=10 were corroborated by every source checked as of 2026-08-11. The
|
|
59
|
+
* remaining six colors (black/orange/yellow/green/violet/grey) were left flagged as unconfirmed
|
|
60
|
+
* at that point, because at least one other published TCR color scheme assigns unrelated ppm
|
|
61
|
+
* figures (and even ppm *ranges*, not single values) to the same colors — that older scheme
|
|
62
|
+
* (black≈1000, brown≈500, red≈200, orange≈100, ...) appears to predate IEC 60062:2016 rather
|
|
63
|
+
* than genuinely disagree with it.
|
|
64
|
+
*
|
|
65
|
+
* @reference IEC 60062:2016 TCR color table. Cross-checked 2026-08-19: Panasonic's industrial TCR
|
|
66
|
+
* reference (industrial.panasonic.com/ww/ds/ss/technical/b27) and Wikipedia's "IEC 60062 color
|
|
67
|
+
* code" article (which cites IEC 60062:2016 directly) both give the full nine-color table and
|
|
68
|
+
* agree with every value already in this object, including the six that were previously
|
|
69
|
+
* unconfirmed — see claudedocs/issues history (formulab repo) for the full corroboration record
|
|
70
|
+
* and why this still isn't the purchased primary IEC text itself.
|
|
67
71
|
*/
|
|
68
72
|
const TEMP_COEFFICIENTS = {
|
|
69
73
|
black: 250,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"resistor.js","sourceRoot":"","sources":["../../src/electronics/resistor.ts"],"names":[],"mappings":"AAEA;;;;;;;;;GASG;AACH,MAAM,YAAY,GAA8B;IAC9C,KAAK,EAAE,CAAC;IACR,KAAK,EAAE,CAAC;IACR,GAAG,EAAE,CAAC;IACN,MAAM,EAAE,CAAC;IACT,MAAM,EAAE,CAAC;IACT,KAAK,EAAE,CAAC;IACR,IAAI,EAAE,CAAC;IACP,MAAM,EAAE,CAAC;IACT,IAAI,EAAE,CAAC;IACP,KAAK,EAAE,CAAC;IACR,IAAI,EAAE,CAAC,CAAC,EAAI,+CAA+C;IAC3D,MAAM,EAAE,CAAC,CAAC,EAAE,iDAAiD;CAC9D,CAAC;AAEF;;GAEG;AACH,MAAM,WAAW,GAA8B;IAC7C,KAAK,EAAE,CAAC;IACR,KAAK,EAAE,EAAE;IACT,GAAG,EAAE,GAAG;IACR,MAAM,EAAE,IAAI;IACZ,MAAM,EAAE,KAAK;IACb,KAAK,EAAE,MAAM;IACb,IAAI,EAAE,OAAO;IACb,MAAM,EAAE,QAAQ;IAChB,IAAI,EAAE,SAAS;IACf,KAAK,EAAE,UAAU;IACjB,IAAI,EAAE,GAAG;IACT,MAAM,EAAE,IAAI;CACb,CAAC;AAEF;;GAEG;AACH,MAAM,UAAU,GAA2B;IACzC,KAAK,EAAE,CAAC;IACR,GAAG,EAAE,CAAC;IACN,KAAK,EAAE,GAAG;IACV,IAAI,EAAE,IAAI;IACV,MAAM,EAAE,GAAG;IACX,IAAI,EAAE,IAAI;IACV,IAAI,EAAE,CAAC;IACP,MAAM,EAAE,EAAE;CACX,CAAC;AAEF
|
|
1
|
+
{"version":3,"file":"resistor.js","sourceRoot":"","sources":["../../src/electronics/resistor.ts"],"names":[],"mappings":"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"}
|
|
@@ -16,6 +16,11 @@ export declare const ISO286_SIZE_RANGES: ReadonlyArray<{
|
|
|
16
16
|
/**
|
|
17
17
|
* Calculate ISO tolerance band for a given nominal size and tolerance class.
|
|
18
18
|
*
|
|
19
|
+
* @reference ISO 286-1:2010 (tolerance-grade table, IT4-IT14) and ISO 286-2:2010 (fundamental
|
|
20
|
+
* deviation tables for hole/shaft letters). Cell-level values are transcribed from and
|
|
21
|
+
* golden-tested against the published tables — see `tolerance.test.ts`'s "against the ISO
|
|
22
|
+
* 286-1/286-2 table" describe blocks, including the ISO 286-1 delta-term correction (K/M/N/P
|
|
23
|
+
* above H) documented there.
|
|
19
24
|
* @throws RangeError if the nominal size is out of range, the IT grade is unknown,
|
|
20
25
|
* or the deviation letter is unknown
|
|
21
26
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tolerance.d.ts","sourceRoot":"","sources":["../../src/metal/tolerance.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,cAAc,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAQlE;;;;;;;;;GASG;AACH,eAAO,MAAM,kBAAkB,EAAE,aAAa,CAAC;IAAE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;CAAE,CAC7B,CAAC;AAmEnE
|
|
1
|
+
{"version":3,"file":"tolerance.d.ts","sourceRoot":"","sources":["../../src/metal/tolerance.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,cAAc,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAQlE;;;;;;;;;GASG;AACH,eAAO,MAAM,kBAAkB,EAAE,aAAa,CAAC;IAAE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;CAAE,CAC7B,CAAC;AAmEnE;;;;;;;;;;GAUG;AACH,wBAAgB,SAAS,CAAC,KAAK,EAAE,cAAc,GAAG,eAAe,CAgFhE"}
|
package/dist/metal/tolerance.js
CHANGED
|
@@ -79,6 +79,11 @@ function getToleranceValue(nominal, itGrade) {
|
|
|
79
79
|
/**
|
|
80
80
|
* Calculate ISO tolerance band for a given nominal size and tolerance class.
|
|
81
81
|
*
|
|
82
|
+
* @reference ISO 286-1:2010 (tolerance-grade table, IT4-IT14) and ISO 286-2:2010 (fundamental
|
|
83
|
+
* deviation tables for hole/shaft letters). Cell-level values are transcribed from and
|
|
84
|
+
* golden-tested against the published tables — see `tolerance.test.ts`'s "against the ISO
|
|
85
|
+
* 286-1/286-2 table" describe blocks, including the ISO 286-1 delta-term correction (K/M/N/P
|
|
86
|
+
* above H) documented there.
|
|
82
87
|
* @throws RangeError if the nominal size is out of range, the IT grade is unknown,
|
|
83
88
|
* or the deviation letter is unknown
|
|
84
89
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tolerance.js","sourceRoot":"","sources":["../../src/metal/tolerance.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"tolerance.js","sourceRoot":"","sources":["../../src/metal/tolerance.ts"],"names":[],"mappings":"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"}
|
package/dist/metal/welding.d.ts
CHANGED
|
@@ -1,6 +1,12 @@
|
|
|
1
1
|
import type { WeldingInput, WeldingResult } from './types.js';
|
|
2
2
|
/**
|
|
3
3
|
* Recommend welding electrodes based on base metal and joint parameters.
|
|
4
|
+
*
|
|
5
|
+
* @reference Electrode designations and position capability per the AWS specifications cited on
|
|
6
|
+
* `ELECTRODES` above. Rod-diameter-by-thickness and current-per-diameter (25-45 A/mm) are
|
|
7
|
+
* general SMAW shop-practice rules of thumb, not values stated by a specific AWS specification
|
|
8
|
+
* — published rules of thumb for both vary noticeably by source, welder skill, and joint
|
|
9
|
+
* design, so treat these as a starting point rather than a cited standard.
|
|
4
10
|
*/
|
|
5
11
|
export declare function welding(input: WeldingInput): WeldingResult;
|
|
6
12
|
//# sourceMappingURL=welding.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"welding.d.ts","sourceRoot":"","sources":["../../src/metal/welding.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,YAAY,EAAE,aAAa,EAAgC,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"welding.d.ts","sourceRoot":"","sources":["../../src/metal/welding.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,YAAY,EAAE,aAAa,EAAgC,MAAM,YAAY,CAAC;AAsD5F;;;;;;;;GAQG;AACH,wBAAgB,OAAO,CAAC,KAAK,EAAE,YAAY,GAAG,aAAa,CAsC1D"}
|
package/dist/metal/welding.js
CHANGED
|
@@ -1,5 +1,12 @@
|
|
|
1
1
|
import { roundTo } from '../utils.js';
|
|
2
|
-
|
|
2
|
+
/**
|
|
3
|
+
* Electrode recommendation database by base metal, covering the SMAW (stick) process only.
|
|
4
|
+
*
|
|
5
|
+
* @reference AWS A5.1 (mild steel), AWS A5.5 (low-alloy steel), AWS A5.4 (stainless steel),
|
|
6
|
+
* AWS A5.15 (cast iron), AWS A5.3 (aluminum — the SMAW-specific specification; distinct from
|
|
7
|
+
* AWS A5.10, which covers bare aluminum filler *rod/wire* for GTAW/GMAW under an "ER" prefix,
|
|
8
|
+
* not SMAW electrodes).
|
|
9
|
+
*/
|
|
3
10
|
const ELECTRODES = {
|
|
4
11
|
mildSteel: [
|
|
5
12
|
{ designation: 'E6010', awsClass: 'AWS A5.1', characteristics: 'Deep penetration, all positions, DC+' },
|
|
@@ -24,11 +31,15 @@ const ELECTRODES = {
|
|
|
24
31
|
],
|
|
25
32
|
aluminum: [
|
|
26
33
|
{ designation: 'E4043', awsClass: 'AWS A5.3', characteristics: '5% Si, general purpose, 6xxx series' },
|
|
27
|
-
{ designation: '
|
|
34
|
+
{ designation: 'E3003', awsClass: 'AWS A5.3', characteristics: 'Al-Mn alloy, dissimilar aluminum grades, seawater service' },
|
|
28
35
|
],
|
|
29
36
|
};
|
|
30
|
-
// All-position electrodes
|
|
31
|
-
|
|
37
|
+
// All-position electrodes. For mild/low-alloy/stainless steel this follows the AWS A5.1-family
|
|
38
|
+
// designation's own position digit (the digit before the coating-type digit: 1 = all positions,
|
|
39
|
+
// 2 = flat/horizontal only — e.g. E7018 vs. E7024). AWS A5.3/A5.15 (aluminum/cast iron) don't
|
|
40
|
+
// encode position in the designation the same way; those two entries reflect general shop
|
|
41
|
+
// practice for covered aluminum/nickel electrodes rather than a standard-stated position code.
|
|
42
|
+
const ALL_POSITION = new Set(['E6010', 'E6013', 'E7018', 'E7018-A1', 'E8018-B2', 'E9018-B3', 'E308L-16', 'E309L-16', 'E316L-16', 'ENi-CI', 'ENiFe-CI', 'ESt', 'E4043', 'E3003']);
|
|
32
43
|
// Thickness to rod diameter mapping (mm)
|
|
33
44
|
function getRodDiameter(thickness) {
|
|
34
45
|
if (thickness <= 3)
|
|
@@ -43,6 +54,12 @@ function getRodDiameter(thickness) {
|
|
|
43
54
|
}
|
|
44
55
|
/**
|
|
45
56
|
* Recommend welding electrodes based on base metal and joint parameters.
|
|
57
|
+
*
|
|
58
|
+
* @reference Electrode designations and position capability per the AWS specifications cited on
|
|
59
|
+
* `ELECTRODES` above. Rod-diameter-by-thickness and current-per-diameter (25-45 A/mm) are
|
|
60
|
+
* general SMAW shop-practice rules of thumb, not values stated by a specific AWS specification
|
|
61
|
+
* — published rules of thumb for both vary noticeably by source, welder skill, and joint
|
|
62
|
+
* design, so treat these as a starting point rather than a cited standard.
|
|
46
63
|
*/
|
|
47
64
|
export function welding(input) {
|
|
48
65
|
const { baseMetal, position, thickness } = input;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"welding.js","sourceRoot":"","sources":["../../src/metal/welding.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AAGtC
|
|
1
|
+
{"version":3,"file":"welding.js","sourceRoot":"","sources":["../../src/metal/welding.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "formulab",
|
|
3
|
-
"version": "0.
|
|
4
|
-
"description": "Manufacturing & Engineering calculation formulas library -
|
|
3
|
+
"version": "0.29.0",
|
|
4
|
+
"description": "Manufacturing & Engineering calculation formulas library - 203 industrial calculations across 15 domains for OEE, Cpk, SPC, FMEA, Nelson Rules, metal weight, CNC machining, GD&T, battery, environmental, pipe flow, logistics, IE time study, and more",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "./dist/index.js",
|
|
7
7
|
"types": "./dist/index.d.ts",
|
|
@@ -157,7 +157,7 @@
|
|
|
157
157
|
"url": "https://github.com/iyulab/formulab/issues"
|
|
158
158
|
},
|
|
159
159
|
"engines": {
|
|
160
|
-
"node": ">=
|
|
160
|
+
"node": ">=24"
|
|
161
161
|
},
|
|
162
162
|
"devDependencies": {
|
|
163
163
|
"@vitest/coverage-v8": "^4.0.18",
|
|
@@ -173,6 +173,8 @@
|
|
|
173
173
|
"test:watch": "vitest",
|
|
174
174
|
"docs:api": "typedoc",
|
|
175
175
|
"clean": "node -e \"require('fs').rmSync('dist',{recursive:true,force:true})\"",
|
|
176
|
-
"audit:constant-provenance": "node scripts/audit-constant-provenance.mjs src"
|
|
176
|
+
"audit:constant-provenance": "node scripts/audit-constant-provenance.mjs src",
|
|
177
|
+
"check:dependency-drift": "node scripts/check-dependency-drift.mjs",
|
|
178
|
+
"check:function-counts": "node scripts/count-functions.mjs"
|
|
177
179
|
}
|
|
178
180
|
}
|