java.lang.Object
java.lang.Enum<KBO_MODEL>
talonsoalbi_at_gmail_dot_com.ssoxmatch.ephem.nbody.KBO_MODEL
All Implemented Interfaces:
Serializable, Comparable<KBO_MODEL>, java.lang.constant.Constable

public enum KBO_MODEL extends Enum<KBO_MODEL>
Definitions of the available models for the Kuiper belt objects in DE440 and possibly other numerical integrations.
Author:
talonso
  • Enum Constant Details

    • DE440

      public static final KBO_MODEL DE440
      DE440 KBO model
  • Method Details

    • values

      public static KBO_MODEL[] values()
      Returns an array containing the constants of this enum type, in the order they are declared.
      Returns:
      an array containing the constants of this enum type, in the order they are declared
    • valueOf

      public static KBO_MODEL valueOf(String name)
      Returns the enum constant of this type with the specified name. The string must match exactly an identifier used to declare an enum constant in this type. (Extraneous whitespace characters are not permitted.)
      Parameters:
      name - the name of the enum constant to be returned.
      Returns:
      the enum constant with the specified name
      Throws:
      IllegalArgumentException - if this enum type has no constant with the specified name
      NullPointerException - if the argument is null
    • getTotalBodies

      public int getTotalBodies()
      The total number of physical plus ring bodies.
      Returns:
      Number of total bodies
    • addRingModel

      public void addRingModel(NBodyOutput out, double jd, int index) throws spice.basic.SpiceErrorException, IOException
      Adds the KBOs to the nbody output instance
      Parameters:
      out - Instance
      jd - Julian day for the start of the calculations
      index - First index to start the insert of bodies
      Throws:
      spice.basic.SpiceErrorException - Ephemeris/kernel errors
      IOException - File system errors when reading constant GMS from JPL header
    • setRingModelForBody

      public void setRingModelForBody(IntegratedBodyElement be, double jd, int ringIndex) throws spice.basic.SpiceErrorException, IOException
      Sets a given ring particle for the input body element
      Parameters:
      be - Integrated body object in which to set the properties
      jd - Date
      ringIndex - Ring index, the particles are distributed around a circular orbit based on the index
      Throws:
      spice.basic.SpiceErrorException - Ephemeris/kernel errors
      IOException - File system errors when reading constant GMS from JPL header
    • getRingModel

      public static KBO_MODEL getRingModel(String deVersion)
      Returns the ring model associated with a given JPL integration version
      Parameters:
      deVersion - Integration version, like 'DE440'
      Returns:
      Ring model, or null if there is not any
    • hasRingModel

      public static boolean hasRingModel(String deVersion)
      Returns if a given JPL integration has a ring model
      Parameters:
      deVersion - JPL version, like 'DE440'
      Returns:
      True for DE440, false otherwise
    • getListOfKBOs

      public static Set<String> getListOfKBOs()
      Returns the names of the KBOs from the array of TARGET
      Returns:
      List of KBOs
    • identifyKBO

      public static TARGET identifyKBO(String name)
      Identifies a KBO by its name
      Parameters:
      name - Name of the KBO as it appears in the orbital elements of asteroids
      Returns:
      TARGET with name 'KBO_' plus the name provided, replacing ' ' by '_'