Class JulianYears

java.lang.Object
gaiasky.util.gaia.time.ConcreteDuration
gaiasky.util.gaia.time.JulianYears
All Implemented Interfaces:
Duration, java.io.Serializable

public class JulianYears
extends ConcreteDuration
implements java.io.Serializable
A finite number of years. There are two implementations provided of the conversions methods one as object interface, where an object of the current class has to be instantiated. The oder implementation is provided as static class methods. Performance tests of both implementations have come up with a performance improvement of 20% of the static methods compared with the object methods.
See Also:
Serialized Form
  • Constructor Details

    • JulianYears

      public JulianYears()
      Default constructor
    • JulianYears

      public JulianYears​(double years)
      Construct object
      Parameters:
      years - number of years
  • Method Details

    • set

      public Duration set​(Duration d)
      Description copied from interface: Duration
      Set this duration to a new given one
      Specified by:
      set in interface Duration
      Parameters:
      d - duration to set this one to
      Returns:
      updated object
      See Also:
      Duration.set(Duration)
    • asNanoSecs

      public long asNanoSecs()
      Specified by:
      asNanoSecs in interface Duration
      Returns:
      duration expressed in ns
      See Also:
      Duration.asNanoSecs()
    • asNanoSecs

      public static long asNanoSecs​(double years)
      Parameters:
      years - Time in JulianYears to convert
      Returns:
      JulianYears expressed in nanoSec
    • asSecs

      public double asSecs()
      Specified by:
      asSecs in interface Duration
      Returns:
      duration expressed in s
      See Also:
      Duration.asSecs()
    • asSecs

      public static double asSecs​(double years)
      Parameters:
      years - Time in JulianYears to convert
      Returns:
      JulianYears expressed in secs
    • asMins

      public double asMins()
      Specified by:
      asMins in interface Duration
      Returns:
      duration expressed in min
      See Also:
      Duration.asMins()
    • asMins

      public static double asMins​(double years)
      Parameters:
      years - JulianYears in years to convert
      Returns:
      JulianYears expressed in mins
    • asHours

      public double asHours()
      Specified by:
      asHours in interface Duration
      Returns:
      duration expressed in h
      See Also:
      Duration.asHours()
    • asHours

      public static double asHours​(double years)
      Parameters:
      years - Time in JulianYears to convert
      Returns:
      JulianYears expressed in hours.
    • asRevs

      public double asRevs()
      Specified by:
      asRevs in interface Duration
      Returns:
      duration expressed in revolutions
      See Also:
      Duration.asRevs()
    • asRevs

      public static double asRevs​(double years)
      Parameters:
      years - Time in JulianYears to convert
      Returns:
      JulianYears expressed in revs.
    • asDays

      public double asDays()
      Specified by:
      asDays in interface Duration
      Returns:
      number of ns expressed days
      See Also:
      Duration.asDays()
    • asDays

      public static double asDays​(double years)
      Parameters:
      years - Time in JulianYears ton convert
      Returns:
      JulianYears expressed in days
    • asJulianYears

      public double asJulianYears()
      Specified by:
      asJulianYears in interface Duration
      Returns:
      duration expressed in Julian years
      See Also:
      Duration.asJulianYears()
    • add

      public Duration add​(Duration d)
      Description copied from interface: Duration
      Add a duration to this one
      Specified by:
      add in interface Duration
      Parameters:
      d - amount of time to add
      Returns:
      updated object
      See Also:
      Duration.sub(Duration)
    • sub

      public Duration sub​(Duration d)
      Description copied from interface: Duration
      Subtract a duration from this one
      Specified by:
      sub in interface Duration
      Parameters:
      d - amount of time to subtract
      Returns:
      updated object
      See Also:
      Duration.sub(Duration)
    • clone

      public JulianYears clone()
      Overrides:
      clone in class java.lang.Object
      See Also:
      Object.clone()