1 package org.djunits.unit;
2
3 import static org.djunits.unit.unitsystem.UnitSystem.IMPERIAL;
4 import static org.djunits.unit.unitsystem.UnitSystem.OTHER;
5 import static org.djunits.unit.unitsystem.UnitSystem.SI_BASE;
6 import static org.djunits.unit.unitsystem.UnitSystem.SI_DERIVED;
7
8 import org.djunits.unit.unitsystem.UnitSystem;
9
10
11
12
13
14
15
16
17
18
19
20 public class TemperatureUnit extends LinearUnit<TemperatureUnit>
21 {
22
23 private static final long serialVersionUID = 20140605L;
24
25
26 public static final TemperatureUnit SI;
27
28
29 public static final TemperatureUnit KELVIN;
30
31
32 public static final TemperatureUnit DEGREE_CELSIUS;
33
34
35 public static final TemperatureUnit DEGREE_FAHRENHEIT;
36
37
38 public static final TemperatureUnit DEGREE_RANKINE;
39
40
41 public static final TemperatureUnit DEGREE_REAUMUR;
42
43 static
44 {
45 SI = new TemperatureUnit("TemperatureUnit.kelvin", "TemperatureUnit.K", SI_BASE);
46 KELVIN = SI;
47 DEGREE_CELSIUS =
48 new TemperatureUnit("TemperatureUnit.degree_Celsius", "TemperatureUnit.dgC", SI_DERIVED, KELVIN, 1.0, true);
49 DEGREE_FAHRENHEIT = new TemperatureUnit("TemperatureUnit.degree_Fahrenheit", "TemperatureUnit.dgF", IMPERIAL, KELVIN,
50 5.0 / 9.0, true);
51 DEGREE_RANKINE =
52 new TemperatureUnit("TemperatureUnit.degree_Rankine", "TemperatureUnit.dgR", OTHER, KELVIN, 5.0 / 9.0, true);
53 DEGREE_REAUMUR =
54 new TemperatureUnit("TemperatureUnit.degree_Reaumur", "TemperatureUnit.dgRe", OTHER, KELVIN, 4.0 / 5.0, true);
55 }
56
57
58
59
60
61
62
63 private TemperatureUnit(final String nameKey, final String abbreviationKey, final UnitSystem unitSystem)
64 {
65 super(nameKey, abbreviationKey, unitSystem, true);
66 }
67
68
69
70
71
72
73
74
75
76
77
78 private TemperatureUnit(final String nameOrNameKey, final String abbreviationOrAbbreviationKey, final UnitSystem unitSystem,
79 final TemperatureUnit referenceUnit, final double scaleFactorToStandardUnit, final boolean standardUnit)
80 {
81 super(nameOrNameKey, abbreviationOrAbbreviationKey, unitSystem, referenceUnit, scaleFactorToStandardUnit, standardUnit);
82 }
83
84
85
86
87
88
89
90
91
92
93 public TemperatureUnit(final String name, final String abbreviation, final UnitSystem unitSystem,
94 final TemperatureUnit referenceUnit, final double scaleFactorToStandardUnit, final double offsetToKelvin)
95 {
96 this(name, abbreviation, unitSystem, referenceUnit, scaleFactorToStandardUnit, false);
97 }
98
99
100 @Override
101 public final TemperatureUnit getStandardUnit()
102 {
103 return KELVIN;
104 }
105
106
107 @Override
108 public final String getSICoefficientsString()
109 {
110 return "K";
111 }
112
113 }