formulab 0.36.0 → 0.37.1
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 +68 -0
- package/README.md +2 -2
- package/dist/machining/cuspHeight.d.ts +3 -0
- package/dist/machining/cuspHeight.d.ts.map +1 -1
- package/dist/machining/cuspHeight.js +12 -0
- package/dist/machining/cuspHeight.js.map +1 -1
- package/dist/metal/bendAllowance.d.ts.map +1 -1
- package/dist/metal/bendAllowance.js +33 -3
- package/dist/metal/bendAllowance.js.map +1 -1
- package/dist/metal/index.d.ts +2 -1
- package/dist/metal/index.d.ts.map +1 -1
- package/dist/metal/index.js +1 -0
- package/dist/metal/index.js.map +1 -1
- package/dist/metal/minBendRadius.d.ts +16 -0
- package/dist/metal/minBendRadius.d.ts.map +1 -0
- package/dist/metal/minBendRadius.js +111 -0
- package/dist/metal/minBendRadius.js.map +1 -0
- package/dist/metal/types.d.ts +33 -0
- package/dist/metal/types.d.ts.map +1 -1
- package/dist/quality/mtbf.d.ts +20 -0
- package/dist/quality/mtbf.d.ts.map +1 -1
- package/dist/quality/mtbf.js +38 -9
- package/dist/quality/mtbf.js.map +1 -1
- package/package.json +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -5,6 +5,74 @@ 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.37.1] - 2026-09-09
|
|
9
|
+
|
|
10
|
+
### Fixed
|
|
11
|
+
|
|
12
|
+
- **`quality/mtbf()`** — availability and the failure rate were derived from the rounded
|
|
13
|
+
MTBF and MTTR the function reports rather than from the times it was given. Rounding a
|
|
14
|
+
mean to two decimals and then dividing by it is not a rounding whisker: when short times
|
|
15
|
+
are spread over many failures the rounded mean is a large fraction of its own value. One
|
|
16
|
+
hour of operating time with half an hour of repair over 34 failures reported 75%
|
|
17
|
+
availability against a true 66.67%, and across a swept grid of plausible inputs a third
|
|
18
|
+
of the cases differed in the reported digits. Availability now reduces to the time-based
|
|
19
|
+
ratio of up time to total time (the failure count cancels), and the failure rate is taken
|
|
20
|
+
from the unrounded mean. The reported MTBF and MTTR are unchanged.
|
|
21
|
+
- **`quality/mtbf()`** — `reliabilityAtMtbf` returned 0 instead of e^-1 when the mean time
|
|
22
|
+
between failures rounded down to 0.00, and `totalRepairTime` was not validated. Reliability
|
|
23
|
+
at T = MTBF is e^-1 for any positive MTBF, and a negative repair time now throws
|
|
24
|
+
`RangeError` like the other invalid inputs.
|
|
25
|
+
|
|
26
|
+
- **`machining/cuspHeight()`** — returned `NaN` instead of rejecting impossible input. A
|
|
27
|
+
stepover wider than the tool diameter drove the square root negative, and non-positive
|
|
28
|
+
radii and stepovers were not checked at all, so a caller received a silent `NaN` and
|
|
29
|
+
rendered it. All three now throw `RangeError`. A stepover of exactly the tool diameter
|
|
30
|
+
stays valid: the passes just touch and the ridge is a full tool radius high.
|
|
31
|
+
|
|
32
|
+
### Changed
|
|
33
|
+
|
|
34
|
+
- **`quality/mtbf()`** — documented which defined term each output corresponds to, with an
|
|
35
|
+
`@reference` to EN 13306:2017 (maintenance terminology): 11.3 mean time between failures,
|
|
36
|
+
11.2 mean operating time between failures, 11.4 mean repair time, 9.18 time between
|
|
37
|
+
failures, 4.9 time based availability. The function had carried no citation since an
|
|
38
|
+
earlier, incorrect attribution was removed. Dividing operating time by the failure count
|
|
39
|
+
is strictly the mean *operating* time between failures (11.2); the name MTBF is kept
|
|
40
|
+
because that is what the figure is called in practice, and the distinction is now stated
|
|
41
|
+
rather than left implicit.
|
|
42
|
+
|
|
43
|
+
## [0.37.0] - 2026-09-07
|
|
44
|
+
|
|
45
|
+
### Added
|
|
46
|
+
|
|
47
|
+
- **`metal/minBendRadiusDin6935()`** — minimum permissible bend radius for cold-bent flat
|
|
48
|
+
steel, read from DIN 6935:2010-01 Table 1. The standard resolves the limit from three
|
|
49
|
+
inputs at once — thickness band, guaranteed minimum tensile strength class, and whether
|
|
50
|
+
the bend runs across or along the rolling direction — and applies Clause 3's rule that a
|
|
51
|
+
bend angle above 120° takes the next value in the table. Golden-tested against the
|
|
52
|
+
standard's own worked example (6 mm Q St 42-2 bent transverse: 10 mm up to 120°, 12 mm
|
|
53
|
+
above it), plus the structural invariants the table states: longitudinal never below
|
|
54
|
+
transverse, stronger classes never below weaker, monotone in thickness. Returns `null`
|
|
55
|
+
rather than extrapolating past the 20 mm the table covers.
|
|
56
|
+
- **`BendAllowanceResult.minBendRadiusBasis`** — says whether the reported minimum bend
|
|
57
|
+
radius came from a normative table (`din6935`) or is a shop convention (`convention`),
|
|
58
|
+
so callers that cite sources can tell the two apart.
|
|
59
|
+
- **`BendAllowanceInput.rollingDirection`** — optional bend orientation for steel. Defaults
|
|
60
|
+
to `longitudinal`, the more demanding of the two: an unstated orientation must not
|
|
61
|
+
produce the more permissive limit.
|
|
62
|
+
|
|
63
|
+
### Changed
|
|
64
|
+
|
|
65
|
+
- **`metal/bendAllowance()` now reads mild steel's minimum bend radius from DIN 6935
|
|
66
|
+
Table 1 instead of a flat 1.0× thickness multiplier.** The effective multiple the
|
|
67
|
+
standard tabulates is not constant — it is 1.0× only at the thinnest band and reaches
|
|
68
|
+
about 2.0× in ordinary plate — so the flat multiplier understated the limit exactly
|
|
69
|
+
where sheet metal work most often sits. Because this figure decides a warning rather
|
|
70
|
+
than merely being displayed, understating it let combinations the standard prohibits
|
|
71
|
+
pass silently: at 10 mm thickness a 12 mm inside radius drew no warning although Table 1
|
|
72
|
+
requires 20 mm along the rolling direction. Returned values change for mild steel;
|
|
73
|
+
the alloys and `custom` keep their conventional multipliers, which are now reported as
|
|
74
|
+
such. Steel past 20 mm falls back to the multiplier and says so.
|
|
75
|
+
|
|
8
76
|
## [0.36.0] - 2026-09-03
|
|
9
77
|
|
|
10
78
|
### Added
|
package/README.md
CHANGED
|
@@ -11,7 +11,7 @@ A comprehensive collection of engineering formulas and calculations for manufact
|
|
|
11
11
|
|
|
12
12
|
## Features
|
|
13
13
|
|
|
14
|
-
- **
|
|
14
|
+
- **207 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
|
|
@@ -29,7 +29,7 @@ A comprehensive collection of engineering formulas and calculations for manufact
|
|
|
29
29
|
| Domain | Functions | Golden Tests | Key References |
|
|
30
30
|
|--------|-----------|-------------|----------------|
|
|
31
31
|
| Quality | 23 | oee, cpk, controlChart, gageRR | ISO 22400-2, AIAG/ASTM E2587, JIPM, AIAG MSA, ISO 7870-3, ISO 7870-5 |
|
|
32
|
-
| Metal |
|
|
32
|
+
| Metal | 33 | metalWeight, flangeSpec, pipeSpec, pressFit, spring, weldStrength, tolerance, welding | Machinery's Handbook, ASME B36.10/B16.5, ISO 286, AWS A5 series |
|
|
33
33
|
| Logistics | 17 | cbm | Physical formula |
|
|
34
34
|
| Safety | 14 | nioshLifting | NIOSH 94-110, ISO 7730, IEEE 1584, OSHA |
|
|
35
35
|
| Chemical | 12 | pid, reliefValve | Darcy-Weisbach, Fourier, API 520, ISA |
|
|
@@ -10,6 +10,9 @@ import type { CuspHeightInput, CuspHeightResult } from './types.js';
|
|
|
10
10
|
*
|
|
11
11
|
* @param input - Cusp height parameters
|
|
12
12
|
* @returns CuspHeightResult with scallop height and approximate Ra
|
|
13
|
+
* @throws RangeError if toolRadius or stepover is not positive, or if stepover exceeds the
|
|
14
|
+
* tool diameter (adjacent passes never meet, so the formula has no scallop to describe —
|
|
15
|
+
* without the guard the square root goes negative and the result is silently NaN)
|
|
13
16
|
*/
|
|
14
17
|
export declare function cuspHeight(input: CuspHeightInput): CuspHeightResult;
|
|
15
18
|
//# sourceMappingURL=cuspHeight.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cuspHeight.d.ts","sourceRoot":"","sources":["../../src/machining/cuspHeight.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,eAAe,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAEpE
|
|
1
|
+
{"version":3,"file":"cuspHeight.d.ts","sourceRoot":"","sources":["../../src/machining/cuspHeight.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,eAAe,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAEpE;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,UAAU,CAAC,KAAK,EAAE,eAAe,GAAG,gBAAgB,CAoBnE"}
|
|
@@ -10,9 +10,21 @@ import { roundTo } from '../utils.js';
|
|
|
10
10
|
*
|
|
11
11
|
* @param input - Cusp height parameters
|
|
12
12
|
* @returns CuspHeightResult with scallop height and approximate Ra
|
|
13
|
+
* @throws RangeError if toolRadius or stepover is not positive, or if stepover exceeds the
|
|
14
|
+
* tool diameter (adjacent passes never meet, so the formula has no scallop to describe —
|
|
15
|
+
* without the guard the square root goes negative and the result is silently NaN)
|
|
13
16
|
*/
|
|
14
17
|
export function cuspHeight(input) {
|
|
15
18
|
const { toolRadius, stepover } = input;
|
|
19
|
+
if (!(toolRadius > 0)) {
|
|
20
|
+
throw new RangeError('toolRadius must be greater than 0');
|
|
21
|
+
}
|
|
22
|
+
if (!(stepover > 0)) {
|
|
23
|
+
throw new RangeError('stepover must be greater than 0');
|
|
24
|
+
}
|
|
25
|
+
if (stepover > 2 * toolRadius) {
|
|
26
|
+
throw new RangeError('stepover must not exceed the tool diameter (2 x toolRadius)');
|
|
27
|
+
}
|
|
16
28
|
const halfStep = stepover / 2;
|
|
17
29
|
const h = toolRadius - Math.sqrt(toolRadius * toolRadius - halfStep * halfStep);
|
|
18
30
|
return {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cuspHeight.js","sourceRoot":"","sources":["../../src/machining/cuspHeight.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AAGtC
|
|
1
|
+
{"version":3,"file":"cuspHeight.js","sourceRoot":"","sources":["../../src/machining/cuspHeight.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AAGtC;;;;;;;;;;;;;;GAcG;AACH,MAAM,UAAU,UAAU,CAAC,KAAsB;IAC/C,MAAM,EAAE,UAAU,EAAE,QAAQ,EAAE,GAAG,KAAK,CAAC;IAEvC,IAAI,CAAC,CAAC,UAAU,GAAG,CAAC,CAAC,EAAE,CAAC;QACtB,MAAM,IAAI,UAAU,CAAC,mCAAmC,CAAC,CAAC;IAC5D,CAAC;IACD,IAAI,CAAC,CAAC,QAAQ,GAAG,CAAC,CAAC,EAAE,CAAC;QACpB,MAAM,IAAI,UAAU,CAAC,iCAAiC,CAAC,CAAC;IAC1D,CAAC;IACD,IAAI,QAAQ,GAAG,CAAC,GAAG,UAAU,EAAE,CAAC;QAC9B,MAAM,IAAI,UAAU,CAAC,6DAA6D,CAAC,CAAC;IACtF,CAAC;IAED,MAAM,QAAQ,GAAG,QAAQ,GAAG,CAAC,CAAC;IAC9B,MAAM,CAAC,GAAG,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,GAAG,UAAU,GAAG,QAAQ,GAAG,QAAQ,CAAC,CAAC;IAEhF,OAAO;QACL,UAAU,EAAE,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC;QACzB,gBAAgB,EAAE,OAAO,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,EAAE,iCAAiC;KAChF,CAAC;AACJ,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bendAllowance.d.ts","sourceRoot":"","sources":["../../src/metal/bendAllowance.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"bendAllowance.d.ts","sourceRoot":"","sources":["../../src/metal/bendAllowance.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EACV,kBAAkB,EAClB,mBAAmB,EAIpB,MAAM,YAAY,CAAC;AAgEpB;;;;;;;;;GASG;AACH,wBAAgB,aAAa,CAAC,KAAK,EAAE,kBAAkB,GAAG,mBAAmB,CAoE5E"}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { roundTo } from '../utils.js';
|
|
2
|
+
import { minBendRadiusDin6935 } from './minBendRadius.js';
|
|
2
3
|
/**
|
|
3
4
|
* Default K-factor values by material.
|
|
4
5
|
*
|
|
@@ -26,6 +27,10 @@ const K_FACTOR_TABLE = {
|
|
|
26
27
|
* feasibility check, not a specification limit; verify against tooling and material
|
|
27
28
|
* datasheets for production use.
|
|
28
29
|
*
|
|
30
|
+
* These stay conventions because no normative table has been sourced for these alloys.
|
|
31
|
+
* Steel is resolved from a standard instead, and reaches this fallback only past the
|
|
32
|
+
* thicknesses that table covers; the dispatch is at the call site, not here.
|
|
33
|
+
*
|
|
29
34
|
* aluminum6061 in particular: minimum bend radius for this alloy varies several-fold
|
|
30
35
|
* with temper (O/T4/T6), so a single multiplier is a rougher approximation here than
|
|
31
36
|
* for the other materials in this table.
|
|
@@ -37,6 +42,18 @@ const MIN_BEND_RADIUS_MULTIPLIER = {
|
|
|
37
42
|
aluminum6061: 1.5,
|
|
38
43
|
custom: 1.5,
|
|
39
44
|
};
|
|
45
|
+
/**
|
|
46
|
+
* DIN 6935 strength class assumed for `mildSteel`.
|
|
47
|
+
*
|
|
48
|
+
* The canonical mild steel of the standard's own material list is Q St 37, whose guaranteed
|
|
49
|
+
* minimum tensile strength puts it in the lowest class — which is also the class with the
|
|
50
|
+
* smallest radii, so a caller working a stronger steel is under-warned rather than the
|
|
51
|
+
* limit being overstated for everyone. Callers who know their grade should read
|
|
52
|
+
* `minBendRadiusDin6935` directly with the right class.
|
|
53
|
+
*
|
|
54
|
+
* @reference DIN 6935:2010-01, Table 3 (material list, per DIN 17100).
|
|
55
|
+
*/
|
|
56
|
+
const MILD_STEEL_STRENGTH_CLASS = 'upTo390';
|
|
40
57
|
/**
|
|
41
58
|
* V-die opening multiplier (standard is 8x thickness)
|
|
42
59
|
*/
|
|
@@ -52,12 +69,24 @@ const V_DIE_MULTIPLIER = 8;
|
|
|
52
69
|
* @returns BendAllowanceResult with BA, BD, OSSB, K-factor, recommended V-die, min bend radius
|
|
53
70
|
*/
|
|
54
71
|
export function bendAllowance(input) {
|
|
55
|
-
const { thickness, bendAngle, insideRadius, material = 'mildSteel' } = input;
|
|
72
|
+
const { thickness, bendAngle, insideRadius, material = 'mildSteel', rollingDirection = 'longitudinal', } = input;
|
|
56
73
|
const warnings = [];
|
|
57
74
|
// Get K-factor: use provided or default from table
|
|
58
75
|
const kFactor = input.kFactor ?? K_FACTOR_TABLE[material];
|
|
59
|
-
//
|
|
60
|
-
|
|
76
|
+
// Minimum bend radius: read the normative table where one covers this material, and fall
|
|
77
|
+
// back to the conventional multiplier only where it does not. A flat multiple of thickness
|
|
78
|
+
// understates the steel limit in ordinary plate thicknesses, and this figure decides a
|
|
79
|
+
// warning rather than merely being displayed.
|
|
80
|
+
const din6935 = material === 'mildSteel'
|
|
81
|
+
? minBendRadiusDin6935({
|
|
82
|
+
thickness,
|
|
83
|
+
strengthClass: MILD_STEEL_STRENGTH_CLASS,
|
|
84
|
+
rollingDirection,
|
|
85
|
+
bendAngle,
|
|
86
|
+
})
|
|
87
|
+
: null;
|
|
88
|
+
const minBendRadius = din6935?.minBendRadius ?? MIN_BEND_RADIUS_MULTIPLIER[material] * thickness;
|
|
89
|
+
const minBendRadiusBasis = din6935 ? 'din6935' : 'convention';
|
|
61
90
|
// Calculate recommended V-die opening
|
|
62
91
|
const recommendedVDie = roundTo(V_DIE_MULTIPLIER * thickness, 0);
|
|
63
92
|
// Warn if inside radius is less than minimum
|
|
@@ -87,6 +116,7 @@ export function bendAllowance(input) {
|
|
|
87
116
|
kFactor,
|
|
88
117
|
recommendedVDie,
|
|
89
118
|
minBendRadius,
|
|
119
|
+
minBendRadiusBasis,
|
|
90
120
|
warnings,
|
|
91
121
|
};
|
|
92
122
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bendAllowance.js","sourceRoot":"","sources":["../../src/metal/bendAllowance.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"bendAllowance.js","sourceRoot":"","sources":["../../src/metal/bendAllowance.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AACtC,OAAO,EAAE,oBAAoB,EAAE,MAAM,oBAAoB,CAAC;AAS1D;;;;;;;;;;;GAWG;AACH,MAAM,cAAc,GAAoC;IACtD,SAAS,EAAE,IAAI;IACf,YAAY,EAAE,IAAI;IAClB,YAAY,EAAE,IAAI;IAClB,YAAY,EAAE,IAAI;IAClB,MAAM,EAAE,IAAI;CACb,CAAC;AAEF;;;;;;;;;;;;;;;GAeG;AACH,MAAM,0BAA0B,GAAoC;IAClE,SAAS,EAAE,GAAG;IACd,YAAY,EAAE,GAAG;IACjB,YAAY,EAAE,GAAG;IACjB,YAAY,EAAE,GAAG;IACjB,MAAM,EAAE,GAAG;CACZ,CAAC;AAEF;;;;;;;;;;GAUG;AACH,MAAM,yBAAyB,GAAyB,SAAS,CAAC;AAElE;;GAEG;AACH,MAAM,gBAAgB,GAAG,CAAC,CAAC;AAE3B;;;;;;;;;GASG;AACH,MAAM,UAAU,aAAa,CAAC,KAAyB;IACrD,MAAM,EACJ,SAAS,EACT,SAAS,EACT,YAAY,EACZ,QAAQ,GAAG,WAAW,EACtB,gBAAgB,GAAG,cAAc,GAClC,GAAG,KAAK,CAAC;IACV,MAAM,QAAQ,GAAa,EAAE,CAAC;IAE9B,mDAAmD;IACnD,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,IAAI,cAAc,CAAC,QAAQ,CAAC,CAAC;IAE1D,yFAAyF;IACzF,2FAA2F;IAC3F,uFAAuF;IACvF,8CAA8C;IAC9C,MAAM,OAAO,GACX,QAAQ,KAAK,WAAW;QACtB,CAAC,CAAC,oBAAoB,CAAC;YACnB,SAAS;YACT,aAAa,EAAE,yBAAyB;YACxC,gBAAgB;YAChB,SAAS;SACV,CAAC;QACJ,CAAC,CAAC,IAAI,CAAC;IACX,MAAM,aAAa,GAAG,OAAO,EAAE,aAAa,IAAI,0BAA0B,CAAC,QAAQ,CAAC,GAAG,SAAS,CAAC;IACjG,MAAM,kBAAkB,GAAuB,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,YAAY,CAAC;IAElF,sCAAsC;IACtC,MAAM,eAAe,GAAG,OAAO,CAAC,gBAAgB,GAAG,SAAS,EAAE,CAAC,CAAC,CAAC;IAEjE,6CAA6C;IAC7C,IAAI,YAAY,GAAG,aAAa,EAAE,CAAC;QACjC,QAAQ,CAAC,IAAI,CAAC,kBAAkB,YAAY,yCAAyC,aAAa,KAAK,CAAC,CAAC;IAC3G,CAAC;IAED,+BAA+B;IAC/B,IAAI,SAAS,GAAG,GAAG,EAAE,CAAC;QACpB,QAAQ,CAAC,IAAI,CAAC,uBAAuB,SAAS,+BAA+B,CAAC,CAAC;IACjF,CAAC;IAED,gCAAgC;IAChC,MAAM,YAAY,GAAG,CAAC,SAAS,GAAG,IAAI,CAAC,EAAE,CAAC,GAAG,GAAG,CAAC;IAEjD,gCAAgC;IAChC,mEAAmE;IACnE,MAAM,EAAE,GAAG,YAAY,GAAG,CAAC,YAAY,GAAG,OAAO,GAAG,SAAS,CAAC,CAAC;IAE/D,mCAAmC;IACnC,sDAAsD;IACtD,MAAM,YAAY,GAAG,YAAY,GAAG,CAAC,CAAC;IACtC,MAAM,IAAI,GAAG,CAAC,YAAY,GAAG,SAAS,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;IAEjE,gCAAgC;IAChC,qBAAqB;IACrB,MAAM,EAAE,GAAG,CAAC,GAAG,IAAI,GAAG,EAAE,CAAC;IAEzB,OAAO;QACL,aAAa,EAAE,EAAE;QACjB,aAAa,EAAE,EAAE;QACjB,cAAc,EAAE,IAAI;QACpB,OAAO;QACP,eAAe;QACf,aAAa;QACb,kBAAkB;QAClB,QAAQ;KACT,CAAC;AACJ,CAAC"}
|
package/dist/metal/index.d.ts
CHANGED
|
@@ -1,7 +1,8 @@
|
|
|
1
|
-
export type { MetalShape, MaterialName, MetalWeightInput, MetalWeightResult, BendingMaterial, ShapeType, BendAllowanceInput, BendAllowanceResult, SpringbackInput, SpringbackResult, FlatPatternInput, FlatPatternResult, KFactorReverseInput, KFactorReverseResult, KFactorReverseRangeResult, PressOperation, BendType, PressTonnageInput, PressTonnageResult, BearingType, BearingInput, BearingResult, BoltCalculationMode, LubricationCondition, BoltInput, BoltResult, CuttingOperation, CuttingInput, CuttingResult, CuttingAlgorithm, CuttingPiece, CuttingStockInput, CuttingPattern, CuttingStockResult, GearCalculationMode, GearInput, GearResult, HardnessScale, HardnessInput, HardnessResult, MaterialCategory, MaterialInput, MaterialResult, MaterialSpec, PressFitInput, PressFitResult, RoughnessScale, RoughnessInput, RoughnessResult, PitchType, ScrewInput, ScrewResult, ScrewSpec, SpringMaterial, SpringInput, SpringResult, ThreadStandard, TapInput, TapResult, ThreadType, ThreadInput, ThreadResult, ThreadSpec, FitType, ToleranceInput, ToleranceResult, FitInput, FitResult, VibrationSystem, CrossSection, VibrationMaterial, VibrationInput, FrequencyMode, VibrationResult, WeldProcess, WeldBaseMetal, CrackingRisk, WeldPreheatSourceCode, WeldRecommendationCode, WeldRecommendation, WeldHeatInput, WeldHeatResult, WeldingBaseMetal, JointType, WeldPosition, WeldingInput, WeldingRod, WeldingResult, WeldElectrodeClass, WeldStrengthInput, WeldStrengthResult, ColumnEndCondition, ColumnBucklingInput, ColumnBucklingResult, BeamSupportType, BeamLoadType, BeamDeflectionInput, BeamDeflectionResult, BeamDeflectionCurvePoint, MaterialStandard, MaterialGradeConverterInput, MaterialGradeConverterResult, PipeStandard, PipeSchedule, PipeSpecInput, PipeSpecResult, FlangeStandard, PressureClass, FlangeSpecInput, FlangeSpecResult, } from './types.js';
|
|
1
|
+
export type { MetalShape, MaterialName, MetalWeightInput, MetalWeightResult, BendingMaterial, ShapeType, BendAllowanceInput, BendAllowanceResult, Din6935RollingDirection, Din6935StrengthClass, MinBendRadiusBasis, MinBendRadiusDin6935Input, MinBendRadiusDin6935Result, SpringbackInput, SpringbackResult, FlatPatternInput, FlatPatternResult, KFactorReverseInput, KFactorReverseResult, KFactorReverseRangeResult, PressOperation, BendType, PressTonnageInput, PressTonnageResult, BearingType, BearingInput, BearingResult, BoltCalculationMode, LubricationCondition, BoltInput, BoltResult, CuttingOperation, CuttingInput, CuttingResult, CuttingAlgorithm, CuttingPiece, CuttingStockInput, CuttingPattern, CuttingStockResult, GearCalculationMode, GearInput, GearResult, HardnessScale, HardnessInput, HardnessResult, MaterialCategory, MaterialInput, MaterialResult, MaterialSpec, PressFitInput, PressFitResult, RoughnessScale, RoughnessInput, RoughnessResult, PitchType, ScrewInput, ScrewResult, ScrewSpec, SpringMaterial, SpringInput, SpringResult, ThreadStandard, TapInput, TapResult, ThreadType, ThreadInput, ThreadResult, ThreadSpec, FitType, ToleranceInput, ToleranceResult, FitInput, FitResult, VibrationSystem, CrossSection, VibrationMaterial, VibrationInput, FrequencyMode, VibrationResult, WeldProcess, WeldBaseMetal, CrackingRisk, WeldPreheatSourceCode, WeldRecommendationCode, WeldRecommendation, WeldHeatInput, WeldHeatResult, WeldingBaseMetal, JointType, WeldPosition, WeldingInput, WeldingRod, WeldingResult, WeldElectrodeClass, WeldStrengthInput, WeldStrengthResult, ColumnEndCondition, ColumnBucklingInput, ColumnBucklingResult, BeamSupportType, BeamLoadType, BeamDeflectionInput, BeamDeflectionResult, BeamDeflectionCurvePoint, MaterialStandard, MaterialGradeConverterInput, MaterialGradeConverterResult, PipeStandard, PipeSchedule, PipeSpecInput, PipeSpecResult, FlangeStandard, PressureClass, FlangeSpecInput, FlangeSpecResult, } from './types.js';
|
|
2
2
|
export { isMetalWeightInput, isBoltInput } from './guards.js';
|
|
3
3
|
export { metalWeight } from './metalWeight.js';
|
|
4
4
|
export { bendAllowance } from './bendAllowance.js';
|
|
5
|
+
export { minBendRadiusDin6935, DIN_6935_MAX_THICKNESS } from './minBendRadius.js';
|
|
5
6
|
export { springback } from './springback.js';
|
|
6
7
|
export { flatPattern } from './flatPattern.js';
|
|
7
8
|
export { kFactorReverse, kFactorReverseRange } from './kFactorReverse.js';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/metal/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/metal/index.ts"],"names":[],"mappings":"AACA,YAAY,EAEV,UAAU,EACV,YAAY,EACZ,gBAAgB,EAChB,iBAAiB,EAEjB,eAAe,EACf,SAAS,EACT,kBAAkB,EAClB,mBAAmB,EACnB,uBAAuB,EACvB,oBAAoB,EACpB,kBAAkB,EAClB,yBAAyB,EACzB,0BAA0B,EAC1B,eAAe,EACf,gBAAgB,EAChB,gBAAgB,EAChB,iBAAiB,EACjB,mBAAmB,EACnB,oBAAoB,EACpB,yBAAyB,EAEzB,cAAc,EACd,QAAQ,EACR,iBAAiB,EACjB,kBAAkB,EAElB,WAAW,EACX,YAAY,EACZ,aAAa,EAEb,mBAAmB,EACnB,oBAAoB,EACpB,SAAS,EACT,UAAU,EAEV,gBAAgB,EAChB,YAAY,EACZ,aAAa,EAEb,gBAAgB,EAChB,YAAY,EACZ,iBAAiB,EACjB,cAAc,EACd,kBAAkB,EAElB,mBAAmB,EACnB,SAAS,EACT,UAAU,EAEV,aAAa,EACb,aAAa,EACb,cAAc,EAEd,gBAAgB,EAChB,aAAa,EACb,cAAc,EACd,YAAY,EAEZ,aAAa,EACb,cAAc,EAEd,cAAc,EACd,cAAc,EACd,eAAe,EAEf,SAAS,EACT,UAAU,EACV,WAAW,EACX,SAAS,EAET,cAAc,EACd,WAAW,EACX,YAAY,EAEZ,cAAc,EACd,QAAQ,EACR,SAAS,EAET,UAAU,EACV,WAAW,EACX,YAAY,EACZ,UAAU,EAEV,OAAO,EACP,cAAc,EACd,eAAe,EACf,QAAQ,EACR,SAAS,EAET,eAAe,EACf,YAAY,EACZ,iBAAiB,EACjB,cAAc,EACd,aAAa,EACb,eAAe,EAEf,WAAW,EACX,aAAa,EACb,YAAY,EACZ,qBAAqB,EACrB,sBAAsB,EACtB,kBAAkB,EAClB,aAAa,EACb,cAAc,EAEd,gBAAgB,EAChB,SAAS,EACT,YAAY,EACZ,YAAY,EACZ,UAAU,EACV,aAAa,EAEb,kBAAkB,EAClB,iBAAiB,EACjB,kBAAkB,EAElB,kBAAkB,EAClB,mBAAmB,EACnB,oBAAoB,EAEpB,eAAe,EACf,YAAY,EACZ,mBAAmB,EACnB,oBAAoB,EACpB,wBAAwB,EAExB,gBAAgB,EAChB,2BAA2B,EAC3B,4BAA4B,EAE5B,YAAY,EACZ,YAAY,EACZ,aAAa,EACb,cAAc,EAEd,cAAc,EACd,aAAa,EACb,eAAe,EACf,gBAAgB,GACjB,MAAM,YAAY,CAAC;AAGpB,OAAO,EAAE,kBAAkB,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAG9D,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACnD,OAAO,EAAE,oBAAoB,EAAE,sBAAsB,EAAE,MAAM,oBAAoB,CAAC;AAClF,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC7C,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,EAAE,cAAc,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AAC1E,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AACvC,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,gBAAgB,EAAE,MAAM,WAAW,CAAC;AAC/D,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AACvC,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,EAAE,GAAG,EAAE,MAAM,UAAU,CAAC;AAC/B,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,QAAQ,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;AAC3D,OAAO,EAAE,QAAQ,EAAE,aAAa,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AACnE,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAC3C,OAAO,EAAE,KAAK,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AACpD,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AACrC,OAAO,EAAE,GAAG,EAAE,MAAM,UAAU,CAAC;AAC/B,OAAO,EAAE,MAAM,EAAE,cAAc,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AACtE,OAAO,EAAE,SAAS,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAC;AAC/D,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAC3C,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AACvC,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AACrD,OAAO,EAAE,cAAc,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AAC1E,OAAO,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAC;AACrE,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC"}
|
package/dist/metal/index.js
CHANGED
|
@@ -3,6 +3,7 @@ export { isMetalWeightInput, isBoltInput } from './guards.js';
|
|
|
3
3
|
// Functions
|
|
4
4
|
export { metalWeight } from './metalWeight.js';
|
|
5
5
|
export { bendAllowance } from './bendAllowance.js';
|
|
6
|
+
export { minBendRadiusDin6935, DIN_6935_MAX_THICKNESS } from './minBendRadius.js';
|
|
6
7
|
export { springback } from './springback.js';
|
|
7
8
|
export { flatPattern } from './flatPattern.js';
|
|
8
9
|
export { kFactorReverse, kFactorReverseRange } from './kFactorReverse.js';
|
package/dist/metal/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/metal/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/metal/index.ts"],"names":[],"mappings":"AAiJA,SAAS;AACT,OAAO,EAAE,kBAAkB,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAE9D,YAAY;AACZ,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACnD,OAAO,EAAE,oBAAoB,EAAE,sBAAsB,EAAE,MAAM,oBAAoB,CAAC;AAClF,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC7C,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,EAAE,cAAc,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AAC1E,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AACvC,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,gBAAgB,EAAE,MAAM,WAAW,CAAC;AAC/D,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AACvC,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,EAAE,GAAG,EAAE,MAAM,UAAU,CAAC;AAC/B,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,QAAQ,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;AAC3D,OAAO,EAAE,QAAQ,EAAE,aAAa,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AACnE,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAC3C,OAAO,EAAE,KAAK,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AACpD,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AACrC,OAAO,EAAE,GAAG,EAAE,MAAM,UAAU,CAAC;AAC/B,OAAO,EAAE,MAAM,EAAE,cAAc,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AACtE,OAAO,EAAE,SAAS,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAC;AAC/D,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAC3C,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AACvC,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AACrD,OAAO,EAAE,cAAc,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AAC1E,OAAO,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAC;AACrE,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import type { MinBendRadiusDin6935Input, MinBendRadiusDin6935Result } from './types.js';
|
|
2
|
+
/** Largest thickness Table 1 covers, in mm. */
|
|
3
|
+
export declare const DIN_6935_MAX_THICKNESS: 10 | 1 | 4 | 3 | 5 | 7 | 6 | 8 | 20 | 14 | 1.5 | 2.5 | 12 | 16 | 18;
|
|
4
|
+
/**
|
|
5
|
+
* Resolve the minimum permissible bend radius from DIN 6935 Table 1.
|
|
6
|
+
*
|
|
7
|
+
* Returns `null` when the input falls outside what the standard covers rather than
|
|
8
|
+
* extrapolating: the table stops at 20 mm, and a bend angle above 120 degrees at the last
|
|
9
|
+
* band has no higher value to step to. Reading past the table would be this function
|
|
10
|
+
* inventing a limit the standard does not state.
|
|
11
|
+
*
|
|
12
|
+
* @param input - thickness, strength class, rolling direction, and bend angle
|
|
13
|
+
* @returns the resolved radius with the band it came from, or `null` when out of scope
|
|
14
|
+
*/
|
|
15
|
+
export declare function minBendRadiusDin6935(input: MinBendRadiusDin6935Input): MinBendRadiusDin6935Result | null;
|
|
16
|
+
//# sourceMappingURL=minBendRadius.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"minBendRadius.d.ts","sourceRoot":"","sources":["../../src/metal/minBendRadius.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,yBAAyB,EACzB,0BAA0B,EAE3B,MAAM,YAAY,CAAC;AAqDpB,+CAA+C;AAC/C,eAAO,MAAM,sBAAsB,qEAAwD,CAAC;AAqB5F;;;;;;;;;;GAUG;AACH,wBAAgB,oBAAoB,CAClC,KAAK,EAAE,yBAAyB,GAC/B,0BAA0B,GAAG,IAAI,CAkCnC"}
|
|
@@ -0,0 +1,111 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Minimum permissible bend radius for cold-bent flat steel, per DIN 6935.
|
|
3
|
+
*
|
|
4
|
+
* The standard does not express this limit as a single multiple of thickness. It resolves
|
|
5
|
+
* from three inputs at once — the sheet thickness band, the guaranteed minimum tensile
|
|
6
|
+
* strength class, and whether the bend runs across or along the rolling direction — and the
|
|
7
|
+
* resulting effective multiple is not constant: it is 1.0x at the thinnest band and reaches
|
|
8
|
+
* roughly 2.0x in ordinary plate thicknesses. A flat multiplier therefore understates the
|
|
9
|
+
* limit exactly where sheet metal work most often sits.
|
|
10
|
+
*
|
|
11
|
+
* @reference DIN 6935:2010-01, Table 1 (Menores radios de doblado r permitidos). Clause 1
|
|
12
|
+
* limits the standard to flat steel products; Table 3 lists the covered grades (general
|
|
13
|
+
* structural steels per DIN 17100). Aluminium and stainless alloys are outside its scope
|
|
14
|
+
* and are not served by this function.
|
|
15
|
+
*/
|
|
16
|
+
/** Upper bound (inclusive, mm) of each thickness band in Table 1, in column order. */
|
|
17
|
+
const THICKNESS_BAND_UPPER = [
|
|
18
|
+
1, 1.5, 2.5, 3, 4, 5, 6, 7, 8, 10, 12, 14, 16, 18, 20,
|
|
19
|
+
];
|
|
20
|
+
/**
|
|
21
|
+
* Table 1 values in mm: one row per thickness band (aligned with THICKNESS_BAND_UPPER),
|
|
22
|
+
* each row ordered [transverse, longitudinal] for the three tensile strength classes.
|
|
23
|
+
*
|
|
24
|
+
* The class boundaries read as <=390 / >390..490 / >490..640 N/mm2. The Spanish translation
|
|
25
|
+
* prints "hasta 380" in the Table 1 header alone; that is a typo, since Table 2 and Table 3
|
|
26
|
+
* both print "hasta 390" for the same class and only 390 leaves the boundary contiguous with
|
|
27
|
+
* the ">390" of the next column.
|
|
28
|
+
*
|
|
29
|
+
* @reference DIN 6935:2010-01, Table 1.
|
|
30
|
+
*/
|
|
31
|
+
const TABLE_1 = [
|
|
32
|
+
// c1T c1L c2T c2L c3T c3L thickness band (mm)
|
|
33
|
+
[1, 1, 1.2, 1.2, 1.6, 1.6], // up to 1
|
|
34
|
+
[1.6, 1.6, 2, 2, 2.5, 2.5], // over 1 up to 1.5
|
|
35
|
+
[2.5, 2.5, 3, 3, 4, 4], // over 1.5 up to 2.5
|
|
36
|
+
[3, 3, 4, 4, 5, 5], // over 2.5 up to 3
|
|
37
|
+
[5, 6, 5, 6, 6, 8], // over 3 up to 4
|
|
38
|
+
[6, 8, 8, 10, 8, 10], // over 4 up to 5
|
|
39
|
+
[8, 10, 10, 12, 10, 12], // over 5 up to 6
|
|
40
|
+
[10, 12, 12, 16, 12, 16], // over 6 up to 7
|
|
41
|
+
[12, 16, 16, 20, 16, 20], // over 7 up to 8
|
|
42
|
+
[16, 20, 20, 25, 20, 25], // over 8 up to 10
|
|
43
|
+
[20, 25, 25, 32, 25, 32], // over 10 up to 12
|
|
44
|
+
[25, 28, 28, 36, 32, 36], // over 12 up to 14
|
|
45
|
+
[28, 32, 32, 40, 36, 40], // over 14 up to 16
|
|
46
|
+
[36, 40, 40, 45, 45, 50], // over 16 up to 18
|
|
47
|
+
[40, 45, 45, 50, 50, 63], // over 18 up to 20
|
|
48
|
+
];
|
|
49
|
+
/** Largest thickness Table 1 covers, in mm. */
|
|
50
|
+
export const DIN_6935_MAX_THICKNESS = THICKNESS_BAND_UPPER[THICKNESS_BAND_UPPER.length - 1];
|
|
51
|
+
const CLASS_COLUMN = {
|
|
52
|
+
upTo390: 0,
|
|
53
|
+
over390UpTo490: 2,
|
|
54
|
+
over490UpTo640: 4,
|
|
55
|
+
};
|
|
56
|
+
/**
|
|
57
|
+
* Bend angle above which Clause 3 requires the next larger radius.
|
|
58
|
+
*
|
|
59
|
+
* Clause 3 says to take "the immediately higher value in the table" — the next thickness
|
|
60
|
+
* column of the same row, not the next entry of the preferred radius series printed above
|
|
61
|
+
* it. The two readings agree on the standard's own worked example (6 mm Q St 42-2 bent
|
|
62
|
+
* across the rolling direction: 10 mm at or below this angle, 12 mm above it) but diverge
|
|
63
|
+
* at the thinnest band, where the row steps 1 -> 1.6 while the series steps 1 -> 1.2.
|
|
64
|
+
*
|
|
65
|
+
* @reference DIN 6935:2010-01, Clause 3.
|
|
66
|
+
*/
|
|
67
|
+
const NEXT_SIZE_UP_ABOVE_ANGLE = 120;
|
|
68
|
+
/**
|
|
69
|
+
* Resolve the minimum permissible bend radius from DIN 6935 Table 1.
|
|
70
|
+
*
|
|
71
|
+
* Returns `null` when the input falls outside what the standard covers rather than
|
|
72
|
+
* extrapolating: the table stops at 20 mm, and a bend angle above 120 degrees at the last
|
|
73
|
+
* band has no higher value to step to. Reading past the table would be this function
|
|
74
|
+
* inventing a limit the standard does not state.
|
|
75
|
+
*
|
|
76
|
+
* @param input - thickness, strength class, rolling direction, and bend angle
|
|
77
|
+
* @returns the resolved radius with the band it came from, or `null` when out of scope
|
|
78
|
+
*/
|
|
79
|
+
export function minBendRadiusDin6935(input) {
|
|
80
|
+
const { thickness, strengthClass, rollingDirection, bendAngle = 90 } = input;
|
|
81
|
+
if (!Number.isFinite(thickness) || thickness <= 0) {
|
|
82
|
+
throw new Error('thickness must be a positive number');
|
|
83
|
+
}
|
|
84
|
+
if (thickness > DIN_6935_MAX_THICKNESS)
|
|
85
|
+
return null;
|
|
86
|
+
const bandIndex = THICKNESS_BAND_UPPER.findIndex((upper) => thickness <= upper);
|
|
87
|
+
const column = CLASS_COLUMN[strengthClass] + (rollingDirection === 'longitudinal' ? 1 : 0);
|
|
88
|
+
const tabulated = TABLE_1[bandIndex][column];
|
|
89
|
+
if (bendAngle <= NEXT_SIZE_UP_ABOVE_ANGLE) {
|
|
90
|
+
return {
|
|
91
|
+
minBendRadius: tabulated,
|
|
92
|
+
tabulatedRadius: tabulated,
|
|
93
|
+
thicknessBandUpper: THICKNESS_BAND_UPPER[bandIndex],
|
|
94
|
+
strengthClass,
|
|
95
|
+
rollingDirection,
|
|
96
|
+
nextSizeUpApplied: false,
|
|
97
|
+
};
|
|
98
|
+
}
|
|
99
|
+
const nextBand = TABLE_1[bandIndex + 1];
|
|
100
|
+
if (!nextBand)
|
|
101
|
+
return null;
|
|
102
|
+
return {
|
|
103
|
+
minBendRadius: nextBand[column],
|
|
104
|
+
tabulatedRadius: tabulated,
|
|
105
|
+
thicknessBandUpper: THICKNESS_BAND_UPPER[bandIndex],
|
|
106
|
+
strengthClass,
|
|
107
|
+
rollingDirection,
|
|
108
|
+
nextSizeUpApplied: true,
|
|
109
|
+
};
|
|
110
|
+
}
|
|
111
|
+
//# sourceMappingURL=minBendRadius.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"minBendRadius.js","sourceRoot":"","sources":["../../src/metal/minBendRadius.ts"],"names":[],"mappings":"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"}
|
package/dist/metal/types.d.ts
CHANGED
|
@@ -34,12 +34,44 @@ export interface MetalWeightResult {
|
|
|
34
34
|
*/
|
|
35
35
|
export type BendingMaterial = 'mildSteel' | 'stainless304' | 'aluminum5052' | 'aluminum6061' | 'custom';
|
|
36
36
|
export type ShapeType = 'lShape' | 'uShape';
|
|
37
|
+
/** Whether the bend runs across or along the rolling direction. DIN 6935 Table 1 distinguishes the two. */
|
|
38
|
+
export type Din6935RollingDirection = 'transverse' | 'longitudinal';
|
|
39
|
+
/** Guaranteed minimum tensile strength class, in N/mm2. @reference DIN 6935:2010-01, Tables 1 and 3. */
|
|
40
|
+
export type Din6935StrengthClass = 'upTo390' | 'over390UpTo490' | 'over490UpTo640';
|
|
41
|
+
export interface MinBendRadiusDin6935Input {
|
|
42
|
+
thickness: number;
|
|
43
|
+
strengthClass: Din6935StrengthClass;
|
|
44
|
+
rollingDirection: Din6935RollingDirection;
|
|
45
|
+
bendAngle?: number;
|
|
46
|
+
}
|
|
47
|
+
export interface MinBendRadiusDin6935Result {
|
|
48
|
+
minBendRadius: number;
|
|
49
|
+
tabulatedRadius: number;
|
|
50
|
+
thicknessBandUpper: number;
|
|
51
|
+
strengthClass: Din6935StrengthClass;
|
|
52
|
+
rollingDirection: Din6935RollingDirection;
|
|
53
|
+
nextSizeUpApplied: boolean;
|
|
54
|
+
}
|
|
55
|
+
/**
|
|
56
|
+
* Where a reported minimum bend radius comes from.
|
|
57
|
+
*
|
|
58
|
+
* `din6935` means the figure was read from a normative table; `convention` means it is a
|
|
59
|
+
* shop default with nothing behind it. Callers that cite sources need to tell the two apart,
|
|
60
|
+
* and the same result object carries both cases.
|
|
61
|
+
*/
|
|
62
|
+
export type MinBendRadiusBasis = 'din6935' | 'convention';
|
|
37
63
|
export interface BendAllowanceInput {
|
|
38
64
|
thickness: number;
|
|
39
65
|
bendAngle: number;
|
|
40
66
|
insideRadius: number;
|
|
41
67
|
kFactor?: number;
|
|
42
68
|
material?: BendingMaterial;
|
|
69
|
+
/**
|
|
70
|
+
* Bend orientation relative to the rolling direction. Used for steel, where DIN 6935
|
|
71
|
+
* tabulates the two separately. Defaults to `longitudinal`, the more demanding of the two:
|
|
72
|
+
* an unstated orientation must not produce the more permissive limit.
|
|
73
|
+
*/
|
|
74
|
+
rollingDirection?: Din6935RollingDirection;
|
|
43
75
|
}
|
|
44
76
|
export interface BendAllowanceResult {
|
|
45
77
|
bendAllowance: number;
|
|
@@ -48,6 +80,7 @@ export interface BendAllowanceResult {
|
|
|
48
80
|
kFactor: number;
|
|
49
81
|
recommendedVDie: number;
|
|
50
82
|
minBendRadius: number;
|
|
83
|
+
minBendRadiusBasis: MinBendRadiusBasis;
|
|
51
84
|
warnings: string[];
|
|
52
85
|
}
|
|
53
86
|
export interface SpringbackInput {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/metal/types.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/metal/types.ts"],"names":[],"mappings":"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"}
|
package/dist/quality/mtbf.d.ts
CHANGED
|
@@ -6,6 +6,26 @@ import type { MtbfInput, MtbfResult } from './types.js';
|
|
|
6
6
|
* MTTR = Total Repair Time / Number of Failures
|
|
7
7
|
* Availability = MTBF / (MTBF + MTTR)
|
|
8
8
|
*
|
|
9
|
+
* Each output maps to a defined term:
|
|
10
|
+
* - `mtbf` — "average of the times between failures" (EN 13306:2017, 11.3). Note that a
|
|
11
|
+
* time between failures (9.18) is the duration between consecutive failures and "may
|
|
12
|
+
* include non-operating time after restoration"; when the input is operating time, as
|
|
13
|
+
* here, the quantity computed is strictly the mean operating time between failures
|
|
14
|
+
* (MOTBF, 11.2 — "average of the operating times between failures", applied to
|
|
15
|
+
* repairable items). Industry practice calls this figure MTBF, and the name is kept for
|
|
16
|
+
* that reason.
|
|
17
|
+
* - `mttr` — mean repair time (MRT, 11.4: "average of the repair times"). MTTR is the
|
|
18
|
+
* common industry spelling of the same average.
|
|
19
|
+
* - `availability` — the time-based availability ratio of 4.9: up time over total time
|
|
20
|
+
* (UT / (UT + DT)), expressed as a percentage.
|
|
21
|
+
* - `failureRate`, `reliabilityAtMtbf` — the constant-failure-rate (exponential) model,
|
|
22
|
+
* lambda = 1 / MTBF and R(t) = exp(-lambda·t). Not part of the terminology standard;
|
|
23
|
+
* it holds only during a constant failure period, and R(MTBF) = e^-1 always.
|
|
24
|
+
*
|
|
25
|
+
* @reference EN 13306:2017 — Maintenance terminology. 11.3 (mean time between failures),
|
|
26
|
+
* 11.2 (mean operating time between failures), 11.4 (mean repair time), 9.18 (time
|
|
27
|
+
* between failures), 4.9 (time based availability).
|
|
28
|
+
*
|
|
9
29
|
* @param input - MTBF input parameters
|
|
10
30
|
* @returns MTBF analysis result
|
|
11
31
|
* @throws RangeError if totalOperatingTime is not positive, or if
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mtbf.d.ts","sourceRoot":"","sources":["../../src/quality/mtbf.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAExD
|
|
1
|
+
{"version":3,"file":"mtbf.d.ts","sourceRoot":"","sources":["../../src/quality/mtbf.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAExD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+BG;AACH,wBAAgB,IAAI,CAAC,KAAK,EAAE,SAAS,GAAG,UAAU,CA8CjD"}
|
package/dist/quality/mtbf.js
CHANGED
|
@@ -6,6 +6,26 @@ import { roundTo } from '../utils.js';
|
|
|
6
6
|
* MTTR = Total Repair Time / Number of Failures
|
|
7
7
|
* Availability = MTBF / (MTBF + MTTR)
|
|
8
8
|
*
|
|
9
|
+
* Each output maps to a defined term:
|
|
10
|
+
* - `mtbf` — "average of the times between failures" (EN 13306:2017, 11.3). Note that a
|
|
11
|
+
* time between failures (9.18) is the duration between consecutive failures and "may
|
|
12
|
+
* include non-operating time after restoration"; when the input is operating time, as
|
|
13
|
+
* here, the quantity computed is strictly the mean operating time between failures
|
|
14
|
+
* (MOTBF, 11.2 — "average of the operating times between failures", applied to
|
|
15
|
+
* repairable items). Industry practice calls this figure MTBF, and the name is kept for
|
|
16
|
+
* that reason.
|
|
17
|
+
* - `mttr` — mean repair time (MRT, 11.4: "average of the repair times"). MTTR is the
|
|
18
|
+
* common industry spelling of the same average.
|
|
19
|
+
* - `availability` — the time-based availability ratio of 4.9: up time over total time
|
|
20
|
+
* (UT / (UT + DT)), expressed as a percentage.
|
|
21
|
+
* - `failureRate`, `reliabilityAtMtbf` — the constant-failure-rate (exponential) model,
|
|
22
|
+
* lambda = 1 / MTBF and R(t) = exp(-lambda·t). Not part of the terminology standard;
|
|
23
|
+
* it holds only during a constant failure period, and R(MTBF) = e^-1 always.
|
|
24
|
+
*
|
|
25
|
+
* @reference EN 13306:2017 — Maintenance terminology. 11.3 (mean time between failures),
|
|
26
|
+
* 11.2 (mean operating time between failures), 11.4 (mean repair time), 9.18 (time
|
|
27
|
+
* between failures), 4.9 (time based availability).
|
|
28
|
+
*
|
|
9
29
|
* @param input - MTBF input parameters
|
|
10
30
|
* @returns MTBF analysis result
|
|
11
31
|
* @throws RangeError if totalOperatingTime is not positive, or if
|
|
@@ -20,19 +40,28 @@ export function mtbf(input) {
|
|
|
20
40
|
if (numberOfFailures <= 0) {
|
|
21
41
|
throw new RangeError('numberOfFailures must be greater than 0');
|
|
22
42
|
}
|
|
43
|
+
if (totalRepairTime < 0) {
|
|
44
|
+
throw new RangeError('totalRepairTime must not be negative');
|
|
45
|
+
}
|
|
46
|
+
// Every derived figure below is computed from the raw times, never from the rounded
|
|
47
|
+
// values reported back. Rounding an intermediate to 2 decimals and then dividing by it
|
|
48
|
+
// is not a rounding whisker: with short times spread over many failures the rounded
|
|
49
|
+
// mean is a large fraction of its own value, and availability drifts by whole points
|
|
50
|
+
// (1 h operating / 0.5 h repair / 34 failures reads 75% that way, against a true 66.67%).
|
|
51
|
+
const mtbfExact = totalOperatingTime / numberOfFailures;
|
|
52
|
+
const mttrExact = totalRepairTime / numberOfFailures;
|
|
23
53
|
// MTBF = Total Operating Time / Number of Failures
|
|
24
|
-
const mtbfValue = roundTo(
|
|
54
|
+
const mtbfValue = roundTo(mtbfExact, 2);
|
|
25
55
|
// MTTR = Total Repair Time / Number of Failures
|
|
26
|
-
const mttr =
|
|
27
|
-
// Availability = MTBF / (MTBF + MTTR)
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
: 0;
|
|
56
|
+
const mttr = roundTo(mttrExact, 2);
|
|
57
|
+
// Availability = MTBF / (MTBF + MTTR). The failure count cancels, leaving the 4.9
|
|
58
|
+
// time-based ratio of up time to total time.
|
|
59
|
+
const availability = roundTo((totalOperatingTime / (totalOperatingTime + totalRepairTime)) * 100, 2);
|
|
31
60
|
// Failure rate (lambda) = 1 / MTBF
|
|
32
|
-
const failureRate =
|
|
61
|
+
const failureRate = roundTo(1 / mtbfExact, 6);
|
|
33
62
|
// Reliability at time T = e^(-lambda * T), where T = MTBF
|
|
34
|
-
// R(MTBF) = e^(-1) = 0.3679 = 36.79
|
|
35
|
-
const reliabilityAtMtbf =
|
|
63
|
+
// R(MTBF) = e^(-1) = 0.3679 = 36.79%, whatever the MTBF is
|
|
64
|
+
const reliabilityAtMtbf = roundTo(Math.exp(-1) * 100, 2);
|
|
36
65
|
return {
|
|
37
66
|
mtbf: mtbfValue,
|
|
38
67
|
mttr,
|
package/dist/quality/mtbf.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mtbf.js","sourceRoot":"","sources":["../../src/quality/mtbf.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AAGtC
|
|
1
|
+
{"version":3,"file":"mtbf.js","sourceRoot":"","sources":["../../src/quality/mtbf.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AAGtC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+BG;AACH,MAAM,UAAU,IAAI,CAAC,KAAgB;IACnC,MAAM,EAAE,kBAAkB,EAAE,eAAe,EAAE,gBAAgB,EAAE,GAAG,KAAK,CAAC;IAExE,kBAAkB;IAClB,IAAI,kBAAkB,IAAI,CAAC,EAAE,CAAC;QAC5B,MAAM,IAAI,UAAU,CAAC,2CAA2C,CAAC,CAAC;IACpE,CAAC;IACD,IAAI,gBAAgB,IAAI,CAAC,EAAE,CAAC;QAC1B,MAAM,IAAI,UAAU,CAAC,yCAAyC,CAAC,CAAC;IAClE,CAAC;IACD,IAAI,eAAe,GAAG,CAAC,EAAE,CAAC;QACxB,MAAM,IAAI,UAAU,CAAC,sCAAsC,CAAC,CAAC;IAC/D,CAAC;IAED,oFAAoF;IACpF,uFAAuF;IACvF,oFAAoF;IACpF,qFAAqF;IACrF,0FAA0F;IAC1F,MAAM,SAAS,GAAG,kBAAkB,GAAG,gBAAgB,CAAC;IACxD,MAAM,SAAS,GAAG,eAAe,GAAG,gBAAgB,CAAC;IAErD,mDAAmD;IACnD,MAAM,SAAS,GAAG,OAAO,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC;IAExC,gDAAgD;IAChD,MAAM,IAAI,GAAG,OAAO,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC;IAEnC,kFAAkF;IAClF,6CAA6C;IAC7C,MAAM,YAAY,GAAG,OAAO,CAAC,CAAC,kBAAkB,GAAG,CAAC,kBAAkB,GAAG,eAAe,CAAC,CAAC,GAAG,GAAG,EAAE,CAAC,CAAC,CAAC;IAErG,mCAAmC;IACnC,MAAM,WAAW,GAAG,OAAO,CAAC,CAAC,GAAG,SAAS,EAAE,CAAC,CAAC,CAAC;IAE9C,0DAA0D;IAC1D,2DAA2D;IAC3D,MAAM,iBAAiB,GAAG,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,GAAG,EAAE,CAAC,CAAC,CAAC;IAEzD,OAAO;QACL,IAAI,EAAE,SAAS;QACf,IAAI;QACJ,YAAY;QACZ,WAAW;QACX,iBAAiB;KAClB,CAAC;AACJ,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "formulab",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.37.1",
|
|
4
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",
|