View Javadoc
1   package org.djunits.unit;
2   
3   import org.djunits.quantity.Quantity;
4   import org.djunits.unit.scale.IdentityScale;
5   import org.djunits.unit.si.SIPrefixes;
6   import org.djunits.unit.unitsystem.UnitSystem;
7   
8   /**
9    * The units of absorbed dose (of ionizing radiation).
10   * <p>
11   * Copyright (c) 2015-2024 Delft University of Technology, PO Box 5, 2600 AA, Delft, the Netherlands. All rights reserved. <br>
12   * BSD-style license. See <a href="https://djunits.org/docs/license.html">DJUNITS License</a>.
13   * </p>
14   * version May 15, 2014 <br>
15   * @author <a href="https://www.tudelft.nl/p.knoppers">Peter Knoppers</a>
16   */
17  public class AbsorbedDoseUnit extends Unit<AbsorbedDoseUnit>
18  {
19      /** */
20      private static final long serialVersionUID = 20190830;
21  
22      /** The base, with "m2/s2" as the SI signature. */
23      public static final Quantity<AbsorbedDoseUnit> BASE = new Quantity<>("AbsorbedDose", "m2/s2");
24  
25      /** The SI unit for absorbed dose of ionizing radiation is Gray. */
26      public static final AbsorbedDoseUnit SI =
27              new AbsorbedDoseUnit().build(new Unit.Builder<AbsorbedDoseUnit>().setQuantity(BASE).setId("Gy").setName("gray")
28                      .setUnitSystem(UnitSystem.SI_DERIVED).setSiPrefixes(SIPrefixes.UNIT, 1.0).setScale(IdentityScale.SCALE));
29  
30      /** Gray. */
31      public static final AbsorbedDoseUnit GRAY = SI;
32  
33      /** mGy. */
34      public static final AbsorbedDoseUnit MILLIGRAY = GRAY.deriveSI(SIPrefixes.getUnit("m"), 1.0);
35  
36      /** &#181;Gy. */
37      public static final AbsorbedDoseUnit MICROGRAY = GRAY.deriveSI(SIPrefixes.getUnit("mu"), 1.0);
38  
39      /** erg/g. */
40      public static final AbsorbedDoseUnit ERG_PER_GRAM = GRAY.deriveLinear(1.0E-4, "erg/g", "erg per gram", UnitSystem.CGS);
41  
42      /** rad. */
43      public static final AbsorbedDoseUnit RAD = GRAY.deriveLinear(0.01, "rad", "rad", UnitSystem.CGS);
44  }