检验器1D#

class astropy.modeling.powerlaws.Schechter1D(phi_star=1.0, m_star=-20.0, alpha=-1.0, **kwargs)[源代码]#

基类:Fittable1DModel

谢克特光度函数 (Schechter 1976 ),并按大小进行了参数化。

参数:
phi_star : floatPython :浮点

以数密度为单位的归一化因子。

m_star : floatPython :浮点

函数的幂律形式截断处的特征大小。

alpha : floatPython :浮点

幂定律指数,也称为弱端斜率。不能有单位。

笔记

模型公式(带 \(\phi^{*}\)phi_star\(M^{*}\)m_star ,以及 \(\alpha\)alpha ):

\[n(M) \ dM = (0.4 \ln 10) \ \phi^{*} \ [{10^{0.4 (M^{*} - M)}}]^{\alpha + 1} \ \exp{[-10^{0.4 (M^{*} - M)}]} \ dM\]

phi_star 是以数密度为单位的归一化因子。 m_star 是函数的幂函数形式截断为指数形式时的特征大小。 alpha 是幂指数,定义光度函数的暗端斜率。

工具书类

实例

from astropy.modeling.models import Schechter1D
import astropy.units as u
import matplotlib.pyplot as plt
import numpy as np

phi_star = 4.3e-4 * (u.Mpc ** -3)
m_star = -20.26
alpha = -1.98
model = Schechter1D(phi_star, m_star, alpha)
mag = np.linspace(-25, -17)

fig, ax = plt.subplots()
ax.plot(mag, model(mag))
ax.set_yscale('log')
ax.set_xlim(-22.6, -17)
ax.set_ylim(1.e-7, 1.e-2)
ax.set_xlabel('$M_{UV}$')
ax.set_ylabel(r'$\phi$ [mag$^{-1}$ Mpc$^{-3}]$')

(png, svg, pdf)

../_images/astropy-modeling-powerlaws-Schechter1D-1.png

属性摘要

alpha 

input_units 

此属性用于指示evaluate方法所需的单元或单元集,并返回将输入映射到单元(或 None 如果接受任何单位)。

m_star 

param_names 

描述此类型模型的参数的名称。

phi_star 

方法总结

evaluate(mag, phi_star, m_star, alpha)

谢克特光度函数模型函数。

fit_deriv(mag, phi_star, m_star, alpha)

谢克特光度函数关于参数的导数。

属性文档

alpha = Parameter('alpha', value=-1.0)#
input_units#
m_star = Parameter('m_star', value=-20.0)#
param_names = ('phi_star', 'm_star', 'alpha')#

描述此类型模型的参数的名称。

此元组中的参数与初始化特定类型的模型时应传入的顺序相同。某些类型的模型,如多项式模型,根据模型的某些其他属性(如阶数)有不同数量的参数。

定义自定义模型类时,此属性的值由 Parameter 在类中定义的body属性。

phi_star = Parameter('phi_star', value=1.0)#

方法文件

evaluate(mag, phi_star, m_star, alpha)[源代码]#

谢克特光度函数模型函数。

fit_deriv(mag, phi_star, m_star, alpha)[源代码]#

谢克特光度函数关于参数的导数。