def makeTe(self, nmodes_red, Ttot, makeDM=False, nmodes_dm=None, makeEph=False, nmodes_eph=None, ephFreqs=None, makeClk=False, clkDesign=False, phaseshift=False): self.Fred, self.ranphase = utils.createFourierDesignmatrix_red(self.toas, nmodes=nmodes_red, pshift=phaseshift, Tspan=Ttot) self.Ftot = self.Fred if makeDM: if nmodes_dm is None: nmodes_tmp = nmodes_red else: nmodes_tmp = nmodes_dm self.Fdm = utils.createFourierDesignmatrix_dm(self.toas, nmodes_tmp, self.obs_freqs, Tspan=Ttot) self.Ftot = np.append(self.Ftot, self.Fdm, axis=1) if makeEph: if nmodes_eph is None: nmodes_tmp = nmodes_red else: nmodes_tmp = nmodes_eph self.Fephx, self.Fephy, self.Fephz = \ utils.createFourierDesignmatrix_eph(self.toas, nmodes_tmp, self.psr_locs, Tspan=Ttot, input_freqs=ephFreqs) self.Ftot = np.append(self.Ftot, self.Fephx, axis=1) self.Ftot = np.append(self.Ftot, self.Fephy, axis=1) self.Ftot = np.append(self.Ftot, self.Fephz, axis=1) if makeClk and clkDesign: self.Fclk, _ = utils.createFourierDesignmatrix_red(self.toas, nmodes=nmodes_red, pshift=False, Tspan=Ttot) self.Ftot = np.append(self.Ftot, self.Fclk, axis=1) self.Te = np.append(self.Gc, self.Ftot, axis=1)
def makeTe(self, nmodes, Ttot, makeDM=False, makeEph=False, phaseshift=False): self.Fred, self.ranphase = utils.createFourierDesignmatrix_red( self.toas, nmodes=nmodes, pshift=phaseshift, Tspan=Ttot) if makeDM: self.Fdm = utils.createFourierDesignmatrix_dm(self.toas, nmodes, self.obs_freqs, Tspan=Ttot) self.Ftot = np.append(self.Fred, self.Fdm, axis=1) if makeEph: self.Fephx, self.Fephy, self.Fephz = \ utils.createFourierDesignmatrix_eph(self.toas, nmodes, self.psr_locs, Tspan=Ttot) self.Ftot = np.append(self.Ftot, self.Fephx, axis=1) self.Ftot = np.append(self.Ftot, self.Fephy, axis=1) self.Ftot = np.append(self.Ftot, self.Fephz, axis=1) if not makeDM and not makeEph: self.Ftot = self.Fred self.Te = np.append(self.Gc, self.Ftot, axis=1)
def makeFtot(self, nmodes, Ttot, phaseshift=False): self.Fred, self.ranphase = utils.createFourierDesignmatrix_red(self.toas, nmodes=nmodes, pshift=phaseshift, Tspan=Ttot) self.Fdm = utils.createFourierDesignmatrix_dm(self.toas, nmodes, self.obs_freqs, Tspan=Ttot) self.Ftot = np.append(self.Fred, self.Fdm, axis=1)
def makeFtot(self, nmodes, Ttot, phaseshift=False): self.Fred, self.ranphase = \ utils.createFourierDesignmatrix_red(self.toas, fqs_red, wgts_red, pshift=phaseshift, Tspan=Ttot) self.Fdm = utils.createFourierDesignmatrix_dm(self.toas, fqs_dm, wgts_dm, self.obs_freqs, Tspan=Ttot) self.Ftot = np.append(self.Fred, self.Fdm, axis=1)
def makeTe(self, nmodes, Ttot, makeDM=False, makeEph=False, phaseshift=False): self.Fred, self.ranphase = utils.createFourierDesignmatrix_red(self.toas, nmodes=nmodes, pshift=phaseshift, Tspan=Ttot) if makeDM: self.Fdm = utils.createFourierDesignmatrix_dm(self.toas, nmodes, self.obs_freqs, Tspan=Ttot) self.Ftot = np.append(self.Fred, self.Fdm, axis=1) if makeEph: self.Fephx, self.Fephy, self.Fephz = \ utils.createFourierDesignmatrix_eph(self.toas, nmodes, self.psr_locs, Tspan=Ttot) self.Ftot = np.append(self.Ftot, self.Fephx, axis=1) self.Ftot = np.append(self.Ftot, self.Fephy, axis=1) self.Ftot = np.append(self.Ftot, self.Fephz, axis=1) if not makeDM and not makeEph: self.Ftot = self.Fred self.Te = np.append(self.Gc, self.Ftot, axis=1)
def makeTe(self, nmodes_red, Ttot, makeDM=False, nmodes_dm=None, makeEph=False, nmodes_eph=None, ephFreqs=None, phaseshift=False): self.Fred, self.ranphase = utils.createFourierDesignmatrix_red( self.toas, nmodes=nmodes_red, pshift=phaseshift, Tspan=Ttot) self.Ftot = self.Fred if makeDM: if nmodes_dm is None: nmodes_tmp = nmodes_red else: nmodes_tmp = nmodes_dm self.Fdm = utils.createFourierDesignmatrix_dm(self.toas, nmodes_tmp, self.obs_freqs, Tspan=Ttot) self.Ftot = np.append(self.Ftot, self.Fdm, axis=1) if makeEph: if nmodes_eph is None: nmodes_tmp = nmodes_red else: nmodes_tmp = nmodes_eph self.Fephx, self.Fephy, self.Fephz = \ utils.createFourierDesignmatrix_eph(self.toas, nmodes_tmp, self.psr_locs, Tspan=Ttot, input_freqs=ephFreqs) self.Ftot = np.append(self.Ftot, self.Fephx, axis=1) self.Ftot = np.append(self.Ftot, self.Fephy, axis=1) self.Ftot = np.append(self.Ftot, self.Fephz, axis=1) self.Te = np.append(self.Gc, self.Ftot, axis=1)
def makeTe(self, Ttot, fqs_red, wgts_red, makeDM=False, fqs_dm=None, wgts_dm=None, makeEph=False, jplBasis=False, fqs_eph=None, wgts_eph=None, ephFreqs=None, makeClk=False, clkDesign=False, makeBand=False, bands=None, phaseshift=False, pshift_vals=None): self.Fred, self.ranphase = \ utils.createFourierDesignmatrix_red(self.toas, fqs_red, wgts_red, pshift=phaseshift, pshift_vals=pshift_vals, Tspan=Ttot) self.Ftot = self.Fred if makeDM: if fqs_dm is None: fqs_tmp = fqs_red wgts_tmp = wgts_red else: fqs_tmp = fqs_dm wgts_tmp = wgts_dm self.Fdm = utils.createFourierDesignmatrix_dm(self.toas, fqs_tmp, wgts_tmp, self.obs_freqs, Tspan=Ttot) self.Ftot = np.append(self.Ftot, self.Fdm, axis=1) if makeEph: if jplBasis: Fmother = np.load('./data/jplephbasis/Fmother.npy') mjd = np.load('./data/jplephbasis/mjd.npy') posvec = np.array([np.sin(np.pi/2.- self.elat)*np.cos(self.elong), np.sin(np.pi/2.- self.elat)*np.sin(self.elong), np.cos(np.pi/2.- self.elat)]) Fproj = np.dot(Fmother[:,:,:],posvec) Feph = np.vstack(np.interp(self.toas,mjd,Fproj[:,ii]) for ii in range(Fproj.shape[1])).T self.Ftot = np.append(self.Ftot, Feph, axis=1) else: if fqs_eph is None: fqs_tmp = fqs_red wgts_tmp = wgts_red else: fqs_tmp = fqs_eph wgts_tmp = wgts_eph self.Fephx, self.Fephy, self.Fephz = \ utils.createFourierDesignmatrix_eph(self.toas, fqs_tmp, wgts_tmp, self.psrPos, Tspan=Ttot, input_freqs=ephFreqs) self.Ftot = np.append(self.Ftot, self.Fephx, axis=1) self.Ftot = np.append(self.Ftot, self.Fephy, axis=1) self.Ftot = np.append(self.Ftot, self.Fephz, axis=1) if makeClk and clkDesign: self.Fclk, _ = utils.createFourierDesignmatrix_red(self.toas, fqs_red, wgts_red, pshift=False, Tspan=Ttot) self.Ftot = np.append(self.Ftot, self.Fclk, axis=1) if makeBand: if fqs_band is None: fqs_tmp = fqs_red wgts_tmp = wgts_red else: fqs_tmp = fqs_band wgts_tmp = wgts_band ## if bands is None: bands = np.array([0.0, 1.0, 2.0, 3.0]) elif bands is not None: bands = np.array([float(item) for item in bands.split(',')]) Fband_tmp = utils.createFourierDesignmatrix_red(self.toas, fqs_tmp, wgts_tmp, pshift=False, Tspan=Ttot) for ii in range(len(bands)-1): Fband_dummy = Fband_tmp.copy() Fband_dummy[np.logical(self.obs_freqs > 1e9*bands[ii], self.obs_freqs <= 1e9*bands[ii+1]),:] = 0.0 self.Ftot = np.append(self.Ftot, Fband_dummy, axis=1) self.Te = np.append(self.Gc, self.Ftot, axis=1)
def makeFred(self, fqs_red, wgts_red, Ttot, phaseshift=False): self.Fred, self.ranphase = \ utils.createFourierDesignmatrix_red(self.toas, fqs_red, wgts_red, pshift=phaseshift, Tspan=Ttot)
def makeFred(self, nmodes, Ttot, phaseshift=False, input_freqs=None): self.Fred, self.ranphase = \ utils.createFourierDesignmatrix_red(self.toas, nmodes=nmodes, pshift=phaseshift, Tspan=Ttot, input_freqs=input_freqs)
def makeFred(self, nmodes, Ttot, phaseshift=False): self.Fred, self.ranphase = utils.createFourierDesignmatrix_red( self.toas, nmodes=nmodes, pshift=phaseshift, Tspan=Ttot)
def makeFred(self, nmodes, Ttot, phaseshift=False): self.Fred, self.ranphase = utils.createFourierDesignmatrix_red(self.toas, nmodes=nmodes, pshift=phaseshift, Tspan=Ttot)