transfer_functions.py 文件源码

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

项目:yt 作者: yt-project 项目源码 文件源码
def add_filtered_planck(self, wavelength, trans):
        vals = np.zeros(self.x.shape, 'float64')
        nu = clight/(wavelength*1e-8)
        nu = nu[::-1]

        for i,logT in enumerate(self.x):
            T = 10**logT
            # Black body at this nu, T
            Bnu = ((2.0 * hcgs * nu**3) / clight**2.0) / \
                    (np.exp(hcgs * nu / (kboltz * T)) - 1.0)
            # transmission
            f = Bnu * trans[::-1]
            # integrate transmission over nu
            vals[i] = np.trapz(f,nu)

        # normalize by total transmission over filter
        self.y = vals/trans.sum() #/np.trapz(trans[::-1],nu)
        #self.y = np.clip(np.maximum(vals, self.y), 0.0, 1.0)
评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号