@@ -35,12 +35,16 @@ function cache(M::Measurement{Float64})
35
35
return Measure {N} ()
36
36
end
37
37
Base. show (io:: IO ,M:: Measure{N} ) where N = show (io,measure (M))
38
+ Base. one (:: Measure ) = 𝟏
39
+ Base. zero (:: Measure ) = 𝟏- 𝟏
38
40
39
41
# unit systems
40
42
41
- const usingSimilitude = UnitSystems. similitude ()
43
+ const usingSimilitude = true # UnitSystems.similitude()
42
44
43
45
if ! usingSimilitude
46
+ import UnitSystems: two, three, five, eleven, nineteen, fourtythree
47
+ import UnitSystems: golden, eulergamma, tau
44
48
@pure mass (U:: UnitSystem ,S:: UnitSystem ) = electronmass (U,S)
45
49
@pure electronmass (𝘩,R∞) = αinv^ 2 * R∞* 2 𝘩/ 𝘤
46
50
@pure electronmass (𝘩,R∞,C:: Coupling ) = inv (finestructure (C))^ 2 * R∞* 2 𝘩/ 𝘤
@@ -71,26 +75,26 @@ for unit ∈ Convert
71
75
@eval @pure @inline $ unit (U:: UnitSystem ) = $ unit (Natural,U)
72
76
end
73
77
end
74
- @pure turn (U:: UnitSystem ) = twopi (U)/ angle (U)
78
+ @pure turn (U:: UnitSystem ) = tau (U)/ angle (U)
75
79
@pure solidangle (U:: UnitSystem ,S:: UnitSystem ) = unit (angle (U,S)^ 2 )
76
80
@pure spat (U:: UnitSystem ) = two (U)* turn (U)/ angle (U)* unit (turn (U)/ normal (turn (U)))
77
81
end
78
82
for unit ∈ (Systems... ,Dimensionless... ,Constants... ,Physics... ,Convert... ,Derived... )
79
83
unit ∉ (:length ,:time ) && @eval export $ unit
80
84
end
81
85
82
- import UnitSystems: twopi, two, three, five, eleven, nineteen, fourtythree
83
-
84
86
# fundamental constants, αinv = (34259-1/4366.8123)/250 # 137.036 exactly?
85
87
86
88
if usingSimilitude
87
- export Similitude, 𝟙
89
+ export Similitude, 𝟙, Unified
88
90
import Similitude
89
- import Similitude: Group,AbelianGroup,LogGroup,ExpGroup,Quantity,Dimension,Quantities,𝟙
91
+ import Similitude: Unified, coefprod, promoteint
92
+ import Similitude: Group,AbelianGroup,LogGroup,ExpGroup,Quantity,Dimension,Quantities,𝟙,usq
90
93
import Similitude: Values,value,vals,basis,valueat,makeint,showgroup,ratio,isq,dims,dimtext
91
- for D ∈ (:F ,:M ,:L ,:T ,:Q ,:Θ ,:N ,:J ,:A ,:Λ ,:C )
94
+ for D ∈ (:F ,:M ,:L ,:T ,:Q ,:Θ ,:N ,:J ,:A ,:R ,:C )
92
95
@eval const $ D = Similitude.$ D
93
96
end
97
+ Similitude. makeint (x:: MeasureSystems.Measurements.Measurement ) = x
94
98
@pure function constant (d:: Group ,C:: Coupling = UnitSystems. Universe,dc= d. c); cs =
95
99
UnitSystems. kB^ makeint (d. v[1 ])*
96
100
UnitSystems. NA^ makeint (d. v[2 ])*
@@ -187,11 +191,11 @@ const ΩΛ = measurement("0.6889(56)")
187
191
const α = inv (αinv)
188
192
const RK,KJ = RK2014,KJ2014
189
193
import UnitSystems: g₀,ft,ftUS,lb,atm,ΔνCs,Kcd,NA,kB,𝘩,𝘤,𝘦,τ,inHg,T₀,aⱼ,Ωᵢₜ,Vᵢₜ,kG,au,seven
190
- import UnitSystems: RK1990,KJ1990,𝟏,𝟐,𝟑,𝟓,𝟕,𝟏𝟎, 𝟏𝟏,𝟏𝟗,𝟒𝟑,isquantity
194
+ import UnitSystems: RK1990,KJ1990,𝟏,𝟐,𝟑,𝟓,𝟕,𝟏𝟏,𝟏𝟗,𝟒𝟑,isquantity
191
195
const RK90,KJ90 = RK1990,KJ1990
192
196
end
193
197
194
- const LD,JD = Constant (384399 )* 𝟏𝟎 ^ 3 ,Constant (778479 )* 𝟏𝟎 ^ 6
198
+ const LD,JD = Constant (384399 )* (𝟐 * 𝟓) ^ 3 ,Constant (778479 )* (𝟐 * 𝟓) ^ 6
195
199
const μE☾ = Constant (measurement (" 81.300568(3)" ))
196
200
197
201
import UnitSystems: GaussSystem, ElectricSystem, EntropySystem, AstronomicalSystem, unitname, normal
0 commit comments