PhysicalType

class astropy.units.PhysicalType(unit, physical_types)[ソース]

ベースクラス: object

1組の単位とサイズ的に互換性のある物理タイプを表す。

このような事例は以下の2つの方式のうちの1つでアクセスすべきである get_physical_type または使用する physical_type 単位の属性。このようなものはユーザコードで直接インスタンス化するつもりはない.

パラメータ
unitUnit職場.職場.

物理タイプで表される単位である.

physical_typesstr あるいは…。 setstr文字列または文字列セット

A str ユニットの物理的タイプを表す名前、または set 1つ以上の物理タイプ名を表す文字列を含む。

注意事項

物理的なタイプは PhysicalType インスタンス(推奨)または物理タイプ名を含む文字列。いくつかの物理的タイプの名前が将来変更される可能性があるので、パッケージで後者の方法を使用することは提案されていません。

後方互換性を維持するために、2つの物理タイプ名がスラッシュで分離されている場合、2つの物理タイプ名は、1つの文字列に含まれてもよい(例えば、 "momentum/impulse" )である。物理タイプの文字列表現は、スペースではなく下線を含むことができます。

実例.

PhysicalType 例は通過することができます physical_type 単位の属性。

>>> import astropy.units as u
>>> u.meter.physical_type
PhysicalType('length')

PhysicalType インスタンスも呼び出すことで get_physical_type それがそうです。この関数は、単位、物理タイプ名を含む文字列、または数字1を受け取る。

>>> u.get_physical_type(u.m ** -3)
PhysicalType('number density')
>>> u.get_physical_type("volume")
PhysicalType('volume')
>>> u.get_physical_type(1)
PhysicalType('dimensionless')

いくつかのユニットは、複数の物理タイプとサイズ的に互換性がある。パスカルは圧力や応力を表すために用いられるが,単位分解はエネルギー密度と同等である。

>>> pressure = u.get_physical_type("pressure")
>>> pressure
PhysicalType({'energy density', 'pressure', 'stress'})
>>> 'energy density' in pressure
True

物理タイプが等しいかどうかは、他の物理タイプオブジェクトまたは物理タイプ名を含む可能性のある文字列についてテストされてもよい。

>>> area = (u.m ** 2).physical_type
>>> area == u.barn.physical_type
True
>>> area == "area"
True

量綱分析のために物理タイプを使用することができるように、乗算、除算、およびべき乗演算を有効にする。

>>> length = u.pc.physical_type
>>> area = (u.cm ** 2).physical_type
>>> length * area
PhysicalType('volume')
>>> area / length
PhysicalType('length')
>>> length ** 3
PhysicalType('volume')

物理タイプ名を含む文字列を用いて実行してもよい。

>>> "length" * area
PhysicalType('volume')
>>> "area" / length
PhysicalType('length')

未知の物理的タイプは "unknown" それがそうです。

>>> (u.s ** 13).physical_type
PhysicalType('unknown')

未知の物理タイプについても,スケール解析を行うことができる.

>>> length_to_19th_power = (u.m ** 19).physical_type
>>> length_to_20th_power = (u.m ** 20).physical_type
>>> length_to_20th_power / length_to_19th_power
PhysicalType('length')