Skip to content

Commit e2b87e3

Browse files
committed
upgraded to UnitSystems v0.3.7
1 parent 3bd29a0 commit e2b87e3

File tree

2 files changed

+16
-12
lines changed

2 files changed

+16
-12
lines changed

README.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -56,11 +56,11 @@ Unit conversion documentation is at https://geophysics.crucialflow.com/dev/conve
5656

5757
**Derived Unit conversions:**
5858

59-
Mechanics: `angle`, `solidangle`, `time`, `length`, `area`, `volume`, `wavenumber`, `angularwavenumber`, `fuelefficiency`, `numberdensity`, `frequency`, `angularfrequency`, `frequencydrift`, `speed`, `acceleration`, `jerk`, `snap`, `crackle`, `pop`, `volumeflow`,
59+
Mechanics: `angle`, `solidangle`, `time`, `angulartime`, `length`, `angularlength`, `area`, `angulararea`, `volume`, `wavenumber`, `angularwavenumber`, `fuelefficiency`, `numberdensity`, `frequency`, `angularfrequency`, `frequencydrift`, `stagnance`, `speed`, `acceleration`, `jerk`, `snap`, `crackle`, `pop`, `volumeflow`, `etendue`, `photonintensity`, `photonirradiance`, `photonradiance`,
6060
`inertia`, `mass`, `massflow`, `lineardensity`, `areadensity`, `density`, `specificweight`, `specificvolume`, `force`, `specificforce`, `gravityforce`, `pressure`, `compressibility`, `viscosity`, `diffusivity`, `rotationalinertia`, `impulse`, `momentum`, `angularmomentum`, `yank`, `energy`, `specificenergy`, `action`, `fluence`, `power`, `powerdensity`, `irradiance`, `radiance`, `radiantintensity`, `spectralflux`, `spectralexposure`, `soundexposure`, `impedance`, `specificimpedance`, `admittance`, `compliance`, `inertance`;
61-
Electromagnetics: `charge`, `chargedensity`, `linearchargedensity`, `exposure`, `mobility`, `current`, `currentdensity`, `resistance`, `conductance`, `resistivity`, `conductivity`, `capacitance`, `inductance`, `reluctance`, `permeance`, `permittivity`, `permeability`, `susceptibility`, `specificsusceptibility`, `demagnetizingfactor`, `vectorpotential`, `electricpotential`, `magneticpotential`, `electricfield`, `magneticfield`, `electricflux`, `magneticflux`, `electricfluxdensity`, `magneticfluxdensity`, `electricdipolemoment`, `magneticdipolemoment`, `electricpolarizability`, `magneticpolarizability`, `magneticmoment`, `specificmagnetization`, `polestrength`;
61+
Electromagnetics: `charge`, `chargedensity`, `linearchargedensity`, `exposure`, `mobility`, `current`, `currentdensity`, `resistance`, `conductance`, `resistivity`, `conductivity`, `capacitance`, `inductance`, `reluctance`, `permeance`, `permittivity`, `permeability`, `susceptibility`, `specificsusceptibility`, `demagnetizingfactor`, `vectorpotential`, `electricpotential`, `magneticpotential`, `electricfield`, `magneticfield`, `electricflux`, `magneticflux`, `electricdisplacement`, `magneticfluxdensity`, `electricdipolemoment`, `magneticdipolemoment`, `electricpolarizability`, `magneticpolarizability`, `magneticmoment`, `specificmagnetization`, `polestrength`;
6262
Thermodynamics: `temperature`, `entropy`, `specificentropy`, `volumeheatcapacity`, `thermalconductivity`, `thermalconductance`, `thermalresistivity`, `thermalresistance`, `thermalexpansion`, `lapserate`,
63-
`molarmass`, `molality`, `mole`, `molarity`, `molarvolume`, `molarentropy`, `molarenergy`, `molarconductivity`, `molarsusceptibility`, `catalysis`, `specificity`,
63+
`molarmass`, `molality`, `mole`, `molarity`, `molarvolume`, `molarentropy`, `molarenergy`, `molarconductivity`, `molarsusceptibility`, `catalysis`, `specificity`, `diffusionflux`,
6464
`luminousflux`, `luminousintensity`, `luminance`, `illuminance`, `luminousenergy`, `luminousexposure`, `luminousefficacy`.
6565

6666
**Generalized dimensionless `Coupling`:**

src/MeasureSystems.jl

Lines changed: 13 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -35,12 +35,16 @@ function cache(M::Measurement{Float64})
3535
return Measure{N}()
3636
end
3737
Base.show(io::IO,M::Measure{N}) where N = show(io,measure(M))
38+
Base.one(::Measure) = 𝟏
39+
Base.zero(::Measure) = 𝟏-𝟏
3840

3941
# unit systems
4042

41-
const usingSimilitude = UnitSystems.similitude()
43+
const usingSimilitude = true #UnitSystems.similitude()
4244

4345
if !usingSimilitude
46+
import UnitSystems: two, three, five, eleven, nineteen, fourtythree
47+
import UnitSystems: golden, eulergamma, tau
4448
@pure mass(U::UnitSystem,S::UnitSystem) = electronmass(U,S)
4549
@pure electronmass(𝘩,R∞) = αinv^2*R∞*2𝘩/𝘤
4650
@pure electronmass(𝘩,R∞,C::Coupling) = inv(finestructure(C))^2*R∞*2𝘩/𝘤
@@ -71,26 +75,26 @@ for unit ∈ Convert
7175
@eval @pure @inline $unit(U::UnitSystem) = $unit(Natural,U)
7276
end
7377
end
74-
@pure turn(U::UnitSystem) = twopi(U)/angle(U)
78+
@pure turn(U::UnitSystem) = tau(U)/angle(U)
7579
@pure solidangle(U::UnitSystem,S::UnitSystem) = unit(angle(U,S)^2)
7680
@pure spat(U::UnitSystem) = two(U)*turn(U)/angle(U)*unit(turn(U)/normal(turn(U)))
7781
end
7882
for unit (Systems...,Dimensionless...,Constants...,Physics...,Convert...,Derived...)
7983
unit (:length,:time) && @eval export $unit
8084
end
8185

82-
import UnitSystems: twopi, two, three, five, eleven, nineteen, fourtythree
83-
8486
# fundamental constants, αinv = (34259-1/4366.8123)/250 # 137.036 exactly?
8587

8688
if usingSimilitude
87-
export Similitude, 𝟙
89+
export Similitude, 𝟙, Unified
8890
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
9093
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)
9295
@eval const $D = Similitude.$D
9396
end
97+
Similitude.makeint(x::MeasureSystems.Measurements.Measurement) = x
9498
@pure function constant(d::Group,C::Coupling=UnitSystems.Universe,dc=d.c); cs =
9599
UnitSystems.kB^makeint(d.v[1])*
96100
UnitSystems.NA^makeint(d.v[2])*
@@ -187,11 +191,11 @@ const ΩΛ = measurement("0.6889(56)")
187191
const α = inv(αinv)
188192
const RK,KJ = RK2014,KJ2014
189193
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
191195
const RK90,KJ90 = RK1990,KJ1990
192196
end
193197

194-
const LD,JD = Constant(384399)*𝟏𝟎^3,Constant(778479)*𝟏𝟎^6
198+
const LD,JD = Constant(384399)*(𝟐*𝟓)^3,Constant(778479)*(𝟐*𝟓)^6
195199
const μE☾ = Constant(measurement("81.300568(3)"))
196200

197201
import UnitSystems: GaussSystem, ElectricSystem, EntropySystem, AstronomicalSystem, unitname, normal

0 commit comments

Comments
 (0)