amplifier.py 文件源码

python
阅读 25 收藏 0 点赞 0 评论 0

项目:Panacea 作者: grzeimann 项目源码 文件源码
def alt_sky_model(self):
        fac = 10
        mn = 1e9
        mx = 0.
        for fiber in self.good_fibers:
            mn = np.min([mn, fiber.wavelength.min()])
            mx = np.max([mx, fiber.wavelength.max()])
        xs = np.linspace(0, 1, self.D*fac)
        A = np.zeros((len(xs), len(self.good_fibers)))
        for i, fiber in enumerate(self.good_fibers):
            y = fiber.spectrum / fiber.fiber_to_fiber
            xp = np.interp(fiber.wavelength, np.linspace(mn, mx, self.D*fac),
                           xs, left=0.0, right=0.0)
            tck = splrep(xp, y)
            A[:, i] = splev(xs, tck)
        ys = biweight_location(A, axis=(1,))
        self.masterwave = np.linspace(mn, mx, self.D*fac)
        B, c = bspline_x0(self.masterwave, nknots=self.D)
        sol = np.linalg.lstsq(c, ys)[0]
        self.mastersky = np.dot(c, sol)
评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号