docs: def get(self, center, target, date):
          """Retrieve the position and velocity of a target with respect to a center
  
          Args:
              center (Target):
              target (Target):
              date (Date):
          Return:
              numpy.array: length-6 array position and velocity (in m and m/s) of the
                  target, with respect to the center
          """
  
          if (center.index, target.index) in self.segments:
              pos, vel = self.segments[center.index, target.index].compute_and_differentiate(date.jd)
              sign = 1
          else:
              # When we wish to get a segment that is not available in the files (such as
              # EarthBarycenter with respect to the Moon, for example), we take the segment
              # representing the inverse vector if available and reverse it
              pos, vel = self.segments[target.index, center.index].compute_and_differentiate(date.jd)
              sign = -1
  
          # In some cases, the pos vector contains both position and velocity
          if len(pos) == 3:
              # The velocity is given in km/days, so we convert to km/s
              # see: https://github.com/brandon-rhodes/python-jplephem/issues/19 for clarifications
              pv = np.concatenate((pos, vel / S_PER_DAY))
          elif len(pos) == 6:
              pv = np.array(pos)
          else:
              raise JplError("Unknown state vector format")
  
          return sign * pv * 1000