formulab 0.1.0 → 0.5.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 +283 -2
- package/README.md +147 -48
- package/dist/automotive/brakingDistance.d.ts +16 -0
- package/dist/automotive/brakingDistance.d.ts.map +1 -0
- package/dist/automotive/brakingDistance.js +47 -0
- package/dist/automotive/brakingDistance.js.map +1 -0
- package/dist/automotive/gearRatio.d.ts +2 -2
- package/dist/automotive/gearRatio.d.ts.map +1 -1
- package/dist/automotive/gearRatio.js +1 -1
- package/dist/automotive/gearRatio.js.map +1 -1
- package/dist/automotive/index.d.ts +2 -1
- package/dist/automotive/index.d.ts.map +1 -1
- package/dist/automotive/index.js +1 -0
- package/dist/automotive/index.js.map +1 -1
- package/dist/automotive/types.d.ts +18 -2
- package/dist/automotive/types.d.ts.map +1 -1
- package/dist/battery/batteryPackConfig.d.ts +10 -0
- package/dist/battery/batteryPackConfig.d.ts.map +1 -0
- package/dist/battery/batteryPackConfig.js +28 -0
- package/dist/battery/batteryPackConfig.js.map +1 -0
- package/dist/battery/bmsBalancing.d.ts +11 -0
- package/dist/battery/bmsBalancing.d.ts.map +1 -0
- package/dist/battery/bmsBalancing.js +47 -0
- package/dist/battery/bmsBalancing.js.map +1 -0
- package/dist/battery/cRate.d.ts +10 -0
- package/dist/battery/cRate.d.ts.map +1 -0
- package/dist/battery/cRate.js +29 -0
- package/dist/battery/cRate.js.map +1 -0
- package/dist/battery/chargingProfile.d.ts +11 -0
- package/dist/battery/chargingProfile.d.ts.map +1 -0
- package/dist/battery/chargingProfile.js +38 -0
- package/dist/battery/chargingProfile.js.map +1 -0
- package/dist/battery/cycleLife.d.ts +11 -0
- package/dist/battery/cycleLife.d.ts.map +1 -0
- package/dist/battery/cycleLife.js +70 -0
- package/dist/battery/cycleLife.js.map +1 -0
- package/dist/battery/energyDensity.d.ts +10 -0
- package/dist/battery/energyDensity.d.ts.map +1 -0
- package/dist/battery/energyDensity.js +20 -0
- package/dist/battery/energyDensity.js.map +1 -0
- package/dist/battery/index.d.ts +12 -0
- package/dist/battery/index.d.ts.map +1 -0
- package/dist/battery/index.js +12 -0
- package/dist/battery/index.js.map +1 -0
- package/dist/battery/internalResistance.d.ts +11 -0
- package/dist/battery/internalResistance.d.ts.map +1 -0
- package/dist/battery/internalResistance.js +18 -0
- package/dist/battery/internalResistance.js.map +1 -0
- package/dist/battery/selfDischarge.d.ts +10 -0
- package/dist/battery/selfDischarge.d.ts.map +1 -0
- package/dist/battery/selfDischarge.js +17 -0
- package/dist/battery/selfDischarge.js.map +1 -0
- package/dist/battery/stateOfHealth.d.ts +11 -0
- package/dist/battery/stateOfHealth.d.ts.map +1 -0
- package/dist/battery/stateOfHealth.js +33 -0
- package/dist/battery/stateOfHealth.js.map +1 -0
- package/dist/battery/thermalRunaway.d.ts +11 -0
- package/dist/battery/thermalRunaway.d.ts.map +1 -0
- package/dist/battery/thermalRunaway.js +28 -0
- package/dist/battery/thermalRunaway.js.map +1 -0
- package/dist/battery/types.d.ts +175 -0
- package/dist/battery/types.d.ts.map +1 -0
- package/dist/battery/types.js +5 -0
- package/dist/battery/types.js.map +1 -0
- package/dist/chemical/dilution.d.ts.map +1 -1
- package/dist/chemical/dilution.js +21 -24
- package/dist/chemical/dilution.js.map +1 -1
- package/dist/chemical/heatTransfer.d.ts +16 -0
- package/dist/chemical/heatTransfer.d.ts.map +1 -0
- package/dist/chemical/heatTransfer.js +85 -0
- package/dist/chemical/heatTransfer.js.map +1 -0
- package/dist/chemical/index.d.ts +3 -1
- package/dist/chemical/index.d.ts.map +1 -1
- package/dist/chemical/index.js +2 -0
- package/dist/chemical/index.js.map +1 -1
- package/dist/chemical/injectionCycle.d.ts +3 -0
- package/dist/chemical/injectionCycle.d.ts.map +1 -1
- package/dist/chemical/injectionCycle.js +1 -4
- package/dist/chemical/injectionCycle.js.map +1 -1
- package/dist/chemical/ph.d.ts +3 -0
- package/dist/chemical/ph.d.ts.map +1 -1
- package/dist/chemical/ph.js +1 -4
- package/dist/chemical/ph.js.map +1 -1
- package/dist/chemical/pipeFlow.d.ts +17 -0
- package/dist/chemical/pipeFlow.d.ts.map +1 -0
- package/dist/chemical/pipeFlow.js +112 -0
- package/dist/chemical/pipeFlow.js.map +1 -0
- package/dist/chemical/reactor.d.ts +3 -0
- package/dist/chemical/reactor.d.ts.map +1 -1
- package/dist/chemical/reactor.js +3 -6
- package/dist/chemical/reactor.js.map +1 -1
- package/dist/chemical/shelfLife.d.ts.map +1 -1
- package/dist/chemical/shelfLife.js +1 -7
- package/dist/chemical/shelfLife.js.map +1 -1
- package/dist/chemical/types.d.ts +82 -10
- package/dist/chemical/types.d.ts.map +1 -1
- package/dist/construction/index.d.ts +2 -1
- package/dist/construction/index.d.ts.map +1 -1
- package/dist/construction/index.js +1 -0
- package/dist/construction/index.js.map +1 -1
- package/dist/construction/momentOfInertia.d.ts +17 -0
- package/dist/construction/momentOfInertia.d.ts.map +1 -0
- package/dist/construction/momentOfInertia.js +204 -0
- package/dist/construction/momentOfInertia.js.map +1 -0
- package/dist/construction/pert.d.ts.map +1 -1
- package/dist/construction/pert.js +1 -17
- package/dist/construction/pert.js.map +1 -1
- package/dist/construction/types.d.ts +50 -0
- package/dist/construction/types.d.ts.map +1 -1
- package/dist/electronics/awg.d.ts.map +1 -1
- package/dist/electronics/awg.js +1 -4
- package/dist/electronics/awg.js.map +1 -1
- package/dist/electronics/capacitor.d.ts +3 -0
- package/dist/electronics/capacitor.d.ts.map +1 -1
- package/dist/electronics/capacitor.js +1 -4
- package/dist/electronics/capacitor.js.map +1 -1
- package/dist/electronics/index.d.ts +2 -1
- package/dist/electronics/index.d.ts.map +1 -1
- package/dist/electronics/index.js +1 -0
- package/dist/electronics/index.js.map +1 -1
- package/dist/electronics/led.d.ts.map +1 -1
- package/dist/electronics/led.js +1 -4
- package/dist/electronics/led.js.map +1 -1
- package/dist/electronics/ohmsLaw.d.ts +12 -0
- package/dist/electronics/ohmsLaw.d.ts.map +1 -0
- package/dist/electronics/ohmsLaw.js +69 -0
- package/dist/electronics/ohmsLaw.js.map +1 -0
- package/dist/electronics/smt-takt.d.ts +3 -0
- package/dist/electronics/smt-takt.d.ts.map +1 -1
- package/dist/electronics/smt-takt.js +1 -4
- package/dist/electronics/smt-takt.js.map +1 -1
- package/dist/electronics/solder.d.ts +3 -0
- package/dist/electronics/solder.d.ts.map +1 -1
- package/dist/electronics/solder.js +1 -4
- package/dist/electronics/solder.js.map +1 -1
- package/dist/electronics/stencil.d.ts.map +1 -1
- package/dist/electronics/stencil.js +1 -4
- package/dist/electronics/stencil.js.map +1 -1
- package/dist/electronics/trace.d.ts.map +1 -1
- package/dist/electronics/trace.js +1 -4
- package/dist/electronics/trace.js.map +1 -1
- package/dist/electronics/types.d.ts +24 -0
- package/dist/electronics/types.d.ts.map +1 -1
- package/dist/electronics/via.d.ts.map +1 -1
- package/dist/electronics/via.js +1 -4
- package/dist/electronics/via.js.map +1 -1
- package/dist/energy/carbonFootprint.d.ts.map +1 -1
- package/dist/energy/carbonFootprint.js +2 -1
- package/dist/energy/carbonFootprint.js.map +1 -1
- package/dist/energy/index.d.ts +2 -1
- package/dist/energy/index.d.ts.map +1 -1
- package/dist/energy/index.js +1 -0
- package/dist/energy/index.js.map +1 -1
- package/dist/energy/powerCost.d.ts.map +1 -1
- package/dist/energy/powerCost.js +2 -1
- package/dist/energy/powerCost.js.map +1 -1
- package/dist/energy/solarOutput.d.ts +14 -0
- package/dist/energy/solarOutput.d.ts.map +1 -0
- package/dist/energy/solarOutput.js +54 -0
- package/dist/energy/solarOutput.js.map +1 -0
- package/dist/energy/types.d.ts +20 -0
- package/dist/energy/types.d.ts.map +1 -1
- package/dist/environmental/emissionsIntensity.d.ts +11 -0
- package/dist/environmental/emissionsIntensity.d.ts.map +1 -0
- package/dist/environmental/emissionsIntensity.js +26 -0
- package/dist/environmental/emissionsIntensity.js.map +1 -0
- package/dist/environmental/energyIntensity.d.ts +11 -0
- package/dist/environmental/energyIntensity.d.ts.map +1 -0
- package/dist/environmental/energyIntensity.js +19 -0
- package/dist/environmental/energyIntensity.js.map +1 -0
- package/dist/environmental/esgSummary.d.ts +11 -0
- package/dist/environmental/esgSummary.d.ts.map +1 -0
- package/dist/environmental/esgSummary.js +39 -0
- package/dist/environmental/esgSummary.js.map +1 -0
- package/dist/environmental/gwpCalculator.d.ts +11 -0
- package/dist/environmental/gwpCalculator.d.ts.map +1 -0
- package/dist/environmental/gwpCalculator.js +31 -0
- package/dist/environmental/gwpCalculator.js.map +1 -0
- package/dist/environmental/index.d.ts +12 -0
- package/dist/environmental/index.d.ts.map +1 -0
- package/dist/environmental/index.js +12 -0
- package/dist/environmental/index.js.map +1 -0
- package/dist/environmental/productCarbonFootprint.d.ts +11 -0
- package/dist/environmental/productCarbonFootprint.d.ts.map +1 -0
- package/dist/environmental/productCarbonFootprint.js +29 -0
- package/dist/environmental/productCarbonFootprint.js.map +1 -0
- package/dist/environmental/scope1Emissions.d.ts +11 -0
- package/dist/environmental/scope1Emissions.d.ts.map +1 -0
- package/dist/environmental/scope1Emissions.js +35 -0
- package/dist/environmental/scope1Emissions.js.map +1 -0
- package/dist/environmental/scope2Emissions.d.ts +11 -0
- package/dist/environmental/scope2Emissions.d.ts.map +1 -0
- package/dist/environmental/scope2Emissions.js +49 -0
- package/dist/environmental/scope2Emissions.js.map +1 -0
- package/dist/environmental/scope3Emissions.d.ts +11 -0
- package/dist/environmental/scope3Emissions.d.ts.map +1 -0
- package/dist/environmental/scope3Emissions.js +36 -0
- package/dist/environmental/scope3Emissions.js.map +1 -0
- package/dist/environmental/types.d.ts +165 -0
- package/dist/environmental/types.d.ts.map +1 -0
- package/dist/environmental/types.js +5 -0
- package/dist/environmental/types.js.map +1 -0
- package/dist/environmental/vocEmissions.d.ts +11 -0
- package/dist/environmental/vocEmissions.d.ts.map +1 -0
- package/dist/environmental/vocEmissions.js +23 -0
- package/dist/environmental/vocEmissions.js.map +1 -0
- package/dist/environmental/waterFootprint.d.ts +11 -0
- package/dist/environmental/waterFootprint.d.ts.map +1 -0
- package/dist/environmental/waterFootprint.js +21 -0
- package/dist/environmental/waterFootprint.js.map +1 -0
- package/dist/index.d.ts +10 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +10 -2
- package/dist/index.js.map +1 -1
- package/dist/logistics/cbm.d.ts +7 -2
- package/dist/logistics/cbm.d.ts.map +1 -1
- package/dist/logistics/cbm.js +7 -2
- package/dist/logistics/cbm.js.map +1 -1
- package/dist/logistics/eoq.d.ts.map +1 -1
- package/dist/logistics/eoq.js +11 -0
- package/dist/logistics/eoq.js.map +1 -1
- package/dist/logistics/fillRate.d.ts.map +1 -1
- package/dist/logistics/fillRate.js +1 -17
- package/dist/logistics/fillRate.js.map +1 -1
- package/dist/logistics/safetyStock.d.ts.map +1 -1
- package/dist/logistics/safetyStock.js +2 -55
- package/dist/logistics/safetyStock.js.map +1 -1
- package/dist/machining/boltCircle.d.ts +16 -0
- package/dist/machining/boltCircle.d.ts.map +1 -0
- package/dist/machining/boltCircle.js +36 -0
- package/dist/machining/boltCircle.js.map +1 -0
- package/dist/machining/boringBarDeflection.d.ts +17 -0
- package/dist/machining/boringBarDeflection.d.ts.map +1 -0
- package/dist/machining/boringBarDeflection.js +54 -0
- package/dist/machining/boringBarDeflection.js.map +1 -0
- package/dist/machining/cuspHeight.d.ts +15 -0
- package/dist/machining/cuspHeight.d.ts.map +1 -0
- package/dist/machining/cuspHeight.js +23 -0
- package/dist/machining/cuspHeight.js.map +1 -0
- package/dist/machining/cycleTimeEstimator.d.ts +18 -0
- package/dist/machining/cycleTimeEstimator.d.ts.map +1 -0
- package/dist/machining/cycleTimeEstimator.js +62 -0
- package/dist/machining/cycleTimeEstimator.js.map +1 -0
- package/dist/machining/effectiveDiameter.d.ts +17 -0
- package/dist/machining/effectiveDiameter.d.ts.map +1 -0
- package/dist/machining/effectiveDiameter.js +24 -0
- package/dist/machining/effectiveDiameter.js.map +1 -0
- package/dist/machining/gaugeBlockStack.d.ts +16 -0
- package/dist/machining/gaugeBlockStack.d.ts.map +1 -0
- package/dist/machining/gaugeBlockStack.js +138 -0
- package/dist/machining/gaugeBlockStack.js.map +1 -0
- package/dist/machining/index.d.ts +14 -0
- package/dist/machining/index.d.ts.map +1 -0
- package/dist/machining/index.js +14 -0
- package/dist/machining/index.js.map +1 -0
- package/dist/machining/radialChipThinning.d.ts +18 -0
- package/dist/machining/radialChipThinning.d.ts.map +1 -0
- package/dist/machining/radialChipThinning.js +30 -0
- package/dist/machining/radialChipThinning.js.map +1 -0
- package/dist/machining/sineBarHeight.d.ts +16 -0
- package/dist/machining/sineBarHeight.d.ts.map +1 -0
- package/dist/machining/sineBarHeight.js +32 -0
- package/dist/machining/sineBarHeight.js.map +1 -0
- package/dist/machining/threadOverWires.d.ts +21 -0
- package/dist/machining/threadOverWires.d.ts.map +1 -0
- package/dist/machining/threadOverWires.js +54 -0
- package/dist/machining/threadOverWires.js.map +1 -0
- package/dist/machining/toolDeflection.d.ts +16 -0
- package/dist/machining/toolDeflection.d.ts.map +1 -0
- package/dist/machining/toolDeflection.js +36 -0
- package/dist/machining/toolDeflection.js.map +1 -0
- package/dist/machining/triangleSolver.d.ts +21 -0
- package/dist/machining/triangleSolver.d.ts.map +1 -0
- package/dist/machining/triangleSolver.js +120 -0
- package/dist/machining/triangleSolver.js.map +1 -0
- package/dist/machining/truePosition.d.ts +19 -0
- package/dist/machining/truePosition.d.ts.map +1 -0
- package/dist/machining/truePosition.js +44 -0
- package/dist/machining/truePosition.js.map +1 -0
- package/dist/machining/types.d.ts +201 -0
- package/dist/machining/types.d.ts.map +1 -0
- package/dist/machining/types.js +2 -0
- package/dist/machining/types.js.map +1 -0
- package/dist/math.d.ts +26 -0
- package/dist/math.d.ts.map +1 -0
- package/dist/math.js +95 -0
- package/dist/math.js.map +1 -0
- package/dist/metal/bearing.d.ts.map +1 -1
- package/dist/metal/bearing.js +1 -4
- package/dist/metal/bearing.js.map +1 -1
- package/dist/metal/bendAllowance.d.ts.map +1 -1
- package/dist/metal/bendAllowance.js +2 -1
- package/dist/metal/bendAllowance.js.map +1 -1
- package/dist/metal/bolt.d.ts.map +1 -1
- package/dist/metal/bolt.js +4 -7
- package/dist/metal/bolt.js.map +1 -1
- package/dist/metal/cutting.d.ts.map +1 -1
- package/dist/metal/cutting.js +1 -4
- package/dist/metal/cutting.js.map +1 -1
- package/dist/metal/cuttingStock.d.ts.map +1 -1
- package/dist/metal/cuttingStock.js +1 -4
- package/dist/metal/cuttingStock.js.map +1 -1
- package/dist/metal/flangeSpec.d.ts +10 -0
- package/dist/metal/flangeSpec.d.ts.map +1 -0
- package/dist/metal/flangeSpec.js +81 -0
- package/dist/metal/flangeSpec.js.map +1 -0
- package/dist/metal/gear.d.ts.map +1 -1
- package/dist/metal/gear.js +1 -4
- package/dist/metal/gear.js.map +1 -1
- package/dist/metal/hardness.d.ts.map +1 -1
- package/dist/metal/hardness.js +1 -4
- package/dist/metal/hardness.js.map +1 -1
- package/dist/metal/index.d.ts +4 -1
- package/dist/metal/index.d.ts.map +1 -1
- package/dist/metal/index.js +3 -0
- package/dist/metal/index.js.map +1 -1
- package/dist/metal/materialGradeConverter.d.ts +10 -0
- package/dist/metal/materialGradeConverter.d.ts.map +1 -0
- package/dist/metal/materialGradeConverter.js +78 -0
- package/dist/metal/materialGradeConverter.js.map +1 -0
- package/dist/metal/metalWeight.d.ts +13 -3
- package/dist/metal/metalWeight.d.ts.map +1 -1
- package/dist/metal/metalWeight.js +24 -35
- package/dist/metal/metalWeight.js.map +1 -1
- package/dist/metal/pipeSpec.d.ts +10 -0
- package/dist/metal/pipeSpec.d.ts.map +1 -0
- package/dist/metal/pipeSpec.js +96 -0
- package/dist/metal/pipeSpec.js.map +1 -0
- package/dist/metal/pressFit.d.ts.map +1 -1
- package/dist/metal/pressFit.js +1 -4
- package/dist/metal/pressFit.js.map +1 -1
- package/dist/metal/pressTonnage.d.ts +10 -4
- package/dist/metal/pressTonnage.d.ts.map +1 -1
- package/dist/metal/pressTonnage.js +199 -25
- package/dist/metal/pressTonnage.js.map +1 -1
- package/dist/metal/roughness.d.ts.map +1 -1
- package/dist/metal/roughness.js +2 -5
- package/dist/metal/roughness.js.map +1 -1
- package/dist/metal/screw.d.ts.map +1 -1
- package/dist/metal/screw.js +1 -4
- package/dist/metal/screw.js.map +1 -1
- package/dist/metal/spring.d.ts.map +1 -1
- package/dist/metal/spring.js +1 -4
- package/dist/metal/spring.js.map +1 -1
- package/dist/metal/tap.d.ts.map +1 -1
- package/dist/metal/tap.js +1 -4
- package/dist/metal/tap.js.map +1 -1
- package/dist/metal/thread.d.ts.map +1 -1
- package/dist/metal/thread.js +1 -4
- package/dist/metal/thread.js.map +1 -1
- package/dist/metal/tolerance.d.ts.map +1 -1
- package/dist/metal/tolerance.js +1 -4
- package/dist/metal/tolerance.js.map +1 -1
- package/dist/metal/types.d.ts +100 -13
- package/dist/metal/types.d.ts.map +1 -1
- package/dist/metal/vibration.d.ts.map +1 -1
- package/dist/metal/vibration.js +1 -4
- package/dist/metal/vibration.js.map +1 -1
- package/dist/metal/weldHeat.d.ts +2 -1
- package/dist/metal/weldHeat.d.ts.map +1 -1
- package/dist/metal/weldHeat.js +203 -44
- package/dist/metal/weldHeat.js.map +1 -1
- package/dist/metal/welding.d.ts.map +1 -1
- package/dist/metal/welding.js +3 -2
- package/dist/metal/welding.js.map +1 -1
- package/dist/quality/aql.d.ts.map +1 -1
- package/dist/quality/aql.js +1 -4
- package/dist/quality/aql.js.map +1 -1
- package/dist/quality/controlChart.d.ts +26 -0
- package/dist/quality/controlChart.d.ts.map +1 -0
- package/dist/quality/controlChart.js +216 -0
- package/dist/quality/controlChart.js.map +1 -0
- package/dist/quality/cpk.d.ts +16 -4
- package/dist/quality/cpk.d.ts.map +1 -1
- package/dist/quality/cpk.js +16 -4
- package/dist/quality/cpk.js.map +1 -1
- package/dist/quality/downtime.d.ts.map +1 -1
- package/dist/quality/downtime.js +1 -4
- package/dist/quality/downtime.js.map +1 -1
- package/dist/quality/dpmo.d.ts.map +1 -1
- package/dist/quality/dpmo.js +2 -65
- package/dist/quality/dpmo.js.map +1 -1
- package/dist/quality/index.d.ts +2 -1
- package/dist/quality/index.d.ts.map +1 -1
- package/dist/quality/index.js +1 -0
- package/dist/quality/index.js.map +1 -1
- package/dist/quality/lineBalancing.d.ts.map +1 -1
- package/dist/quality/lineBalancing.js +1 -4
- package/dist/quality/lineBalancing.js.map +1 -1
- package/dist/quality/mtbf.d.ts.map +1 -1
- package/dist/quality/mtbf.js +1 -4
- package/dist/quality/mtbf.js.map +1 -1
- package/dist/quality/oee.d.ts +13 -1
- package/dist/quality/oee.d.ts.map +1 -1
- package/dist/quality/oee.js +30 -9
- package/dist/quality/oee.js.map +1 -1
- package/dist/quality/ppk.d.ts.map +1 -1
- package/dist/quality/ppk.js +2 -20
- package/dist/quality/ppk.js.map +1 -1
- package/dist/quality/ppm.d.ts.map +1 -1
- package/dist/quality/ppm.js +2 -84
- package/dist/quality/ppm.js.map +1 -1
- package/dist/quality/rpn.d.ts.map +1 -1
- package/dist/quality/rpn.js +1 -4
- package/dist/quality/rpn.js.map +1 -1
- package/dist/quality/types.d.ts +31 -0
- package/dist/quality/types.d.ts.map +1 -1
- package/dist/quality/yield.d.ts.map +1 -1
- package/dist/quality/yield.js +1 -4
- package/dist/quality/yield.js.map +1 -1
- package/dist/safety/fallClearance.d.ts +12 -3
- package/dist/safety/fallClearance.d.ts.map +1 -1
- package/dist/safety/fallClearance.js +73 -17
- package/dist/safety/fallClearance.js.map +1 -1
- package/dist/safety/index.d.ts +2 -1
- package/dist/safety/index.d.ts.map +1 -1
- package/dist/safety/index.js +1 -0
- package/dist/safety/index.js.map +1 -1
- package/dist/safety/nioshLifting.d.ts +19 -10
- package/dist/safety/nioshLifting.d.ts.map +1 -1
- package/dist/safety/nioshLifting.js +19 -10
- package/dist/safety/nioshLifting.js.map +1 -1
- package/dist/safety/types.d.ts +25 -0
- package/dist/safety/types.d.ts.map +1 -1
- package/dist/safety/ventilationRate.d.ts +12 -0
- package/dist/safety/ventilationRate.d.ts.map +1 -0
- package/dist/safety/ventilationRate.js +71 -0
- package/dist/safety/ventilationRate.js.map +1 -0
- package/dist/utility/assignment.d.ts.map +1 -1
- package/dist/utility/assignment.js +1 -7
- package/dist/utility/assignment.js.map +1 -1
- package/dist/utility/index.d.ts +2 -2
- package/dist/utility/index.d.ts.map +1 -1
- package/dist/utility/index.js +1 -1
- package/dist/utility/index.js.map +1 -1
- package/dist/utility/types.d.ts +0 -16
- package/dist/utility/types.d.ts.map +1 -1
- package/dist/utility/unit.d.ts +1 -1
- package/dist/utility/unit.d.ts.map +1 -1
- package/dist/utility/unit.js +2 -8
- package/dist/utility/unit.js.map +1 -1
- package/dist/utils.d.ts +5 -1
- package/dist/utils.d.ts.map +1 -1
- package/dist/utils.js +11 -2
- package/dist/utils.js.map +1 -1
- package/package.json +37 -4
- package/dist/utility/qrcode.d.ts +0 -30
- package/dist/utility/qrcode.d.ts.map +0 -1
- package/dist/utility/qrcode.js +0 -30
- package/dist/utility/qrcode.js.map +0 -1
|
@@ -0,0 +1,81 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* ASME B16.5 Welding Neck flange dimensions
|
|
3
|
+
* @reference ASME B16.5 (Class 150, 300, 600)
|
|
4
|
+
*/
|
|
5
|
+
const ASME_B16_5 = {
|
|
6
|
+
'1': {
|
|
7
|
+
'150': { od: 108.0, thickness: 14.2, boltCircle: 79.4, boltHoles: 4, boltSize: 'M12', raisedFace: 50.8, weight: 1.1 },
|
|
8
|
+
'300': { od: 124.0, thickness: 17.5, boltCircle: 88.9, boltHoles: 4, boltSize: 'M16', raisedFace: 50.8, weight: 2.1 },
|
|
9
|
+
'600': { od: 124.0, thickness: 20.6, boltCircle: 88.9, boltHoles: 4, boltSize: 'M16', raisedFace: 50.8, weight: 2.5 },
|
|
10
|
+
},
|
|
11
|
+
'2': {
|
|
12
|
+
'150': { od: 152.4, thickness: 15.7, boltCircle: 120.7, boltHoles: 4, boltSize: 'M16', raisedFace: 73.0, weight: 2.5 },
|
|
13
|
+
'300': { od: 165.1, thickness: 20.6, boltCircle: 127.0, boltHoles: 8, boltSize: 'M16', raisedFace: 73.0, weight: 4.1 },
|
|
14
|
+
'600': { od: 165.1, thickness: 25.4, boltCircle: 127.0, boltHoles: 8, boltSize: 'M16', raisedFace: 73.0, weight: 5.0 },
|
|
15
|
+
},
|
|
16
|
+
'3': {
|
|
17
|
+
'150': { od: 190.5, thickness: 17.5, boltCircle: 152.4, boltHoles: 4, boltSize: 'M16', raisedFace: 98.4, weight: 3.9 },
|
|
18
|
+
'300': { od: 210.0, thickness: 22.4, boltCircle: 168.3, boltHoles: 8, boltSize: 'M20', raisedFace: 98.4, weight: 6.3 },
|
|
19
|
+
'600': { od: 210.0, thickness: 28.4, boltCircle: 168.3, boltHoles: 8, boltSize: 'M20', raisedFace: 98.4, weight: 8.0 },
|
|
20
|
+
},
|
|
21
|
+
'4': {
|
|
22
|
+
'150': { od: 228.6, thickness: 19.1, boltCircle: 190.5, boltHoles: 8, boltSize: 'M16', raisedFace: 122.2, weight: 5.5 },
|
|
23
|
+
'300': { od: 254.0, thickness: 25.4, boltCircle: 200.0, boltHoles: 8, boltSize: 'M20', raisedFace: 122.2, weight: 9.3 },
|
|
24
|
+
'600': { od: 273.1, thickness: 31.8, boltCircle: 215.9, boltHoles: 8, boltSize: 'M22', raisedFace: 122.2, weight: 14.0 },
|
|
25
|
+
},
|
|
26
|
+
'6': {
|
|
27
|
+
'150': { od: 279.4, thickness: 22.4, boltCircle: 241.3, boltHoles: 8, boltSize: 'M20', raisedFace: 168.3, weight: 8.6 },
|
|
28
|
+
'300': { od: 318.0, thickness: 28.4, boltCircle: 269.9, boltHoles: 12, boltSize: 'M20', raisedFace: 168.3, weight: 17.0 },
|
|
29
|
+
'600': { od: 355.6, thickness: 36.6, boltCircle: 292.1, boltHoles: 12, boltSize: 'M22', raisedFace: 168.3, weight: 28.0 },
|
|
30
|
+
},
|
|
31
|
+
'8': {
|
|
32
|
+
'150': { od: 342.9, thickness: 24.4, boltCircle: 298.5, boltHoles: 8, boltSize: 'M20', raisedFace: 219.1, weight: 13.0 },
|
|
33
|
+
'300': { od: 381.0, thickness: 33.3, boltCircle: 330.2, boltHoles: 12, boltSize: 'M22', raisedFace: 219.1, weight: 27.0 },
|
|
34
|
+
'600': { od: 419.1, thickness: 42.9, boltCircle: 349.3, boltHoles: 12, boltSize: 'M25', raisedFace: 219.1, weight: 45.0 },
|
|
35
|
+
},
|
|
36
|
+
'10': {
|
|
37
|
+
'150': { od: 406.4, thickness: 26.9, boltCircle: 362.0, boltHoles: 12, boltSize: 'M22', raisedFace: 273.1, weight: 19.0 },
|
|
38
|
+
'300': { od: 444.5, thickness: 36.6, boltCircle: 387.4, boltHoles: 16, boltSize: 'M25', raisedFace: 273.1, weight: 38.0 },
|
|
39
|
+
'600': { od: 508.0, thickness: 50.8, boltCircle: 431.8, boltHoles: 16, boltSize: 'M30', raisedFace: 273.1, weight: 70.0 },
|
|
40
|
+
},
|
|
41
|
+
'12': {
|
|
42
|
+
'150': { od: 482.6, thickness: 28.4, boltCircle: 431.8, boltHoles: 12, boltSize: 'M22', raisedFace: 323.9, weight: 27.0 },
|
|
43
|
+
'300': { od: 521.0, thickness: 39.6, boltCircle: 450.8, boltHoles: 16, boltSize: 'M25', raisedFace: 323.9, weight: 54.0 },
|
|
44
|
+
'600': { od: 559.0, thickness: 55.6, boltCircle: 489.0, boltHoles: 20, boltSize: 'M30', raisedFace: 323.9, weight: 95.0 },
|
|
45
|
+
},
|
|
46
|
+
};
|
|
47
|
+
/**
|
|
48
|
+
* Look up flange specifications from ASME B16.5 standard
|
|
49
|
+
*
|
|
50
|
+
* @reference ASME B16.5 Pipe Flanges and Flanged Fittings
|
|
51
|
+
* @param input - Flange standard, pressure class, nominal size
|
|
52
|
+
* @returns Flange dimensions (OD, thickness, bolt pattern, weight)
|
|
53
|
+
*/
|
|
54
|
+
export function flangeSpec(input) {
|
|
55
|
+
const { standard, pressureClass, nominalSize } = input;
|
|
56
|
+
if (standard === 'EN_1092_1') {
|
|
57
|
+
throw new Error('EN 1092-1 support not yet implemented. Use ASME_B16_5.');
|
|
58
|
+
}
|
|
59
|
+
// Normalize nominal size (remove quotes)
|
|
60
|
+
const nps = nominalSize.replace(/"/g, '').replace(/'/g, '').trim();
|
|
61
|
+
const sizeData = ASME_B16_5[nps];
|
|
62
|
+
if (!sizeData) {
|
|
63
|
+
throw new Error(`Unknown flange size: ${nps}`);
|
|
64
|
+
}
|
|
65
|
+
const dim = sizeData[pressureClass];
|
|
66
|
+
if (!dim) {
|
|
67
|
+
throw new Error(`Pressure class ${pressureClass} not available for size ${nps}`);
|
|
68
|
+
}
|
|
69
|
+
return {
|
|
70
|
+
nominalSize: nps,
|
|
71
|
+
pressureClass,
|
|
72
|
+
outerDiameter: dim.od,
|
|
73
|
+
thickness: dim.thickness,
|
|
74
|
+
boltCircleDiameter: dim.boltCircle,
|
|
75
|
+
boltHoles: dim.boltHoles,
|
|
76
|
+
boltSize: dim.boltSize,
|
|
77
|
+
raisedFaceDiameter: dim.raisedFace,
|
|
78
|
+
weight: dim.weight,
|
|
79
|
+
};
|
|
80
|
+
}
|
|
81
|
+
//# sourceMappingURL=flangeSpec.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"flangeSpec.js","sourceRoot":"","sources":["../../src/metal/flangeSpec.ts"],"names":[],"mappings":"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"}
|
package/dist/metal/gear.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"gear.d.ts","sourceRoot":"","sources":["../../src/metal/gear.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"gear.d.ts","sourceRoot":"","sources":["../../src/metal/gear.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAMxD;;;;;;;;;GASG;AACH,wBAAgB,IAAI,CAAC,KAAK,EAAE,SAAS,GAAG,UAAU,CA2DjD"}
|
package/dist/metal/gear.js
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { roundTo } from '../utils.js';
|
|
1
2
|
// Standard pressure angle for spur gears (degrees)
|
|
2
3
|
const PRESSURE_ANGLE_DEG = 20;
|
|
3
4
|
const PRESSURE_ANGLE_RAD = (PRESSURE_ANGLE_DEG * Math.PI) / 180;
|
|
@@ -72,8 +73,4 @@ function createEmptyResult() {
|
|
|
72
73
|
baseCircleDiameter1: 0,
|
|
73
74
|
};
|
|
74
75
|
}
|
|
75
|
-
function roundTo(value, decimals) {
|
|
76
|
-
const factor = Math.pow(10, decimals);
|
|
77
|
-
return Math.round(value * factor) / factor;
|
|
78
|
-
}
|
|
79
76
|
//# sourceMappingURL=gear.js.map
|
package/dist/metal/gear.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"gear.js","sourceRoot":"","sources":["../../src/metal/gear.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"gear.js","sourceRoot":"","sources":["../../src/metal/gear.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"hardness.d.ts","sourceRoot":"","sources":["../../src/metal/hardness.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"hardness.d.ts","sourceRoot":"","sources":["../../src/metal/hardness.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAiB,aAAa,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAE/E,UAAU,aAAa;IACrB,GAAG,EAAE,MAAM,CAAC;IACZ,EAAE,EAAE,MAAM,CAAC;IACX,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;CACf;AAID,eAAO,MAAM,gBAAgB,EAAE,aAAa,EAY3C,CAAC;AAoBF;;;GAGG;AACH,wBAAgB,QAAQ,CAAC,KAAK,EAAE,aAAa,GAAG,cAAc,CA6C7D"}
|
package/dist/metal/hardness.js
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { roundTo } from '../utils.js';
|
|
1
2
|
// ASTM E140-12b conversion table for non-austenitic steels
|
|
2
3
|
// HB values use tungsten carbide ball; HB not defined above HRC ~65 (capped at 739)
|
|
3
4
|
export const CONVERSION_TABLE = [
|
|
@@ -70,8 +71,4 @@ export function hardness(input) {
|
|
|
70
71
|
Shore: row.Shore,
|
|
71
72
|
};
|
|
72
73
|
}
|
|
73
|
-
function roundTo(value, decimals) {
|
|
74
|
-
const factor = Math.pow(10, decimals);
|
|
75
|
-
return Math.round(value * factor) / factor;
|
|
76
|
-
}
|
|
77
74
|
//# sourceMappingURL=hardness.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"hardness.js","sourceRoot":"","sources":["../../src/metal/hardness.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"hardness.js","sourceRoot":"","sources":["../../src/metal/hardness.ts"],"names":[],"mappings":"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"}
|
package/dist/metal/index.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
export type { MetalShape, MetalWeightInput, MetalWeightResult, BendingMaterial, ShapeType, BendAllowanceInput, BendAllowanceResult, FlatPatternInput, FlatPatternResult, KFactorReverseInput, KFactorReverseResult, 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, VibrationSystem, CrossSection, VibrationMaterial, VibrationInput, FrequencyMode, VibrationResult, WeldProcess, WeldBaseMetal, CrackingRisk, WeldHeatInput, WeldHeatResult, WeldingBaseMetal, JointType, WeldPosition, WeldingInput, WeldingRod, WeldingResult, } from './types.js';
|
|
1
|
+
export type { MetalShape, MaterialName, MetalWeightInput, MetalWeightResult, BendingMaterial, ShapeType, BendAllowanceInput, BendAllowanceResult, FlatPatternInput, FlatPatternResult, KFactorReverseInput, KFactorReverseResult, 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, VibrationSystem, CrossSection, VibrationMaterial, VibrationInput, FrequencyMode, VibrationResult, WeldProcess, WeldBaseMetal, CrackingRisk, WeldHeatInput, WeldHeatResult, WeldingBaseMetal, JointType, WeldPosition, WeldingInput, WeldingRod, WeldingResult, MaterialStandard, MaterialGradeConverterInput, MaterialGradeConverterResult, PipeStandard, PipeSchedule, PipeSpecInput, PipeSpecResult, FlangeStandard, PressureClass, FlangeSpecInput, FlangeSpecResult, } from './types.js';
|
|
2
2
|
export { metalWeight } from './metalWeight.js';
|
|
3
3
|
export { bendAllowance } from './bendAllowance.js';
|
|
4
4
|
export { flatPattern } from './flatPattern.js';
|
|
@@ -21,4 +21,7 @@ export { tolerance } from './tolerance.js';
|
|
|
21
21
|
export { vibration } from './vibration.js';
|
|
22
22
|
export { weldHeat } from './weldHeat.js';
|
|
23
23
|
export { welding } from './welding.js';
|
|
24
|
+
export { materialGradeConverter } from './materialGradeConverter.js';
|
|
25
|
+
export { pipeSpec } from './pipeSpec.js';
|
|
26
|
+
export { flangeSpec } from './flangeSpec.js';
|
|
24
27
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/metal/index.ts"],"names":[],"mappings":"AACA,YAAY,EAEV,UAAU,EACV,gBAAgB,EAChB,iBAAiB,EAEjB,eAAe,EACf,SAAS,EACT,kBAAkB,EAClB,mBAAmB,EACnB,gBAAgB,EAChB,iBAAiB,EACjB,mBAAmB,EACnB,oBAAoB,EAEpB,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,EAEf,eAAe,EACf,YAAY,EACZ,iBAAiB,EACjB,cAAc,EACd,aAAa,EACb,eAAe,EAEf,WAAW,EACX,aAAa,EACb,YAAY,EACZ,aAAa,EACb,cAAc,EAEd,gBAAgB,EAChB,SAAS,EACT,YAAY,EACZ,YAAY,EACZ,UAAU,EACV,aAAa,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/metal/index.ts"],"names":[],"mappings":"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"}
|
package/dist/metal/index.js
CHANGED
|
@@ -21,4 +21,7 @@ export { tolerance } from './tolerance.js';
|
|
|
21
21
|
export { vibration } from './vibration.js';
|
|
22
22
|
export { weldHeat } from './weldHeat.js';
|
|
23
23
|
export { welding } from './welding.js';
|
|
24
|
+
export { materialGradeConverter } from './materialGradeConverter.js';
|
|
25
|
+
export { pipeSpec } from './pipeSpec.js';
|
|
26
|
+
export { flangeSpec } from './flangeSpec.js';
|
|
24
27
|
//# sourceMappingURL=index.js.map
|
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":"AAsHA,YAAY;AACZ,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACnD,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AACrD,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,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,MAAM,gBAAgB,CAAC;AAC3C,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,sBAAsB,EAAE,MAAM,6BAA6B,CAAC;AACrE,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import type { MaterialGradeConverterInput, MaterialGradeConverterResult } from './types.js';
|
|
2
|
+
/**
|
|
3
|
+
* Convert material grade between ASTM, EN, JIS, GB, and KS standards
|
|
4
|
+
*
|
|
5
|
+
* @reference ASTM, EN, JIS, GB, KS cross-reference tables
|
|
6
|
+
* @param input - Source standard and grade designation
|
|
7
|
+
* @returns Equivalent grades in all 5 standards with category info
|
|
8
|
+
*/
|
|
9
|
+
export declare function materialGradeConverter(input: MaterialGradeConverterInput): MaterialGradeConverterResult;
|
|
10
|
+
//# sourceMappingURL=materialGradeConverter.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"materialGradeConverter.d.ts","sourceRoot":"","sources":["../../src/metal/materialGradeConverter.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAoB,2BAA2B,EAAE,4BAA4B,EAAE,MAAM,YAAY,CAAC;AA0E9G;;;;;;GAMG;AACH,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,2BAA2B,GAAG,4BAA4B,CAiBvG"}
|
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Material grade equivalence table
|
|
3
|
+
* @reference ASTM, EN, JIS, GB, KS standards cross-reference
|
|
4
|
+
*/
|
|
5
|
+
const GRADE_TABLE = [
|
|
6
|
+
// Structural Steel
|
|
7
|
+
{ astm: 'A36', en: 'S235JR', jis: 'SS400', gb: 'Q235B', ks: 'SS400', category: 'structural_steel', notes: 'General structural steel, Fy ≈ 250 MPa' },
|
|
8
|
+
{ astm: 'A572 Gr.50', en: 'S355JR', jis: 'SM490A', gb: 'Q345B', ks: 'SM490A', category: 'structural_steel', notes: 'High-strength low-alloy structural steel, Fy ≈ 345 MPa' },
|
|
9
|
+
{ astm: 'A283 Gr.C', en: 'S235JRG2', jis: 'SGD400', gb: 'Q235A', ks: 'SGD400', category: 'structural_steel', notes: 'Low/intermediate tensile strength plates' },
|
|
10
|
+
{ astm: 'A992', en: 'S355J2', jis: 'SM490B', gb: 'Q345C', ks: 'SM490B', category: 'structural_steel', notes: 'Wide-flange structural shapes' },
|
|
11
|
+
// Stainless Steel
|
|
12
|
+
{ astm: 'A240 304', en: '1.4301', jis: 'SUS304', gb: '06Cr19Ni10', ks: 'STS304', category: 'stainless', notes: 'Austenitic 18/8 stainless, most common grade' },
|
|
13
|
+
{ astm: 'A240 304L', en: '1.4307', jis: 'SUS304L', gb: '022Cr19Ni10', ks: 'STS304L', category: 'stainless', notes: 'Low-carbon 304 for welding applications' },
|
|
14
|
+
{ astm: 'A240 316', en: '1.4401', jis: 'SUS316', gb: '06Cr17Ni12Mo2', ks: 'STS316', category: 'stainless', notes: 'Molybdenum-bearing austenitic, marine grade' },
|
|
15
|
+
{ astm: 'A240 316L', en: '1.4404', jis: 'SUS316L', gb: '022Cr17Ni12Mo2', ks: 'STS316L', category: 'stainless', notes: 'Low-carbon 316 for welding applications' },
|
|
16
|
+
{ astm: 'A240 430', en: '1.4016', jis: 'SUS430', gb: '10Cr17', ks: 'STS430', category: 'stainless', notes: 'Ferritic stainless, decorative/automotive trim' },
|
|
17
|
+
{ astm: 'A240 410', en: '1.4006', jis: 'SUS410', gb: '12Cr13', ks: 'STS410', category: 'stainless', notes: 'Martensitic stainless, general purpose' },
|
|
18
|
+
// Machine Structural Steel
|
|
19
|
+
{ astm: 'A29 1045', en: 'C45E', jis: 'S45C', gb: '45', ks: 'SM45C', category: 'machine_structural', notes: 'Medium carbon steel, Fy ≈ 530 MPa (quenched & tempered)' },
|
|
20
|
+
{ astm: 'A29 1020', en: 'C22E', jis: 'S20C', gb: '20', ks: 'SM20C', category: 'machine_structural', notes: 'Low carbon steel for carburizing' },
|
|
21
|
+
{ astm: 'A29 4140', en: '42CrMo4', jis: 'SCM440', gb: '42CrMo', ks: 'SCM440', category: 'machine_structural', notes: 'Cr-Mo alloy steel, high hardenability' },
|
|
22
|
+
{ astm: 'A29 4340', en: '34CrNiMo6', jis: 'SNCM439', gb: '40CrNiMoA', ks: 'SNCM439', category: 'machine_structural', notes: 'Ni-Cr-Mo alloy steel, aerospace grade' },
|
|
23
|
+
// Tool Steel
|
|
24
|
+
{ astm: 'A681 D2', en: '1.2379', jis: 'SKD11', gb: 'Cr12Mo1V1', ks: 'STD11', category: 'tool_steel', notes: 'Cold-work tool steel, high wear resistance' },
|
|
25
|
+
{ astm: 'A681 H13', en: '1.2344', jis: 'SKD61', gb: '4Cr5MoSiV1', ks: 'STD61', category: 'tool_steel', notes: 'Hot-work tool steel, die casting' },
|
|
26
|
+
{ astm: 'A681 S7', en: '1.2357', jis: 'SKS7', gb: '5CrW2Si', ks: 'STS7', category: 'tool_steel', notes: 'Shock-resistant tool steel' },
|
|
27
|
+
// Spring Steel
|
|
28
|
+
{ astm: 'A29 9260', en: '60Si7', jis: 'SUP7', gb: '60Si2Mn', ks: 'SPS7', category: 'spring_steel', notes: 'Silicon-manganese spring steel' },
|
|
29
|
+
{ astm: 'A29 5160', en: '55Cr3', jis: 'SUP9', gb: '55CrMnA', ks: 'SPS9', category: 'spring_steel', notes: 'Chromium spring steel, leaf springs' },
|
|
30
|
+
// Pressure Vessel
|
|
31
|
+
{ astm: 'A516 Gr.70', en: 'P355GH', jis: 'SGV480', gb: 'Q345R', ks: 'SGV480', category: 'pressure_vessel', notes: 'Moderate/low temperature pressure vessel plate' },
|
|
32
|
+
];
|
|
33
|
+
/**
|
|
34
|
+
* Build lookup map for fast search
|
|
35
|
+
*/
|
|
36
|
+
function buildLookup() {
|
|
37
|
+
const map = new Map();
|
|
38
|
+
for (const entry of GRADE_TABLE) {
|
|
39
|
+
const standards = [
|
|
40
|
+
{ key: 'ASTM', val: entry.astm },
|
|
41
|
+
{ key: 'EN', val: entry.en },
|
|
42
|
+
{ key: 'JIS', val: entry.jis },
|
|
43
|
+
{ key: 'GB', val: entry.gb },
|
|
44
|
+
{ key: 'KS', val: entry.ks },
|
|
45
|
+
];
|
|
46
|
+
for (const { key, val } of standards) {
|
|
47
|
+
if (val != null) {
|
|
48
|
+
map.set(`${key}:${val.toUpperCase()}`, entry);
|
|
49
|
+
}
|
|
50
|
+
}
|
|
51
|
+
}
|
|
52
|
+
return map;
|
|
53
|
+
}
|
|
54
|
+
const LOOKUP = buildLookup();
|
|
55
|
+
/**
|
|
56
|
+
* Convert material grade between ASTM, EN, JIS, GB, and KS standards
|
|
57
|
+
*
|
|
58
|
+
* @reference ASTM, EN, JIS, GB, KS cross-reference tables
|
|
59
|
+
* @param input - Source standard and grade designation
|
|
60
|
+
* @returns Equivalent grades in all 5 standards with category info
|
|
61
|
+
*/
|
|
62
|
+
export function materialGradeConverter(input) {
|
|
63
|
+
const key = `${input.standard}:${input.grade.toUpperCase()}`;
|
|
64
|
+
const entry = LOOKUP.get(key);
|
|
65
|
+
if (!entry) {
|
|
66
|
+
return {
|
|
67
|
+
astm: null,
|
|
68
|
+
en: null,
|
|
69
|
+
jis: null,
|
|
70
|
+
gb: null,
|
|
71
|
+
ks: null,
|
|
72
|
+
category: 'unknown',
|
|
73
|
+
notes: `Grade "${input.grade}" not found in ${input.standard} standard`,
|
|
74
|
+
};
|
|
75
|
+
}
|
|
76
|
+
return { ...entry };
|
|
77
|
+
}
|
|
78
|
+
//# sourceMappingURL=materialGradeConverter.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"materialGradeConverter.js","sourceRoot":"","sources":["../../src/metal/materialGradeConverter.ts"],"names":[],"mappings":"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"}
|
|
@@ -2,9 +2,19 @@ import type { MetalWeightInput, MetalWeightResult } from './types.js';
|
|
|
2
2
|
/**
|
|
3
3
|
* Calculate metal weight based on shape, material, dimensions, and length.
|
|
4
4
|
*
|
|
5
|
-
* @
|
|
6
|
-
*
|
|
7
|
-
*
|
|
5
|
+
* @formula Weight = Volume × Density
|
|
6
|
+
* - plate: Volume = width × thickness × length
|
|
7
|
+
* - round: Volume = π(d/2)² × length
|
|
8
|
+
* - pipe: Volume = π(R² − r²) × length
|
|
9
|
+
* - angle: Volume = (w×t + h×t − t²) × length
|
|
10
|
+
* - All dimensions in mm → Volume converted mm³ → cm³ (÷1000) → kg (×density/1000)
|
|
11
|
+
*
|
|
12
|
+
* @reference Oberg, E. et al. "Machinery's Handbook", 31st Ed. Industrial Press.
|
|
13
|
+
*
|
|
14
|
+
* @units dimensions: mm, density: g/cm³, weight: kg
|
|
15
|
+
*
|
|
16
|
+
* @param input - Metal weight input parameters (discriminated by shape)
|
|
17
|
+
* @returns MetalWeightResult with weight (kg), volume (cm³), and density (g/cm³)
|
|
8
18
|
*/
|
|
9
19
|
export declare function metalWeight(input: MetalWeightInput): MetalWeightResult;
|
|
10
20
|
//# sourceMappingURL=metalWeight.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"metalWeight.d.ts","sourceRoot":"","sources":["../../src/metal/metalWeight.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"metalWeight.d.ts","sourceRoot":"","sources":["../../src/metal/metalWeight.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,gBAAgB,EAAE,iBAAiB,EAAgB,MAAM,YAAY,CAAC;AAgBpF;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,WAAW,CAAC,KAAK,EAAE,gBAAgB,GAAG,iBAAiB,CA6CtE"}
|
|
@@ -1,5 +1,8 @@
|
|
|
1
|
+
import { roundTo } from '../utils.js';
|
|
1
2
|
/**
|
|
2
|
-
* Material densities in g/
|
|
3
|
+
* Material densities in g/cm³
|
|
4
|
+
*
|
|
5
|
+
* @reference Oberg, E. et al. "Machinery's Handbook", 31st Ed. Industrial Press. (Density table)
|
|
3
6
|
*/
|
|
4
7
|
const MATERIAL_DENSITIES = {
|
|
5
8
|
steel: 7.85,
|
|
@@ -12,56 +15,45 @@ const MATERIAL_DENSITIES = {
|
|
|
12
15
|
/**
|
|
13
16
|
* Calculate metal weight based on shape, material, dimensions, and length.
|
|
14
17
|
*
|
|
15
|
-
* @
|
|
16
|
-
*
|
|
17
|
-
*
|
|
18
|
+
* @formula Weight = Volume × Density
|
|
19
|
+
* - plate: Volume = width × thickness × length
|
|
20
|
+
* - round: Volume = π(d/2)² × length
|
|
21
|
+
* - pipe: Volume = π(R² − r²) × length
|
|
22
|
+
* - angle: Volume = (w×t + h×t − t²) × length
|
|
23
|
+
* - All dimensions in mm → Volume converted mm³ → cm³ (÷1000) → kg (×density/1000)
|
|
24
|
+
*
|
|
25
|
+
* @reference Oberg, E. et al. "Machinery's Handbook", 31st Ed. Industrial Press.
|
|
26
|
+
*
|
|
27
|
+
* @units dimensions: mm, density: g/cm³, weight: kg
|
|
28
|
+
*
|
|
29
|
+
* @param input - Metal weight input parameters (discriminated by shape)
|
|
30
|
+
* @returns MetalWeightResult with weight (kg), volume (cm³), and density (g/cm³)
|
|
18
31
|
*/
|
|
19
32
|
export function metalWeight(input) {
|
|
20
33
|
const { shape, length, materialName } = input;
|
|
21
34
|
const density = MATERIAL_DENSITIES[materialName];
|
|
22
|
-
if (density === undefined) {
|
|
23
|
-
throw new Error(`Unknown material: ${materialName}`);
|
|
24
|
-
}
|
|
25
35
|
let crossSectionArea; // mm2
|
|
26
36
|
switch (shape) {
|
|
27
37
|
case 'plate': {
|
|
28
|
-
|
|
29
|
-
if (width === undefined || thickness === undefined) {
|
|
30
|
-
throw new Error('Plate requires width and thickness');
|
|
31
|
-
}
|
|
32
|
-
crossSectionArea = width * thickness;
|
|
38
|
+
crossSectionArea = input.width * input.thickness;
|
|
33
39
|
break;
|
|
34
40
|
}
|
|
35
41
|
case 'round': {
|
|
36
|
-
const
|
|
37
|
-
if (diameter === undefined) {
|
|
38
|
-
throw new Error('Round requires diameter');
|
|
39
|
-
}
|
|
40
|
-
const radius = diameter / 2;
|
|
42
|
+
const radius = input.diameter / 2;
|
|
41
43
|
crossSectionArea = Math.PI * radius * radius;
|
|
42
44
|
break;
|
|
43
45
|
}
|
|
44
46
|
case 'pipe': {
|
|
45
|
-
const
|
|
46
|
-
|
|
47
|
-
throw new Error('Pipe requires outerDiameter and innerDiameter');
|
|
48
|
-
}
|
|
49
|
-
const outerRadius = outerDiameter / 2;
|
|
50
|
-
const innerRadius = innerDiameter / 2;
|
|
47
|
+
const outerRadius = input.outerDiameter / 2;
|
|
48
|
+
const innerRadius = input.innerDiameter / 2;
|
|
51
49
|
crossSectionArea = Math.PI * (outerRadius * outerRadius - innerRadius * innerRadius);
|
|
52
50
|
break;
|
|
53
51
|
}
|
|
54
52
|
case 'angle': {
|
|
55
|
-
const { width, height, thickness } = input;
|
|
56
|
-
if (width === undefined || height === undefined || thickness === undefined) {
|
|
57
|
-
throw new Error('Angle requires width, height, and thickness');
|
|
58
|
-
}
|
|
59
53
|
// L-angle: two legs minus the corner overlap
|
|
60
|
-
crossSectionArea = (width * thickness) + (height * thickness) - (thickness * thickness);
|
|
54
|
+
crossSectionArea = (input.width * input.thickness) + (input.height * input.thickness) - (input.thickness * input.thickness);
|
|
61
55
|
break;
|
|
62
56
|
}
|
|
63
|
-
default:
|
|
64
|
-
throw new Error(`Unknown shape: ${shape}`);
|
|
65
57
|
}
|
|
66
58
|
// Volume in mm3
|
|
67
59
|
const volumeMm3 = crossSectionArea * length;
|
|
@@ -70,12 +62,9 @@ export function metalWeight(input) {
|
|
|
70
62
|
// Weight in g = volume (cm3) * density (g/cm3)
|
|
71
63
|
// Weight in kg = weight (g) / 1000
|
|
72
64
|
const weightKg = (volumeCm3 * density) / 1000;
|
|
73
|
-
// Round to precision matching test expectations
|
|
74
|
-
const roundedVolume = Math.round(volumeCm3 * 100) / 100;
|
|
75
|
-
const roundedWeight = Math.round(weightKg * 1000) / 1000;
|
|
76
65
|
return {
|
|
77
|
-
weight:
|
|
78
|
-
volume:
|
|
66
|
+
weight: roundTo(weightKg, 3),
|
|
67
|
+
volume: roundTo(volumeCm3, 2),
|
|
79
68
|
density,
|
|
80
69
|
};
|
|
81
70
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"metalWeight.js","sourceRoot":"","sources":["../../src/metal/metalWeight.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"metalWeight.js","sourceRoot":"","sources":["../../src/metal/metalWeight.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AAGtC;;;;GAIG;AACH,MAAM,kBAAkB,GAAiC;IACvD,KAAK,EAAE,IAAI;IACX,YAAY,EAAE,IAAI;IAClB,QAAQ,EAAE,IAAI;IACd,MAAM,EAAE,IAAI;IACZ,KAAK,EAAE,IAAI;IACX,QAAQ,EAAE,IAAI;CACf,CAAC;AAEF;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,UAAU,WAAW,CAAC,KAAuB;IACjD,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,YAAY,EAAE,GAAG,KAAK,CAAC;IAE9C,MAAM,OAAO,GAAG,kBAAkB,CAAC,YAAY,CAAC,CAAC;IAEjD,IAAI,gBAAwB,CAAC,CAAC,MAAM;IAEpC,QAAQ,KAAK,EAAE,CAAC;QACd,KAAK,OAAO,CAAC,CAAC,CAAC;YACb,gBAAgB,GAAG,KAAK,CAAC,KAAK,GAAG,KAAK,CAAC,SAAS,CAAC;YACjD,MAAM;QACR,CAAC;QACD,KAAK,OAAO,CAAC,CAAC,CAAC;YACb,MAAM,MAAM,GAAG,KAAK,CAAC,QAAQ,GAAG,CAAC,CAAC;YAClC,gBAAgB,GAAG,IAAI,CAAC,EAAE,GAAG,MAAM,GAAG,MAAM,CAAC;YAC7C,MAAM;QACR,CAAC;QACD,KAAK,MAAM,CAAC,CAAC,CAAC;YACZ,MAAM,WAAW,GAAG,KAAK,CAAC,aAAa,GAAG,CAAC,CAAC;YAC5C,MAAM,WAAW,GAAG,KAAK,CAAC,aAAa,GAAG,CAAC,CAAC;YAC5C,gBAAgB,GAAG,IAAI,CAAC,EAAE,GAAG,CAAC,WAAW,GAAG,WAAW,GAAG,WAAW,GAAG,WAAW,CAAC,CAAC;YACrF,MAAM;QACR,CAAC;QACD,KAAK,OAAO,CAAC,CAAC,CAAC;YACb,6CAA6C;YAC7C,gBAAgB,GAAG,CAAC,KAAK,CAAC,KAAK,GAAG,KAAK,CAAC,SAAS,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,GAAG,KAAK,CAAC,SAAS,CAAC,GAAG,CAAC,KAAK,CAAC,SAAS,GAAG,KAAK,CAAC,SAAS,CAAC,CAAC;YAC5H,MAAM;QACR,CAAC;IACH,CAAC;IAED,gBAAgB;IAChB,MAAM,SAAS,GAAG,gBAAgB,GAAG,MAAM,CAAC;IAE5C,wCAAwC;IACxC,MAAM,SAAS,GAAG,SAAS,GAAG,IAAI,CAAC;IAEnC,+CAA+C;IAC/C,mCAAmC;IACnC,MAAM,QAAQ,GAAG,CAAC,SAAS,GAAG,OAAO,CAAC,GAAG,IAAI,CAAC;IAE9C,OAAO;QACL,MAAM,EAAE,OAAO,CAAC,QAAQ,EAAE,CAAC,CAAC;QAC5B,MAAM,EAAE,OAAO,CAAC,SAAS,EAAE,CAAC,CAAC;QAC7B,OAAO;KACR,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import type { PipeSpecInput, PipeSpecResult } from './types.js';
|
|
2
|
+
/**
|
|
3
|
+
* Look up pipe specifications from ANSI/ASME standards
|
|
4
|
+
*
|
|
5
|
+
* @reference ASME B36.10M, ASME B36.19M
|
|
6
|
+
* @param input - Pipe standard, nominal size, and schedule
|
|
7
|
+
* @returns Pipe dimensions (OD, wall thickness, ID, weight, areas)
|
|
8
|
+
*/
|
|
9
|
+
export declare function pipeSpec(input: PipeSpecInput): PipeSpecResult;
|
|
10
|
+
//# sourceMappingURL=pipeSpec.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"pipeSpec.d.ts","sourceRoot":"","sources":["../../src/metal/pipeSpec.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,aAAa,EAAE,cAAc,EAAgB,MAAM,YAAY,CAAC;AAqD9E;;;;;;GAMG;AACH,wBAAgB,QAAQ,CAAC,KAAK,EAAE,aAAa,GAAG,cAAc,CAuD7D"}
|
|
@@ -0,0 +1,96 @@
|
|
|
1
|
+
import { roundTo } from '../utils.js';
|
|
2
|
+
/**
|
|
3
|
+
* ANSI B36.10/B36.19 pipe dimensions
|
|
4
|
+
* @reference ASME B36.10M, B36.19M
|
|
5
|
+
*/
|
|
6
|
+
const PIPE_DATA = {
|
|
7
|
+
// NPS (inch) → OD and wall thicknesses
|
|
8
|
+
'1/2': { od: 21.3, schedules: { SCH5: 1.65, SCH10: 2.11, SCH40: 2.77, SCH80: 3.73, SCH160: 4.78, XXS: 7.47 } },
|
|
9
|
+
'3/4': { od: 26.7, schedules: { SCH5: 1.65, SCH10: 2.11, SCH40: 2.87, SCH80: 3.91, SCH160: 5.56, XXS: 7.82 } },
|
|
10
|
+
'1': { od: 33.4, schedules: { SCH5: 1.65, SCH10: 2.77, SCH40: 3.38, SCH80: 4.55, SCH160: 6.35, XXS: 9.09 } },
|
|
11
|
+
'1-1/4': { od: 42.2, schedules: { SCH5: 1.65, SCH10: 2.77, SCH40: 3.56, SCH80: 4.85, SCH160: 6.35, XXS: 9.70 } },
|
|
12
|
+
'1-1/2': { od: 48.3, schedules: { SCH5: 1.65, SCH10: 2.77, SCH40: 3.68, SCH80: 5.08, SCH160: 7.14, XXS: 10.15 } },
|
|
13
|
+
'2': { od: 60.3, schedules: { SCH5: 1.65, SCH10: 2.77, SCH40: 3.91, SCH80: 5.54, SCH160: 8.74, XXS: 11.07 } },
|
|
14
|
+
'2-1/2': { od: 73.0, schedules: { SCH5: 2.11, SCH10: 3.05, SCH40: 5.16, SCH80: 7.01, SCH160: 9.53, XXS: 14.02 } },
|
|
15
|
+
'3': { od: 88.9, schedules: { SCH5: 2.11, SCH10: 3.05, SCH40: 5.49, SCH80: 7.62, SCH160: 11.13, XXS: 15.24 } },
|
|
16
|
+
'4': { od: 114.3, schedules: { SCH5: 2.11, SCH10: 3.05, SCH40: 6.02, SCH80: 8.56, SCH160: 13.49, XXS: 17.12 } },
|
|
17
|
+
'6': { od: 168.3, schedules: { SCH5: 2.77, SCH10: 3.40, SCH40: 7.11, SCH80: 10.97, SCH160: 18.26, XXS: 21.95 } },
|
|
18
|
+
'8': { od: 219.1, schedules: { SCH5: 2.77, SCH10: 3.76, SCH40: 8.18, SCH80: 12.70, SCH160: 23.01, XXS: 22.23 } },
|
|
19
|
+
'10': { od: 273.1, schedules: { SCH5: 3.40, SCH10: 4.19, SCH40: 9.27, SCH80: 15.09, SCH160: 28.58, XXS: 25.40 } },
|
|
20
|
+
'12': { od: 323.9, schedules: { SCH5: 3.96, SCH10: 4.57, SCH40: 10.31, SCH80: 17.48, SCH160: 33.32, XXS: 25.40 } },
|
|
21
|
+
'14': { od: 355.6, schedules: { SCH5: 3.96, SCH10: 4.78, SCH40: 11.13, SCH80: 19.05, SCH160: 35.71 } },
|
|
22
|
+
'16': { od: 406.4, schedules: { SCH5: 4.19, SCH10: 4.78, SCH40: 12.70, SCH80: 21.44, SCH160: 40.49 } },
|
|
23
|
+
};
|
|
24
|
+
/**
|
|
25
|
+
* DN to NPS mapping
|
|
26
|
+
*/
|
|
27
|
+
const DN_TO_NPS = {
|
|
28
|
+
'DN15': '1/2',
|
|
29
|
+
'DN20': '3/4',
|
|
30
|
+
'DN25': '1',
|
|
31
|
+
'DN32': '1-1/4',
|
|
32
|
+
'DN40': '1-1/2',
|
|
33
|
+
'DN50': '2',
|
|
34
|
+
'DN65': '2-1/2',
|
|
35
|
+
'DN80': '3',
|
|
36
|
+
'DN100': '4',
|
|
37
|
+
'DN150': '6',
|
|
38
|
+
'DN200': '8',
|
|
39
|
+
'DN250': '10',
|
|
40
|
+
'DN300': '12',
|
|
41
|
+
'DN350': '14',
|
|
42
|
+
'DN400': '16',
|
|
43
|
+
};
|
|
44
|
+
const STEEL_DENSITY = 7850; // kg/m³
|
|
45
|
+
/**
|
|
46
|
+
* Look up pipe specifications from ANSI/ASME standards
|
|
47
|
+
*
|
|
48
|
+
* @reference ASME B36.10M, ASME B36.19M
|
|
49
|
+
* @param input - Pipe standard, nominal size, and schedule
|
|
50
|
+
* @returns Pipe dimensions (OD, wall thickness, ID, weight, areas)
|
|
51
|
+
*/
|
|
52
|
+
export function pipeSpec(input) {
|
|
53
|
+
const { standard, nominalSize, schedule } = input;
|
|
54
|
+
// Normalize nominal size
|
|
55
|
+
let nps;
|
|
56
|
+
if (standard === 'DN') {
|
|
57
|
+
const dnKey = nominalSize.toUpperCase().replace(/\s/g, '');
|
|
58
|
+
nps = DN_TO_NPS[dnKey];
|
|
59
|
+
if (!nps) {
|
|
60
|
+
throw new Error(`Unknown DN size: ${nominalSize}`);
|
|
61
|
+
}
|
|
62
|
+
}
|
|
63
|
+
else {
|
|
64
|
+
// Remove quotes and clean up
|
|
65
|
+
nps = nominalSize.replace(/"/g, '').replace(/'/g, '').trim();
|
|
66
|
+
}
|
|
67
|
+
const pipeData = PIPE_DATA[nps];
|
|
68
|
+
if (!pipeData) {
|
|
69
|
+
throw new Error(`Unknown pipe size: ${nps}`);
|
|
70
|
+
}
|
|
71
|
+
const wallThickness = pipeData.schedules[schedule];
|
|
72
|
+
if (wallThickness == null) {
|
|
73
|
+
throw new Error(`Schedule ${schedule} not available for size ${nps}`);
|
|
74
|
+
}
|
|
75
|
+
const od = pipeData.od;
|
|
76
|
+
const id = roundTo(od - 2 * wallThickness, 2);
|
|
77
|
+
// Cross-section area of pipe wall (metal area)
|
|
78
|
+
const crossSectionArea = roundTo((Math.PI / 4) * (od * od - id * id), 2);
|
|
79
|
+
// Internal flow area
|
|
80
|
+
const internalArea = roundTo((Math.PI / 4) * id * id, 2);
|
|
81
|
+
// Weight per meter (kg/m) for carbon steel
|
|
82
|
+
// mass = density × volume = 7850 × (π/4)(OD² - ID²) × 1m
|
|
83
|
+
// Note: dimensions in mm, convert to m
|
|
84
|
+
const weightPerMeter = roundTo(STEEL_DENSITY * crossSectionArea * 1e-6, // mm² to m², per 1m length
|
|
85
|
+
2);
|
|
86
|
+
return {
|
|
87
|
+
nominalSize: nps,
|
|
88
|
+
outerDiameter: od,
|
|
89
|
+
wallThickness,
|
|
90
|
+
innerDiameter: id,
|
|
91
|
+
weightPerMeter,
|
|
92
|
+
crossSectionArea,
|
|
93
|
+
internalArea,
|
|
94
|
+
};
|
|
95
|
+
}
|
|
96
|
+
//# sourceMappingURL=pipeSpec.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"pipeSpec.js","sourceRoot":"","sources":["../../src/metal/pipeSpec.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pressFit.d.ts","sourceRoot":"","sources":["../../src/metal/pressFit.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"pressFit.d.ts","sourceRoot":"","sources":["../../src/metal/pressFit.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAEhE;;;;;;;;;;;GAWG;AACH,wBAAgB,QAAQ,CAAC,KAAK,EAAE,aAAa,GAAG,cAAc,CAoG7D"}
|
package/dist/metal/pressFit.js
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { roundTo } from '../utils.js';
|
|
1
2
|
/**
|
|
2
3
|
* Calculate press-fit (interference fit) parameters.
|
|
3
4
|
*
|
|
@@ -89,8 +90,4 @@ export function pressFit(input) {
|
|
|
89
90
|
shaftRadialStress: roundTo(shaftRadialStress, 2),
|
|
90
91
|
};
|
|
91
92
|
}
|
|
92
|
-
function roundTo(value, decimals) {
|
|
93
|
-
const factor = Math.pow(10, decimals);
|
|
94
|
-
return Math.round(value * factor) / factor;
|
|
95
|
-
}
|
|
96
93
|
//# sourceMappingURL=pressFit.js.map
|