参数#

class astropy.cosmology.Parameter(*, default: Any = Sentinel.MISSING, derived: bool = False, unit: _UnitField = None, equivalencies: u.Equivalency | Sequence[u.Equivalency] = <factory>, fvalidate: _FValidateField = 'default', doc: str | None = None)[源代码]#

基类:object

宇宙参数(描述符)。

应仅与 Cosmology 子类。

参数:
defaultAny (可选,仅关键字)任意(可选,仅关键字)

参数的默认值。如果没有给出,则必须在初始化宇宙学时设置参数。

derived : bool (可选,仅关键字)布尔值(可选,仅关键字)

Whether the Parameter is 'derived', default False. Derived parameters behave similarly to normal parameters, but are not sorted by the Cosmology signature (probably not there) and are not included in all methods. For reference, see Ode0 in FlatFLRWMixin, which removes \(\Omega_{de,0}`\) as an independent parameter (\(\Omega_{de,0} \equiv 1 - \Omega_{tot}\)).

unit : astropy:unit-likeNone (可选,仅关键字)AstPy:类似单位或Python:无(可选,仅关键字)

这个 Unit 作为参数。如果为None(默认),则假定无单位。

equivalencies : Equivalency or sequence 其中等价物或 Python :其序列

此参数的单位当量。

fvalidate : callable() [[object, object, Any] , Any ]或 str (可选,仅关键字)Python:Callable() [[object, object, Any] ,any]或python:str(可选,仅关键字)

函数来验证来自宇宙类实例的参数值。如果为“Default”,如果参数具有单位,则使用默认验证器分配单位(具有等效项)。有关其他有效的字符串选项,请参见 Parameter._registry_validators 。也可以通过具有以下参数的装饰符来设置‘fvalify’ validator()

doc : strNone (可选,仅关键字)PYTHON:STR或PYTHON:NONE(可选,仅关键字)

参数说明。

实例

有关工作示例,请参见 FLRW

属性摘要

default 

参数的默认值。

derived 

参数是否可以在宇宙学上设置或推导出来。

doc 

参数说明。

fvalidate 

用于在设置参数时验证/转换值的函数。

name 

宇宙学参数的名称。

unit 

参数的单位(可以是 None 用于无单元)。

方法总结

clone(**kw)

克隆这个 Parameter ,更改任何构造函数参数。

register_validator(key[, fvalidate])

修饰符来注册一种新的验证器函数。

validate(cosmology, value)

对此参数运行验证器。

validator \(fvalify)

用自定义制作新参数 fvalidate

属性文档

default: Any = 1#

参数的默认值。

默认情况下设置为 MISSING 表示在初始化宇宙学时必须设置该参数。

derived: bool = False#

参数是否可以在宇宙学上设置或推导出来。

doc: str | None = None#

参数说明。

fvalidate: _FValidateField = 'default'#

用于在设置参数时验证/转换值的函数。

name: str | None = None#

宇宙学参数的名称。

不能直接设置。

unit: _UnitField = None#

参数的单位(可以是 None 用于无单元)。

方法文件

clone(**kw)[源代码]#

克隆这个 Parameter ,更改任何构造函数参数。

参数:
**kw

传递给构造函数。当前值,例如。 fvalidate 被用作缺省值,因此一个空 **kw 是一个一模一样的复制品。

实例

>>> p = Parameter()
>>> p
Parameter(derived=False, unit=None, equivalencies=[],
          fvalidate='default', doc=None)
>>> p.clone(unit="km")
Parameter(derived=False, unit=Unit("km"), equivalencies=[],
          fvalidate='default', doc=None)
static register_validator(key, fvalidate=None)[源代码]#

修饰符来注册一种新的验证器函数。

参数:
key : strPython :字符串
fvalidate : callable() [[object, object, Any] , Any ]或 None ,可选Python:Callable() [[object, object, Any] ,ANY]或PYTHON:无,可选

值验证功能。

返回:
validatorcallable() [validator]

如果validator为None,则返回一个接受并注册验证器的函数。这使得 register_validator 用来当装饰师。

validate(cosmology, value)[源代码]#

对此参数运行验证器。

参数:
cosmologyCosmology 实例宇宙学实例
valueAny任何

要验证的对象。

返回:
Any

调用的输出 fvalidate(cosmology, self, value) (是的,该参数顺序)。

validator(fvalidate)[源代码]#

用自定义制作新参数 fvalidate

注: Parameter.fvalidator 必须是最顶层的描述符修饰符。

参数:
fvalidate : callable() [[type, type, Any] , Any ]Python:Callable() [[type, type, Any] ,任何]
返回:
Parameter

此参数的副本,但带自定义 fvalidate