Ejemplo n.º 1
0
    def evaluate(self, par, mjd, t0par=None, integrate=False):
        """Evaluate 'par' at given MJD(s), with zero point t0par

        Parameters
        ----------
        par : string
            key into dictionary = parameter to evaluate.  Takes into
            account possible par+'DOT' (for 'F': F0, F1, F2, F3)
        mjd : float or Time object
            MJD at which to evaluate (or Time with .tdb.mjd attribute)
        t0par : string or None
            key into dictionary with zero point for par
            default: None -> PEPOCH for 'F', 'TASC' for all others
        integrate : bool
            Whether to integrate the polynomial (e.g., to get mean
            anomaly out of 'FB' or pulse phase out of 'F')
        """
        if par == 'F':
            t0par = t0par or 'PEPOCH'
            parpol = Polynomial((self['F0'], self.get('F1', 0.),
                                 self.get('F2', 0.), self.get('F3', 0.)))
        else:
            t0par = t0par or 'TASC'
            parpol = Polynomial((self[par], self.get(par + 'DOT', 0.)))

        if integrate:
            parpol = parpol.integ()

        # given time can be Time object
        if hasattr(mjd, 'tdb'):
            mjd = mjd.tdb.mjd

        return parpol((mjd - self[t0par]) * 86400.)
Ejemplo n.º 2
0
    def evaluate(self, par, mjd, t0par=None, integrate=False):
        """Evaluate 'par' at given MJD(s), with zero point t0par

        Parameters
        ----------
        par : string
            key into dictionary = parameter to evaluate.  Takes into
            account possible par+'DOT' (for 'F': F0, F1, F2, F3)
        mjd : float or Time object
            MJD at which to evaluate (or Time with .tdb.mjd attribute)
        t0par : string or None
            key into dictionary with zero point for par
            default: None -> PEPOCH for 'F', 'TASC' for all others
        integrate : bool
            Whether to integrate the polynomial (e.g., to get mean
            anomaly out of 'FB' or pulse phase out of 'F')
        """
        if par == 'F':
            t0par = t0par or 'PEPOCH'
            parpol = Polynomial((self['F0'], self.get('F1', 0.),
                                 self.get('F2',0.), self.get('F3',0.)))
        else:
            t0par = t0par or 'TASC'
            parpol = Polynomial((self[par], self.get(par+'DOT', 0.)))

        if integrate:
            parpol = parpol.integ()

        # given time can be Time object
        if hasattr(mjd, 'tdb'):
            mjd = mjd.tdb.mjd

        return parpol((mjd - self[t0par]) * 86400.)
Ejemplo n.º 3
0
 def evaluate(self, par, mjd, t0par='TASC', integrate=False):
     if par == 'F':
         parpol = Polynomial((self['F'], self.get('F1', 0.),
                              self.get('F2',0.), self.get('F3',0.)))
     else:
         parpol = Polynomial((self[par], self.get(par+'DOT', 0.)))
     if integrate:
         parpol = parpol.integ()
     dt = (mjd-self[t0par])*24.*3600.
     return parpol(dt)
Ejemplo n.º 4
0
 def evaluate(self, par, mjd, t0par='TASC', integrate=False):
     parpol = Polynomial((self[par], self.get(par+'DOT', 0.)))
     if integrate: 
         parpol = parpol.integ()
     dt = (mjd-self[t0par])*24.*3600.
     return parpol(dt)
Ejemplo n.º 5
0
 def evaluate(self, par, mjd, t0par="TASC", integrate=False):
     parpol = Polynomial((self[par], self.get(par + "DOT", 0.0)))
     if integrate:
         parpol = parpol.integ()
     dt = (mjd - self[t0par]) * 24.0 * 3600.0
     return parpol(dt)