def _position(self, t, target): if target == self.SS_BARY: return numpy.zeros((3,), numpy.float64) if target == self.EM_BARY: return Ephemeris_BC.position(self, t, self.EARTH) * self.AUFAC pos = Ephemeris_BC.position(self, t, target) * self.AUFAC if target == self.EARTH: mpos = Ephemeris_BC.position(self, t, self.MOON) * self.AUFAC pos = pos - mpos * self.EMFAC elif target == self.MOON: epos = Ephemeris_BC.position(self, t, self.EARTH) * self.AUFAC pos = pos + epos - pos * self.EMFAC return pos
def _position(self, t, target): if target == self.SS_BARY: return numpy.zeros((3, ), numpy.float64) if target == self.EM_BARY: return Ephemeris_BC.position(self, t, self.EARTH) * self.AUFAC pos = Ephemeris_BC.position(self, t, target) * self.AUFAC if target == self.EARTH: mpos = Ephemeris_BC.position(self, t, self.MOON) * self.AUFAC pos = pos - mpos * self.EMFAC elif target == self.MOON: epos = Ephemeris_BC.position(self, t, self.EARTH) * self.AUFAC pos = pos + epos - pos * self.EMFAC return pos
def __init__(self, *args, **kwargs): Ephemeris_BC.__init__(self, *args, **kwargs) self.AUFAC = 1.0 / self.constants.AU self.EMFAC = 1.0 / (1.0 + self.constants.EMRAT)