Units.java

  1. /* Copyright 2002-2025 CS GROUP
  2.  * Licensed to CS GROUP (CS) under one or more
  3.  * contributor license agreements.  See the NOTICE file distributed with
  4.  * this work for additional information regarding copyright ownership.
  5.  * CS licenses this file to You under the Apache License, Version 2.0
  6.  * (the "License"); you may not use this file except in compliance with
  7.  * the License.  You may obtain a copy of the License at
  8.  *
  9.  *   http://www.apache.org/licenses/LICENSE-2.0
  10.  *
  11.  * Unless required by applicable law or agreed to in writing, software
  12.  * distributed under the License is distributed on an "AS IS" BASIS,
  13.  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  14.  * See the License for the specific language governing permissions and
  15.  * limitations under the License.
  16.  */
  17. package org.orekit.files.ccsds.definitions;

  18. import org.orekit.utils.units.Unit;

  19. /**
  20.  * Units used in CCSDS messages.
  21.  *
  22.  * @author Luc Maisonobe
  23.  */
  24. public class Units {

  25.     /** Seconds reciprocal unit. */
  26.     public static final Unit ONE_PER_S = Unit.parse("1/s");

  27.     /** kg.m² unit. */
  28.     public static final Unit KG_M2 = Unit.parse("kg.m²");

  29.     /** km³/s² unit. */
  30.     public static final Unit KM3_PER_S2 = Unit.parse("km³/s²");

  31.     /** m² unit. */
  32.     public static final Unit M2 = Unit.parse("m²");

  33.     /** m⁴ unit. */
  34.     public static final Unit M4 = Unit.parse("m⁴");

  35.     /** Meters per second units. */
  36.     public static final Unit M_PER_S = Unit.parse("m/s");

  37.     /** Meters per square second units. */
  38.     public static final Unit M_PER_S2 = Unit.parse("m/s²");

  39.     /** Square meters per second units. */
  40.     public static final Unit M2_PER_S = Unit.parse("m²/s");

  41.     /** Square meters per square second units. */
  42.     public static final Unit M2_PER_S2 = Unit.parse("m²/s²");

  43.     /** Square meters per cube second units. */
  44.     public static final Unit M2_PER_S3 = Unit.parse("m²/s³");

  45.     /** Square meters per s⁴ units. */
  46.     public static final Unit M2_PER_S4 = Unit.parse("m²/s⁴");

  47.     /** m² per kilograms units. */
  48.     public static final Unit M2_PER_KG = Unit.parse("m²/kg");

  49.     /** m³ per kilograms units. */
  50.     public static final Unit M3_PER_KG = Unit.parse("m³/kg");

  51.     /** m⁴ per kilograms units. */
  52.     public static final Unit M4_PER_KG = Unit.parse("m⁴/kg");

  53.     /** m⁴ per square kilograms units. */
  54.     public static final Unit M4_PER_KG2 = Unit.parse("m⁴/kg²");

  55.     /** Cubic meters per kilograms second units. */
  56.     public static final Unit M3_PER_KGS = Unit.parse("m³/(kg.s)");

  57.     /** Cubic meters per kilograms (square second) units. */
  58.     public static final Unit M3_PER_KGS2 = Unit.parse("m³/(kg.s²)");

  59.     /** #/year unit. */
  60.     public static final Unit NB_PER_Y = Unit.parse("#/yr");

  61.     /** Square kilometers units. */
  62.     public static final Unit KM2 = Unit.parse("km²");

  63.     /** Kilometers per second units. */
  64.     public static final Unit KM_PER_S = Unit.parse("km/s");

  65.     /** Kilometers per square second units. */
  66.     public static final Unit KM_PER_S2 = Unit.parse("km/s²");

  67.     /** Square kilometers per second units. */
  68.     public static final Unit KM2_PER_S = Unit.parse("km²/s");

  69.     /** Square kilometers per square second units. */
  70.     public static final Unit KM2_PER_S2 = Unit.parse("km²/s²");

  71.     /** Revolutions per day unit. */
  72.     public static final Unit REV_PER_DAY = Unit.parse("rev/d");

  73.     /** Scaled revolutions per square day unit. */
  74.     public static final Unit REV_PER_DAY2_SCALED = Unit.parse("2rev/d²");

  75.     /** Scaled revolutions per cubic day divieded by 6 unit. */
  76.     public static final Unit REV_PER_DAY3_SCALED = Unit.parse("6rev/d³");

  77.     /** Degree per second unit. */
  78.     public static final Unit DEG_PER_S = Unit.parse("°/s");

  79.     /** Degree per second^3/2 unit. */
  80.     public static final Unit DEG_PER_S_3_2 = Unit.parse("°/√(s³)");

  81.     /** Degree per second^1/2 unit. */
  82.     public static final Unit DEG_PER_S_1_2 = Unit.parse("°/√s");

  83.     /** Newton metre unit. */
  84.     public static final Unit N_M = Unit.parse("N.m");

  85.     /** Newton metre second unit.
  86.      * @since 12.0
  87.      */
  88.     public static final Unit N_M_S = Unit.parse("N.m.s");

  89.     /** Nano Tesla unit. */
  90.     public static final Unit NANO_TESLA = Unit.parse("nT");

  91.     /** HectoPascal unit. */
  92.     public static final Unit HECTO_PASCAL = Unit.parse("hPa");

  93.     /** Hertz per second unit. */
  94.     public static final Unit HZ_PER_S = Unit.parse("Hz/s");

  95.     /** Watt per kilograms units. */
  96.     public static final Unit W_PER_KG = Unit.parse("W/kg");

  97.     /** Earth radii reciprocal unit. */
  98.     public static final Unit ONE_PER_ER = Unit.parse("1/ER");

  99.     /** Private constructor for a utility class.
  100.      */
  101.     private Units() {
  102.         // nothing to do
  103.     }

  104. }