@classytic/stage 0.3.0 → 0.4.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 (431) hide show
  1. package/dist/_virtual/_rolldown/runtime.mjs +18 -0
  2. package/dist/atomic/aufbau.d.mts +144 -0
  3. package/dist/atomic/aufbau.mjs +384 -0
  4. package/dist/atomic/elements.d.mts +67 -0
  5. package/dist/atomic/elements.mjs +785 -0
  6. package/dist/atomic/emission.d.mts +112 -0
  7. package/dist/atomic/emission.mjs +179 -0
  8. package/dist/atomic/index.d.mts +8 -0
  9. package/dist/atomic/index.mjs +9 -0
  10. package/dist/atomic/periodic.d.mts +82 -0
  11. package/dist/atomic/periodic.mjs +231 -0
  12. package/dist/atomic/properties.d.mts +100 -0
  13. package/dist/atomic/properties.mjs +574 -0
  14. package/dist/atomic/shells.d.mts +137 -0
  15. package/dist/atomic/shells.mjs +170 -0
  16. package/dist/atomic/trends.d.mts +148 -0
  17. package/dist/atomic/trends.mjs +225 -0
  18. package/dist/chem/chromatography.d.mts +66 -0
  19. package/dist/chem/chromatography.mjs +63 -0
  20. package/dist/chem/complex.d.mts +114 -0
  21. package/dist/chem/complex.mjs +234 -0
  22. package/dist/chem/cycle.d.mts +75 -0
  23. package/dist/chem/cycle.mjs +145 -0
  24. package/dist/chem/equation.d.mts +86 -0
  25. package/dist/chem/equation.mjs +168 -0
  26. package/dist/chem/formula.d.mts +90 -0
  27. package/dist/chem/formula.mjs +201 -0
  28. package/dist/chem/functional-groups.d.mts +31 -0
  29. package/dist/chem/functional-groups.mjs +187 -0
  30. package/dist/chem/hazard.d.mts +94 -0
  31. package/dist/chem/hazard.mjs +329 -0
  32. package/dist/chem/index.d.mts +34 -33
  33. package/dist/chem/index.mjs +34 -28
  34. package/dist/chem/ionic.d.mts +98 -0
  35. package/dist/chem/ionic.mjs +156 -0
  36. package/dist/chem/layout.d.mts +46 -0
  37. package/dist/chem/layout.mjs +342 -0
  38. package/dist/chem/lewis.d.mts +79 -0
  39. package/dist/chem/lewis.mjs +163 -0
  40. package/dist/chem/molecular-orbital.d.mts +114 -0
  41. package/dist/chem/molecular-orbital.mjs +201 -0
  42. package/dist/chem/molecule.d.mts +154 -0
  43. package/dist/chem/molecule.mjs +282 -0
  44. package/dist/chem/nmr.d.mts +153 -0
  45. package/dist/chem/nmr.mjs +165 -0
  46. package/dist/chem/polymer.d.mts +65 -0
  47. package/dist/chem/polymer.mjs +179 -0
  48. package/dist/chem/redox.d.mts +138 -0
  49. package/dist/chem/redox.mjs +328 -0
  50. package/dist/chem/relations.d.mts +183 -0
  51. package/dist/chem/relations.mjs +299 -0
  52. package/dist/chem/skeleton.d.mts +51 -0
  53. package/dist/chem/skeleton.mjs +186 -0
  54. package/dist/chem/solution.d.mts +116 -0
  55. package/dist/chem/solution.mjs +186 -0
  56. package/dist/chem/species.d.mts +47 -0
  57. package/dist/chem/species.mjs +128 -0
  58. package/dist/chem/stereo.d.mts +108 -0
  59. package/dist/chem/stereo.mjs +286 -0
  60. package/dist/chem/stoichiometry.d.mts +95 -0
  61. package/dist/chem/stoichiometry.mjs +145 -0
  62. package/dist/chem/synthesis.d.mts +113 -0
  63. package/dist/chem/synthesis.mjs +281 -0
  64. package/dist/chem/vsepr.d.mts +80 -0
  65. package/dist/chem/vsepr.mjs +247 -0
  66. package/dist/circuit/ac.d.mts +163 -0
  67. package/dist/circuit/ac.mjs +452 -0
  68. package/dist/circuit/dc.d.mts +92 -0
  69. package/dist/circuit/dc.mjs +333 -0
  70. package/dist/circuit/index.d.mts +5 -92
  71. package/dist/circuit/index.mjs +5 -332
  72. package/dist/circuit/network.d.mts +99 -0
  73. package/dist/circuit/network.mjs +440 -0
  74. package/dist/circuit/topology.d.mts +102 -0
  75. package/dist/circuit/topology.mjs +143 -0
  76. package/dist/colour/absorption.d.mts +79 -0
  77. package/dist/colour/absorption.mjs +137 -0
  78. package/dist/colour/index.d.mts +6 -0
  79. package/dist/colour/index.mjs +7 -0
  80. package/dist/colour/name.d.mts +14 -0
  81. package/dist/colour/name.mjs +76 -0
  82. package/dist/colour/observer.d.mts +31 -0
  83. package/dist/colour/observer.mjs +46 -0
  84. package/dist/colour/spectrum.d.mts +61 -0
  85. package/dist/colour/spectrum.mjs +108 -0
  86. package/dist/colour/srgb.d.mts +49 -0
  87. package/dist/colour/srgb.mjs +108 -0
  88. package/dist/core/constants.d.mts +138 -0
  89. package/dist/core/constants.mjs +139 -0
  90. package/dist/core/index.d.mts +3 -1
  91. package/dist/core/index.mjs +3 -1
  92. package/dist/core/vec3.d.mts +94 -0
  93. package/dist/core/vec3.mjs +123 -0
  94. package/dist/core/worked.d.mts +35 -0
  95. package/dist/core/worked.mjs +44 -0
  96. package/dist/electro/cell.d.mts +102 -0
  97. package/dist/electro/cell.mjs +170 -0
  98. package/dist/electro/conductivity.d.mts +157 -0
  99. package/dist/electro/conductivity.mjs +156 -0
  100. package/dist/electro/couples.d.mts +114 -0
  101. package/dist/electro/couples.mjs +334 -0
  102. package/dist/electro/electrolysis.d.mts +96 -0
  103. package/dist/electro/electrolysis.mjs +274 -0
  104. package/dist/electro/faraday.d.mts +150 -0
  105. package/dist/electro/faraday.mjs +118 -0
  106. package/dist/electro/index.d.mts +6 -0
  107. package/dist/electro/index.mjs +7 -0
  108. package/dist/finance/accounting/adjustments.d.mts +17 -0
  109. package/dist/finance/accounting/adjustments.mjs +202 -0
  110. package/dist/finance/accounting/analysis.d.mts +8 -0
  111. package/dist/finance/accounting/analysis.mjs +205 -0
  112. package/dist/finance/accounting/clubs.d.mts +21 -0
  113. package/dist/finance/accounting/clubs.mjs +217 -0
  114. package/dist/finance/accounting/company-statements.d.mts +7 -0
  115. package/dist/finance/accounting/company-statements.mjs +150 -0
  116. package/dist/finance/accounting/harness.d.mts +7 -0
  117. package/dist/finance/accounting/harness.mjs +45 -0
  118. package/dist/finance/accounting/index.d.mts +18 -0
  119. package/dist/finance/accounting/index.mjs +18 -0
  120. package/dist/finance/accounting/journalize.d.mts +16 -0
  121. package/dist/finance/accounting/journalize.mjs +128 -0
  122. package/dist/finance/accounting/manufacturing.d.mts +8 -0
  123. package/dist/finance/accounting/manufacturing.mjs +236 -0
  124. package/dist/finance/accounting/partnership.d.mts +7 -0
  125. package/dist/finance/accounting/partnership.mjs +152 -0
  126. package/dist/finance/accounting/period-case.d.mts +6 -0
  127. package/dist/finance/accounting/period-case.mjs +71 -0
  128. package/dist/finance/accounting/post.d.mts +9 -0
  129. package/dist/finance/accounting/post.mjs +84 -0
  130. package/dist/finance/accounting/precision.d.mts +9 -0
  131. package/dist/finance/accounting/precision.mjs +15 -0
  132. package/dist/finance/accounting/rules.d.mts +21 -0
  133. package/dist/finance/accounting/rules.mjs +37 -0
  134. package/dist/finance/accounting/solve.d.mts +28 -0
  135. package/dist/finance/accounting/solve.mjs +92 -0
  136. package/dist/finance/accounting/statements.d.mts +7 -0
  137. package/dist/finance/accounting/statements.mjs +142 -0
  138. package/dist/finance/accounting/types.d.mts +649 -0
  139. package/dist/finance/accounting/validate.d.mts +7 -0
  140. package/dist/finance/accounting/validate.mjs +67 -0
  141. package/dist/finance/accounting/verification.d.mts +24 -0
  142. package/dist/finance/accounting/verification.mjs +386 -0
  143. package/dist/finance/bizsim.d.mts +21 -39
  144. package/dist/finance/bizsim.mjs +276 -97
  145. package/dist/finance/index.d.mts +20 -43
  146. package/dist/finance/index.mjs +19 -77
  147. package/dist/finance/investment-math.d.mts +7 -0
  148. package/dist/finance/investment-math.mjs +18 -0
  149. package/dist/finance/management-accounting/budgeting.d.mts +7 -0
  150. package/dist/finance/management-accounting/budgeting.mjs +189 -0
  151. package/dist/finance/management-accounting/cash-budget.d.mts +7 -0
  152. package/dist/finance/management-accounting/cash-budget.mjs +154 -0
  153. package/dist/finance/management-accounting/costing.d.mts +8 -0
  154. package/dist/finance/management-accounting/costing.mjs +175 -0
  155. package/dist/finance/management-accounting/decisions.d.mts +8 -0
  156. package/dist/finance/management-accounting/decisions.mjs +164 -0
  157. package/dist/finance/management-accounting/index.d.mts +13 -0
  158. package/dist/finance/management-accounting/index.mjs +13 -0
  159. package/dist/finance/management-accounting/integrated-budget.d.mts +8 -0
  160. package/dist/finance/management-accounting/integrated-budget.mjs +67 -0
  161. package/dist/finance/management-accounting/inventory-costing.d.mts +7 -0
  162. package/dist/finance/management-accounting/inventory-costing.mjs +173 -0
  163. package/dist/finance/management-accounting/investment-appraisal.d.mts +7 -0
  164. package/dist/finance/management-accounting/investment-appraisal.mjs +148 -0
  165. package/dist/finance/management-accounting/management-case.d.mts +8 -0
  166. package/dist/finance/management-accounting/management-case.mjs +91 -0
  167. package/dist/finance/management-accounting/master-budget.d.mts +7 -0
  168. package/dist/finance/management-accounting/master-budget.mjs +137 -0
  169. package/dist/finance/management-accounting/production-costing.d.mts +8 -0
  170. package/dist/finance/management-accounting/production-costing.mjs +214 -0
  171. package/dist/finance/management-accounting/types.d.mts +644 -0
  172. package/dist/finance/management-accounting/variances.d.mts +7 -0
  173. package/dist/finance/management-accounting/variances.mjs +150 -0
  174. package/dist/index.d.mts +6 -6
  175. package/dist/index.mjs +1 -1
  176. package/dist/math/analysis.d.mts +61 -0
  177. package/dist/math/analysis.mjs +187 -0
  178. package/dist/math/answer-check.d.mts +50 -0
  179. package/dist/math/answer-check.mjs +106 -0
  180. package/dist/math/calculus.d.mts +4 -9
  181. package/dist/math/calculus.mjs +216 -7
  182. package/dist/math/complex.d.mts +93 -0
  183. package/dist/math/complex.mjs +239 -0
  184. package/dist/math/expr.d.mts +23 -0
  185. package/dist/math/expr.mjs +36 -0
  186. package/dist/math/index.d.mts +8 -22
  187. package/dist/math/index.mjs +8 -37
  188. package/dist/math/latex.mjs +2 -1
  189. package/dist/math/parse.mjs +1 -1
  190. package/dist/math/poly.d.mts +55 -0
  191. package/dist/math/poly.mjs +273 -0
  192. package/dist/math/rearrange.d.mts +14 -0
  193. package/dist/math/rearrange.mjs +125 -0
  194. package/dist/math/solve.d.mts +21 -0
  195. package/dist/math/solve.mjs +75 -0
  196. package/dist/networking/addressing.d.mts +26 -0
  197. package/dist/networking/addressing.mjs +33 -0
  198. package/dist/networking/cloud/access.d.mts +36 -0
  199. package/dist/networking/cloud/access.mjs +95 -0
  200. package/dist/networking/cloud/containers.d.mts +43 -0
  201. package/dist/networking/cloud/containers.mjs +54 -0
  202. package/dist/networking/cloud/edge.d.mts +17 -0
  203. package/dist/networking/cloud/edge.mjs +31 -0
  204. package/dist/networking/cloud/failure-domains.d.mts +19 -0
  205. package/dist/networking/cloud/failure-domains.mjs +22 -0
  206. package/dist/networking/cloud/geo-routing.d.mts +22 -0
  207. package/dist/networking/cloud/geo-routing.mjs +64 -0
  208. package/dist/networking/cloud/index.d.mts +18 -0
  209. package/dist/networking/cloud/index.mjs +19 -0
  210. package/dist/networking/cloud/inference-reliability.d.mts +30 -0
  211. package/dist/networking/cloud/inference-reliability.mjs +76 -0
  212. package/dist/networking/cloud/inference.d.mts +118 -0
  213. package/dist/networking/cloud/inference.mjs +179 -0
  214. package/dist/networking/cloud/infrastructure.d.mts +45 -0
  215. package/dist/networking/cloud/infrastructure.mjs +96 -0
  216. package/dist/networking/cloud/observability.d.mts +24 -0
  217. package/dist/networking/cloud/observability.mjs +34 -0
  218. package/dist/networking/cloud/orchestration.d.mts +32 -0
  219. package/dist/networking/cloud/orchestration.mjs +38 -0
  220. package/dist/networking/cloud/recovery.d.mts +21 -0
  221. package/dist/networking/cloud/recovery.mjs +27 -0
  222. package/dist/networking/cloud/releases.d.mts +42 -0
  223. package/dist/networking/cloud/releases.mjs +135 -0
  224. package/dist/networking/cloud/scaling.d.mts +25 -0
  225. package/dist/networking/cloud/scaling.mjs +65 -0
  226. package/dist/networking/cloud/secrets.d.mts +39 -0
  227. package/dist/networking/cloud/secrets.mjs +68 -0
  228. package/dist/networking/cloud/server-deployment.d.mts +29 -0
  229. package/dist/networking/cloud/server-deployment.mjs +72 -0
  230. package/dist/networking/cloud/storage.d.mts +16 -0
  231. package/dist/networking/cloud/storage.mjs +58 -0
  232. package/dist/networking/cloud/vpc.d.mts +18 -0
  233. package/dist/networking/cloud/vpc.mjs +100 -0
  234. package/dist/networking/delivery.d.mts +34 -0
  235. package/dist/networking/delivery.mjs +52 -0
  236. package/dist/networking/index.d.mts +47 -0
  237. package/dist/networking/index.mjs +47 -0
  238. package/dist/networking/ipv6.d.mts +28 -0
  239. package/dist/networking/ipv6.mjs +17 -0
  240. package/dist/networking/journeys.d.mts +83 -0
  241. package/dist/networking/journeys.mjs +161 -0
  242. package/dist/networking/models/airtime.d.mts +87 -0
  243. package/dist/networking/models/airtime.mjs +130 -0
  244. package/dist/networking/models/cellular.d.mts +157 -0
  245. package/dist/networking/models/cellular.mjs +252 -0
  246. package/dist/networking/models/encapsulation.d.mts +98 -0
  247. package/dist/networking/models/encapsulation.mjs +132 -0
  248. package/dist/networking/models/handover.d.mts +116 -0
  249. package/dist/networking/models/handover.mjs +209 -0
  250. package/dist/networking/models/handshake.d.mts +90 -0
  251. package/dist/networking/models/handshake.mjs +122 -0
  252. package/dist/networking/models/index.d.mts +14 -0
  253. package/dist/networking/models/index.mjs +15 -0
  254. package/dist/networking/models/media.d.mts +82 -0
  255. package/dist/networking/models/media.mjs +188 -0
  256. package/dist/networking/models/satellite.d.mts +86 -0
  257. package/dist/networking/models/satellite.mjs +121 -0
  258. package/dist/networking/models/spectrum.d.mts +83 -0
  259. package/dist/networking/models/spectrum.mjs +235 -0
  260. package/dist/networking/models/switch.d.mts +80 -0
  261. package/dist/networking/models/switch.mjs +155 -0
  262. package/dist/networking/models/vlan.d.mts +62 -0
  263. package/dist/networking/models/vlan.mjs +100 -0
  264. package/dist/networking/models/vpn.d.mts +66 -0
  265. package/dist/networking/models/vpn.mjs +125 -0
  266. package/dist/networking/models/wifi-privacy.d.mts +82 -0
  267. package/dist/networking/models/wifi-privacy.mjs +130 -0
  268. package/dist/networking/models/wifi.d.mts +240 -0
  269. package/dist/networking/models/wifi.mjs +562 -0
  270. package/dist/networking/nat-traversal.d.mts +24 -0
  271. package/dist/networking/nat-traversal.mjs +38 -0
  272. package/dist/networking/protocols.d.mts +17 -0
  273. package/dist/networking/protocols.mjs +57 -0
  274. package/dist/networking/queue.d.mts +12 -0
  275. package/dist/networking/queue.mjs +18 -0
  276. package/dist/networking/route-learning.d.mts +23 -0
  277. package/dist/networking/route-learning.mjs +43 -0
  278. package/dist/networking/routing.d.mts +11 -0
  279. package/dist/networking/routing.mjs +25 -0
  280. package/dist/networking/signals.d.mts +26 -0
  281. package/dist/networking/signals.mjs +35 -0
  282. package/dist/networking/subnet.d.mts +49 -0
  283. package/dist/networking/subnet.mjs +89 -0
  284. package/dist/networking/tcp-reliability.d.mts +24 -0
  285. package/dist/networking/tcp-reliability.mjs +38 -0
  286. package/dist/networking/topology/contract.d.mts +123 -0
  287. package/dist/networking/topology/index.d.mts +4 -0
  288. package/dist/networking/topology/index.mjs +4 -0
  289. package/dist/networking/topology/presets.d.mts +7 -0
  290. package/dist/networking/topology/presets.mjs +302 -0
  291. package/dist/networking/topology/simulation.d.mts +8 -0
  292. package/dist/networking/topology/simulation.mjs +179 -0
  293. package/dist/networking/wireless.d.mts +11 -0
  294. package/dist/networking/wireless.mjs +17 -0
  295. package/dist/optics/imaging.d.mts +218 -0
  296. package/dist/optics/imaging.mjs +276 -0
  297. package/dist/optics/index.d.mts +7 -0
  298. package/dist/optics/index.mjs +8 -0
  299. package/dist/optics/laws.d.mts +70 -0
  300. package/dist/optics/laws.mjs +195 -0
  301. package/dist/optics/prism.d.mts +148 -0
  302. package/dist/optics/prism.mjs +197 -0
  303. package/dist/optics/refraction.d.mts +201 -0
  304. package/dist/optics/refraction.mjs +270 -0
  305. package/dist/optics/wave-optics.d.mts +171 -0
  306. package/dist/optics/wave-optics.mjs +259 -0
  307. package/dist/physics/ac/index.d.mts +183 -0
  308. package/dist/physics/ac/index.mjs +203 -0
  309. package/dist/physics/dynamics/forces.d.mts +98 -0
  310. package/dist/physics/dynamics/forces.mjs +153 -0
  311. package/dist/physics/dynamics/friction.d.mts +76 -0
  312. package/dist/physics/dynamics/friction.mjs +119 -0
  313. package/dist/physics/dynamics/system.d.mts +68 -0
  314. package/dist/physics/dynamics/system.mjs +125 -0
  315. package/dist/physics/electrostatics/index.d.mts +169 -0
  316. package/dist/physics/electrostatics/index.mjs +249 -0
  317. package/dist/physics/energy/centre-of-mass.d.mts +115 -0
  318. package/dist/physics/energy/centre-of-mass.mjs +180 -0
  319. package/dist/physics/energy/conservation.d.mts +81 -0
  320. package/dist/physics/energy/conservation.mjs +129 -0
  321. package/dist/physics/energy/power.d.mts +90 -0
  322. package/dist/physics/energy/power.mjs +167 -0
  323. package/dist/physics/energy/spring.d.mts +73 -0
  324. package/dist/physics/energy/spring.mjs +129 -0
  325. package/dist/physics/energy/store.d.mts +63 -0
  326. package/dist/physics/energy/store.mjs +108 -0
  327. package/dist/physics/energy/theorem.d.mts +65 -0
  328. package/dist/physics/energy/theorem.mjs +113 -0
  329. package/dist/physics/energy/work.d.mts +114 -0
  330. package/dist/physics/energy/work.mjs +219 -0
  331. package/dist/physics/gravitation/body.d.mts +85 -0
  332. package/dist/physics/gravitation/body.mjs +168 -0
  333. package/dist/physics/gravitation/kepler.d.mts +127 -0
  334. package/dist/physics/gravitation/kepler.mjs +216 -0
  335. package/dist/physics/gravitation/law.d.mts +117 -0
  336. package/dist/physics/gravitation/law.mjs +175 -0
  337. package/dist/physics/gravitation/orbit.d.mts +119 -0
  338. package/dist/physics/gravitation/orbit.mjs +202 -0
  339. package/dist/physics/gravitation/potential.d.mts +114 -0
  340. package/dist/physics/gravitation/potential.mjs +202 -0
  341. package/dist/physics/gravitation/variation.d.mts +97 -0
  342. package/dist/physics/gravitation/variation.mjs +175 -0
  343. package/dist/physics/index.d.mts +35 -0
  344. package/dist/physics/index.mjs +36 -0
  345. package/dist/physics/integral-sweep.d.mts +63 -0
  346. package/dist/physics/integral-sweep.mjs +126 -0
  347. package/dist/physics/kinematics/equations.d.mts +47 -0
  348. package/dist/physics/kinematics/equations.mjs +126 -0
  349. package/dist/physics/kinematics/free-fall.d.mts +53 -0
  350. package/dist/physics/kinematics/free-fall.mjs +71 -0
  351. package/dist/physics/kinematics/given.d.mts +16 -0
  352. package/dist/physics/kinematics/given.mjs +55 -0
  353. package/dist/physics/kinematics/roots.d.mts +41 -0
  354. package/dist/physics/kinematics/roots.mjs +72 -0
  355. package/dist/physics/kinematics/solve.d.mts +52 -0
  356. package/dist/physics/kinematics/solve.mjs +172 -0
  357. package/dist/physics/magnetism/biot-savart.d.mts +161 -0
  358. package/dist/physics/magnetism/biot-savart.mjs +353 -0
  359. package/dist/physics/magnetism/flux.d.mts +94 -0
  360. package/dist/physics/magnetism/flux.mjs +313 -0
  361. package/dist/physics/magnetism/geomagnetism.d.mts +151 -0
  362. package/dist/physics/magnetism/geomagnetism.mjs +184 -0
  363. package/dist/physics/magnetism/index.d.mts +12 -0
  364. package/dist/physics/magnetism/index.mjs +74 -0
  365. package/dist/physics/magnetism/lorentz.d.mts +28 -0
  366. package/dist/physics/magnetism/lorentz.mjs +88 -0
  367. package/dist/physics/magnetism/magnetic-force.d.mts +102 -0
  368. package/dist/physics/magnetism/magnetic-force.mjs +169 -0
  369. package/dist/physics/momentum/collide.d.mts +77 -0
  370. package/dist/physics/momentum/collide.mjs +115 -0
  371. package/dist/physics/momentum/impulse.d.mts +89 -0
  372. package/dist/physics/momentum/impulse.mjs +159 -0
  373. package/dist/physics/momentum/planar.d.mts +60 -0
  374. package/dist/physics/momentum/planar.mjs +110 -0
  375. package/dist/physics/projectile.d.mts +107 -0
  376. package/dist/physics/projectile.mjs +185 -0
  377. package/dist/physics/rotation/angular.d.mts +85 -0
  378. package/dist/physics/rotation/angular.mjs +130 -0
  379. package/dist/physics/rotation/circular.d.mts +79 -0
  380. package/dist/physics/rotation/circular.mjs +131 -0
  381. package/dist/physics/rotation/inertia.d.mts +164 -0
  382. package/dist/physics/rotation/inertia.mjs +332 -0
  383. package/dist/physics/rotation/torque.d.mts +65 -0
  384. package/dist/physics/rotation/torque.mjs +134 -0
  385. package/dist/physics/vectors.d.mts +64 -0
  386. package/dist/physics/vectors.mjs +114 -0
  387. package/dist/quantity/index.d.mts +119 -0
  388. package/dist/quantity/index.mjs +417 -0
  389. package/dist/relation/derive.d.mts +74 -0
  390. package/dist/relation/derive.mjs +73 -0
  391. package/dist/relation/index.d.mts +56 -0
  392. package/dist/relation/index.mjs +234 -0
  393. package/dist/scene/evaluators.mjs +1 -1
  394. package/dist/sim/thermal.mjs +45 -20
  395. package/dist/thermo/calorimetry.d.mts +207 -0
  396. package/dist/thermo/calorimetry.mjs +345 -0
  397. package/dist/thermo/cycles.d.mts +142 -0
  398. package/dist/thermo/cycles.mjs +256 -0
  399. package/dist/thermo/entropy.d.mts +87 -0
  400. package/dist/thermo/entropy.mjs +140 -0
  401. package/dist/thermo/expansion.d.mts +130 -0
  402. package/dist/thermo/expansion.mjs +178 -0
  403. package/dist/thermo/gas.d.mts +197 -0
  404. package/dist/thermo/gas.mjs +279 -0
  405. package/dist/thermo/heat-transfer.d.mts +164 -0
  406. package/dist/thermo/heat-transfer.mjs +217 -0
  407. package/dist/thermo/index.d.mts +9 -82
  408. package/dist/thermo/index.mjs +9 -132
  409. package/dist/thermo/processes.d.mts +95 -0
  410. package/dist/thermo/processes.mjs +154 -0
  411. package/dist/thermo/temperature.d.mts +174 -0
  412. package/dist/thermo/temperature.mjs +236 -0
  413. package/dist/waves/damping.d.mts +224 -0
  414. package/dist/waves/damping.mjs +317 -0
  415. package/dist/waves/doppler.d.mts +72 -0
  416. package/dist/waves/doppler.mjs +125 -0
  417. package/dist/waves/index.d.mts +10 -0
  418. package/dist/waves/index.mjs +10 -0
  419. package/dist/waves/pendulum.d.mts +130 -0
  420. package/dist/waves/pendulum.mjs +211 -0
  421. package/dist/waves/pitch.d.mts +125 -0
  422. package/dist/waves/pitch.mjs +158 -0
  423. package/dist/waves/shm.d.mts +170 -0
  424. package/dist/waves/shm.mjs +279 -0
  425. package/dist/waves/springs.d.mts +103 -0
  426. package/dist/waves/springs.mjs +176 -0
  427. package/dist/waves/superposition.d.mts +124 -0
  428. package/dist/waves/superposition.mjs +196 -0
  429. package/dist/waves/wave.d.mts +154 -0
  430. package/dist/waves/wave.mjs +178 -0
  431. package/package.json +74 -2
@@ -0,0 +1,100 @@
1
+ //#region src/atomic/properties.d.ts
2
+ /**
3
+ * Measured properties of the elements: size, how hard they hold their electrons, how strongly they
4
+ * pull on someone else's.
5
+ *
6
+ * ## Why these are data and almost nothing else here is
7
+ *
8
+ * Block, group, period and configuration are all consequences of counting, so they are computed.
9
+ * These are not. No amount of reasoning from the electron arrangement gives you that the first
10
+ * ionisation energy of sodium is 496 kJ/mol; somebody measured it. Keeping the two kinds apart is
11
+ * the whole organising idea of this engine, and this file is where the measured half lives.
12
+ *
13
+ * ## Provenance
14
+ *
15
+ * covalent radius single-bond covalent radii, Cordero et al. (2008), in picometres
16
+ * ionisation energies NIST Atomic Spectra Database, in kJ/mol
17
+ * electronegativity the Pauling scale, which is the one syllabuses use
18
+ * electron affinity the enthalpy change for X(g) + e- to X-(g), in kJ/mol
19
+ *
20
+ * Electron affinity is signed the way a syllabus signs it: NEGATIVE means energy is given out.
21
+ * That is worth stating because tables elsewhere often quote the same quantity as a positive
22
+ * "affinity", and the two differ by a minus sign rather than by anything physical.
23
+ *
24
+ * ## What is covered, and what happens outside it
25
+ *
26
+ * Proton numbers 1 to 54 for radius, first ionisation energy and electronegativity, which spans
27
+ * everything from hydrogen through xenon. Successive ionisation energies for lithium through argon,
28
+ * which is the set the shell-structure argument is built on. Electron affinities for groups 16 and
29
+ * 17 only, where the value is both reliable and examined.
30
+ *
31
+ * The range stopped at 38 until a lab needed the whole of period 5. It was carrying its own table
32
+ * of elements to get there, and that table quoted CALCULATED radii (Clementi's Hartree-Fock values,
33
+ * where hydrogen is 53 pm) rather than measured ones (Cordero, where it is 31). Both are real
34
+ * quantities and they are not interchangeable, so the fix was to extend the measured set rather
35
+ * than to admit theoretical numbers into a file whose whole point is that somebody measured these.
36
+ *
37
+ * Every accessor returns undefined outside its range rather than a plausible-looking zero. A
38
+ * missing measurement and a measurement of zero are different facts, and a trend drawn through a
39
+ * zero that meant "no data" would be worse than no trend at all.
40
+ *
41
+ * Noble gases have no Pauling electronegativity below krypton, because the scale is defined from
42
+ * bond energies and helium, neon and argon form no bonds to measure. That is a real absence and is
43
+ * left as one.
44
+ *
45
+ * Pure: no React, no pixels.
46
+ */
47
+ /**
48
+ * Why a noble gas breaks the radius trend, and why that is not a mistake in the table.
49
+ *
50
+ * A covalent radius is half the distance between two bonded atoms, so it can only be measured on an
51
+ * element that forms covalent bonds. Helium, neon and argon essentially do not. Their quoted radii
52
+ * are estimated by other means, and they come out LARGER than the halogen to their left: argon at
53
+ * 106 pm against chlorine's 102. Read as part of the across-a-period trend that looks like the
54
+ * pattern failing at the last step, and it is not. It is the last value being a different kind of
55
+ * measurement wearing the same units.
56
+ *
57
+ * Worth surfacing rather than smoothing away. A learner who notices the kink and is told the
58
+ * numbers are not comparable has learnt something about measurement; one whose chart quietly omits
59
+ * argon has not.
60
+ */
61
+ declare const NOBLE_GAS_RADIUS_NOTE = "A covalent radius is half the distance between two bonded atoms, so it needs an element that forms covalent bonds. The light noble gases barely do, and their quoted radii are estimated another way. Argon at 106 pm looks larger than chlorine at 102 pm for that reason, not because the trend across the period fails.";
62
+ interface ElementProperties {
63
+ readonly Z: number;
64
+ /** Single-bond covalent radius, picometres. */
65
+ readonly covalentRadiusPm: number;
66
+ /** Energy to remove the first electron from a gaseous atom, kJ/mol. */
67
+ readonly firstIonisationEnergy: number;
68
+ /** Pauling electronegativity, or undefined where the scale has no value. */
69
+ readonly electronegativity?: number;
70
+ }
71
+ /** Every element this file has measurements for, in proton-number order. */
72
+ declare const PROPERTIES: readonly ElementProperties[];
73
+ /** Measured properties, or undefined outside the covered range. */
74
+ declare const propertiesOf: (Z: number) => ElementProperties | undefined;
75
+ /** Covalent radius in picometres, or undefined if not measured here. */
76
+ declare const covalentRadius: (Z: number) => number | undefined;
77
+ /** First ionisation energy in kJ/mol, or undefined if not measured here. */
78
+ declare const firstIonisationEnergy: (Z: number) => number | undefined;
79
+ /** Pauling electronegativity, or undefined where the scale has no value for this element. */
80
+ declare const electronegativity: (Z: number) => number | undefined;
81
+ /**
82
+ * Successive ionisation energies in kJ/mol, first electron first.
83
+ *
84
+ * The set the shell-structure argument rests on: the jumps in these numbers are the direct evidence
85
+ * that electrons sit in shells at all, and that the outermost shell holds a definite number of
86
+ * them. Sodium's second ionisation energy is nine times its first, because the second electron has
87
+ * to come out of a full inner shell.
88
+ */
89
+ declare const SUCCESSIVE_IONISATION_ENERGIES: Readonly<Record<string, readonly number[]>>;
90
+ /**
91
+ * First electron affinity in kJ/mol, for the groups where it is examined.
92
+ *
93
+ * Signed as an enthalpy change, so negative means energy is given out. Restricted to groups 16 and
94
+ * 17 on purpose: for most other elements the value is near zero or endothermic, and quoting a
95
+ * precise-looking number for a process that barely happens would suggest a confidence the
96
+ * measurement does not have.
97
+ */
98
+ declare const FIRST_ELECTRON_AFFINITY: Readonly<Record<string, number>>;
99
+ //#endregion
100
+ export { ElementProperties, FIRST_ELECTRON_AFFINITY, NOBLE_GAS_RADIUS_NOTE, PROPERTIES, SUCCESSIVE_IONISATION_ENERGIES, covalentRadius, electronegativity, firstIonisationEnergy, propertiesOf };
@@ -0,0 +1,574 @@
1
+ //#region src/atomic/properties.ts
2
+ /**
3
+ * Measured properties of the elements: size, how hard they hold their electrons, how strongly they
4
+ * pull on someone else's.
5
+ *
6
+ * ## Why these are data and almost nothing else here is
7
+ *
8
+ * Block, group, period and configuration are all consequences of counting, so they are computed.
9
+ * These are not. No amount of reasoning from the electron arrangement gives you that the first
10
+ * ionisation energy of sodium is 496 kJ/mol; somebody measured it. Keeping the two kinds apart is
11
+ * the whole organising idea of this engine, and this file is where the measured half lives.
12
+ *
13
+ * ## Provenance
14
+ *
15
+ * covalent radius single-bond covalent radii, Cordero et al. (2008), in picometres
16
+ * ionisation energies NIST Atomic Spectra Database, in kJ/mol
17
+ * electronegativity the Pauling scale, which is the one syllabuses use
18
+ * electron affinity the enthalpy change for X(g) + e- to X-(g), in kJ/mol
19
+ *
20
+ * Electron affinity is signed the way a syllabus signs it: NEGATIVE means energy is given out.
21
+ * That is worth stating because tables elsewhere often quote the same quantity as a positive
22
+ * "affinity", and the two differ by a minus sign rather than by anything physical.
23
+ *
24
+ * ## What is covered, and what happens outside it
25
+ *
26
+ * Proton numbers 1 to 54 for radius, first ionisation energy and electronegativity, which spans
27
+ * everything from hydrogen through xenon. Successive ionisation energies for lithium through argon,
28
+ * which is the set the shell-structure argument is built on. Electron affinities for groups 16 and
29
+ * 17 only, where the value is both reliable and examined.
30
+ *
31
+ * The range stopped at 38 until a lab needed the whole of period 5. It was carrying its own table
32
+ * of elements to get there, and that table quoted CALCULATED radii (Clementi's Hartree-Fock values,
33
+ * where hydrogen is 53 pm) rather than measured ones (Cordero, where it is 31). Both are real
34
+ * quantities and they are not interchangeable, so the fix was to extend the measured set rather
35
+ * than to admit theoretical numbers into a file whose whole point is that somebody measured these.
36
+ *
37
+ * Every accessor returns undefined outside its range rather than a plausible-looking zero. A
38
+ * missing measurement and a measurement of zero are different facts, and a trend drawn through a
39
+ * zero that meant "no data" would be worse than no trend at all.
40
+ *
41
+ * Noble gases have no Pauling electronegativity below krypton, because the scale is defined from
42
+ * bond energies and helium, neon and argon form no bonds to measure. That is a real absence and is
43
+ * left as one.
44
+ *
45
+ * Pure: no React, no pixels.
46
+ */
47
+ /**
48
+ * Why a noble gas breaks the radius trend, and why that is not a mistake in the table.
49
+ *
50
+ * A covalent radius is half the distance between two bonded atoms, so it can only be measured on an
51
+ * element that forms covalent bonds. Helium, neon and argon essentially do not. Their quoted radii
52
+ * are estimated by other means, and they come out LARGER than the halogen to their left: argon at
53
+ * 106 pm against chlorine's 102. Read as part of the across-a-period trend that looks like the
54
+ * pattern failing at the last step, and it is not. It is the last value being a different kind of
55
+ * measurement wearing the same units.
56
+ *
57
+ * Worth surfacing rather than smoothing away. A learner who notices the kink and is told the
58
+ * numbers are not comparable has learnt something about measurement; one whose chart quietly omits
59
+ * argon has not.
60
+ */
61
+ const NOBLE_GAS_RADIUS_NOTE = "A covalent radius is half the distance between two bonded atoms, so it needs an element that forms covalent bonds. The light noble gases barely do, and their quoted radii are estimated another way. Argon at 106 pm looks larger than chlorine at 102 pm for that reason, not because the trend across the period fails.";
62
+ const BY_Z = new Map([
63
+ [
64
+ 1,
65
+ 31,
66
+ 1312,
67
+ 2.2
68
+ ],
69
+ [
70
+ 2,
71
+ 28,
72
+ 2372
73
+ ],
74
+ [
75
+ 3,
76
+ 128,
77
+ 520,
78
+ .98
79
+ ],
80
+ [
81
+ 4,
82
+ 96,
83
+ 899,
84
+ 1.57
85
+ ],
86
+ [
87
+ 5,
88
+ 84,
89
+ 801,
90
+ 2.04
91
+ ],
92
+ [
93
+ 6,
94
+ 76,
95
+ 1086,
96
+ 2.55
97
+ ],
98
+ [
99
+ 7,
100
+ 71,
101
+ 1402,
102
+ 3.04
103
+ ],
104
+ [
105
+ 8,
106
+ 66,
107
+ 1314,
108
+ 3.44
109
+ ],
110
+ [
111
+ 9,
112
+ 57,
113
+ 1681,
114
+ 3.98
115
+ ],
116
+ [
117
+ 10,
118
+ 58,
119
+ 2081
120
+ ],
121
+ [
122
+ 11,
123
+ 166,
124
+ 496,
125
+ .93
126
+ ],
127
+ [
128
+ 12,
129
+ 141,
130
+ 738,
131
+ 1.31
132
+ ],
133
+ [
134
+ 13,
135
+ 121,
136
+ 578,
137
+ 1.61
138
+ ],
139
+ [
140
+ 14,
141
+ 111,
142
+ 786,
143
+ 1.9
144
+ ],
145
+ [
146
+ 15,
147
+ 107,
148
+ 1012,
149
+ 2.19
150
+ ],
151
+ [
152
+ 16,
153
+ 105,
154
+ 1e3,
155
+ 2.58
156
+ ],
157
+ [
158
+ 17,
159
+ 102,
160
+ 1251,
161
+ 3.16
162
+ ],
163
+ [
164
+ 18,
165
+ 106,
166
+ 1521
167
+ ],
168
+ [
169
+ 19,
170
+ 203,
171
+ 419,
172
+ .82
173
+ ],
174
+ [
175
+ 20,
176
+ 176,
177
+ 590,
178
+ 1
179
+ ],
180
+ [
181
+ 21,
182
+ 170,
183
+ 633,
184
+ 1.36
185
+ ],
186
+ [
187
+ 22,
188
+ 160,
189
+ 659,
190
+ 1.54
191
+ ],
192
+ [
193
+ 23,
194
+ 153,
195
+ 651,
196
+ 1.63
197
+ ],
198
+ [
199
+ 24,
200
+ 139,
201
+ 653,
202
+ 1.66
203
+ ],
204
+ [
205
+ 25,
206
+ 139,
207
+ 717,
208
+ 1.55
209
+ ],
210
+ [
211
+ 26,
212
+ 132,
213
+ 762,
214
+ 1.83
215
+ ],
216
+ [
217
+ 27,
218
+ 126,
219
+ 760,
220
+ 1.88
221
+ ],
222
+ [
223
+ 28,
224
+ 124,
225
+ 737,
226
+ 1.91
227
+ ],
228
+ [
229
+ 29,
230
+ 132,
231
+ 745,
232
+ 1.9
233
+ ],
234
+ [
235
+ 30,
236
+ 122,
237
+ 906,
238
+ 1.65
239
+ ],
240
+ [
241
+ 31,
242
+ 122,
243
+ 579,
244
+ 1.81
245
+ ],
246
+ [
247
+ 32,
248
+ 120,
249
+ 762,
250
+ 2.01
251
+ ],
252
+ [
253
+ 33,
254
+ 119,
255
+ 947,
256
+ 2.18
257
+ ],
258
+ [
259
+ 34,
260
+ 120,
261
+ 941,
262
+ 2.55
263
+ ],
264
+ [
265
+ 35,
266
+ 120,
267
+ 1140,
268
+ 2.96
269
+ ],
270
+ [
271
+ 36,
272
+ 116,
273
+ 1351,
274
+ 3
275
+ ],
276
+ [
277
+ 37,
278
+ 220,
279
+ 403,
280
+ .82
281
+ ],
282
+ [
283
+ 38,
284
+ 195,
285
+ 550,
286
+ .95
287
+ ],
288
+ [
289
+ 39,
290
+ 190,
291
+ 600,
292
+ 1.22
293
+ ],
294
+ [
295
+ 40,
296
+ 175,
297
+ 640,
298
+ 1.33
299
+ ],
300
+ [
301
+ 41,
302
+ 164,
303
+ 652,
304
+ 1.6
305
+ ],
306
+ [
307
+ 42,
308
+ 154,
309
+ 684,
310
+ 2.16
311
+ ],
312
+ [
313
+ 43,
314
+ 147,
315
+ 702,
316
+ 1.9
317
+ ],
318
+ [
319
+ 44,
320
+ 146,
321
+ 710,
322
+ 2.2
323
+ ],
324
+ [
325
+ 45,
326
+ 142,
327
+ 720,
328
+ 2.28
329
+ ],
330
+ [
331
+ 46,
332
+ 139,
333
+ 804,
334
+ 2.2
335
+ ],
336
+ [
337
+ 47,
338
+ 145,
339
+ 731,
340
+ 1.93
341
+ ],
342
+ [
343
+ 48,
344
+ 144,
345
+ 868,
346
+ 1.69
347
+ ],
348
+ [
349
+ 49,
350
+ 142,
351
+ 558,
352
+ 1.78
353
+ ],
354
+ [
355
+ 50,
356
+ 139,
357
+ 709,
358
+ 1.96
359
+ ],
360
+ [
361
+ 51,
362
+ 139,
363
+ 834,
364
+ 2.05
365
+ ],
366
+ [
367
+ 52,
368
+ 138,
369
+ 869,
370
+ 2.1
371
+ ],
372
+ [
373
+ 53,
374
+ 139,
375
+ 1008,
376
+ 2.66
377
+ ],
378
+ [
379
+ 54,
380
+ 140,
381
+ 1170,
382
+ 2.6
383
+ ]
384
+ ].map(([Z, covalentRadiusPm, firstIonisationEnergy, electronegativity]) => [Z, {
385
+ Z,
386
+ covalentRadiusPm,
387
+ firstIonisationEnergy,
388
+ ...electronegativity === void 0 ? {} : { electronegativity }
389
+ }]));
390
+ /** Every element this file has measurements for, in proton-number order. */
391
+ const PROPERTIES = [...BY_Z.values()];
392
+ /** Measured properties, or undefined outside the covered range. */
393
+ const propertiesOf = (Z) => BY_Z.get(Z);
394
+ /** Covalent radius in picometres, or undefined if not measured here. */
395
+ const covalentRadius = (Z) => BY_Z.get(Z)?.covalentRadiusPm;
396
+ /** First ionisation energy in kJ/mol, or undefined if not measured here. */
397
+ const firstIonisationEnergy = (Z) => BY_Z.get(Z)?.firstIonisationEnergy;
398
+ /** Pauling electronegativity, or undefined where the scale has no value for this element. */
399
+ const electronegativity = (Z) => BY_Z.get(Z)?.electronegativity;
400
+ /**
401
+ * Successive ionisation energies in kJ/mol, first electron first.
402
+ *
403
+ * The set the shell-structure argument rests on: the jumps in these numbers are the direct evidence
404
+ * that electrons sit in shells at all, and that the outermost shell holds a definite number of
405
+ * them. Sodium's second ionisation energy is nine times its first, because the second electron has
406
+ * to come out of a full inner shell.
407
+ */
408
+ const SUCCESSIVE_IONISATION_ENERGIES = {
409
+ Li: [
410
+ 520,
411
+ 7298,
412
+ 11815
413
+ ],
414
+ Be: [
415
+ 899,
416
+ 1757,
417
+ 14849,
418
+ 21007
419
+ ],
420
+ B: [
421
+ 801,
422
+ 2427,
423
+ 3660,
424
+ 25026,
425
+ 32827
426
+ ],
427
+ C: [
428
+ 1086,
429
+ 2353,
430
+ 4620,
431
+ 6223,
432
+ 37831,
433
+ 47277
434
+ ],
435
+ N: [
436
+ 1402,
437
+ 2856,
438
+ 4578,
439
+ 7475,
440
+ 9445,
441
+ 53267,
442
+ 64360
443
+ ],
444
+ O: [
445
+ 1314,
446
+ 3388,
447
+ 5301,
448
+ 7469,
449
+ 10990,
450
+ 13327,
451
+ 71330,
452
+ 84078
453
+ ],
454
+ F: [
455
+ 1681,
456
+ 3374,
457
+ 6050,
458
+ 8408,
459
+ 11023,
460
+ 15164,
461
+ 17868,
462
+ 92038
463
+ ],
464
+ Ne: [
465
+ 2081,
466
+ 3952,
467
+ 6122,
468
+ 9371,
469
+ 12177,
470
+ 15238,
471
+ 19999,
472
+ 23069
473
+ ],
474
+ Na: [
475
+ 496,
476
+ 4563,
477
+ 6910,
478
+ 9543,
479
+ 13354,
480
+ 16613,
481
+ 20117,
482
+ 25496
483
+ ],
484
+ Mg: [
485
+ 738,
486
+ 1451,
487
+ 7733,
488
+ 10540,
489
+ 13630,
490
+ 17995,
491
+ 21703,
492
+ 25656
493
+ ],
494
+ Al: [
495
+ 578,
496
+ 1817,
497
+ 2745,
498
+ 11577,
499
+ 14842,
500
+ 18379,
501
+ 23326,
502
+ 27465
503
+ ],
504
+ Si: [
505
+ 786,
506
+ 1577,
507
+ 3232,
508
+ 4356,
509
+ 16091,
510
+ 19805,
511
+ 23780,
512
+ 29287
513
+ ],
514
+ P: [
515
+ 1012,
516
+ 1907,
517
+ 2914,
518
+ 4964,
519
+ 6274,
520
+ 21267,
521
+ 25431,
522
+ 29872
523
+ ],
524
+ S: [
525
+ 1e3,
526
+ 2252,
527
+ 3357,
528
+ 4556,
529
+ 7004,
530
+ 8496,
531
+ 27107,
532
+ 31719
533
+ ],
534
+ Cl: [
535
+ 1251,
536
+ 2298,
537
+ 3822,
538
+ 5158,
539
+ 6542,
540
+ 9362,
541
+ 11018,
542
+ 33604
543
+ ],
544
+ Ar: [
545
+ 1521,
546
+ 2666,
547
+ 3931,
548
+ 5771,
549
+ 7238,
550
+ 8781,
551
+ 11995,
552
+ 13842
553
+ ]
554
+ };
555
+ /**
556
+ * First electron affinity in kJ/mol, for the groups where it is examined.
557
+ *
558
+ * Signed as an enthalpy change, so negative means energy is given out. Restricted to groups 16 and
559
+ * 17 on purpose: for most other elements the value is near zero or endothermic, and quoting a
560
+ * precise-looking number for a process that barely happens would suggest a confidence the
561
+ * measurement does not have.
562
+ */
563
+ const FIRST_ELECTRON_AFFINITY = {
564
+ O: -141,
565
+ S: -200,
566
+ Se: -195,
567
+ F: -328,
568
+ Cl: -349,
569
+ Br: -325,
570
+ I: -295
571
+ };
572
+
573
+ //#endregion
574
+ export { FIRST_ELECTRON_AFFINITY, NOBLE_GAS_RADIUS_NOTE, PROPERTIES, SUCCESSIVE_IONISATION_ENERGIES, covalentRadius, electronegativity, firstIonisationEnergy, propertiesOf };