unit_measurements 3.8.0 → 4.0.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.
- checksums.yaml +4 -4
- data/CHANGELOG.md +26 -2
- data/Gemfile.lock +1 -1
- data/README.md +68 -80
- data/lib/unit_measurements/arithmetic.rb +4 -4
- data/lib/unit_measurements/base.rb +2 -3
- data/lib/unit_measurements/comparison.rb +2 -1
- data/lib/unit_measurements/conversion.rb +5 -5
- data/lib/unit_measurements/errors/primitive_unit_already_set_error.rb +11 -0
- data/lib/unit_measurements/formatter.rb +2 -2
- data/lib/unit_measurements/math.rb +5 -5
- data/lib/unit_measurements/measurement.rb +5 -11
- data/lib/unit_measurements/normalizer.rb +21 -28
- data/lib/unit_measurements/unit.rb +8 -5
- data/lib/unit_measurements/unit_group.rb +41 -7
- data/lib/unit_measurements/unit_group_builder.rb +10 -27
- data/lib/unit_measurements/unit_groups/acceleration.rb +8 -6
- data/lib/unit_measurements/unit_groups/all.rb +6 -6
- data/lib/unit_measurements/unit_groups/amount_of_substance.rb +4 -4
- data/lib/unit_measurements/unit_groups/angular_acceleration.rb +5 -5
- data/lib/unit_measurements/unit_groups/angular_velocity.rb +14 -14
- data/lib/unit_measurements/unit_groups/area.rb +8 -10
- data/lib/unit_measurements/unit_groups/density.rb +7 -8
- data/lib/unit_measurements/unit_groups/electric_charge.rb +7 -9
- data/lib/unit_measurements/unit_groups/electric_conductance.rb +18 -0
- data/lib/unit_measurements/unit_groups/electric_current.rb +6 -8
- data/lib/unit_measurements/unit_groups/electric_potential.rb +19 -0
- data/lib/unit_measurements/unit_groups/electrical_capacitance.rb +18 -0
- data/lib/unit_measurements/unit_groups/electrical_elastance.rb +13 -0
- data/lib/unit_measurements/unit_groups/electrical_inductance.rb +18 -0
- data/lib/unit_measurements/unit_groups/electrical_resistance.rb +19 -0
- data/lib/unit_measurements/unit_groups/force.rb +9 -11
- data/lib/unit_measurements/unit_groups/length.rb +7 -9
- data/lib/unit_measurements/unit_groups/luminous_intensity.rb +4 -4
- data/lib/unit_measurements/unit_groups/magnetic_field.rb +4 -4
- data/lib/unit_measurements/unit_groups/magnetic_flux.rb +6 -7
- data/lib/unit_measurements/unit_groups/magnetic_induction.rb +4 -6
- data/lib/unit_measurements/unit_groups/plane_angle.rb +11 -10
- data/lib/unit_measurements/unit_groups/quantity.rb +7 -5
- data/lib/unit_measurements/unit_groups/solid_angle.rb +7 -7
- data/lib/unit_measurements/unit_groups/sound_level.rb +4 -4
- data/lib/unit_measurements/unit_groups/temperature.rb +4 -4
- data/lib/unit_measurements/unit_groups/time.rb +13 -12
- data/lib/unit_measurements/unit_groups/velocity.rb +12 -16
- data/lib/unit_measurements/unit_groups/volume.rb +12 -14
- data/lib/unit_measurements/unit_groups/weight.rb +5 -5
- data/lib/unit_measurements/version.rb +1 -1
- data/units.md +72 -72
- metadata +9 -10
- data/lib/unit_measurements/unit_groups/capacitance.rb +0 -19
- data/lib/unit_measurements/unit_groups/conductance.rb +0 -19
- data/lib/unit_measurements/unit_groups/elastance.rb +0 -12
- data/lib/unit_measurements/unit_groups/inductance.rb +0 -19
- data/lib/unit_measurements/unit_groups/resistance.rb +0 -20
- data/lib/unit_measurements/unit_groups/voltage.rb +0 -21
- data/lib/unit_measurements/unit_methods.rb +0 -45
- data/lib/unit_measurements/unit_system.rb +0 -29
data/units.md
CHANGED
@@ -5,8 +5,7 @@ bundled units before converting your measurements.
|
|
5
5
|
|
6
6
|
**Notes:**
|
7
7
|
1. Unit names suffixed with `*` support all [SI prefixes](README.md#si-units-support).
|
8
|
-
|
9
|
-
Below are the units which are bundled in the unit_measurements.
|
8
|
+
2. Primitive unit of the unit group is in _emphasis typeface_.
|
10
9
|
|
11
10
|
## 1. Length/Distance
|
12
11
|
|
@@ -14,7 +13,7 @@ These units are defined in `UnitMeasurements::Length`.
|
|
14
13
|
|
15
14
|
| # | Name | Aliases |
|
16
15
|
|:--|:--|:--|
|
17
|
-
|
|
16
|
+
| _1_ | _m*_ | _meter, metre, meters, metres_ |
|
18
17
|
| 2 | in | ", inch, inches |
|
19
18
|
| 3 | ft | ', foot, feet |
|
20
19
|
| 4 | yd | yard, yards |
|
@@ -26,7 +25,7 @@ These units are defined in `UnitMeasurements::Weight`.
|
|
26
25
|
|
27
26
|
| # | Name | Aliases |
|
28
27
|
|--|--|--|
|
29
|
-
|
|
28
|
+
| _1_ | _g*_ | _gram, grams, gramme, grammes_ |
|
30
29
|
| 2 | q | quintal, quintals |
|
31
30
|
| 3 | t | tonne, tonnes, metric tonne, metric tonnes |
|
32
31
|
|
@@ -36,13 +35,13 @@ These units are defined in `UnitMeasurements::Time`.
|
|
36
35
|
|
37
36
|
| # | Name | Aliases |
|
38
37
|
|:--|:--|:--|
|
39
|
-
|
|
38
|
+
| _1_ | _s*_ | _sec, second, seconds_ |
|
40
39
|
| 2 | h | hr, hour, hours |
|
41
40
|
| 3 | d | day, days |
|
42
41
|
| 4 | wk | week, weeks |
|
43
|
-
| 5 |
|
44
|
-
| 6 |
|
45
|
-
| 7 |
|
42
|
+
| 5 | mo | month, months |
|
43
|
+
| 6 | yr | y, year, years |
|
44
|
+
| 7 | ftn | 4tnite, fortnight, fortnights |
|
46
45
|
| 8 | min | minute, minutes |
|
47
46
|
| 9 | qtr | quarter, quarters |
|
48
47
|
| 10 | dec | decade, decades |
|
@@ -54,7 +53,7 @@ These units are defined in `UnitMeasurements::AmountOfSubstance`.
|
|
54
53
|
|
55
54
|
| # | Name | Aliases |
|
56
55
|
|:--|:--|:--|
|
57
|
-
|
|
56
|
+
| _1_ | _mol*_ | _mole, moles_ |
|
58
57
|
| 2 | NA | avogadro constant |
|
59
58
|
|
60
59
|
## 5. Electric current
|
@@ -63,7 +62,7 @@ These units are defined in `UnitMeasurements::ElectricCurrent`.
|
|
63
62
|
|
64
63
|
| # | Name | Aliases |
|
65
64
|
|:--|:--|:--|
|
66
|
-
|
|
65
|
+
| _1_ | _A*_ | _amp, ampere, amperes_ |
|
67
66
|
| 2 | abA | abampere, abamperes |
|
68
67
|
| 3 | Bi | biot, biots |
|
69
68
|
| 4 | statA | statampere, statamperes |
|
@@ -74,7 +73,7 @@ These units are defined in `UnitMeasurements::LuminousIntensity`.
|
|
74
73
|
|
75
74
|
| # | Name | Aliases |
|
76
75
|
|:--|:--|:--|
|
77
|
-
|
|
76
|
+
| _1_ | _cd*_ | _candela, candelas_ |
|
78
77
|
| 2 | hk | hefnerkerze |
|
79
78
|
|
80
79
|
## 7. Temperature
|
@@ -83,7 +82,7 @@ These units are defined in `UnitMeasurements::Temperature`.
|
|
83
82
|
|
84
83
|
| # | Name | Aliases |
|
85
84
|
|:--|:--|:--|
|
86
|
-
|
|
85
|
+
| _1_ | _K*_ | _kelvin, kelvins_ |
|
87
86
|
| 2 | °R | R, °Ra, Ra, rankine |
|
88
87
|
|
89
88
|
## 8. Area
|
@@ -92,7 +91,7 @@ These units are defined in `UnitMeasurements::Area`.
|
|
92
91
|
|
93
92
|
| # | Name | Aliases |
|
94
93
|
|:--|:--|:--|
|
95
|
-
|
|
94
|
+
| _1_ | _m²_ | _m^2, sq m, square meter, square meters, square metre, square metres_ |
|
96
95
|
| 2 | km² | km^2, sq km, square kilometer, square kilometers, square kilometre, square kilometres |
|
97
96
|
| 3 | in² | in^2, sq in, square inch, square inches |
|
98
97
|
| 4 | ft² | ft^2, sq ft, square foot, square feet |
|
@@ -106,7 +105,7 @@ These units are defined in `UnitMeasurements::Volume`.
|
|
106
105
|
| # | Name | Aliases |
|
107
106
|
|:--|:--|:--|
|
108
107
|
| 1 | l* | liter, litre, liters, litres |
|
109
|
-
|
|
108
|
+
| _2_ | _m³_ | _m^3, cu m, cubic meter, cubic meters, cubic metre, cubic metres_ |
|
110
109
|
| 3 | mm³ | mm^3, cu mm, cubic millimeter, cubic millimeters, cubic millimetre, cubic millimetres |
|
111
110
|
| 4 | cm³ | cm^3, cu cm, cubic centimeter, cubic centimeters, cubic centimetre, cubic centimetres |
|
112
111
|
| 5 | dm³ | dm^3, cu dm, cubic decimeter, cubic decimeters, cubic decimetre, cubic decimetres |
|
@@ -123,7 +122,7 @@ These units are defined in `UnitMeasurements::Density`.
|
|
123
122
|
| # | Name | Aliases |
|
124
123
|
|:--|:--|:--|
|
125
124
|
| 1 | g/m³ | g/m^3, g·m⁻³, gram per cubic meter, grams per cubic meter, gramme per cubic metre, grammes per cubic metre |
|
126
|
-
|
|
125
|
+
| _2_ | _kg/m³_ | _kg/m^3, kg·m⁻³, kilogram per cubic meter, kilograms per cubic meter, kilogramme per cubic metre, kilogrammes per cubic metre_ |
|
127
126
|
| 3 | g/l | g·l⁻¹, gram per liter, grams per liter, gramme per litre, grammes per litre |
|
128
127
|
| 4 | g/ml | g·ml⁻¹, gram per milliliter, grams per milliliter, gramme per millilitre, grammes per millilitre |
|
129
128
|
| 5 | kg/l | kg·l⁻¹, kilogram per liter, kilograms per liter, kilogramme per litre, kilogrammes per litre |
|
@@ -147,7 +146,8 @@ These units are defined in `UnitMeasurements::SoundLevel`.
|
|
147
146
|
| # | Name | Aliases |
|
148
147
|
|:--|:--|:--|
|
149
148
|
| 1 | B* | bel, bels |
|
150
|
-
|
|
149
|
+
| _2_ | _dB_ | _decibel, decibels_ |
|
150
|
+
| 3 | Np | neper, nepers |
|
151
151
|
|
152
152
|
## 13. Plane angle
|
153
153
|
|
@@ -155,7 +155,7 @@ These units are defined in `UnitMeasurements::PlaneAngle`.
|
|
155
155
|
|
156
156
|
| # | Name | Aliases |
|
157
157
|
|:--|:--|:--|
|
158
|
-
|
|
158
|
+
| _1_ | _rad*_ | _radian, radians_ |
|
159
159
|
| 2 | deg | °, degree, degrees |
|
160
160
|
| 3 | gon | ᵍ, grad, gradian, gradians |
|
161
161
|
| 4 | cir | circle, circles |
|
@@ -171,7 +171,7 @@ These units are defined in `UnitMeasurements::SolidAngle`.
|
|
171
171
|
|
172
172
|
| # | Name | Aliases |
|
173
173
|
|:--|:--|:--|
|
174
|
-
|
|
174
|
+
| _1_ | _sr*_ | _steradian, steradians_ |
|
175
175
|
| 2 | sp | spat, spats |
|
176
176
|
| 3 | deg² | (°)², sq °, square degree, square degrees |
|
177
177
|
| 4 | arcmin² | (′)², sq ′, square arcminute, square arcminutes |
|
@@ -183,7 +183,7 @@ These units are defined in `UnitMeasurements::Force`.
|
|
183
183
|
|
184
184
|
| # | Name | Aliases |
|
185
185
|
|:--|:--|:--|
|
186
|
-
|
|
186
|
+
| _1_ | _N*_ | _newton, newtons_ |
|
187
187
|
| 2 | tf | tonne-force |
|
188
188
|
| 3 | dyn | dyne, dynes |
|
189
189
|
| 4 | kgf | kilogram-force, kilogramme-force |
|
@@ -191,25 +191,13 @@ These units are defined in `UnitMeasurements::Force`.
|
|
191
191
|
| 6 | lbf | pound-force |
|
192
192
|
| 7 | pdl | poundal, poundals |
|
193
193
|
|
194
|
-
## 16.
|
195
|
-
|
196
|
-
These units are defined in `UnitMeasurements::Voltage`.
|
197
|
-
|
198
|
-
| # | Name | Aliases |
|
199
|
-
|:--|:--|:--|
|
200
|
-
| 1 | V* | volt, volts |
|
201
|
-
| 2 | abV | abvolt, abvolts |
|
202
|
-
| 3 | statV | statvolt, statvolts |
|
203
|
-
| 4 | W/A | W·A⁻¹, watt per ampere, watts per ampere |
|
204
|
-
| 5 | J/C | J·C⁻¹, joule per coulomb, joules per coulomb |
|
205
|
-
|
206
|
-
## 17. Velocity
|
194
|
+
## 16. Velocity
|
207
195
|
|
208
196
|
These units are defined in `UnitMeasurements::Velocity`.
|
209
197
|
|
210
198
|
| # | Name | Aliases |
|
211
199
|
|:--|:--|:--|
|
212
|
-
|
|
200
|
+
| _1_ | _m/s_ | _m·s⁻¹, meter per second, meters per second, metre per second, metres per second_ |
|
213
201
|
| 2 | m/min | m·min⁻¹, meter per minute, meters per minute, metre per minute, metres per minute |
|
214
202
|
| 3 | m/h | m·h⁻¹, meter per hour, meters per hour, metre per hour, metres per hour |
|
215
203
|
| 4 | Kn | kt, knot, knots |
|
@@ -220,24 +208,24 @@ These units are defined in `UnitMeasurements::Velocity`.
|
|
220
208
|
| 9 | ft/min | ft·min⁻¹, foot per minute, feet per minute |
|
221
209
|
| 10 | ft/h | ft·h⁻¹, foot per hour, feet per hour |
|
222
210
|
|
223
|
-
##
|
211
|
+
## 17. Acceleration
|
224
212
|
|
225
213
|
These units are defined in `UnitMeasurements::Acceleration`.
|
226
214
|
|
227
215
|
| # | Name | Aliases |
|
228
216
|
|:--|:--|:--|
|
229
|
-
|
|
217
|
+
| _1_ | _m/s²_ | _m/s^2, m·s⁻², meter per second squared, meters per second squared, metre per second squared, metres per second squared_ |
|
230
218
|
| 2 | in/s² | in/s^2, in·s⁻², inch per second squared, inches per second squared |
|
231
219
|
| 3 | ft/s² | ft/s^2, ft·s⁻², foot per second squared, feet per second squared |
|
232
220
|
| 4 | Kn/s | knot per second, knots per second |
|
233
221
|
|
234
|
-
##
|
222
|
+
## 18. Angular velocity
|
235
223
|
|
236
224
|
These units are defined in `UnitMeasurements::AngularVelocity`.
|
237
225
|
|
238
226
|
| # | Name | Aliases |
|
239
227
|
|:--|:--|:--|
|
240
|
-
|
|
228
|
+
| _1_ | _rad/s_ | _rad·s⁻¹, radian per second, radians per second_ |
|
241
229
|
| 2 | rad/min | rad·min⁻¹, radian per minute, radians per minute |
|
242
230
|
| 3 | rad/h | rad·h⁻¹, radian per hour, radians per hour |
|
243
231
|
| 4 | deg/s | °/s, deg·s⁻¹, degree per second, degrees per second |
|
@@ -250,107 +238,119 @@ These units are defined in `UnitMeasurements::AngularVelocity`.
|
|
250
238
|
| 11 | gon/min | ᵍ/min, gon·min⁻¹, gradian per minute, gradians per minute |
|
251
239
|
| 12 | gon/h | ᵍ/h, gon·h⁻¹, gradian per hour, gradians per hour |
|
252
240
|
|
253
|
-
##
|
241
|
+
## 19. Angular acceleration
|
254
242
|
|
255
243
|
These units are defined in `UnitMeasurements::AngularAcceleration`.
|
256
244
|
|
257
245
|
| # | Name | Aliases |
|
258
246
|
|:--|:--|:--|
|
259
|
-
|
|
247
|
+
| _1_ | _rad/s²_ | _rad/s^2, rad·s⁻², radian per second squared, radians per second squared_ |
|
260
248
|
| 2 | deg/s² | deg/s^2, °/s², deg·s⁻², degree per second squared, degrees per second squared |
|
261
249
|
| 3 | gon/s² | gon/s^2, ᵍ/s², gon·s⁻², gradian per second squared, gradians per second squared |
|
262
250
|
|
251
|
+
## 20. Electric potential
|
252
|
+
|
253
|
+
These units are defined in `UnitMeasurements::ElectricPotential`.
|
254
|
+
|
255
|
+
| # | Name | Aliases |
|
256
|
+
|:--|:--|:--|
|
257
|
+
| _1_ | _V*_ | _volt, volts_ |
|
258
|
+
| 2 | abV | abvolt, abvolts |
|
259
|
+
| 3 | statV | statvolt, statvolts |
|
260
|
+
| 4 | W/A | W·A⁻¹, watt per ampere, watts per ampere |
|
261
|
+
| 5 | J/C | J·C⁻¹, joule per coulomb, joules per coulomb |
|
262
|
+
|
263
263
|
## 21. Electric charge
|
264
264
|
|
265
265
|
These units are defined in `UnitMeasurements::ElectricCharge`.
|
266
266
|
|
267
267
|
| # | Name | Aliases |
|
268
268
|
|:--|:--|:--|
|
269
|
-
|
|
269
|
+
| _1_ | _C*_ | _coulomb, coulombs_ |
|
270
270
|
| 2 | abC | abcoulomb, abcoulombs |
|
271
271
|
| 3 | statC | statcoulomb, statcoulombs |
|
272
272
|
| 4 | Fr | franklin, franklins |
|
273
273
|
| 5 | Fd | faraday, faradays |
|
274
274
|
|
275
|
-
## 22.
|
275
|
+
## 22. Electrical capacitance
|
276
276
|
|
277
|
-
These units are defined in `UnitMeasurements::
|
277
|
+
These units are defined in `UnitMeasurements::ElectricalCapacitance`.
|
278
278
|
|
279
279
|
| # | Symbol | Aliases |
|
280
280
|
|:--|:--|:--|
|
281
|
-
|
|
281
|
+
| _1_ | _F*_ | _farad, farads_ |
|
282
282
|
| 2 | abF | abfarad, abfarads |
|
283
283
|
| 3 | statF | statfarad, statfarads |
|
284
284
|
| 4 | C/V | C·V⁻¹, coulomb/volt, coulombs/volt, coulomb per volt, coulombs per volt |
|
285
285
|
|
286
|
-
## 23.
|
286
|
+
## 23. Electrical elastance
|
287
287
|
|
288
|
-
These units are defined in `UnitMeasurements::
|
288
|
+
These units are defined in `UnitMeasurements::ElectricalElastance`.
|
289
289
|
|
290
290
|
| # | Name | Aliases |
|
291
291
|
|:--|:--|:--|
|
292
|
-
|
|
292
|
+
| _1_ | _D*_ | _F⁻¹, daraf, darafs, reciprocal farad, reciprocal farads_ |
|
293
293
|
| 2 | V/C | V·C⁻¹, volt/coulomb, volts/coulomb, volt per coulomb, volts per coulomb |
|
294
294
|
|
295
|
-
## 24.
|
295
|
+
## 24. Electrical resistance
|
296
296
|
|
297
|
-
These units are defined in `UnitMeasurements::
|
297
|
+
These units are defined in `UnitMeasurements::ElectricalResistance`.
|
298
298
|
|
299
299
|
| # | Name | Aliases |
|
300
300
|
|:--|:--|:--|
|
301
|
-
|
|
301
|
+
| _1_ | _Ω*_ | _ω, ohm, ohms, reciprocal siemens_ |
|
302
302
|
| 2 | abΩ | abω, abohm, abohms |
|
303
303
|
| 3 | statΩ | statω, statohm, statohms |
|
304
304
|
| 4 | S | siemens, mho, mhos |
|
305
|
-
| 5 | V/A | V·A⁻¹, volt/amp
|
305
|
+
| 5 | V/A | V·A⁻¹, volt/amp, volts/amp, volt/ampere, volts/ampere, volt per ampere, volts per ampere |
|
306
306
|
|
307
|
-
## 25.
|
307
|
+
## 25. Electric conductance
|
308
308
|
|
309
|
-
These units are defined in `UnitMeasurements::
|
309
|
+
These units are defined in `UnitMeasurements::ElectricConductance`.
|
310
310
|
|
311
311
|
| # | Name | Aliases |
|
312
312
|
|:--|:--|:--|
|
313
|
-
|
|
313
|
+
| _1_ | _S*_ | _℧, Ω⁻¹, siemens, mho, mhos_ |
|
314
314
|
| 2 | abS | ab℧, absiemens, abmho, abmhos |
|
315
315
|
| 3 | statS | stat℧, statsiemens, statmho, statmhos |
|
316
|
-
| 3 | A/V | A·V⁻¹, amp
|
316
|
+
| 3 | A/V | A·V⁻¹, amp/volt, amps/volt, ampere/volt, amperes/volt, ampere per volt, amperes per volt |
|
317
|
+
|
318
|
+
## 26. Electrical inductance
|
319
|
+
|
320
|
+
These units are defined in `UnitMeasurements::ElectricalInductance`.
|
321
|
+
|
322
|
+
| # | Name | Aliases |
|
323
|
+
|:--|:--|:--|
|
324
|
+
| _1_ | _H*_ | _henry, henries_ |
|
325
|
+
| 2 | abH | abhenry, abhenries |
|
326
|
+
| 3 | statH | stathenry, stathenries |
|
327
|
+
| 4 | Wb/A | Wb·A⁻¹, weber per ampere, webers per ampere |
|
317
328
|
|
318
|
-
##
|
329
|
+
## 27. Magnetic flux
|
319
330
|
|
320
331
|
These units are defined in `UnitMeasurements::MagneticFlux`.
|
321
332
|
|
322
333
|
| # | Name | Aliases |
|
323
334
|
|:--|:--|:--|
|
324
|
-
|
|
335
|
+
| _1_ | _Wb*_ | _weber, webers_ |
|
325
336
|
| 2 | Mx | maxwell, maxwells |
|
326
337
|
| 3 | T·m² | T*m^2, tesla-square meter, tesla-square metre |
|
327
338
|
| 4 | G·cm² | G*cm^2, gauss-square centimeter, gauss-square centimetre |
|
328
339
|
|
329
|
-
##
|
340
|
+
## 28. Magnetic induction
|
330
341
|
|
331
342
|
These units are defined in `UnitMeasurements::MagneticInduction`.
|
332
343
|
|
333
344
|
| # | Name | Aliases |
|
334
345
|
|:--|:--|:--|
|
335
|
-
|
|
346
|
+
| _1_ | _T*_ | _tesla, teslas_ |
|
336
347
|
| 2 | G | Gs, gauss, gausses |
|
337
348
|
|
338
|
-
##
|
349
|
+
## 29. Magnetic field
|
339
350
|
|
340
351
|
These units are defined in `UnitMeasurements::MagneticField`.
|
341
352
|
|
342
353
|
| # | Name | Aliases |
|
343
354
|
|:--|:--|:--|
|
344
|
-
|
|
345
|
-
| 2 | A/m | A·m⁻¹, ampere/meter, ampere/metre, ampere per meter, ampere per metre, amperes per meter, amperes per metre |
|
346
|
-
|
347
|
-
## 29. Inductance
|
348
|
-
|
349
|
-
These units are defined in `UnitMeasurements::Inductance`.
|
350
|
-
|
351
|
-
| # | Name | Aliases |
|
352
|
-
|:--|:--|:--|
|
353
|
-
| 1 | H* | henry, henries |
|
354
|
-
| 2 | abH | abhenry, abhenries |
|
355
|
-
| 3 | statH | stathenry, stathenries |
|
356
|
-
| 4 | Wb/A | Wb·A⁻¹, weber per ampere, webers per ampere |
|
355
|
+
| _1_ | _Oe*_ | _oersted, oersteds_ |
|
356
|
+
| 2 | A/m | A·m⁻¹, ampere/meter, ampere/metre, amperes/meter, amperes/metre, ampere per meter, ampere per metre, amperes per meter, amperes per metre |
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: unit_measurements
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version:
|
4
|
+
version: 4.0.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Harshal LADHE
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2023-10-
|
11
|
+
date: 2023-10-04 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: activesupport
|
@@ -108,6 +108,7 @@ files:
|
|
108
108
|
- lib/unit_measurements/comparison.rb
|
109
109
|
- lib/unit_measurements/conversion.rb
|
110
110
|
- lib/unit_measurements/errors/parse_error.rb
|
111
|
+
- lib/unit_measurements/errors/primitive_unit_already_set_error.rb
|
111
112
|
- lib/unit_measurements/errors/unit_already_defined_error.rb
|
112
113
|
- lib/unit_measurements/errors/unit_error.rb
|
113
114
|
- lib/unit_measurements/formatter.rb
|
@@ -124,14 +125,16 @@ files:
|
|
124
125
|
- lib/unit_measurements/unit_groups/angular_acceleration.rb
|
125
126
|
- lib/unit_measurements/unit_groups/angular_velocity.rb
|
126
127
|
- lib/unit_measurements/unit_groups/area.rb
|
127
|
-
- lib/unit_measurements/unit_groups/capacitance.rb
|
128
|
-
- lib/unit_measurements/unit_groups/conductance.rb
|
129
128
|
- lib/unit_measurements/unit_groups/density.rb
|
130
|
-
- lib/unit_measurements/unit_groups/elastance.rb
|
131
129
|
- lib/unit_measurements/unit_groups/electric_charge.rb
|
130
|
+
- lib/unit_measurements/unit_groups/electric_conductance.rb
|
132
131
|
- lib/unit_measurements/unit_groups/electric_current.rb
|
132
|
+
- lib/unit_measurements/unit_groups/electric_potential.rb
|
133
|
+
- lib/unit_measurements/unit_groups/electrical_capacitance.rb
|
134
|
+
- lib/unit_measurements/unit_groups/electrical_elastance.rb
|
135
|
+
- lib/unit_measurements/unit_groups/electrical_inductance.rb
|
136
|
+
- lib/unit_measurements/unit_groups/electrical_resistance.rb
|
133
137
|
- lib/unit_measurements/unit_groups/force.rb
|
134
|
-
- lib/unit_measurements/unit_groups/inductance.rb
|
135
138
|
- lib/unit_measurements/unit_groups/length.rb
|
136
139
|
- lib/unit_measurements/unit_groups/luminous_intensity.rb
|
137
140
|
- lib/unit_measurements/unit_groups/magnetic_field.rb
|
@@ -139,17 +142,13 @@ files:
|
|
139
142
|
- lib/unit_measurements/unit_groups/magnetic_induction.rb
|
140
143
|
- lib/unit_measurements/unit_groups/plane_angle.rb
|
141
144
|
- lib/unit_measurements/unit_groups/quantity.rb
|
142
|
-
- lib/unit_measurements/unit_groups/resistance.rb
|
143
145
|
- lib/unit_measurements/unit_groups/solid_angle.rb
|
144
146
|
- lib/unit_measurements/unit_groups/sound_level.rb
|
145
147
|
- lib/unit_measurements/unit_groups/temperature.rb
|
146
148
|
- lib/unit_measurements/unit_groups/time.rb
|
147
149
|
- lib/unit_measurements/unit_groups/velocity.rb
|
148
|
-
- lib/unit_measurements/unit_groups/voltage.rb
|
149
150
|
- lib/unit_measurements/unit_groups/volume.rb
|
150
151
|
- lib/unit_measurements/unit_groups/weight.rb
|
151
|
-
- lib/unit_measurements/unit_methods.rb
|
152
|
-
- lib/unit_measurements/unit_system.rb
|
153
152
|
- lib/unit_measurements/version.rb
|
154
153
|
- unit_measurements.gemspec
|
155
154
|
- units.md
|
@@ -1,19 +0,0 @@
|
|
1
|
-
# -*- encoding: utf-8 -*-
|
2
|
-
# -*- frozen_string_literal: true -*-
|
3
|
-
# -*- warn_indent: true -*-
|
4
|
-
|
5
|
-
UnitMeasurements::Capacitance = UnitMeasurements.build do
|
6
|
-
system :metric do
|
7
|
-
primitive :F
|
8
|
-
|
9
|
-
si_unit :F, aliases: [:farad, :farads]
|
10
|
-
unit :"C/V", value: "1 F", aliases: [:"C·V⁻¹", :"coulomb/volt", :"coulombs/volt", :"coulomb per volt", :"coulombs per volt"]
|
11
|
-
end
|
12
|
-
|
13
|
-
system :centimetre_gram_second do
|
14
|
-
primitive :statF
|
15
|
-
|
16
|
-
unit :abF, value: "1e+9 F", aliases: [:abfarad, :abfarads]
|
17
|
-
unit :statF, value: "1.1127e-12 F", aliases: [:statfarad, :statfarads]
|
18
|
-
end
|
19
|
-
end
|
@@ -1,19 +0,0 @@
|
|
1
|
-
# -*- encoding: utf-8 -*-
|
2
|
-
# -*- frozen_string_literal: true -*-
|
3
|
-
# -*- warn_indent: true -*-
|
4
|
-
|
5
|
-
UnitMeasurements::Conductance = UnitMeasurements.build do
|
6
|
-
system :metric do
|
7
|
-
primitive :S
|
8
|
-
|
9
|
-
si_unit :S, aliases: [:℧, :"Ω⁻¹", :siemens, :mho, :mhos]
|
10
|
-
unit :"A/V", value: "1 S", aliases: [:"A·V⁻¹", :"amp./volt", :"amps./volt", :"ampere/volt", :"amperes/volt", :"ampere per volt", :"amperes per volt"]
|
11
|
-
end
|
12
|
-
|
13
|
-
system :centimetre_gram_second do
|
14
|
-
primitive :statS
|
15
|
-
|
16
|
-
unit :abS, value: "1e+9 S", aliases: [:ab℧, :absiemens, :abmho, :abmhos]
|
17
|
-
unit :statS, value: "1.112347e-12 S", aliases: [:stat℧, :statsiemens, :statmho, :statmhos]
|
18
|
-
end
|
19
|
-
end
|
@@ -1,12 +0,0 @@
|
|
1
|
-
# -*- encoding: utf-8 -*-
|
2
|
-
# -*- frozen_string_literal: true -*-
|
3
|
-
# -*- warn_indent: true -*-
|
4
|
-
|
5
|
-
UnitMeasurements::Elastance = UnitMeasurements.build do
|
6
|
-
system :metric do
|
7
|
-
primitive :D
|
8
|
-
|
9
|
-
si_unit :D, aliases: [:"F⁻¹", :daraf, :darafs, :"reciprocal farad", :"reciprocal farads"]
|
10
|
-
unit :"V/C", value: "1 D", aliases: [:"V·C⁻¹", :"volt/coulomb", :"volts/coulomb", :"volt per coulomb", :"volts per coulomb"]
|
11
|
-
end
|
12
|
-
end
|
@@ -1,19 +0,0 @@
|
|
1
|
-
# -*- encoding: utf-8 -*-
|
2
|
-
# -*- frozen_string_literal: true -*-
|
3
|
-
# -*- warn_indent: true -*-
|
4
|
-
|
5
|
-
UnitMeasurements::Inductance = UnitMeasurements.build do
|
6
|
-
system :metric do
|
7
|
-
primitive :H
|
8
|
-
|
9
|
-
si_unit :H, aliases: [:henry, :henries]
|
10
|
-
unit :"Wb/A", value: "1 H", aliases: [:"Wb·A⁻¹", :"weber per ampere", :"webers per ampere"]
|
11
|
-
end
|
12
|
-
|
13
|
-
system :centimetre_gram_second do
|
14
|
-
primitive :abH
|
15
|
-
|
16
|
-
unit :abH, value: "1e-9 H", aliases: [:abhenry, :abhenries]
|
17
|
-
unit :statH, value: "8.98755178736818e+11 H", aliases: [:stathenry, :stathenries]
|
18
|
-
end
|
19
|
-
end
|
@@ -1,20 +0,0 @@
|
|
1
|
-
# -*- encoding: utf-8 -*-
|
2
|
-
# -*- frozen_string_literal: true -*-
|
3
|
-
# -*- warn_indent: true -*-
|
4
|
-
|
5
|
-
UnitMeasurements::Resistance = UnitMeasurements.build do
|
6
|
-
system :metric do
|
7
|
-
primitive :Ω
|
8
|
-
|
9
|
-
si_unit :Ω, aliases: [:ω, :ohm, :ohms, :"reciprocal siemens"]
|
10
|
-
unit :S, value: "1 Ω", aliases: [:siemens, :mho, :mhos]
|
11
|
-
unit :"V/A", value: "1 Ω", aliases: [:"V·A⁻¹", :"volt/amp.", :"volts/amp.", :"volt/ampere", :"volts/ampere", :"volt per ampere", :"volts per ampere"]
|
12
|
-
end
|
13
|
-
|
14
|
-
system :centimetre_gram_second do
|
15
|
-
primitive :statΩ
|
16
|
-
|
17
|
-
unit :abΩ, value: "1e-9 Ω", aliases: [:abω, :abohm, :abohms]
|
18
|
-
unit :statΩ, value: "8.98755178737e+11 Ω", aliases: [:statω, :statohm, :statohms]
|
19
|
-
end
|
20
|
-
end
|
@@ -1,21 +0,0 @@
|
|
1
|
-
# -*- encoding: utf-8 -*-
|
2
|
-
# -*- frozen_string_literal: true -*-
|
3
|
-
# -*- warn_indent: true -*-
|
4
|
-
|
5
|
-
UnitMeasurements::Voltage = UnitMeasurements.build do
|
6
|
-
system :metric do
|
7
|
-
primitive :V
|
8
|
-
|
9
|
-
si_unit :V, aliases: [:volt, :volts]
|
10
|
-
|
11
|
-
unit :"W/A", value: "1 V", aliases: [:"W·A⁻¹", :"watt per ampere", :"watts per ampere"]
|
12
|
-
unit :"J/C", value: "1 V", aliases: [:"J·C⁻¹", :"joule per coulomb", :"joules per coulomb"]
|
13
|
-
end
|
14
|
-
|
15
|
-
system :centimetre_gram_second do
|
16
|
-
primitive :statV
|
17
|
-
|
18
|
-
unit :abV, value: "1e-8 V", aliases: [:abvolt, :abvolts]
|
19
|
-
unit :statV, value: "299.792458 V", aliases: [:statvolt, :statvolts]
|
20
|
-
end
|
21
|
-
end
|
@@ -1,45 +0,0 @@
|
|
1
|
-
# -*- encoding: utf-8 -*-
|
2
|
-
# -*- frozen_string_literal: true -*-
|
3
|
-
# -*- warn_indent: true -*-
|
4
|
-
|
5
|
-
module UnitMeasurements
|
6
|
-
module UnitMethods
|
7
|
-
def unit_for(name)
|
8
|
-
unit_name_to_unit(name)
|
9
|
-
end
|
10
|
-
|
11
|
-
def unit_for!(name)
|
12
|
-
unit = unit_for(name)
|
13
|
-
raise UnitError, name unless unit
|
14
|
-
unit
|
15
|
-
end
|
16
|
-
alias_method :[], :unit_for!
|
17
|
-
|
18
|
-
def unit_with_name_and_aliases
|
19
|
-
units.each_with_object({}) do |unit, hash|
|
20
|
-
unit.names.each { |name| hash[name.to_s] = unit }
|
21
|
-
end
|
22
|
-
end
|
23
|
-
|
24
|
-
def unit_names
|
25
|
-
units.map(&:name).sort
|
26
|
-
end
|
27
|
-
|
28
|
-
def unit_names_with_aliases
|
29
|
-
units.flat_map(&:names).sort
|
30
|
-
end
|
31
|
-
|
32
|
-
def unit_name_to_unit(name)
|
33
|
-
unit_with_name_and_aliases[name.to_s]
|
34
|
-
end
|
35
|
-
|
36
|
-
def defined?(name)
|
37
|
-
unit = unit_for(name)
|
38
|
-
unit ? unit.name == name.to_s : false
|
39
|
-
end
|
40
|
-
|
41
|
-
def unit_or_alias?(name)
|
42
|
-
!!unit_for(name)
|
43
|
-
end
|
44
|
-
end
|
45
|
-
end
|
@@ -1,29 +0,0 @@
|
|
1
|
-
# -*- encoding: utf-8 -*-
|
2
|
-
# -*- frozen_string_literal: true -*-
|
3
|
-
# -*- warn_indent: true -*-
|
4
|
-
|
5
|
-
module UnitMeasurements
|
6
|
-
class UnitSystem
|
7
|
-
include UnitMethods
|
8
|
-
|
9
|
-
attr_reader :name, :primitive, :units
|
10
|
-
|
11
|
-
def initialize(name)
|
12
|
-
@name = name
|
13
|
-
@primitive = nil
|
14
|
-
@units = []
|
15
|
-
end
|
16
|
-
|
17
|
-
def add_unit(unit)
|
18
|
-
@units << unit
|
19
|
-
end
|
20
|
-
|
21
|
-
def set_primitive(primitive)
|
22
|
-
@primitive = unit_for!(primitive)
|
23
|
-
end
|
24
|
-
|
25
|
-
def primitive?(unit)
|
26
|
-
@primitive.to_s == (unit.is_a?(Unit) ? unit.name : unit)
|
27
|
-
end
|
28
|
-
end
|
29
|
-
end
|