formulab 0.1.11 → 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.
Files changed (332) hide show
  1. package/CHANGELOG.md +107 -10
  2. package/README.md +109 -17
  3. package/dist/automotive/brakingDistance.d.ts +16 -0
  4. package/dist/automotive/brakingDistance.d.ts.map +1 -0
  5. package/dist/automotive/brakingDistance.js +47 -0
  6. package/dist/automotive/brakingDistance.js.map +1 -0
  7. package/dist/automotive/index.d.ts +2 -1
  8. package/dist/automotive/index.d.ts.map +1 -1
  9. package/dist/automotive/index.js +1 -0
  10. package/dist/automotive/index.js.map +1 -1
  11. package/dist/automotive/types.d.ts +16 -0
  12. package/dist/automotive/types.d.ts.map +1 -1
  13. package/dist/battery/batteryPackConfig.d.ts +10 -0
  14. package/dist/battery/batteryPackConfig.d.ts.map +1 -0
  15. package/dist/battery/batteryPackConfig.js +28 -0
  16. package/dist/battery/batteryPackConfig.js.map +1 -0
  17. package/dist/battery/bmsBalancing.d.ts +11 -0
  18. package/dist/battery/bmsBalancing.d.ts.map +1 -0
  19. package/dist/battery/bmsBalancing.js +47 -0
  20. package/dist/battery/bmsBalancing.js.map +1 -0
  21. package/dist/battery/cRate.d.ts +10 -0
  22. package/dist/battery/cRate.d.ts.map +1 -0
  23. package/dist/battery/cRate.js +29 -0
  24. package/dist/battery/cRate.js.map +1 -0
  25. package/dist/battery/chargingProfile.d.ts +11 -0
  26. package/dist/battery/chargingProfile.d.ts.map +1 -0
  27. package/dist/battery/chargingProfile.js +38 -0
  28. package/dist/battery/chargingProfile.js.map +1 -0
  29. package/dist/battery/cycleLife.d.ts +11 -0
  30. package/dist/battery/cycleLife.d.ts.map +1 -0
  31. package/dist/battery/cycleLife.js +70 -0
  32. package/dist/battery/cycleLife.js.map +1 -0
  33. package/dist/battery/energyDensity.d.ts +10 -0
  34. package/dist/battery/energyDensity.d.ts.map +1 -0
  35. package/dist/battery/energyDensity.js +20 -0
  36. package/dist/battery/energyDensity.js.map +1 -0
  37. package/dist/battery/index.d.ts +12 -0
  38. package/dist/battery/index.d.ts.map +1 -0
  39. package/dist/battery/index.js +12 -0
  40. package/dist/battery/index.js.map +1 -0
  41. package/dist/battery/internalResistance.d.ts +11 -0
  42. package/dist/battery/internalResistance.d.ts.map +1 -0
  43. package/dist/battery/internalResistance.js +18 -0
  44. package/dist/battery/internalResistance.js.map +1 -0
  45. package/dist/battery/selfDischarge.d.ts +10 -0
  46. package/dist/battery/selfDischarge.d.ts.map +1 -0
  47. package/dist/battery/selfDischarge.js +17 -0
  48. package/dist/battery/selfDischarge.js.map +1 -0
  49. package/dist/battery/stateOfHealth.d.ts +11 -0
  50. package/dist/battery/stateOfHealth.d.ts.map +1 -0
  51. package/dist/battery/stateOfHealth.js +33 -0
  52. package/dist/battery/stateOfHealth.js.map +1 -0
  53. package/dist/battery/thermalRunaway.d.ts +11 -0
  54. package/dist/battery/thermalRunaway.d.ts.map +1 -0
  55. package/dist/battery/thermalRunaway.js +28 -0
  56. package/dist/battery/thermalRunaway.js.map +1 -0
  57. package/dist/battery/types.d.ts +175 -0
  58. package/dist/battery/types.d.ts.map +1 -0
  59. package/dist/battery/types.js +5 -0
  60. package/dist/battery/types.js.map +1 -0
  61. package/dist/chemical/dilution.d.ts.map +1 -1
  62. package/dist/chemical/dilution.js +21 -24
  63. package/dist/chemical/dilution.js.map +1 -1
  64. package/dist/chemical/heatTransfer.d.ts +16 -0
  65. package/dist/chemical/heatTransfer.d.ts.map +1 -0
  66. package/dist/chemical/heatTransfer.js +85 -0
  67. package/dist/chemical/heatTransfer.js.map +1 -0
  68. package/dist/chemical/index.d.ts +3 -1
  69. package/dist/chemical/index.d.ts.map +1 -1
  70. package/dist/chemical/index.js +2 -0
  71. package/dist/chemical/index.js.map +1 -1
  72. package/dist/chemical/pipeFlow.d.ts +17 -0
  73. package/dist/chemical/pipeFlow.d.ts.map +1 -0
  74. package/dist/chemical/pipeFlow.js +112 -0
  75. package/dist/chemical/pipeFlow.js.map +1 -0
  76. package/dist/chemical/reactor.js +2 -2
  77. package/dist/chemical/reactor.js.map +1 -1
  78. package/dist/chemical/types.d.ts +82 -10
  79. package/dist/chemical/types.d.ts.map +1 -1
  80. package/dist/construction/index.d.ts +2 -1
  81. package/dist/construction/index.d.ts.map +1 -1
  82. package/dist/construction/index.js +1 -0
  83. package/dist/construction/index.js.map +1 -1
  84. package/dist/construction/momentOfInertia.d.ts +17 -0
  85. package/dist/construction/momentOfInertia.d.ts.map +1 -0
  86. package/dist/construction/momentOfInertia.js +204 -0
  87. package/dist/construction/momentOfInertia.js.map +1 -0
  88. package/dist/construction/pert.d.ts.map +1 -1
  89. package/dist/construction/pert.js +1 -17
  90. package/dist/construction/pert.js.map +1 -1
  91. package/dist/construction/types.d.ts +50 -0
  92. package/dist/construction/types.d.ts.map +1 -1
  93. package/dist/electronics/index.d.ts +2 -1
  94. package/dist/electronics/index.d.ts.map +1 -1
  95. package/dist/electronics/index.js +1 -0
  96. package/dist/electronics/index.js.map +1 -1
  97. package/dist/electronics/ohmsLaw.d.ts +12 -0
  98. package/dist/electronics/ohmsLaw.d.ts.map +1 -0
  99. package/dist/electronics/ohmsLaw.js +69 -0
  100. package/dist/electronics/ohmsLaw.js.map +1 -0
  101. package/dist/electronics/types.d.ts +24 -0
  102. package/dist/electronics/types.d.ts.map +1 -1
  103. package/dist/energy/carbonFootprint.d.ts.map +1 -1
  104. package/dist/energy/carbonFootprint.js +2 -1
  105. package/dist/energy/carbonFootprint.js.map +1 -1
  106. package/dist/energy/index.d.ts +2 -1
  107. package/dist/energy/index.d.ts.map +1 -1
  108. package/dist/energy/index.js +1 -0
  109. package/dist/energy/index.js.map +1 -1
  110. package/dist/energy/powerCost.d.ts.map +1 -1
  111. package/dist/energy/powerCost.js +2 -1
  112. package/dist/energy/powerCost.js.map +1 -1
  113. package/dist/energy/solarOutput.d.ts +14 -0
  114. package/dist/energy/solarOutput.d.ts.map +1 -0
  115. package/dist/energy/solarOutput.js +54 -0
  116. package/dist/energy/solarOutput.js.map +1 -0
  117. package/dist/energy/types.d.ts +20 -0
  118. package/dist/energy/types.d.ts.map +1 -1
  119. package/dist/environmental/emissionsIntensity.d.ts +11 -0
  120. package/dist/environmental/emissionsIntensity.d.ts.map +1 -0
  121. package/dist/environmental/emissionsIntensity.js +26 -0
  122. package/dist/environmental/emissionsIntensity.js.map +1 -0
  123. package/dist/environmental/energyIntensity.d.ts +11 -0
  124. package/dist/environmental/energyIntensity.d.ts.map +1 -0
  125. package/dist/environmental/energyIntensity.js +19 -0
  126. package/dist/environmental/energyIntensity.js.map +1 -0
  127. package/dist/environmental/esgSummary.d.ts +11 -0
  128. package/dist/environmental/esgSummary.d.ts.map +1 -0
  129. package/dist/environmental/esgSummary.js +39 -0
  130. package/dist/environmental/esgSummary.js.map +1 -0
  131. package/dist/environmental/gwpCalculator.d.ts +11 -0
  132. package/dist/environmental/gwpCalculator.d.ts.map +1 -0
  133. package/dist/environmental/gwpCalculator.js +31 -0
  134. package/dist/environmental/gwpCalculator.js.map +1 -0
  135. package/dist/environmental/index.d.ts +12 -0
  136. package/dist/environmental/index.d.ts.map +1 -0
  137. package/dist/environmental/index.js +12 -0
  138. package/dist/environmental/index.js.map +1 -0
  139. package/dist/environmental/productCarbonFootprint.d.ts +11 -0
  140. package/dist/environmental/productCarbonFootprint.d.ts.map +1 -0
  141. package/dist/environmental/productCarbonFootprint.js +29 -0
  142. package/dist/environmental/productCarbonFootprint.js.map +1 -0
  143. package/dist/environmental/scope1Emissions.d.ts +11 -0
  144. package/dist/environmental/scope1Emissions.d.ts.map +1 -0
  145. package/dist/environmental/scope1Emissions.js +35 -0
  146. package/dist/environmental/scope1Emissions.js.map +1 -0
  147. package/dist/environmental/scope2Emissions.d.ts +11 -0
  148. package/dist/environmental/scope2Emissions.d.ts.map +1 -0
  149. package/dist/environmental/scope2Emissions.js +49 -0
  150. package/dist/environmental/scope2Emissions.js.map +1 -0
  151. package/dist/environmental/scope3Emissions.d.ts +11 -0
  152. package/dist/environmental/scope3Emissions.d.ts.map +1 -0
  153. package/dist/environmental/scope3Emissions.js +36 -0
  154. package/dist/environmental/scope3Emissions.js.map +1 -0
  155. package/dist/environmental/types.d.ts +165 -0
  156. package/dist/environmental/types.d.ts.map +1 -0
  157. package/dist/environmental/types.js +5 -0
  158. package/dist/environmental/types.js.map +1 -0
  159. package/dist/environmental/vocEmissions.d.ts +11 -0
  160. package/dist/environmental/vocEmissions.d.ts.map +1 -0
  161. package/dist/environmental/vocEmissions.js +23 -0
  162. package/dist/environmental/vocEmissions.js.map +1 -0
  163. package/dist/environmental/waterFootprint.d.ts +11 -0
  164. package/dist/environmental/waterFootprint.d.ts.map +1 -0
  165. package/dist/environmental/waterFootprint.js +21 -0
  166. package/dist/environmental/waterFootprint.js.map +1 -0
  167. package/dist/index.d.ts +3 -0
  168. package/dist/index.d.ts.map +1 -1
  169. package/dist/index.js +3 -0
  170. package/dist/index.js.map +1 -1
  171. package/dist/logistics/cbm.d.ts +7 -2
  172. package/dist/logistics/cbm.d.ts.map +1 -1
  173. package/dist/logistics/cbm.js +7 -2
  174. package/dist/logistics/cbm.js.map +1 -1
  175. package/dist/logistics/fillRate.d.ts.map +1 -1
  176. package/dist/logistics/fillRate.js +1 -17
  177. package/dist/logistics/fillRate.js.map +1 -1
  178. package/dist/logistics/safetyStock.d.ts.map +1 -1
  179. package/dist/logistics/safetyStock.js +2 -55
  180. package/dist/logistics/safetyStock.js.map +1 -1
  181. package/dist/machining/boltCircle.d.ts +16 -0
  182. package/dist/machining/boltCircle.d.ts.map +1 -0
  183. package/dist/machining/boltCircle.js +36 -0
  184. package/dist/machining/boltCircle.js.map +1 -0
  185. package/dist/machining/boringBarDeflection.d.ts +17 -0
  186. package/dist/machining/boringBarDeflection.d.ts.map +1 -0
  187. package/dist/machining/boringBarDeflection.js +54 -0
  188. package/dist/machining/boringBarDeflection.js.map +1 -0
  189. package/dist/machining/cuspHeight.d.ts +15 -0
  190. package/dist/machining/cuspHeight.d.ts.map +1 -0
  191. package/dist/machining/cuspHeight.js +23 -0
  192. package/dist/machining/cuspHeight.js.map +1 -0
  193. package/dist/machining/cycleTimeEstimator.d.ts +18 -0
  194. package/dist/machining/cycleTimeEstimator.d.ts.map +1 -0
  195. package/dist/machining/cycleTimeEstimator.js +62 -0
  196. package/dist/machining/cycleTimeEstimator.js.map +1 -0
  197. package/dist/machining/effectiveDiameter.d.ts +17 -0
  198. package/dist/machining/effectiveDiameter.d.ts.map +1 -0
  199. package/dist/machining/effectiveDiameter.js +24 -0
  200. package/dist/machining/effectiveDiameter.js.map +1 -0
  201. package/dist/machining/gaugeBlockStack.d.ts +16 -0
  202. package/dist/machining/gaugeBlockStack.d.ts.map +1 -0
  203. package/dist/machining/gaugeBlockStack.js +138 -0
  204. package/dist/machining/gaugeBlockStack.js.map +1 -0
  205. package/dist/machining/index.d.ts +14 -0
  206. package/dist/machining/index.d.ts.map +1 -0
  207. package/dist/machining/index.js +14 -0
  208. package/dist/machining/index.js.map +1 -0
  209. package/dist/machining/radialChipThinning.d.ts +18 -0
  210. package/dist/machining/radialChipThinning.d.ts.map +1 -0
  211. package/dist/machining/radialChipThinning.js +30 -0
  212. package/dist/machining/radialChipThinning.js.map +1 -0
  213. package/dist/machining/sineBarHeight.d.ts +16 -0
  214. package/dist/machining/sineBarHeight.d.ts.map +1 -0
  215. package/dist/machining/sineBarHeight.js +32 -0
  216. package/dist/machining/sineBarHeight.js.map +1 -0
  217. package/dist/machining/threadOverWires.d.ts +21 -0
  218. package/dist/machining/threadOverWires.d.ts.map +1 -0
  219. package/dist/machining/threadOverWires.js +54 -0
  220. package/dist/machining/threadOverWires.js.map +1 -0
  221. package/dist/machining/toolDeflection.d.ts +16 -0
  222. package/dist/machining/toolDeflection.d.ts.map +1 -0
  223. package/dist/machining/toolDeflection.js +36 -0
  224. package/dist/machining/toolDeflection.js.map +1 -0
  225. package/dist/machining/triangleSolver.d.ts +21 -0
  226. package/dist/machining/triangleSolver.d.ts.map +1 -0
  227. package/dist/machining/triangleSolver.js +120 -0
  228. package/dist/machining/triangleSolver.js.map +1 -0
  229. package/dist/machining/truePosition.d.ts +19 -0
  230. package/dist/machining/truePosition.d.ts.map +1 -0
  231. package/dist/machining/truePosition.js +44 -0
  232. package/dist/machining/truePosition.js.map +1 -0
  233. package/dist/machining/types.d.ts +201 -0
  234. package/dist/machining/types.d.ts.map +1 -0
  235. package/dist/machining/types.js +2 -0
  236. package/dist/machining/types.js.map +1 -0
  237. package/dist/math.d.ts +26 -0
  238. package/dist/math.d.ts.map +1 -0
  239. package/dist/math.js +95 -0
  240. package/dist/math.js.map +1 -0
  241. package/dist/metal/bendAllowance.d.ts.map +1 -1
  242. package/dist/metal/bendAllowance.js +2 -1
  243. package/dist/metal/bendAllowance.js.map +1 -1
  244. package/dist/metal/bolt.d.ts.map +1 -1
  245. package/dist/metal/bolt.js +3 -3
  246. package/dist/metal/bolt.js.map +1 -1
  247. package/dist/metal/flangeSpec.d.ts +10 -0
  248. package/dist/metal/flangeSpec.d.ts.map +1 -0
  249. package/dist/metal/flangeSpec.js +81 -0
  250. package/dist/metal/flangeSpec.js.map +1 -0
  251. package/dist/metal/index.d.ts +4 -1
  252. package/dist/metal/index.d.ts.map +1 -1
  253. package/dist/metal/index.js +3 -0
  254. package/dist/metal/index.js.map +1 -1
  255. package/dist/metal/materialGradeConverter.d.ts +10 -0
  256. package/dist/metal/materialGradeConverter.d.ts.map +1 -0
  257. package/dist/metal/materialGradeConverter.js +78 -0
  258. package/dist/metal/materialGradeConverter.js.map +1 -0
  259. package/dist/metal/metalWeight.d.ts +13 -3
  260. package/dist/metal/metalWeight.d.ts.map +1 -1
  261. package/dist/metal/metalWeight.js +24 -35
  262. package/dist/metal/metalWeight.js.map +1 -1
  263. package/dist/metal/pipeSpec.d.ts +10 -0
  264. package/dist/metal/pipeSpec.d.ts.map +1 -0
  265. package/dist/metal/pipeSpec.js +96 -0
  266. package/dist/metal/pipeSpec.js.map +1 -0
  267. package/dist/metal/roughness.js +1 -1
  268. package/dist/metal/roughness.js.map +1 -1
  269. package/dist/metal/types.d.ts +86 -13
  270. package/dist/metal/types.d.ts.map +1 -1
  271. package/dist/metal/weldHeat.js +1 -1
  272. package/dist/metal/weldHeat.js.map +1 -1
  273. package/dist/metal/welding.d.ts.map +1 -1
  274. package/dist/metal/welding.js +3 -2
  275. package/dist/metal/welding.js.map +1 -1
  276. package/dist/quality/controlChart.d.ts +26 -0
  277. package/dist/quality/controlChart.d.ts.map +1 -0
  278. package/dist/quality/controlChart.js +216 -0
  279. package/dist/quality/controlChart.js.map +1 -0
  280. package/dist/quality/cpk.d.ts +16 -4
  281. package/dist/quality/cpk.d.ts.map +1 -1
  282. package/dist/quality/cpk.js +16 -4
  283. package/dist/quality/cpk.js.map +1 -1
  284. package/dist/quality/dpmo.d.ts.map +1 -1
  285. package/dist/quality/dpmo.js +1 -61
  286. package/dist/quality/dpmo.js.map +1 -1
  287. package/dist/quality/index.d.ts +2 -1
  288. package/dist/quality/index.d.ts.map +1 -1
  289. package/dist/quality/index.js +1 -0
  290. package/dist/quality/index.js.map +1 -1
  291. package/dist/quality/oee.d.ts +12 -1
  292. package/dist/quality/oee.d.ts.map +1 -1
  293. package/dist/quality/oee.js +21 -9
  294. package/dist/quality/oee.js.map +1 -1
  295. package/dist/quality/ppk.d.ts.map +1 -1
  296. package/dist/quality/ppk.js +1 -16
  297. package/dist/quality/ppk.js.map +1 -1
  298. package/dist/quality/ppm.d.ts.map +1 -1
  299. package/dist/quality/ppm.js +1 -80
  300. package/dist/quality/ppm.js.map +1 -1
  301. package/dist/quality/types.d.ts +31 -0
  302. package/dist/quality/types.d.ts.map +1 -1
  303. package/dist/safety/fallClearance.d.ts.map +1 -1
  304. package/dist/safety/fallClearance.js +5 -4
  305. package/dist/safety/fallClearance.js.map +1 -1
  306. package/dist/safety/index.d.ts +2 -1
  307. package/dist/safety/index.d.ts.map +1 -1
  308. package/dist/safety/index.js +1 -0
  309. package/dist/safety/index.js.map +1 -1
  310. package/dist/safety/nioshLifting.d.ts +19 -10
  311. package/dist/safety/nioshLifting.d.ts.map +1 -1
  312. package/dist/safety/nioshLifting.js +19 -10
  313. package/dist/safety/nioshLifting.js.map +1 -1
  314. package/dist/safety/types.d.ts +19 -0
  315. package/dist/safety/types.d.ts.map +1 -1
  316. package/dist/safety/ventilationRate.d.ts +12 -0
  317. package/dist/safety/ventilationRate.d.ts.map +1 -0
  318. package/dist/safety/ventilationRate.js +71 -0
  319. package/dist/safety/ventilationRate.js.map +1 -0
  320. package/dist/utility/index.d.ts +1 -1
  321. package/dist/utility/index.d.ts.map +1 -1
  322. package/dist/utility/types.d.ts +0 -16
  323. package/dist/utility/types.d.ts.map +1 -1
  324. package/dist/utils.d.ts +3 -2
  325. package/dist/utils.d.ts.map +1 -1
  326. package/dist/utils.js +6 -4
  327. package/dist/utils.js.map +1 -1
  328. package/package.json +34 -3
  329. package/dist/utility/qrcode.d.ts +0 -30
  330. package/dist/utility/qrcode.d.ts.map +0 -1
  331. package/dist/utility/qrcode.js +0 -30
  332. package/dist/utility/qrcode.js.map +0 -1
@@ -40,13 +40,27 @@ export interface ConcentrationResult {
40
40
  * Dilution Calculator Types
41
41
  */
42
42
  export type DilutionSolveFor = 'c2' | 'v2' | 'c1' | 'v1';
43
- export interface DilutionInput {
44
- solveFor: DilutionSolveFor;
45
- c1?: number;
46
- v1?: number;
47
- c2?: number;
48
- v2?: number;
49
- }
43
+ export type DilutionInput = {
44
+ solveFor: 'c1';
45
+ v1: number;
46
+ c2: number;
47
+ v2: number;
48
+ } | {
49
+ solveFor: 'v1';
50
+ c1: number;
51
+ c2: number;
52
+ v2: number;
53
+ } | {
54
+ solveFor: 'c2';
55
+ c1: number;
56
+ v1: number;
57
+ v2: number;
58
+ } | {
59
+ solveFor: 'v2';
60
+ c1: number;
61
+ v1: number;
62
+ c2: number;
63
+ };
50
64
  export interface DilutionResult {
51
65
  c1: number;
52
66
  v1: number;
@@ -78,13 +92,17 @@ export interface PhResult {
78
92
  * Reactor Volume Calculator Types
79
93
  */
80
94
  export type ReactorShape = 'cylindrical' | 'spherical';
81
- export interface ReactorInput {
82
- shape: ReactorShape;
95
+ interface ReactorBase {
83
96
  diameter: number;
84
- height?: number;
85
97
  fillRatio: number;
86
98
  agitatorType?: 'none' | 'anchor' | 'turbine' | 'propeller';
87
99
  }
100
+ export type ReactorInput = ReactorBase & ({
101
+ shape: 'cylindrical';
102
+ height: number;
103
+ } | {
104
+ shape: 'spherical';
105
+ });
88
106
  export interface ReactorResult {
89
107
  totalVolume: number;
90
108
  workingVolume: number;
@@ -93,6 +111,59 @@ export interface ReactorResult {
93
111
  surfaceArea: number;
94
112
  volumeToSurfaceRatio: number;
95
113
  }
114
+ /**
115
+ * Heat Transfer Calculator Types
116
+ */
117
+ export type HeatTransferMode = 'conduction' | 'convection' | 'radiation';
118
+ export type HeatTransferInput = {
119
+ mode: 'conduction';
120
+ conductivity: number;
121
+ area: number;
122
+ thickness: number;
123
+ tempHot: number;
124
+ tempCold: number;
125
+ } | {
126
+ mode: 'convection';
127
+ coefficient: number;
128
+ area: number;
129
+ tempSurface: number;
130
+ tempFluid: number;
131
+ } | {
132
+ mode: 'radiation';
133
+ emissivity: number;
134
+ area: number;
135
+ tempHot: number;
136
+ tempCold: number;
137
+ };
138
+ export interface HeatTransferResult {
139
+ heatRate: number;
140
+ heatFluxDensity: number;
141
+ tempDifference: number;
142
+ thermalResistance: number;
143
+ }
144
+ /**
145
+ * Pipe Flow Calculator Types (Darcy-Weisbach + Swamee-Jain)
146
+ */
147
+ export type PipeMaterial = 'commercialSteel' | 'stainlessSteel' | 'castIron' | 'copper' | 'pvc' | 'concrete' | 'galvanizedSteel' | 'custom';
148
+ export interface PipeFlowInput {
149
+ flowRate: number;
150
+ pipeDiameter: number;
151
+ pipeLength: number;
152
+ pipeMaterial: PipeMaterial;
153
+ fluidDensity: number;
154
+ fluidViscosity: number;
155
+ customRoughness?: number;
156
+ }
157
+ export interface PipeFlowResult {
158
+ velocity: number;
159
+ reynoldsNumber: number;
160
+ flowRegime: 'laminar' | 'transitional' | 'turbulent';
161
+ frictionFactor: number;
162
+ pressureDrop: number;
163
+ pressureDropKpa: number;
164
+ pressureDropBar: number;
165
+ headLoss: number;
166
+ }
96
167
  /**
97
168
  * Shelf Life Calculator Types
98
169
  */
@@ -141,4 +212,5 @@ export interface InjectionCycleResult {
141
212
  partsPerHour: number;
142
213
  breakdown: InjectionCyclePhase[];
143
214
  }
215
+ export {};
144
216
  //# sourceMappingURL=types.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/chemical/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/chemical/types.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;CACd;AAED,MAAM,WAAW,UAAU;IACzB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,eAAe,EAAE,MAAM,CAAC;IACxB,WAAW,EAAE,eAAe,EAAE,CAAC;CAChC;AAED,MAAM,WAAW,gBAAgB;IAC/B,IAAI,EAAE,MAAM,CAAC;IACb,cAAc,EAAE,MAAM,CAAC;IACvB,YAAY,EAAE,MAAM,CAAC;IACrB,IAAI,EAAE,MAAM,CAAC;CACd;AAED,MAAM,WAAW,WAAW;IAC1B,WAAW,EAAE,MAAM,CAAC;IACpB,iBAAiB,EAAE,gBAAgB,EAAE,CAAC;CACvC;AAED;;GAEG;AACH,MAAM,MAAM,iBAAiB,GAAG,SAAS,GAAG,WAAW,GAAG,KAAK,CAAC;AAEhE,MAAM,WAAW,kBAAkB;IACjC,QAAQ,EAAE,iBAAiB,CAAC;IAC5B,KAAK,EAAE,MAAM,CAAC;IACd,eAAe,EAAE,MAAM,CAAC;IACxB,eAAe,EAAE,MAAM,CAAC;CACzB;AAED,MAAM,WAAW,mBAAmB;IAClC,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,GAAG,EAAE,MAAM,CAAC;CACb;AAED;;GAEG;AACH,MAAM,MAAM,gBAAgB,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,CAAC;AAEzD,MAAM,MAAM,aAAa,GACrB;IAAE,QAAQ,EAAE,IAAI,CAAC;IAAC,EAAE,EAAE,MAAM,CAAC;IAAC,EAAE,EAAE,MAAM,CAAC;IAAC,EAAE,EAAE,MAAM,CAAA;CAAE,GACtD;IAAE,QAAQ,EAAE,IAAI,CAAC;IAAC,EAAE,EAAE,MAAM,CAAC;IAAC,EAAE,EAAE,MAAM,CAAC;IAAC,EAAE,EAAE,MAAM,CAAA;CAAE,GACtD;IAAE,QAAQ,EAAE,IAAI,CAAC;IAAC,EAAE,EAAE,MAAM,CAAC;IAAC,EAAE,EAAE,MAAM,CAAC;IAAC,EAAE,EAAE,MAAM,CAAA;CAAE,GACtD;IAAE,QAAQ,EAAE,IAAI,CAAC;IAAC,EAAE,EAAE,MAAM,CAAC;IAAC,EAAE,EAAE,MAAM,CAAC;IAAC,EAAE,EAAE,MAAM,CAAA;CAAE,CAAC;AAE3D,MAAM,WAAW,cAAc;IAC7B,EAAE,EAAE,MAAM,CAAC;IACX,EAAE,EAAE,MAAM,CAAC;IACX,EAAE,EAAE,MAAM,CAAC;IACX,EAAE,EAAE,MAAM,CAAC;IACX,YAAY,EAAE,MAAM,CAAC;CACtB;AAED;;GAEG;AACH,MAAM,MAAM,YAAY,GAAG,SAAS,GAAG,WAAW,GAAG,MAAM,GAAG,SAAS,GAAG,WAAW,GAAG,QAAQ,CAAC;AAEjG,MAAM,WAAW,OAAO;IACtB,YAAY,EAAE,YAAY,CAAC;IAC3B,iBAAiB,EAAE,MAAM,CAAC;IAC1B,iBAAiB,EAAE,MAAM,CAAC;IAC1B,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,QAAQ;IACvB,EAAE,EAAE,MAAM,CAAC;IACX,GAAG,EAAE,MAAM,CAAC;IACZ,cAAc,EAAE,MAAM,CAAC;IACvB,cAAc,EAAE;QAAE,GAAG,EAAE,MAAM,CAAC;QAAC,GAAG,EAAE,MAAM,CAAA;KAAE,CAAC;CAC9C;AAED;;GAEG;AACH,MAAM,MAAM,YAAY,GAAG,aAAa,GAAG,WAAW,CAAC;AAEvD,UAAU,WAAW;IACnB,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,YAAY,CAAC,EAAE,MAAM,GAAG,QAAQ,GAAG,SAAS,GAAG,WAAW,CAAC;CAC5D;AAED,MAAM,MAAM,YAAY,GAAG,WAAW,GAAG,CACrC;IAAE,KAAK,EAAE,aAAa,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,GACxC;IAAE,KAAK,EAAE,WAAW,CAAA;CAAE,CACzB,CAAC;AAEF,MAAM,WAAW,aAAa;IAC5B,WAAW,EAAE,MAAM,CAAC;IACpB,aAAa,EAAE,MAAM,CAAC;IACtB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,mBAAmB,EAAE,MAAM,CAAC;IAC5B,WAAW,EAAE,MAAM,CAAC;IACpB,oBAAoB,EAAE,MAAM,CAAC;CAC9B;AAED;;GAEG;AACH,MAAM,MAAM,gBAAgB,GAAG,YAAY,GAAG,YAAY,GAAG,WAAW,CAAC;AAEzE,MAAM,MAAM,iBAAiB,GACzB;IAAE,IAAI,EAAE,YAAY,CAAC;IAAC,YAAY,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAA;CAAE,GAChH;IAAE,IAAI,EAAE,YAAY,CAAC;IAAC,WAAW,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,WAAW,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAA;CAAE,GACjG;IAAE,IAAI,EAAE,WAAW,CAAC;IAAC,UAAU,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAA;CAAE,CAAC;AAE/F,MAAM,WAAW,kBAAkB;IACjC,QAAQ,EAAE,MAAM,CAAC;IACjB,eAAe,EAAE,MAAM,CAAC;IACxB,cAAc,EAAE,MAAM,CAAC;IACvB,iBAAiB,EAAE,MAAM,CAAC;CAC3B;AAED;;GAEG;AACH,MAAM,MAAM,YAAY,GAAG,iBAAiB,GAAG,gBAAgB,GAAG,UAAU,GAAG,QAAQ,GAAG,KAAK,GAAG,UAAU,GAAG,iBAAiB,GAAG,QAAQ,CAAC;AAE5I,MAAM,WAAW,aAAa;IAC5B,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,EAAE,MAAM,CAAC;IACrB,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,EAAE,YAAY,CAAC;IAC3B,YAAY,EAAE,MAAM,CAAC;IACrB,cAAc,EAAE,MAAM,CAAC;IACvB,eAAe,CAAC,EAAE,MAAM,CAAC;CAC1B;AAED,MAAM,WAAW,cAAc;IAC7B,QAAQ,EAAE,MAAM,CAAC;IACjB,cAAc,EAAE,MAAM,CAAC;IACvB,UAAU,EAAE,SAAS,GAAG,cAAc,GAAG,WAAW,CAAC;IACrD,cAAc,EAAE,MAAM,CAAC;IACvB,YAAY,EAAE,MAAM,CAAC;IACrB,eAAe,EAAE,MAAM,CAAC;IACxB,eAAe,EAAE,MAAM,CAAC;IACxB,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B,cAAc,EAAE,MAAM,CAAC;IACvB,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,MAAM,CAAC;IACnB,GAAG,EAAE,MAAM,CAAC;CACb;AAED,MAAM,WAAW,eAAe;IAC9B,kBAAkB,EAAE,MAAM,CAAC;IAC3B,kBAAkB,EAAE,MAAM,CAAC;IAC3B,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,MAAM,CAAC;IACnB,cAAc,EAAE,MAAM,CAAC;CACxB;AAED;;GAEG;AACH,MAAM,MAAM,SAAS,GAAG,KAAK,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,MAAM,GAAG,KAAK,GAAG,KAAK,GAAG,IAAI,GAAG,QAAQ,CAAC;AAE9F,MAAM,WAAW,mBAAmB;IAClC,KAAK,EAAE,SAAS,CAAC;IACjB,aAAa,EAAE,MAAM,CAAC;IACtB,UAAU,EAAE,MAAM,CAAC;IACnB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,YAAY,CAAC,EAAE,MAAM,CAAC;IAEtB,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,mBAAmB;IAClC,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,oBAAoB;IACnC,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,MAAM,CAAC;IACpB,aAAa,EAAE,MAAM,CAAC;IACtB,YAAY,EAAE,MAAM,CAAC;IACrB,cAAc,EAAE,MAAM,CAAC;IACvB,YAAY,EAAE,MAAM,CAAC;IACrB,SAAS,EAAE,mBAAmB,EAAE,CAAC;CAClC"}
@@ -1,4 +1,5 @@
1
- export type { LoadType, BeamSupport, LoadInput, LoadResult, ConcreteGrade, ConcreteInput, ConcreteResult, EarthworkInput, EarthworkResult, ElementType, FormworkInput, FormworkResult, RebarSize, RebarInput, RebarResult, SlopeUnit, SlopeInput, SlopeResult, AggregateType, AggregateDensity, AggregateInput, AggregateResult, BrickSize, BrickDimensions, BrickInput, BrickResult, PertTask, PertInput, PertTaskResult, PertResult, RoofInput, RoofResult, StairInput, StairResult, } from './types.js';
1
+ export type { SectionShape, MomentOfInertiaInput, MomentOfInertiaResult, LoadType, BeamSupport, LoadInput, LoadResult, ConcreteGrade, ConcreteInput, ConcreteResult, EarthworkInput, EarthworkResult, ElementType, FormworkInput, FormworkResult, RebarSize, RebarInput, RebarResult, SlopeUnit, SlopeInput, SlopeResult, AggregateType, AggregateDensity, AggregateInput, AggregateResult, BrickSize, BrickDimensions, BrickInput, BrickResult, PertTask, PertInput, PertTaskResult, PertResult, RoofInput, RoofResult, StairInput, StairResult, } from './types.js';
2
+ export { momentOfInertia } from './momentOfInertia.js';
2
3
  export { beamLoad } from './beamLoad.js';
3
4
  export { concreteMix } from './concreteMix.js';
4
5
  export { earthwork } from './earthwork.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/construction/index.ts"],"names":[],"mappings":"AACA,YAAY,EAEV,QAAQ,EACR,WAAW,EACX,SAAS,EACT,UAAU,EAEV,aAAa,EACb,aAAa,EACb,cAAc,EAEd,cAAc,EACd,eAAe,EAEf,WAAW,EACX,aAAa,EACb,cAAc,EAEd,SAAS,EACT,UAAU,EACV,WAAW,EAEX,SAAS,EACT,UAAU,EACV,WAAW,EAEX,aAAa,EACb,gBAAgB,EAChB,cAAc,EACd,eAAe,EAEf,SAAS,EACT,eAAe,EACf,UAAU,EACV,WAAW,EAEX,QAAQ,EACR,SAAS,EACT,cAAc,EACd,UAAU,EAEV,SAAS,EACT,UAAU,EAEV,UAAU,EACV,WAAW,GACZ,MAAM,YAAY,CAAC;AAGpB,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAC3C,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,WAAW,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AAC7D,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AACnC,OAAO,EAAE,SAAS,EAAE,iBAAiB,EAAE,mBAAmB,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AACxG,OAAO,EAAE,KAAK,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAChD,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/construction/index.ts"],"names":[],"mappings":"AACA,YAAY,EAEV,YAAY,EACZ,oBAAoB,EACpB,qBAAqB,EAErB,QAAQ,EACR,WAAW,EACX,SAAS,EACT,UAAU,EAEV,aAAa,EACb,aAAa,EACb,cAAc,EAEd,cAAc,EACd,eAAe,EAEf,WAAW,EACX,aAAa,EACb,cAAc,EAEd,SAAS,EACT,UAAU,EACV,WAAW,EAEX,SAAS,EACT,UAAU,EACV,WAAW,EAEX,aAAa,EACb,gBAAgB,EAChB,cAAc,EACd,eAAe,EAEf,SAAS,EACT,eAAe,EACf,UAAU,EACV,WAAW,EAEX,QAAQ,EACR,SAAS,EACT,cAAc,EACd,UAAU,EAEV,SAAS,EACT,UAAU,EAEV,UAAU,EACV,WAAW,GACZ,MAAM,YAAY,CAAC;AAGpB,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AACvD,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAC3C,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,WAAW,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AAC7D,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AACnC,OAAO,EAAE,SAAS,EAAE,iBAAiB,EAAE,mBAAmB,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AACxG,OAAO,EAAE,KAAK,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAChD,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC"}
@@ -1,4 +1,5 @@
1
1
  // Functions
2
+ export { momentOfInertia } from './momentOfInertia.js';
2
3
  export { beamLoad } from './beamLoad.js';
3
4
  export { concreteMix } from './concreteMix.js';
4
5
  export { earthwork } from './earthwork.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/construction/index.ts"],"names":[],"mappings":"AAiDA,YAAY;AACZ,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAC3C,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,WAAW,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AAC7D,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AACnC,OAAO,EAAE,SAAS,EAAE,iBAAiB,EAAE,mBAAmB,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AACxG,OAAO,EAAE,KAAK,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAChD,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/construction/index.ts"],"names":[],"mappings":"AAqDA,YAAY;AACZ,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AACvD,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAC3C,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,WAAW,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AAC7D,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AACnC,OAAO,EAAE,SAAS,EAAE,iBAAiB,EAAE,mBAAmB,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AACxG,OAAO,EAAE,KAAK,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAChD,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC"}
@@ -0,0 +1,17 @@
1
+ import type { MomentOfInertiaInput, MomentOfInertiaResult } from './types.js';
2
+ /**
3
+ * Moment of Inertia (Section Properties) Calculator
4
+ *
5
+ * Calculates area, second moment of area (Ix, Iy), section modulus (Sx, Sy),
6
+ * and radius of gyration (rx, ry) for common structural cross-sections.
7
+ *
8
+ * All dimensions in mm; results in mm², mm⁴, mm³, mm.
9
+ *
10
+ * Formulas from: Timoshenko "Mechanics of Materials", AISC Steel Manual,
11
+ * Roark's "Formulas for Stress and Strain"
12
+ *
13
+ * @param input - discriminated union by `shape`
14
+ * @returns section properties
15
+ */
16
+ export declare function momentOfInertia(input: MomentOfInertiaInput): MomentOfInertiaResult;
17
+ //# sourceMappingURL=momentOfInertia.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"momentOfInertia.d.ts","sourceRoot":"","sources":["../../src/construction/momentOfInertia.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,oBAAoB,EAAE,qBAAqB,EAAE,MAAM,YAAY,CAAC;AAE9E;;;;;;;;;;;;;GAaG;AACH,wBAAgB,eAAe,CAAC,KAAK,EAAE,oBAAoB,GAAG,qBAAqB,CAiBlF"}
@@ -0,0 +1,204 @@
1
+ import { roundTo } from '../utils.js';
2
+ /**
3
+ * Moment of Inertia (Section Properties) Calculator
4
+ *
5
+ * Calculates area, second moment of area (Ix, Iy), section modulus (Sx, Sy),
6
+ * and radius of gyration (rx, ry) for common structural cross-sections.
7
+ *
8
+ * All dimensions in mm; results in mm², mm⁴, mm³, mm.
9
+ *
10
+ * Formulas from: Timoshenko "Mechanics of Materials", AISC Steel Manual,
11
+ * Roark's "Formulas for Stress and Strain"
12
+ *
13
+ * @param input - discriminated union by `shape`
14
+ * @returns section properties
15
+ */
16
+ export function momentOfInertia(input) {
17
+ switch (input.shape) {
18
+ case 'rectangle':
19
+ return calcRectangle(input.width, input.height);
20
+ case 'circle':
21
+ return calcCircle(input.diameter);
22
+ case 'hollowRectangle':
23
+ return calcHollowRectangle(input.outerWidth, input.outerHeight, input.innerWidth, input.innerHeight);
24
+ case 'hollowCircle':
25
+ return calcHollowCircle(input.outerDiameter, input.innerDiameter);
26
+ case 'iBeam':
27
+ return calcIBeam(input.flangeWidth, input.totalHeight, input.webThickness, input.flangeThickness);
28
+ case 'tSection':
29
+ return calcTSection(input.flangeWidth, input.flangeThickness, input.webThickness, input.webHeight);
30
+ case 'cChannel':
31
+ return calcCChannel(input.flangeWidth, input.totalHeight, input.webThickness, input.flangeThickness);
32
+ }
33
+ }
34
+ function roundResult(r) {
35
+ return {
36
+ area: roundTo(r.area, 2),
37
+ Ix: roundTo(r.Ix, 2),
38
+ Iy: roundTo(r.Iy, 2),
39
+ Sx: roundTo(r.Sx, 2),
40
+ Sy: roundTo(r.Sy, 2),
41
+ rx: roundTo(r.rx, 2),
42
+ ry: roundTo(r.ry, 2),
43
+ centroidY: roundTo(r.centroidY, 2),
44
+ };
45
+ }
46
+ /** Solid Rectangle: I_x = bh³/12, I_y = hb³/12 */
47
+ function calcRectangle(b, h) {
48
+ if (b <= 0 || h <= 0)
49
+ throw new Error('Dimensions must be positive');
50
+ const area = b * h;
51
+ const Ix = (b * h * h * h) / 12;
52
+ const Iy = (h * b * b * b) / 12;
53
+ const Sx = (b * h * h) / 6;
54
+ const Sy = (h * b * b) / 6;
55
+ return roundResult({
56
+ area, Ix, Iy, Sx, Sy,
57
+ rx: Math.sqrt(Ix / area),
58
+ ry: Math.sqrt(Iy / area),
59
+ centroidY: h / 2,
60
+ });
61
+ }
62
+ /** Solid Circle: I = πd⁴/64 */
63
+ function calcCircle(d) {
64
+ if (d <= 0)
65
+ throw new Error('Diameter must be positive');
66
+ const area = (Math.PI * d * d) / 4;
67
+ const I = (Math.PI * d * d * d * d) / 64;
68
+ const S = (Math.PI * d * d * d) / 32;
69
+ return roundResult({
70
+ area, Ix: I, Iy: I, Sx: S, Sy: S,
71
+ rx: d / 4,
72
+ ry: d / 4,
73
+ centroidY: d / 2,
74
+ });
75
+ }
76
+ /** Hollow Rectangle (Box): I_x = (BH³ - bh³)/12 */
77
+ function calcHollowRectangle(B, H, b, h) {
78
+ if (B <= 0 || H <= 0 || b <= 0 || h <= 0)
79
+ throw new Error('Dimensions must be positive');
80
+ if (b >= B || h >= H)
81
+ throw new Error('Inner dimensions must be smaller than outer');
82
+ const area = B * H - b * h;
83
+ const Ix = (B * H * H * H - b * h * h * h) / 12;
84
+ const Iy = (H * B * B * B - h * b * b * b) / 12;
85
+ const Sx = Ix / (H / 2);
86
+ const Sy = Iy / (B / 2);
87
+ return roundResult({
88
+ area, Ix, Iy, Sx, Sy,
89
+ rx: Math.sqrt(Ix / area),
90
+ ry: Math.sqrt(Iy / area),
91
+ centroidY: H / 2,
92
+ });
93
+ }
94
+ /** Hollow Circle (Pipe): I = π(D⁴-d⁴)/64 */
95
+ function calcHollowCircle(D, d) {
96
+ if (D <= 0 || d <= 0)
97
+ throw new Error('Diameters must be positive');
98
+ if (d >= D)
99
+ throw new Error('Inner diameter must be smaller than outer');
100
+ const area = (Math.PI * (D * D - d * d)) / 4;
101
+ const I = (Math.PI * (D * D * D * D - d * d * d * d)) / 64;
102
+ const S = I / (D / 2);
103
+ return roundResult({
104
+ area, Ix: I, Iy: I, Sx: S, Sy: S,
105
+ rx: Math.sqrt((D * D + d * d) / 16),
106
+ ry: Math.sqrt((D * D + d * d) / 16),
107
+ centroidY: D / 2,
108
+ });
109
+ }
110
+ /** I-Beam (symmetric): I_x = (B×H³ - (B-tw)×(H-2tf)³) / 12 */
111
+ function calcIBeam(B, H, tw, tf) {
112
+ if (B <= 0 || H <= 0 || tw <= 0 || tf <= 0)
113
+ throw new Error('Dimensions must be positive');
114
+ if (tw >= B)
115
+ throw new Error('Web thickness must be less than flange width');
116
+ if (2 * tf >= H)
117
+ throw new Error('2 × flange thickness must be less than total height');
118
+ const hw = H - 2 * tf; // clear web height
119
+ const area = 2 * B * tf + tw * hw;
120
+ const Ix = (B * H * H * H - (B - tw) * hw * hw * hw) / 12;
121
+ const Iy = (2 * tf * B * B * B + hw * tw * tw * tw) / 12;
122
+ const Sx = Ix / (H / 2);
123
+ const Sy = Iy / (B / 2);
124
+ return roundResult({
125
+ area, Ix, Iy, Sx, Sy,
126
+ rx: Math.sqrt(Ix / area),
127
+ ry: Math.sqrt(Iy / area),
128
+ centroidY: H / 2,
129
+ });
130
+ }
131
+ /**
132
+ * T-Section: asymmetric, requires centroid calculation + parallel axis theorem
133
+ *
134
+ * hw = web height (web only, excluding flange)
135
+ * Total height H = tf + hw
136
+ * Centroid measured from bottom of web
137
+ */
138
+ function calcTSection(bf, tf, tw, hw) {
139
+ if (bf <= 0 || tf <= 0 || tw <= 0 || hw <= 0)
140
+ throw new Error('Dimensions must be positive');
141
+ const H = tf + hw; // total height
142
+ const aFlange = bf * tf;
143
+ const aWeb = tw * hw;
144
+ const area = aFlange + aWeb;
145
+ // Centroid from bottom of web
146
+ const yBar = (aWeb * hw / 2 + aFlange * (hw + tf / 2)) / area;
147
+ // Parallel axis theorem
148
+ const dWeb = yBar - hw / 2;
149
+ const dFlange = (hw + tf / 2) - yBar;
150
+ const Ix = (tw * hw * hw * hw / 12 + aWeb * dWeb * dWeb)
151
+ + (bf * tf * tf * tf / 12 + aFlange * dFlange * dFlange);
152
+ const Iy = (hw * tw * tw * tw + tf * bf * bf * bf) / 12;
153
+ const yTop = H - yBar;
154
+ const yBot = yBar;
155
+ const Sx = Ix / Math.max(yTop, yBot); // governing section modulus
156
+ const Sy = Iy / (bf / 2);
157
+ return roundResult({
158
+ area, Ix, Iy, Sx, Sy,
159
+ rx: Math.sqrt(Ix / area),
160
+ ry: Math.sqrt(Iy / area),
161
+ centroidY: yBar,
162
+ });
163
+ }
164
+ /**
165
+ * C-Channel: symmetric about x-axis, asymmetric about y-axis
166
+ *
167
+ * Flanges extend on one side only (like a U).
168
+ * Strong axis (Ix) uses component method.
169
+ */
170
+ function calcCChannel(bf, H, tw, tf) {
171
+ if (bf <= 0 || H <= 0 || tw <= 0 || tf <= 0)
172
+ throw new Error('Dimensions must be positive');
173
+ if (2 * tf >= H)
174
+ throw new Error('2 × flange thickness must be less than total height');
175
+ const hw = H - 2 * tf; // clear web height
176
+ const area = 2 * bf * tf + hw * tw;
177
+ // Strong axis (Ix) — symmetric about x-axis
178
+ // Web contribution
179
+ const IxWeb = (tw * hw * hw * hw) / 12;
180
+ // Each flange: parallel axis theorem
181
+ const dFlange = (H - tf) / 2;
182
+ const IxFlange = bf * tf * tf * tf / 12 + bf * tf * dFlange * dFlange;
183
+ const Ix = IxWeb + 2 * IxFlange;
184
+ // Weak axis (Iy) — asymmetric, centroid shifts toward web
185
+ // Centroid from back of web
186
+ const xBar = (hw * tw * tw / 2 + 2 * bf * tf * (tw + bf / 2)) / area;
187
+ // Web: centered at tw/2
188
+ const dWebY = xBar - tw / 2;
189
+ const IyWeb = (hw * tw * tw * tw) / 12 + hw * tw * dWebY * dWebY;
190
+ // Each flange: centered at tw + bf/2
191
+ const dFlangeY = (tw + bf / 2) - xBar;
192
+ const IyFlange = tf * bf * bf * bf / 12 + bf * tf * dFlangeY * dFlangeY;
193
+ const Iy = IyWeb + 2 * IyFlange;
194
+ const Sx = Ix / (H / 2);
195
+ const xMax = Math.max(xBar, tw + bf - xBar);
196
+ const Sy = Iy / xMax;
197
+ return roundResult({
198
+ area, Ix, Iy, Sx, Sy,
199
+ rx: Math.sqrt(Ix / area),
200
+ ry: Math.sqrt(Iy / area),
201
+ centroidY: H / 2, // symmetric about x-axis
202
+ });
203
+ }
204
+ //# sourceMappingURL=momentOfInertia.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"momentOfInertia.js","sourceRoot":"","sources":["../../src/construction/momentOfInertia.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"pert.d.ts","sourceRoot":"","sources":["../../src/construction/pert.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,UAAU,EAA4B,MAAM,YAAY,CAAC;AA4FlF;;;;;;;;;;;GAWG;AACH,wBAAgB,IAAI,CAAC,KAAK,EAAE,SAAS,GAAG,UAAU,GAAG,IAAI,CAuHxD"}
1
+ {"version":3,"file":"pert.d.ts","sourceRoot":"","sources":["../../src/construction/pert.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,UAAU,EAA4B,MAAM,YAAY,CAAC;AAwElF;;;;;;;;;;;GAWG;AACH,wBAAgB,IAAI,CAAC,KAAK,EAAE,SAAS,GAAG,UAAU,GAAG,IAAI,CAuHxD"}
@@ -1,21 +1,5 @@
1
1
  import { roundTo } from '../utils.js';
2
- /**
3
- * Standard normal cumulative distribution function
4
- * Uses Abramowitz and Stegun approximation
5
- */
6
- function normalCDF(z) {
7
- const a1 = 0.254829592;
8
- const a2 = -0.284496736;
9
- const a3 = 1.421413741;
10
- const a4 = -1.453152027;
11
- const a5 = 1.061405429;
12
- const p = 0.3275911;
13
- const sign = z < 0 ? -1 : 1;
14
- const x = Math.abs(z) / Math.sqrt(2);
15
- const t = 1.0 / (1.0 + p * x);
16
- const y = 1.0 - (((((a5 * t + a4) * t) + a3) * t + a2) * t + a1) * t * Math.exp(-x * x);
17
- return 0.5 * (1.0 + sign * y);
18
- }
2
+ import { normalCDF } from '../math.js';
19
3
  /**
20
4
  * Detect cycle in task dependencies using DFS
21
5
  */
@@ -1 +1 @@
1
- {"version":3,"file":"pert.js","sourceRoot":"","sources":["../../src/construction/pert.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"pert.js","sourceRoot":"","sources":["../../src/construction/pert.ts"],"names":[],"mappings":"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"}
@@ -198,6 +198,56 @@ export interface RoofResult {
198
198
  roofArea: number;
199
199
  pitchDescription: string;
200
200
  }
201
+ /**
202
+ * Moment of Inertia (Section Properties) Types
203
+ */
204
+ export type SectionShape = 'rectangle' | 'circle' | 'hollowRectangle' | 'hollowCircle' | 'iBeam' | 'tSection' | 'cChannel';
205
+ export type MomentOfInertiaInput = {
206
+ shape: 'rectangle';
207
+ width: number;
208
+ height: number;
209
+ } | {
210
+ shape: 'circle';
211
+ diameter: number;
212
+ } | {
213
+ shape: 'hollowRectangle';
214
+ outerWidth: number;
215
+ outerHeight: number;
216
+ innerWidth: number;
217
+ innerHeight: number;
218
+ } | {
219
+ shape: 'hollowCircle';
220
+ outerDiameter: number;
221
+ innerDiameter: number;
222
+ } | {
223
+ shape: 'iBeam';
224
+ flangeWidth: number;
225
+ totalHeight: number;
226
+ webThickness: number;
227
+ flangeThickness: number;
228
+ } | {
229
+ shape: 'tSection';
230
+ flangeWidth: number;
231
+ flangeThickness: number;
232
+ webThickness: number;
233
+ webHeight: number;
234
+ } | {
235
+ shape: 'cChannel';
236
+ flangeWidth: number;
237
+ totalHeight: number;
238
+ webThickness: number;
239
+ flangeThickness: number;
240
+ };
241
+ export interface MomentOfInertiaResult {
242
+ area: number;
243
+ Ix: number;
244
+ Iy: number;
245
+ Sx: number;
246
+ Sy: number;
247
+ rx: number;
248
+ ry: number;
249
+ centroidY: number;
250
+ }
201
251
  /**
202
252
  * Stair Calculation Types
203
253
  */
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/construction/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/construction/types.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,5 @@
1
- export type { PasteType, ReflowInput, ReflowResult, BandCount, ColorName, ResistorBands, ResistorResult, SmtTaktInput, SmtTaktResult, SolderInput, SolderResult, TraceLayer, TraceInput, TraceResult, AwgMaterial, AwgInput, AwgResult, CapacitorCodeInput, CapacitorCodeResult, LedResistorInput, LedResistorResult, ApertureShape, ComponentType, StencilInput, StencilResult, ViaInput, ViaResult, } from './types.js';
1
+ export type { OhmsLawSolveFor, OhmsLawInput, OhmsLawResult, PasteType, ReflowInput, ReflowResult, BandCount, ColorName, ResistorBands, ResistorResult, SmtTaktInput, SmtTaktResult, SolderInput, SolderResult, TraceLayer, TraceInput, TraceResult, AwgMaterial, AwgInput, AwgResult, CapacitorCodeInput, CapacitorCodeResult, LedResistorInput, LedResistorResult, ApertureShape, ComponentType, StencilInput, StencilResult, ViaInput, ViaResult, } from './types.js';
2
+ export { ohmsLaw } from './ohmsLaw.js';
2
3
  export { reflowProfile, getPasteTypes } from './reflow.js';
3
4
  export { resistorDecode } from './resistor.js';
4
5
  export { smtTakt } from './smt-takt.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/electronics/index.ts"],"names":[],"mappings":"AACA,YAAY,EAEV,SAAS,EACT,WAAW,EACX,YAAY,EAEZ,SAAS,EACT,SAAS,EACT,aAAa,EACb,cAAc,EAEd,YAAY,EACZ,aAAa,EAEb,WAAW,EACX,YAAY,EAEZ,UAAU,EACV,UAAU,EACV,WAAW,EAEX,WAAW,EACX,QAAQ,EACR,SAAS,EAET,kBAAkB,EAClB,mBAAmB,EAEnB,gBAAgB,EAChB,iBAAiB,EAEjB,aAAa,EACb,aAAa,EACb,YAAY,EACZ,aAAa,EAEb,QAAQ,EACR,SAAS,GACV,MAAM,YAAY,CAAC;AAGpB,OAAO,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAC3D,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAC/C,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AACxC,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAC1C,OAAO,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AACxC,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AACzC,OAAO,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AACjD,OAAO,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AACvC,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAC/C,OAAO,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/electronics/index.ts"],"names":[],"mappings":"AACA,YAAY,EAEV,eAAe,EACf,YAAY,EACZ,aAAa,EAEb,SAAS,EACT,WAAW,EACX,YAAY,EAEZ,SAAS,EACT,SAAS,EACT,aAAa,EACb,cAAc,EAEd,YAAY,EACZ,aAAa,EAEb,WAAW,EACX,YAAY,EAEZ,UAAU,EACV,UAAU,EACV,WAAW,EAEX,WAAW,EACX,QAAQ,EACR,SAAS,EAET,kBAAkB,EAClB,mBAAmB,EAEnB,gBAAgB,EAChB,iBAAiB,EAEjB,aAAa,EACb,aAAa,EACb,YAAY,EACZ,aAAa,EAEb,QAAQ,EACR,SAAS,GACV,MAAM,YAAY,CAAC;AAGpB,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AACvC,OAAO,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAC3D,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAC/C,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AACxC,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAC1C,OAAO,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AACxC,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AACzC,OAAO,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AACjD,OAAO,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AACvC,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAC/C,OAAO,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC"}
@@ -1,4 +1,5 @@
1
1
  // Functions
2
+ export { ohmsLaw } from './ohmsLaw.js';
2
3
  export { reflowProfile, getPasteTypes } from './reflow.js';
3
4
  export { resistorDecode } from './resistor.js';
4
5
  export { smtTakt } from './smt-takt.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/electronics/index.ts"],"names":[],"mappings":"AAyCA,YAAY;AACZ,OAAO,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAC3D,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAC/C,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AACxC,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAC1C,OAAO,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AACxC,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AACzC,OAAO,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AACjD,OAAO,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AACvC,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAC/C,OAAO,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/electronics/index.ts"],"names":[],"mappings":"AA6CA,YAAY;AACZ,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AACvC,OAAO,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAC3D,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAC/C,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AACxC,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAC1C,OAAO,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AACxC,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AACzC,OAAO,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AACjD,OAAO,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AACvC,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAC/C,OAAO,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC"}
@@ -0,0 +1,12 @@
1
+ import type { OhmsLawInput, OhmsLawResult } from './types.js';
2
+ /**
3
+ * Ohm's Law Calculator — V = I × R, P = V × I
4
+ *
5
+ * Solves for any one of voltage, current, resistance, or power
6
+ * given the other two known quantities.
7
+ *
8
+ * @param input - discriminated union by `solveFor`
9
+ * @returns all four electrical quantities
10
+ */
11
+ export declare function ohmsLaw(input: OhmsLawInput): OhmsLawResult;
12
+ //# sourceMappingURL=ohmsLaw.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ohmsLaw.d.ts","sourceRoot":"","sources":["../../src/electronics/ohmsLaw.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAE9D;;;;;;;;GAQG;AACH,wBAAgB,OAAO,CAAC,KAAK,EAAE,YAAY,GAAG,aAAa,CAmD1D"}