参数#
- class astropy.modeling.Parameter(name='', description='', default=None, unit=None, getter=None, setter=None, fixed=False, tied=False, min=None, max=None, bounds=None, prior=None, posterior=None, mag=False)[源代码]#
基类:
object
包装单个参数。
自4.0以来,参数不再是描述符,而是基于Parameter类的新实现。参数现在(从4.0开始)在本地存储值(与以前在关联模型中相同)
这个类表示模型的参数(在某种程度上是广义的)。它有多种用途:
1) 模型识别的类型,在类初始化时特别处理(即,如果发现参数有类定义,则模型初始值设定项在实例级别复制)。
2)管理允许参数值的处理,一旦定义,确保更新与参数定义一致。这包括可选地使用单位和数量,以及将值转换为内部一致的表示(例如,通过使用getter和setter从度到弧度)。
3) 保存与拟合相关的参数的属性,例如参数是否可以在拟合中变化,或者是否存在必须满足的约束。
看见 参数 了解更多详细信息。
- 参数:
- name :
str
Python :字符串 参数名称
- description :
str
Python :字符串 参数说明
- default :
float
或array
Python:浮点或数组 用于此参数的默认值
- unit :
Unit
单位 如果指定,则参数将以这些单位表示,以后更新参数时,应将其设置为
Quantity
有相等的单位。- getter :
callable()
或None
,可选Python:Callable()或None,可选 通过参数代理返回值时包装参数的原始(内部)值的函数(例如,参数可以在内部存储为弧度,但返回给用户为度)。内部值是用于计算的值,而代理值是用户将进行交互(传递和查看)的值。如果
getter
不是None
,然后是一个setter
也必须是输入的。- setter :
callable()
或None
,可选Python:Callable()或None,可选 包装分配给此参数的任何值的函数;应该是
getter
。如果setter
不是None
,然后是一个getter
也必须是输入的。- fixed : bool布尔
如果为真,则参数在拟合过程中不会改变
- tied :
callable()
或False
PYTHON:Callable()或PYTHON:FALSE 提供给某个函数的另一个可调用的参数(如果它是另一个参数的调用方式)
- min :
float
Python :浮点 参数的下界
- max :
float
Python :浮点 参数的上限
- bounds :
tuple
Python :元组 将min和max指定为单个元组——边界不能与min或max同时指定
- mag : bool布尔
指定参数的单位是否可以是震级单位
- name :
属性摘要
元组形式的参数的最小值和最大值。
约束类型可以有参数。
参数缺省值。
布尔值,指示参数在拟合期间是否保持不变。
输入值的单位。
返回参数用于存储的内部值的内部单位。
在拟合参数时用作上限的值。
在拟合参数时用作下限的值。
返回此参数关联的模型。
参数名称。
这个参数,作为
Quantity
实例。此参数的值数组的形状。
此参数的值数组的大小。
标准偏差,如适用。
指示此参数链接到另一个参数。
附加到此参数的单位(如果有)。
用作修饰符来设置
Parameter
.此参数代理的未修饰的值。
方法总结
copy
([name, description, default, unit, ...])复制这个
Parameter
,重写进程中的任何核心属性(或完全相同的副本)。validate
\(值)对此参数运行验证器。
属性文档
- bounds#
元组形式的参数的最小值和最大值。
- constraints = ('fixed', 'tied', 'bounds')#
参数可以具有的约束类型。排除'min'和'max',它们只是'bounds'约束的第一个和第二个元素的别名(用2元组表示)。'previor'和'posternal'可供用户装配工使用,但自本文撰写之日起,任何内置装配工均未使用。
- default#
参数缺省值。
- fixed#
布尔值,指示参数在拟合期间是否保持不变。
- input_unit#
输入值的单位。
- internal_unit#
返回参数用于存储的内部值的内部单位。
- max#
在拟合参数时用作上限的值。
- min#
在拟合参数时用作下限的值。
- model#
返回此参数关联的模型。
- name#
参数名称。
- posterior#
- prior#
- shape#
此参数的值数组的形状。
- size#
此参数的值数组的大小。
- std#
标准偏差,如适用。
- tied#
指示此参数链接到另一个参数。
提供两个参数之间关系的可调用函数。
- unit#
附加到此参数的单位(如果有)。
对于未绑定参数(即通过模型类而不是模型实例访问的参数),这是参数的必需/默认单位。
- validator#
用作修饰符来设置
Parameter
. validator方法验证为该参数设置的任何值。它有两个参数--“self”,它表示Model
实例(请记住,这是在Model
),以及为此参数设置的值。验证程序方法的返回值被忽略,但是如果参数上设置的值无效(通常是InputParameterError
应提出,尽管目前这不是一项要求)。注意:使用此方法作为修饰器会导致模型酸洗时出现问题。另一种方法是将实际的验证器函数分配给
Parameter._validator
(请参见建模中的示例)。
- value#
此参数代理的未修饰的值。
方法文件
- copy(name=None, description=None, default=None, unit=None, getter=None, setter=None, fixed=False, tied=False, min=None, max=None, bounds=None, prior=None, posterior=None)[源代码]#
复制这个
Parameter
,重写进程中的任何核心属性(或完全相同的副本)。此方法的参数与
Parameter
初始值设定项。这只是返回一个新的Parameter
实例,其中任何或所有属性都被重写,因此返回等效值:Parameter(self.name, self.description, ...)