UnitBase#
- class astropy.units.UnitBase[源代码]#
基类:
object
单位的抽象基类。
单元上的大多数算术运算都是在这个基类中定义的。
不应该由用户直接实例化。
属性摘要
返回此单元的别名(长)名称。
返回装置底座。
返回当前
Unit
具有CGS单元的实例。返回与此单元关联的规范(短)名称。
返回与此单元关联的所有名称。
在尺寸上与该单元兼容的物理类型。
归还单位的力量。
返回单位刻度。
返回当前
Unit
以国际单位制表示的实例。方法总结
compose
([equivalencies, units, max_depth, ...])返回表示给定单元的最简单的组合单元。
decompose
([bases])返回仅由不可约单位组成的单位对象。
find_equivalent_units
([equivalencies, ...])返回与所有类型相同的单位列表
self
.in_units
(other[, value, equivalencies])Alias
to
为了与pynbody向后兼容。is_equivalent
(other[, equivalencies])返回
True
如果这个单位等于other
.is_unity
\()返回
True
如果单位是无标度和无量纲的。to
(other[, value, equivalencies])以指定的单位返回转换后的值。
to_string
([format])以给定格式将单位输出为字符串。
to_system
\(系统)将此单元转换为属于给定系统的单元。
属性文档
- aliases#
返回此单元的别名(长)名称。
- bases#
返回装置底座。
- name#
返回与此单元关联的规范(短)名称。
- names#
返回与此单元关联的所有名称。
- physical_type#
在尺寸上与该单元兼容的物理类型。
- 返回:
PhysicalType
单元的物理类型的表示。
实例
>>> from astropy import units as u >>> u.m.physical_type PhysicalType('length') >>> (u.m ** 2 / u.s).physical_type PhysicalType({'diffusivity', 'kinematic viscosity'})
可以将物理类型与其他物理类型(包中推荐的)或字符串进行比较。
>>> area = (u.m ** 2).physical_type >>> area == u.m.physical_type ** 2 True >>> area == "area" True
PhysicalType
对象可用于量纲分析。>>> number_density = u.m.physical_type ** -3 >>> velocity = (u.m / u.s).physical_type >>> number_density * velocity PhysicalType('particle flux')
- powers#
归还单位的力量。
- scale#
返回单位刻度。
方法文件
- compose(equivalencies=[], units=None, max_depth=2, include_prefix_units=None)[源代码]#
返回表示给定单元的最简单的组合单元。由于单元可能有多个同样简单的组合,因此总是返回单元列表。
- 参数:
- equivalencies :
list
的tuple
PYTHON:PYTHON列表:元组 要同时列出的等价对列表。看见 等价物 。该列表是对可能的全局缺省值的补充,例如,
set_enabled_equivalencies
。使用None
若要关闭所有等效项,请执行以下操作。- units :
set
的Unit
,可选单位集,可选 如果没有提供,任何已知的单位都可以用来合成。否则,
units
是包含要组成的单元的dict、module或sequence。- max_depth :
int
,可选PYTHON:int,可选 组成复合单元时要使用的最大递归深度。
- include_prefix_units : bool ,可选可选的布尔
- equivalencies :
- 返回:
- units :
list
的CompositeUnit
Python:CompositeUnit列表 候选作文的列表。这些都将同样简单,但可能无法自动确定哪个候选人更好。
- units :
- decompose(bases={})[源代码]#
返回仅由不可约单位组成的单位对象。
- 参数:
- bases : sequence 的
UnitBase
,可选Python:UnitBase的序列,可选 分解成的基。如果没有提供,分解成任何不可还原的单位。当提供时,分解结果将只包含给定的单元。这将引发一个
UnitsError
如果不可能的话。
- bases : sequence 的
- 返回:
- unit :
CompositeUnit
CompositeUnit
只包含不可约单位的对象。
- unit :
- find_equivalent_units(equivalencies=[], units=None, include_prefix_units=False)[源代码]#
返回与所有类型相同的单位列表
self
.- 参数:
- 返回:
- to(other, value=1.0, equivalencies=[])[源代码]#
以指定的单位返回转换后的值。
- 参数:
- other : astropy:unit-like占星体:单位状
要转换为的单位。
- value :
int
,float
,或 scalar array_like ,可选PYTHON:INT、PYTHON:FLOAT或标量NAMPY:ARRAY_LIKE,可选 当前单位中要转换为指定单位的值。如果未提供,则默认为1.0
- equivalencies :
list
的tuple
PYTHON:PYTHON列表:元组 如果单位不能直接转换,可尝试的等价对列表。看见 等价物 。该列表是对可能的全局缺省值的补充,例如,
set_enabled_equivalencies
。使用None
若要关闭所有等效项,请执行以下操作。
- 返回:
- 加薪:
UnitsError
如果单位不一致
- to_string(format=<class 'astropy.units.format.generic.Generic'>, **kwargs)[源代码]#
以给定格式将单位输出为字符串。
- 参数:
- format :
astropy.units.format.Base
instance orstr
Asterpy.units.Form.Base实例或python:str 格式或格式设置程序对象的名称。如果未提供,则默认为通用格式。
- **kwargs
转发到格式化程序的进一步选项。当前认可的是
fraction
,可以采用下列值:
- format :
- 加薪:
TypeError
如果
format
是错误的类型。ValueError
如果
format
或fraction
都不被认可。
实例
>>> import astropy.units as u >>> kms = u.Unit('km / s') >>> kms.to_string() # Generic uses fraction='inline' by default 'km / s' >>> kms.to_string('latex') # Latex uses fraction='multiline' by default '$\\mathrm{\\frac{km}{s}}$' >>> print(kms.to_string('unicode', fraction=False)) km s⁻¹ >>> print(kms.to_string('unicode', fraction='inline')) km / s >>> print(kms.to_string('unicode', fraction='multiline')) km ── s
- to_system(system)[源代码]#
将此单元转换为属于给定系统的单元。因为可能有多个结果,所以总是返回一个列表。
- 参数:
- system : modulePYTHON:模块
定义单元系统的模块。常用的有
astropy.units.si
和astropy.units.cgs
.要使用您自己的模块,它必须包含单元对象和一个名为
bases
包含系统的基本单位。
- 返回:
- units :
list
的CompositeUnit
Python:CompositeUnit列表 该列表将被排序,以便只包含该系统的基本单元的单元将首先出现。
- units :