formulab 0.5.1 → 0.9.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 (258) hide show
  1. package/CHANGELOG.md +84 -0
  2. package/README.md +90 -26
  3. package/dist/automotive/chargingLoss.d.ts +15 -0
  4. package/dist/automotive/chargingLoss.d.ts.map +1 -0
  5. package/dist/automotive/chargingLoss.js +62 -0
  6. package/dist/automotive/chargingLoss.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 +23 -0
  12. package/dist/automotive/types.d.ts.map +1 -1
  13. package/dist/battery/guards.d.ts +7 -0
  14. package/dist/battery/guards.d.ts.map +1 -0
  15. package/dist/battery/guards.js +17 -0
  16. package/dist/battery/guards.js.map +1 -0
  17. package/dist/battery/index.d.ts +1 -0
  18. package/dist/battery/index.d.ts.map +1 -1
  19. package/dist/battery/index.js +2 -0
  20. package/dist/battery/index.js.map +1 -1
  21. package/dist/chemical/flowControl.d.ts +14 -0
  22. package/dist/chemical/flowControl.d.ts.map +1 -0
  23. package/dist/chemical/flowControl.js +69 -0
  24. package/dist/chemical/flowControl.js.map +1 -0
  25. package/dist/chemical/guards.d.ts +17 -0
  26. package/dist/chemical/guards.d.ts.map +1 -0
  27. package/dist/chemical/guards.js +54 -0
  28. package/dist/chemical/guards.js.map +1 -0
  29. package/dist/chemical/index.d.ts +5 -1
  30. package/dist/chemical/index.d.ts.map +1 -1
  31. package/dist/chemical/index.js +5 -0
  32. package/dist/chemical/index.js.map +1 -1
  33. package/dist/chemical/pid.d.ts +14 -0
  34. package/dist/chemical/pid.d.ts.map +1 -0
  35. package/dist/chemical/pid.js +103 -0
  36. package/dist/chemical/pid.js.map +1 -0
  37. package/dist/chemical/reliefValve.d.ts +14 -0
  38. package/dist/chemical/reliefValve.d.ts.map +1 -0
  39. package/dist/chemical/reliefValve.js +98 -0
  40. package/dist/chemical/reliefValve.js.map +1 -0
  41. package/dist/chemical/types.d.ts +63 -0
  42. package/dist/chemical/types.d.ts.map +1 -1
  43. package/dist/construction/guards.d.ts +7 -0
  44. package/dist/construction/guards.d.ts.map +1 -0
  45. package/dist/construction/guards.js +31 -0
  46. package/dist/construction/guards.js.map +1 -0
  47. package/dist/construction/index.d.ts +1 -0
  48. package/dist/construction/index.d.ts.map +1 -1
  49. package/dist/construction/index.js +2 -0
  50. package/dist/construction/index.js.map +1 -1
  51. package/dist/electronics/guards.d.ts +7 -0
  52. package/dist/electronics/guards.d.ts.map +1 -0
  53. package/dist/electronics/guards.js +17 -0
  54. package/dist/electronics/guards.js.map +1 -0
  55. package/dist/electronics/index.d.ts +1 -0
  56. package/dist/electronics/index.d.ts.map +1 -1
  57. package/dist/electronics/index.js +2 -0
  58. package/dist/electronics/index.js.map +1 -1
  59. package/dist/energy/boilerEfficiency.d.ts +13 -0
  60. package/dist/energy/boilerEfficiency.d.ts.map +1 -0
  61. package/dist/energy/boilerEfficiency.js +46 -0
  62. package/dist/energy/boilerEfficiency.js.map +1 -0
  63. package/dist/energy/cusum.d.ts +15 -0
  64. package/dist/energy/cusum.d.ts.map +1 -0
  65. package/dist/energy/cusum.js +71 -0
  66. package/dist/energy/cusum.js.map +1 -0
  67. package/dist/energy/degreeDay.d.ts +13 -0
  68. package/dist/energy/degreeDay.d.ts.map +1 -0
  69. package/dist/energy/degreeDay.js +46 -0
  70. package/dist/energy/degreeDay.js.map +1 -0
  71. package/dist/energy/heatPump.d.ts +13 -0
  72. package/dist/energy/heatPump.d.ts.map +1 -0
  73. package/dist/energy/heatPump.js +48 -0
  74. package/dist/energy/heatPump.js.map +1 -0
  75. package/dist/energy/index.d.ts +9 -1
  76. package/dist/energy/index.d.ts.map +1 -1
  77. package/dist/energy/index.js +8 -0
  78. package/dist/energy/index.js.map +1 -1
  79. package/dist/energy/insulationRoi.d.ts +14 -0
  80. package/dist/energy/insulationRoi.d.ts.map +1 -0
  81. package/dist/energy/insulationRoi.js +52 -0
  82. package/dist/energy/insulationRoi.js.map +1 -0
  83. package/dist/energy/ledRoi.d.ts +14 -0
  84. package/dist/energy/ledRoi.d.ts.map +1 -0
  85. package/dist/energy/ledRoi.js +49 -0
  86. package/dist/energy/ledRoi.js.map +1 -0
  87. package/dist/energy/transformerLoss.d.ts +13 -0
  88. package/dist/energy/transformerLoss.d.ts.map +1 -0
  89. package/dist/energy/transformerLoss.js +63 -0
  90. package/dist/energy/transformerLoss.js.map +1 -0
  91. package/dist/energy/types.d.ts +168 -0
  92. package/dist/energy/types.d.ts.map +1 -1
  93. package/dist/energy/windOutput.d.ts +14 -0
  94. package/dist/energy/windOutput.d.ts.map +1 -0
  95. package/dist/energy/windOutput.js +77 -0
  96. package/dist/energy/windOutput.js.map +1 -0
  97. package/dist/food/index.d.ts +3 -1
  98. package/dist/food/index.d.ts.map +1 -1
  99. package/dist/food/index.js +2 -0
  100. package/dist/food/index.js.map +1 -1
  101. package/dist/food/stabilityStudy.d.ts +15 -0
  102. package/dist/food/stabilityStudy.d.ts.map +1 -0
  103. package/dist/food/stabilityStudy.js +92 -0
  104. package/dist/food/stabilityStudy.js.map +1 -0
  105. package/dist/food/types.d.ts +43 -0
  106. package/dist/food/types.d.ts.map +1 -1
  107. package/dist/food/waterActivity.d.ts +17 -0
  108. package/dist/food/waterActivity.d.ts.map +1 -0
  109. package/dist/food/waterActivity.js +63 -0
  110. package/dist/food/waterActivity.js.map +1 -0
  111. package/dist/logistics/abcAnalysis.d.ts +15 -0
  112. package/dist/logistics/abcAnalysis.d.ts.map +1 -0
  113. package/dist/logistics/abcAnalysis.js +101 -0
  114. package/dist/logistics/abcAnalysis.js.map +1 -0
  115. package/dist/logistics/index.d.ts +4 -1
  116. package/dist/logistics/index.d.ts.map +1 -1
  117. package/dist/logistics/index.js +3 -0
  118. package/dist/logistics/index.js.map +1 -1
  119. package/dist/logistics/inventoryTurnover.d.ts +13 -0
  120. package/dist/logistics/inventoryTurnover.d.ts.map +1 -0
  121. package/dist/logistics/inventoryTurnover.js +36 -0
  122. package/dist/logistics/inventoryTurnover.js.map +1 -0
  123. package/dist/logistics/loadCapacity.d.ts +13 -0
  124. package/dist/logistics/loadCapacity.d.ts.map +1 -0
  125. package/dist/logistics/loadCapacity.js +46 -0
  126. package/dist/logistics/loadCapacity.js.map +1 -0
  127. package/dist/logistics/types.d.ts +78 -0
  128. package/dist/logistics/types.d.ts.map +1 -1
  129. package/dist/metal/guards.d.ts +12 -0
  130. package/dist/metal/guards.d.ts.map +1 -0
  131. package/dist/metal/guards.js +36 -0
  132. package/dist/metal/guards.js.map +1 -0
  133. package/dist/metal/index.d.ts +1 -0
  134. package/dist/metal/index.d.ts.map +1 -1
  135. package/dist/metal/index.js +2 -0
  136. package/dist/metal/index.js.map +1 -1
  137. package/dist/quality/cmk.d.ts +17 -0
  138. package/dist/quality/cmk.d.ts.map +1 -0
  139. package/dist/quality/cmk.js +43 -0
  140. package/dist/quality/cmk.js.map +1 -0
  141. package/dist/quality/gageRR.d.ts +18 -0
  142. package/dist/quality/gageRR.d.ts.map +1 -0
  143. package/dist/quality/gageRR.js +110 -0
  144. package/dist/quality/gageRR.js.map +1 -0
  145. package/dist/quality/index.d.ts +5 -1
  146. package/dist/quality/index.d.ts.map +1 -1
  147. package/dist/quality/index.js +4 -0
  148. package/dist/quality/index.js.map +1 -1
  149. package/dist/quality/paretoAnalysis.d.ts +15 -0
  150. package/dist/quality/paretoAnalysis.d.ts.map +1 -0
  151. package/dist/quality/paretoAnalysis.js +92 -0
  152. package/dist/quality/paretoAnalysis.js.map +1 -0
  153. package/dist/quality/types.d.ts +91 -0
  154. package/dist/quality/types.d.ts.map +1 -1
  155. package/dist/quality/weibull.d.ts +17 -0
  156. package/dist/quality/weibull.d.ts.map +1 -0
  157. package/dist/quality/weibull.js +106 -0
  158. package/dist/quality/weibull.js.map +1 -0
  159. package/dist/safety/arcFlash.d.ts +14 -0
  160. package/dist/safety/arcFlash.d.ts.map +1 -0
  161. package/dist/safety/arcFlash.js +90 -0
  162. package/dist/safety/arcFlash.js.map +1 -0
  163. package/dist/safety/confinedSpace.d.ts +15 -0
  164. package/dist/safety/confinedSpace.d.ts.map +1 -0
  165. package/dist/safety/confinedSpace.js +116 -0
  166. package/dist/safety/confinedSpace.js.map +1 -0
  167. package/dist/safety/ergonomicRisk.d.ts +9 -0
  168. package/dist/safety/ergonomicRisk.d.ts.map +1 -0
  169. package/dist/safety/ergonomicRisk.js +208 -0
  170. package/dist/safety/ergonomicRisk.js.map +1 -0
  171. package/dist/safety/illuminance.d.ts +13 -0
  172. package/dist/safety/illuminance.d.ts.map +1 -0
  173. package/dist/safety/illuminance.js +91 -0
  174. package/dist/safety/illuminance.js.map +1 -0
  175. package/dist/safety/index.d.ts +8 -1
  176. package/dist/safety/index.d.ts.map +1 -1
  177. package/dist/safety/index.js +7 -0
  178. package/dist/safety/index.js.map +1 -1
  179. package/dist/safety/ladderAngle.d.ts +16 -0
  180. package/dist/safety/ladderAngle.d.ts.map +1 -0
  181. package/dist/safety/ladderAngle.js +87 -0
  182. package/dist/safety/ladderAngle.js.map +1 -0
  183. package/dist/safety/lel.d.ts +14 -0
  184. package/dist/safety/lel.d.ts.map +1 -0
  185. package/dist/safety/lel.js +66 -0
  186. package/dist/safety/lel.js.map +1 -0
  187. package/dist/safety/thermalComfort.d.ts +14 -0
  188. package/dist/safety/thermalComfort.d.ts.map +1 -0
  189. package/dist/safety/thermalComfort.js +96 -0
  190. package/dist/safety/thermalComfort.js.map +1 -0
  191. package/dist/safety/types.d.ts +164 -0
  192. package/dist/safety/types.d.ts.map +1 -1
  193. package/dist/utility/bilinearInterpolation.d.ts +3 -0
  194. package/dist/utility/bilinearInterpolation.d.ts.map +1 -0
  195. package/dist/utility/bilinearInterpolation.js +47 -0
  196. package/dist/utility/bilinearInterpolation.js.map +1 -0
  197. package/dist/utility/correlation.d.ts +3 -0
  198. package/dist/utility/correlation.d.ts.map +1 -0
  199. package/dist/utility/correlation.js +29 -0
  200. package/dist/utility/correlation.js.map +1 -0
  201. package/dist/utility/depreciation.d.ts +3 -0
  202. package/dist/utility/depreciation.d.ts.map +1 -0
  203. package/dist/utility/depreciation.js +57 -0
  204. package/dist/utility/depreciation.js.map +1 -0
  205. package/dist/utility/histogram.d.ts +3 -0
  206. package/dist/utility/histogram.d.ts.map +1 -0
  207. package/dist/utility/histogram.js +42 -0
  208. package/dist/utility/histogram.js.map +1 -0
  209. package/dist/utility/index.d.ts +15 -1
  210. package/dist/utility/index.d.ts.map +1 -1
  211. package/dist/utility/index.js +14 -0
  212. package/dist/utility/index.js.map +1 -1
  213. package/dist/utility/lcc.d.ts +3 -0
  214. package/dist/utility/lcc.d.ts.map +1 -0
  215. package/dist/utility/lcc.js +26 -0
  216. package/dist/utility/lcc.js.map +1 -0
  217. package/dist/utility/linearInterpolation.d.ts +3 -0
  218. package/dist/utility/linearInterpolation.d.ts.map +1 -0
  219. package/dist/utility/linearInterpolation.js +42 -0
  220. package/dist/utility/linearInterpolation.js.map +1 -0
  221. package/dist/utility/movingAverage.d.ts +3 -0
  222. package/dist/utility/movingAverage.d.ts.map +1 -0
  223. package/dist/utility/movingAverage.js +41 -0
  224. package/dist/utility/movingAverage.js.map +1 -0
  225. package/dist/utility/normalize.d.ts +3 -0
  226. package/dist/utility/normalize.d.ts.map +1 -0
  227. package/dist/utility/normalize.js +35 -0
  228. package/dist/utility/normalize.js.map +1 -0
  229. package/dist/utility/npv.d.ts +3 -0
  230. package/dist/utility/npv.d.ts.map +1 -0
  231. package/dist/utility/npv.js +45 -0
  232. package/dist/utility/npv.js.map +1 -0
  233. package/dist/utility/percentile.d.ts +3 -0
  234. package/dist/utility/percentile.d.ts.map +1 -0
  235. package/dist/utility/percentile.js +24 -0
  236. package/dist/utility/percentile.js.map +1 -0
  237. package/dist/utility/regression.d.ts +3 -0
  238. package/dist/utility/regression.d.ts.map +1 -0
  239. package/dist/utility/regression.js +40 -0
  240. package/dist/utility/regression.js.map +1 -0
  241. package/dist/utility/roi.d.ts +3 -0
  242. package/dist/utility/roi.d.ts.map +1 -0
  243. package/dist/utility/roi.js +19 -0
  244. package/dist/utility/roi.js.map +1 -0
  245. package/dist/utility/statistics.d.ts +3 -0
  246. package/dist/utility/statistics.d.ts.map +1 -0
  247. package/dist/utility/statistics.js +34 -0
  248. package/dist/utility/statistics.js.map +1 -0
  249. package/dist/utility/types.d.ts +213 -1
  250. package/dist/utility/types.d.ts.map +1 -1
  251. package/dist/utility/unit.d.ts.map +1 -1
  252. package/dist/utility/unit.js +51 -0
  253. package/dist/utility/unit.js.map +1 -1
  254. package/dist/utility/weightedScore.d.ts +3 -0
  255. package/dist/utility/weightedScore.d.ts.map +1 -0
  256. package/dist/utility/weightedScore.js +35 -0
  257. package/dist/utility/weightedScore.js.map +1 -0
  258. package/package.json +3 -2
@@ -24,7 +24,7 @@ export interface AssignmentResult {
24
24
  /**
25
25
  * Unit Conversion Types
26
26
  */
27
- export type UnitCategory = 'length' | 'weight' | 'volume' | 'temperature' | 'pressure' | 'area' | 'speed';
27
+ export type UnitCategory = 'length' | 'weight' | 'volume' | 'temperature' | 'pressure' | 'area' | 'speed' | 'energy' | 'power' | 'force' | 'torque' | 'flowRate' | 'angle' | 'density';
28
28
  export interface UnitDef {
29
29
  id: string;
30
30
  labelKey: string;
@@ -45,4 +45,216 @@ export interface UnitResult {
45
45
  toValue: number;
46
46
  allConversions: ConversionEntry[];
47
47
  }
48
+ /**
49
+ * Statistics Types
50
+ */
51
+ export interface StatisticsInput {
52
+ data: number[];
53
+ }
54
+ export interface StatisticsResult {
55
+ count: number;
56
+ sum: number;
57
+ mean: number;
58
+ median: number;
59
+ min: number;
60
+ max: number;
61
+ range: number;
62
+ variance: number;
63
+ stdDev: number;
64
+ }
65
+ /**
66
+ * Percentile Types
67
+ */
68
+ export interface PercentileInput {
69
+ data: number[];
70
+ percentile: number;
71
+ }
72
+ export interface PercentileResult {
73
+ percentile: number;
74
+ value: number;
75
+ }
76
+ /**
77
+ * Correlation Types (Pearson)
78
+ */
79
+ export interface CorrelationInput {
80
+ x: number[];
81
+ y: number[];
82
+ }
83
+ export interface CorrelationResult {
84
+ r: number;
85
+ r2: number;
86
+ n: number;
87
+ }
88
+ /**
89
+ * Linear Regression Types
90
+ */
91
+ export interface RegressionInput {
92
+ x: number[];
93
+ y: number[];
94
+ }
95
+ export interface RegressionResult {
96
+ slope: number;
97
+ intercept: number;
98
+ r2: number;
99
+ equation: string;
100
+ }
101
+ /**
102
+ * Moving Average Types
103
+ */
104
+ export type MovingAverageMethod = 'sma' | 'ema';
105
+ export interface MovingAverageInput {
106
+ data: number[];
107
+ window: number;
108
+ method: MovingAverageMethod;
109
+ }
110
+ export interface MovingAverageResult {
111
+ values: number[];
112
+ }
113
+ /**
114
+ * Linear Interpolation Types
115
+ */
116
+ export interface LinearInterpolationInput {
117
+ x: number[];
118
+ y: number[];
119
+ target: number;
120
+ }
121
+ export interface LinearInterpolationResult {
122
+ value: number;
123
+ lowerIndex: number;
124
+ upperIndex: number;
125
+ isExtrapolation: boolean;
126
+ }
127
+ /**
128
+ * Bilinear Interpolation Types
129
+ */
130
+ export interface BilinearInterpolationInput {
131
+ x: number[];
132
+ y: number[];
133
+ z: number[][];
134
+ targetX: number;
135
+ targetY: number;
136
+ }
137
+ export interface BilinearInterpolationResult {
138
+ value: number;
139
+ isExtrapolation: boolean;
140
+ }
141
+ /**
142
+ * ROI (Return on Investment) Types
143
+ */
144
+ export interface RoiInput {
145
+ investment: number;
146
+ annualReturn: number;
147
+ years: number;
148
+ }
149
+ export interface RoiResult {
150
+ roi: number;
151
+ annualRoi: number;
152
+ paybackPeriod: number;
153
+ totalReturn: number;
154
+ netProfit: number;
155
+ }
156
+ /**
157
+ * NPV (Net Present Value) Types
158
+ */
159
+ export interface NpvInput {
160
+ initialInvestment: number;
161
+ cashFlows: number[];
162
+ discountRate: number;
163
+ }
164
+ export interface NpvResult {
165
+ npv: number;
166
+ irr: number | null;
167
+ profitabilityIndex: number;
168
+ }
169
+ /**
170
+ * Depreciation Types
171
+ */
172
+ export type DepreciationMethod = 'straight-line' | 'declining-balance';
173
+ export interface DepreciationInput {
174
+ assetCost: number;
175
+ salvageValue: number;
176
+ usefulLife: number;
177
+ method: DepreciationMethod;
178
+ }
179
+ export interface DepreciationYearEntry {
180
+ year: number;
181
+ depreciation: number;
182
+ accumulatedDepreciation: number;
183
+ bookValue: number;
184
+ }
185
+ export interface DepreciationResult {
186
+ annualDepreciation: number;
187
+ schedule: DepreciationYearEntry[];
188
+ totalDepreciation: number;
189
+ }
190
+ /**
191
+ * Life Cycle Cost (LCC) Types
192
+ */
193
+ export interface LccInput {
194
+ initialCost: number;
195
+ annualOperatingCost: number;
196
+ annualMaintenanceCost: number;
197
+ disposalCost: number;
198
+ lifespan: number;
199
+ discountRate: number;
200
+ }
201
+ export interface LccResult {
202
+ totalLcc: number;
203
+ presentValueOperating: number;
204
+ presentValueMaintenance: number;
205
+ presentValueDisposal: number;
206
+ annualEquivalentCost: number;
207
+ }
208
+ /**
209
+ * Normalize Types
210
+ */
211
+ export type NormalizeMethod = 'min-max' | 'z-score';
212
+ export interface NormalizeInput {
213
+ data: number[];
214
+ method: NormalizeMethod;
215
+ }
216
+ export interface NormalizeResult {
217
+ values: number[];
218
+ min: number;
219
+ max: number;
220
+ mean: number;
221
+ stdDev: number;
222
+ }
223
+ /**
224
+ * Histogram Types
225
+ */
226
+ export interface HistogramInput {
227
+ data: number[];
228
+ bins?: number;
229
+ }
230
+ export interface HistogramBin {
231
+ lower: number;
232
+ upper: number;
233
+ count: number;
234
+ frequency: number;
235
+ }
236
+ export interface HistogramResult {
237
+ bins: HistogramBin[];
238
+ binWidth: number;
239
+ totalCount: number;
240
+ }
241
+ /**
242
+ * Weighted Score Types
243
+ */
244
+ export interface WeightedScoreInput {
245
+ criteria: string[];
246
+ weights: number[];
247
+ alternatives: string[];
248
+ scores: number[][];
249
+ }
250
+ export interface WeightedScoreAlternative {
251
+ name: string;
252
+ totalScore: number;
253
+ rank: number;
254
+ weightedScores: number[];
255
+ }
256
+ export interface WeightedScoreResult {
257
+ rankings: WeightedScoreAlternative[];
258
+ normalizedWeights: number[];
259
+ }
48
260
  //# sourceMappingURL=types.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/utility/types.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,MAAM,mBAAmB,GAAG,UAAU,GAAG,UAAU,CAAC;AAE1D,MAAM,WAAW,eAAe;IAC9B,MAAM,EAAE,MAAM,EAAE,EAAE,CAAC;IACnB,SAAS,EAAE,MAAM,EAAE,CAAC;IACpB,SAAS,EAAE,MAAM,EAAE,CAAC;IACpB,SAAS,EAAE,mBAAmB,CAAC;CAChC;AAED,MAAM,WAAW,cAAc;IAC7B,GAAG,EAAE,MAAM,CAAC;IACZ,GAAG,EAAE,MAAM,CAAC;IACZ,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,MAAM,CAAC;CACd;AAED,MAAM,WAAW,gBAAgB;IAC/B,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,cAAc,EAAE,CAAC;IAC9B,cAAc,EAAE,MAAM,EAAE,CAAC;IACzB,cAAc,EAAE,MAAM,EAAE,CAAC;CAC1B;AAED;;GAEG;AACH,MAAM,MAAM,YAAY,GAAG,QAAQ,GAAG,QAAQ,GAAG,QAAQ,GAAG,aAAa,GAAG,UAAU,GAAG,MAAM,GAAG,OAAO,CAAC;AAE1G,MAAM,WAAW,OAAO;IACtB,EAAE,EAAE,MAAM,CAAC;IACX,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,MAAM,CAAC;IAClC,QAAQ,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,MAAM,CAAC;CACrC;AAED,MAAM,WAAW,SAAS;IACxB,QAAQ,EAAE,YAAY,CAAC;IACvB,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,eAAe;IAC9B,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,UAAU;IACzB,OAAO,EAAE,MAAM,CAAC;IAChB,cAAc,EAAE,eAAe,EAAE,CAAC;CACnC"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/utility/types.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"unit.d.ts","sourceRoot":"","sources":["../../src/utility/unit.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,YAAY,EAAE,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAuF/E;;;;GAIG;AACH,wBAAgB,iBAAiB,IAAI,YAAY,EAAE,CAElD;AAED;;;;;GAKG;AACH,wBAAgB,mBAAmB,CAAC,QAAQ,EAAE,YAAY,GAAG,OAAO,EAAE,CAErE;AAED;;;;;;;;GAQG;AACH,wBAAgB,aAAa,CAAC,KAAK,EAAE,SAAS,GAAG,UAAU,GAAG,IAAI,CAoBjE"}
1
+ {"version":3,"file":"unit.d.ts","sourceRoot":"","sources":["../../src/utility/unit.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,YAAY,EAAE,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AA0I/E;;;;GAIG;AACH,wBAAgB,iBAAiB,IAAI,YAAY,EAAE,CAElD;AAED;;;;;GAKG;AACH,wBAAgB,mBAAmB,CAAC,QAAQ,EAAE,YAAY,GAAG,OAAO,EAAE,CAErE;AAED;;;;;;;;GAQG;AACH,wBAAgB,aAAa,CAAC,KAAK,EAAE,SAAS,GAAG,UAAU,GAAG,IAAI,CAoBjE"}
@@ -81,6 +81,57 @@ const UNITS = {
81
81
  { id: 'kn', labelKey: 'knot', ...linear(0.514444) },
82
82
  { id: 'fts', labelKey: 'ft/s', ...linear(0.3048) },
83
83
  ],
84
+ energy: [
85
+ { id: 'J', labelKey: 'J', ...linear(1) },
86
+ { id: 'kJ', labelKey: 'kJ', ...linear(1000) },
87
+ { id: 'MJ', labelKey: 'MJ', ...linear(1000000) },
88
+ { id: 'Wh', labelKey: 'Wh', ...linear(3600) },
89
+ { id: 'kWh', labelKey: 'kWh', ...linear(3600000) },
90
+ { id: 'BTU', labelKey: 'BTU', ...linear(1055.06) },
91
+ { id: 'cal', labelKey: 'cal', ...linear(4.184) },
92
+ { id: 'kcal', labelKey: 'kcal', ...linear(4184) },
93
+ ],
94
+ power: [
95
+ { id: 'W', labelKey: 'W', ...linear(1) },
96
+ { id: 'kW', labelKey: 'kW', ...linear(1000) },
97
+ { id: 'MW', labelKey: 'MW', ...linear(1000000) },
98
+ { id: 'hp', labelKey: 'hp', ...linear(745.7) },
99
+ { id: 'BTUh', labelKey: 'BTU/h', ...linear(0.29307107) },
100
+ ],
101
+ force: [
102
+ { id: 'N', labelKey: 'N', ...linear(1) },
103
+ { id: 'kN', labelKey: 'kN', ...linear(1000) },
104
+ { id: 'lbf', labelKey: 'lbf', ...linear(4.44822) },
105
+ { id: 'kgf', labelKey: 'kgf', ...linear(9.80665) },
106
+ { id: 'tonf', labelKey: 'tonf', ...linear(9806.65) },
107
+ ],
108
+ torque: [
109
+ { id: 'Nm', labelKey: 'N·m', ...linear(1) },
110
+ { id: 'Nmm', labelKey: 'N·mm', ...linear(0.001) },
111
+ { id: 'lbft', labelKey: 'lb·ft', ...linear(1.35582) },
112
+ { id: 'lbin', labelKey: 'lb·in', ...linear(0.112985) },
113
+ { id: 'kgfm', labelKey: 'kgf·m', ...linear(9.80665) },
114
+ ],
115
+ flowRate: [
116
+ { id: 'Lmin', labelKey: 'L/min', ...linear(1) },
117
+ { id: 'Ls', labelKey: 'L/s', ...linear(60) },
118
+ { id: 'm3h', labelKey: 'm³/h', ...linear(16.6667) },
119
+ { id: 'm3s', labelKey: 'm³/s', ...linear(60000) },
120
+ { id: 'cfm', labelKey: 'cfm', ...linear(28.3168) },
121
+ { id: 'gpm', labelKey: 'gpm', ...linear(3.78541) },
122
+ ],
123
+ angle: [
124
+ { id: 'deg', labelKey: 'deg', ...linear(1) },
125
+ { id: 'rad', labelKey: 'rad', ...linear(180 / Math.PI) },
126
+ { id: 'rev', labelKey: 'rev', ...linear(360) },
127
+ { id: 'grad', labelKey: 'grad', ...linear(0.9) },
128
+ ],
129
+ density: [
130
+ { id: 'kgm3', labelKey: 'kg/m³', ...linear(1) },
131
+ { id: 'gcm3', labelKey: 'g/cm³', ...linear(1000) },
132
+ { id: 'lbft3', labelKey: 'lb/ft³', ...linear(16.0185) },
133
+ { id: 'gmL', labelKey: 'g/mL', ...linear(1000) },
134
+ ],
84
135
  };
85
136
  /**
86
137
  * Get all available unit categories
@@ -1 +1 @@
1
- {"version":3,"file":"unit.js","sourceRoot":"","sources":["../../src/utility/unit.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"unit.js","sourceRoot":"","sources":["../../src/utility/unit.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ import type { WeightedScoreInput, WeightedScoreResult } from './types.js';
2
+ export declare function weightedScore(input: WeightedScoreInput): WeightedScoreResult | null;
3
+ //# sourceMappingURL=weightedScore.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"weightedScore.d.ts","sourceRoot":"","sources":["../../src/utility/weightedScore.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,kBAAkB,EAAE,mBAAmB,EAA4B,MAAM,YAAY,CAAC;AAEpG,wBAAgB,aAAa,CAAC,KAAK,EAAE,kBAAkB,GAAG,mBAAmB,GAAG,IAAI,CA8BnF"}
@@ -0,0 +1,35 @@
1
+ import { roundTo } from '../utils.js';
2
+ export function weightedScore(input) {
3
+ const { criteria, weights, alternatives, scores } = input;
4
+ if (!criteria || !weights || !alternatives || !scores)
5
+ return null;
6
+ if (criteria.length === 0 || alternatives.length === 0)
7
+ return null;
8
+ if (criteria.length !== weights.length)
9
+ return null;
10
+ if (scores.length !== alternatives.length)
11
+ return null;
12
+ for (const row of scores) {
13
+ if (row.length !== criteria.length)
14
+ return null;
15
+ }
16
+ // Normalize weights to sum to 1
17
+ const weightSum = weights.reduce((a, v) => a + v, 0);
18
+ if (weightSum === 0)
19
+ return null;
20
+ const normalizedWeights = weights.map((w) => roundTo(w / weightSum, 6));
21
+ // Calculate weighted scores for each alternative
22
+ const results = alternatives.map((name, i) => {
23
+ const weightedScores = scores[i].map((s, j) => roundTo(s * normalizedWeights[j], 6));
24
+ const totalScore = roundTo(weightedScores.reduce((a, v) => a + v, 0), 6);
25
+ return { name, totalScore, rank: 0, weightedScores };
26
+ });
27
+ // Sort by total score descending and assign ranks
28
+ results.sort((a, b) => b.totalScore - a.totalScore);
29
+ results.forEach((r, i) => { r.rank = i + 1; });
30
+ return {
31
+ rankings: results,
32
+ normalizedWeights,
33
+ };
34
+ }
35
+ //# sourceMappingURL=weightedScore.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"weightedScore.js","sourceRoot":"","sources":["../../src/utility/weightedScore.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AAGtC,MAAM,UAAU,aAAa,CAAC,KAAyB;IACrD,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,YAAY,EAAE,MAAM,EAAE,GAAG,KAAK,CAAC;IAC1D,IAAI,CAAC,QAAQ,IAAI,CAAC,OAAO,IAAI,CAAC,YAAY,IAAI,CAAC,MAAM;QAAE,OAAO,IAAI,CAAC;IACnE,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,IAAI,YAAY,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,IAAI,CAAC;IACpE,IAAI,QAAQ,CAAC,MAAM,KAAK,OAAO,CAAC,MAAM;QAAE,OAAO,IAAI,CAAC;IACpD,IAAI,MAAM,CAAC,MAAM,KAAK,YAAY,CAAC,MAAM;QAAE,OAAO,IAAI,CAAC;IACvD,KAAK,MAAM,GAAG,IAAI,MAAM,EAAE,CAAC;QACzB,IAAI,GAAG,CAAC,MAAM,KAAK,QAAQ,CAAC,MAAM;YAAE,OAAO,IAAI,CAAC;IAClD,CAAC;IAED,gCAAgC;IAChC,MAAM,SAAS,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC;IACrD,IAAI,SAAS,KAAK,CAAC;QAAE,OAAO,IAAI,CAAC;IACjC,MAAM,iBAAiB,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,CAAC,GAAG,SAAS,EAAE,CAAC,CAAC,CAAC,CAAC;IAExE,iDAAiD;IACjD,MAAM,OAAO,GAA+B,YAAY,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC,EAAE,EAAE;QACvE,MAAM,cAAc,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,CAAC,GAAG,iBAAiB,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;QACrF,MAAM,UAAU,GAAG,OAAO,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;QACzE,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,CAAC,EAAE,cAAc,EAAE,CAAC;IACvD,CAAC,CAAC,CAAC;IAEH,kDAAkD;IAClD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,UAAU,GAAG,CAAC,CAAC,UAAU,CAAC,CAAC;IACpD,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,GAAG,CAAC,CAAC,IAAI,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAE/C,OAAO;QACL,QAAQ,EAAE,OAAO;QACjB,iBAAiB;KAClB,CAAC;AACJ,CAAC"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "formulab",
3
- "version": "0.5.1",
4
- "description": "Manufacturing & Engineering calculation formulas library - 146 industrial calculations across 14 domains for OEE, Cpk, SPC, metal weight, CNC machining, GD&T, battery, environmental, pipe flow, logistics, and more",
3
+ "version": "0.9.0",
4
+ "description": "Manufacturing & Engineering calculation formulas library - 174 industrial calculations across 14 domains for OEE, Cpk, SPC, metal weight, CNC machining, GD&T, battery, environmental, pipe flow, logistics, and more",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",
7
7
  "types": "./dist/index.d.ts",
@@ -137,6 +137,7 @@
137
137
  "bugs": {
138
138
  "url": "https://github.com/iyulab/formulab/issues"
139
139
  },
140
+ "packageManager": "pnpm@9.15.0",
140
141
  "engines": {
141
142
  "node": ">=18"
142
143
  },