uom/si/
specific_radioactivity.rs1quantity! {
4 quantity: SpecificRadioactivity; "specific radioactivity";
6 dimension: ISQ<
8 Z0, N1, N1, Z0, Z0, Z0, Z0>; kind: dyn (crate::si::marker::ConstituentConcentrationKind);
16 units {
17 @becquerel_per_kilogram: prefix!(none); "Bq/kg", "becquerel per kilogram",
18 "becquerels per kilogram";
19
20 @curie_per_kilogram: 3.7_E10; "Ci/kg", "curie per kilogram", "curie per kilogram";
21
22 @disintegrations_per_minute_per_kilogram: 1.0 / 6.0_E1; "dpm/kg",
23 "disintegration per minute per kilogram", "disintegrations per minute per kilogram";
24 }
25}
26
27#[cfg(test)]
28mod tests {
29 storage_types! {
30 use crate::num::One;
31 use crate::si::radioactivity as rad;
32 use crate::si::specific_radioactivity as srad;
33 use crate::si::quantities::*;
34 use crate::si::mass as m;
35 use crate::tests::Test;
36
37 #[test]
38 fn check_dimension() {
39 let _: SpecificRadioactivity<V> = (Radioactivity::new::<rad::becquerel>(V::one())
40 / Mass::new::<m::kilogram>(V::one())).into();
41 }
42
43 #[test]
44 fn check_units() {
45 test::<rad::becquerel, m::kilogram, srad::becquerel_per_kilogram>();
46 test::<rad::curie, m::kilogram, srad::curie_per_kilogram>();
47 test::<rad::disintegrations_per_minute, m::kilogram,
48 srad::disintegrations_per_minute_per_kilogram>();
49
50 fn test<RAD: rad::Conversion<V>, M: m::Conversion<V>, SRAD: srad::Conversion<V>>() {
51 Test::assert_approx_eq(&SpecificRadioactivity::new::<SRAD>(V::one()),
52 &(Radioactivity::new::<RAD>(V::one()) / Mass::new::<M>(V::one())).into());
53 }
54 }
55 }
56}