SciPy-1-12-中文文档-五-

243 阅读41分钟

SciPy 1.12 中文文档(五)

原文:docs.scipy.org/doc/scipy-1.12.0/index.html

SciPy 的主要命名空间

原文:docs.scipy.org/doc/scipy-1.12.0/reference/main_namespace.html

scipy 的主命名空间设计上仅包含很少的对象。只显示与测试、构建信息和版本控制相关的通用功能,以及一个类(LowLevelCallable(function[, user_data, ...])低级回调函数。
show_config([mode])显示构建和使用 SciPy 的库和系统信息
test运行此命名空间的测试

唯一的公共属性是:

__version__SciPy 版本字符串

子模块

cluster聚类功能
constants物理和数学常数及单位
datasets载入 SciPy 数据集
fft离散 Fourier 及相关变换
fftpack离散 Fourier 变换(遗留)
integrate数值积分和常微分方程组
interpolate插值
io科学数据格式读写
linalg线性代数功能
misc实用程序例程(已弃用)
ndimageN 维图像处理和插值
odr正交距离回归
optimize数值优化
signal信号处理
sparse稀疏数组、线性代数和图算法
spatial空间数据结构和算法
special特殊函数
stats统计函数

scipy.LowLevelCallable

原文:docs.scipy.org/doc/scipy-1.12.0/reference/generated/scipy.LowLevelCallable.html#scipy.LowLevelCallable

class scipy.LowLevelCallable(function, user_data=None, signature=None)

低级回调函数。

SciPy 中的某些函数接受回调函数作为参数,这些函数可以是 Python 可调用对象或低级编译函数。使用编译的回调函数可以通过避免将数据包装在 Python 对象中来提高性能。

SciPy 中这种低级函数被包装在LowLevelCallable对象中,可以从 ctypes、cffi、Cython 获取的函数指针或包含在 Python PyCapsule对象中构造。

参见

接受低级可调用函数的函数:

scipy.integrate.quad, scipy.ndimage.generic_filter, scipy.ndimage.generic_filter1d, scipy.ndimage.geometric_transform

使用示例:

在 C 中扩展 scipy.ndimage, 使用低级回调函数加速积分

参数:

function{PyCapsule, ctypes 函数指针, cffi 函数指针}

低级回调函数。

user_data{PyCapsule, ctypes 空指针, cffi 空指针}

要传递到回调函数的用户数据。

signaturestr, 可选

函数的签名。如果省略,将从function中确定,如果可能的话。

注意

参数function可以是以下之一:

  • 包含 C 函数签名的 PyCapsule

  • ctypes 函数指针

  • cffi 函数指针

低级回调函数的签名必须与其传递到的例程所期望的签名之一匹配。

如果从 PyCapsule 构造低级函数,则胶囊的名称必须是相应签名,格式为:

return_type (arg1_type, arg2_type, ...) 

例如:

"void (double)"
"double (double, int *, void *)" 

如果未显式提供user_data的值,则使用作为function传入的 PyCapsule 的上下文作为user_data

属性:

function

给定回调函数。

user_data

给定的用户数据。

signature

函数的签名。

方法

from_cython(module, name[, user_data, signature])从导出的 Cython 函数创建低级回调函数。

scipy.show_config

原文:docs.scipy.org/doc/scipy-1.12.0/reference/generated/scipy.show_config.html#scipy.show_config

scipy.show_config(mode='stdout')

显示构建和使用 SciPy 的库和系统信息

参数:

mode{‘stdout’, ‘dicts’},可选。

指示如何显示配置信息。‘stdout’ 输出到控制台,‘dicts’ 返回配置的字典。

返回:

out{dict, None}

如果 mode 是*‘dicts’*,则返回一个字典,否则返回 None

注意

  1. 如果安装了pyyaml‘stdout’ 模式将提供更可读的输出

scipy.test

原文:docs.scipy.org/doc/scipy-1.12.0/reference/generated/scipy.test.html#scipy.test

scipy.test = <scipy._lib._testutils.PytestTester object>

运行此命名空间的测试

scipy.test() 运行 SciPy 的所有测试,使用默认设置。当从子模块使用时(例如 scipy.cluster.test()),仅运行该命名空间的测试。

参数:

label{‘fast’,‘full’},可选

是否仅运行快速测试,还是包括标记为慢速的测试。默认为 'fast'。

verboseint,可选

测试输出详细程度,默认为 1。

extra_argvlist,可选

传递给 Pytest 的参数。

doctestsbool,可选

是否运行 doctests,默认为 False。

coveragebool,可选

是否启用代码覆盖率测量运行测试。默认为 False。

tests字符串列表,可选

要运行测试的模块名称列表。默认情况下,使用调用 test 函数的模块。

parallelint,可选

使用 pytest-xdist 并行运行测试,如果给定的数字大于 1。默认为 1。

聚类包(scipy.cluster

原文:docs.scipy.org/doc/scipy-1.12.0/reference/cluster.html

在信息理论、目标检测、通信、压缩及其他领域中,聚类算法非常有用。vq 模块仅支持向量量化和 k-means 算法。

hierarchy 模块提供了用于层次聚类和凝聚聚类的函数。其功能包括从距离矩阵生成层次聚类,计算聚类的统计信息,切断链接以生成平坦聚类,并通过树状图可视化聚类。

常数(scipy.constants

原文:docs.scipy.org/doc/scipy-1.12.0/reference/constants.html

物理和数学常数与单位。

数学常数

pi圆周率 Pi
golden黄金比例
golden_ratio黄金比例

物理常数

c真空中光速
speed_of_light真空中光速
mu_0磁常数 (\mu_0)
epsilon_0电常数(真空介电常数),(\epsilon_0)
h普朗克常数 (h)
Planck普朗克常数 (h)
hbar约化普朗克常数 (\hbar = h/(2\pi))
G牛顿引力常数
gravitational_constant牛顿引力常数
g标准重力加速度
e元电荷
elementary_charge元电荷
R摩尔气体常数
gas_constant摩尔气体常数
alpha精细结构常数
fine_structure精细结构常数
N_A阿伏伽德罗常数
Avogadro阿伏伽德罗常数
k玻尔兹曼常数
Boltzmann玻尔兹曼常数
sigma斯特藩-玻尔兹曼常数 (\sigma)
Stefan_Boltzmann斯特藩-玻尔兹曼常数 (\sigma)
Wien维恩位移定律常数
Rydberg雷德伯常数
m_e电子质量
electron_mass电子质量
m_p质子质量
proton_mass质子质量
m_n中子质量
neutron_mass中子质量

常数数据库

除了上述变量外,scipy.constants 还包含 2018 年 CODATA 推荐值数据库 [CODATA2018] 中更多物理常数。

value(key)物理常数索引键的值
unit(key)物理常数单元,通过键索引
precision(key)物理常数索引键的相对精度
find([sub, disp])返回包含给定字符串的物理常数键列表
ConstantWarning访问不再存在于当前 CODATA 数据集中的常数时的警告
scipy.constants.physical_constants

物理常数词典,格式为 physical_constants[name] = (value, unit, uncertainty)

可用常数:

alpha particle mass6.6446573357e-27 kg
alpha particle mass energy equivalent5.9719201914e-10 J
alpha particle mass energy equivalent in MeV3727.3794066 MeV
alpha particle mass in u4.001506179127 u
alpha particle molar mass0.0040015061777 kg mol^-1
alpha particle relative atomic mass4.001506179127
alpha particle-electron mass ratio7294.29954142
alpha particle-proton mass ratio3.97259969009
Angstrom star1.00001495e-10 m
atomic mass constant1.6605390666e-27 kg
atomic mass constant energy equivalent1.4924180856e-10 J
atomic mass constant energy equivalent in MeV931.49410242 MeV
atomic mass unit-electron volt relationship931494102.42 eV
atomic mass unit-hartree relationship34231776.874 E_h
atomic mass unit-hertz relationship2.25234271871e+23 Hz
atomic mass unit-inverse meter relationship751300661040000.0 m^-1
atomic mass unit-joule relationship1.4924180856e-10 J
atomic mass unit-kelvin relationship10809540191600.0 K
atomic mass unit-kilogram relationship1.6605390666e-27 kg
atomic unit of 1st hyperpolarizability3.2063613061e-53 C³ m³ J^-2
atomic unit of 2nd hyperpolarizability6.2353799905e-65 C⁴ m⁴ J^-3
atomic unit of action1.054571817e-34 J s
atomic unit of charge1.602176634e-19 C
atomic unit of charge density1081202384570.0 C m^-3
atomic unit of current0.00662361823751 A
atomic unit of electric dipole mom.8.4783536255e-30 C m
atomic unit of electric field514220674763.0 V m^-1
atomic unit of electric field gradient9.7173624292e+21 V m^-2
atomic unit of electric polarizability1.64877727436e-41 C² m² J^-1
atomic unit of electric potential27.211386245988 V
atomic unit of electric quadrupole mom.4.4865515246e-40 C m²
atomic unit of energy4.3597447222071e-18 J
atomic unit of force8.2387234983e-08 N
atomic unit of length5.29177210903e-11 m
atomic unit of mag. dipole mom.1.85480201566e-23 J T^-1
atomic unit of mag. flux density235051.756758 T
atomic unit of magnetizability7.8910366008e-29 J T^-2
atomic unit of mass9.1093837015e-31 kg
atomic unit of momentum1.9928519141e-24 kg m s^-1
atomic unit of permittivity1.11265005545e-10 F m^-1
atomic unit of time2.4188843265857e-17 s
atomic unit of velocity2187691.26364 m s^-1
Avogadro constant6.02214076e+23 mol^-1
Bohr magneton9.2740100783e-24 J T^-1
Bohr magneton in eV/T5.788381806e-05 eV T^-1
Bohr magneton in Hz/T13996244936.1 Hz T^-1
Bohr magneton in inverse meter per tesla46.686447783 m^-1 T^-1
Bohr magneton in K/T0.67171381563 K T^-1
Bohr radius5.29177210903e-11 m
Boltzmann constant1.380649e-23 J K^-1
Boltzmann constant in eV/K8.617333262e-05 eV K^-1
Boltzmann constant in Hz/K20836619120.0 Hz K^-1
Boltzmann constant in inverse meter per kelvin69.50348004 m^-1 K^-1
characteristic impedance of vacuum376.730313668 ohm
classical electron radius2.8179403262e-15 m
Compton wavelength2.42631023867e-12 m
conductance quantum7.748091729e-05 S
conventional value of ampere-901.00000008887 A
conventional value of coulomb-901.00000008887 C
conventional value of farad-900.9999999822 F
conventional value of henry-901.00000001779 H
conventional value of Josephson constant483597900000000.0 Hz V^-1
conventional value of ohm-901.00000001779 ohm
conventional value of volt-901.00000010666 V
conventional value of von Klitzing constant25812.807 ohm
conventional value of watt-901.00000019553 W
Cu x unit1.00207697e-13 m
deuteron g factor0.8574382338
deuteron mag. mom.4.330735094e-27 J T^-1
deuteron mag. mom. to Bohr magneton ratio0.000466975457
deuteron mag. mom. to nuclear magneton ratio0.8574382338
deuteron mass3.3435837724e-27 kg
deuteron mass energy equivalent3.00506323102e-10 J
deuteron mass energy equivalent in MeV1875.61294257 MeV
deuteron mass in u2.013553212745 u
deuteron molar mass0.00201355321205 kg mol^-1
deuteron relative atomic mass2.013553212745
deuteron rms charge radius2.12799e-15 m
deuteron-electron mag. mom. ratio-0.0004664345551
deuteron-electron mass ratio3670.48296788
deuteron-neutron mag. mom. ratio-0.44820653
deuteron-proton mag. mom. ratio0.30701220939
deuteron-proton mass ratio1.99900750139
electron charge to mass quotient-175882001076.0 C kg^-1
electron g factor-2.00231930436256
electron gyromag. ratio176085963023.0 s^-1 T^-1
electron gyromag. ratio in MHz/T28024.9514242 MHz T^-1
electron mag. mom.-9.2847647043e-24 J T^-1
electron mag. mom. anomaly0.00115965218128
electron mag. mom. to Bohr magneton ratio-1.00115965218128
electron mag. mom. to nuclear magneton ratio-1838.28197188
electron mass9.1093837015e-31 kg
electron mass energy equivalent8.1871057769e-14 J
electron mass energy equivalent in MeV0.51099895 MeV
electron mass in u0.000548579909065 u
electron molar mass5.4857990888e-07 kg mol^-1
electron relative atomic mass0.000548579909065
electron to alpha particle mass ratio0.0001370933554787
electron to shielded helion mag. mom. ratio864.058257
electron to shielded proton mag. mom. ratio-658.2275971
electron volt1.602176634e-19 J
electron volt-atomic mass unit relationship1.07354410233e-09 u
electron volt-hartree relationship0.036749322175655 E_h
electron volt-hertz relationship241798924200000.0 Hz
electron volt-inverse meter relationship806554.3937 m^-1
electron volt-joule relationship1.602176634e-19 J
electron volt-kelvin relationship11604.51812 K
electron volt-kilogram relationship1.782661921e-36 kg
electron-deuteron mag. mom. ratio-2143.9234915
electron-deuteron mass ratio0.0002724437107462
electron-helion mass ratio0.0001819543074573
electron-muon mag. mom. ratio206.7669883
electron-muon mass ratio0.00483633169
electron-neutron mag. mom. ratio960.9205
electron-neutron mass ratio0.00054386734424
electron-proton mag. mom. ratio-658.21068789
electron-proton mass ratio0.000544617021487
electron-tau mass ratio0.000287585
electron-triton mass ratio0.0001819200062251
elementary charge1.602176634e-19 C
elementary charge over h-bar1519267447000000.0 A J^-1
Faraday constant96485.33212 C mol^-1
Fermi coupling constant1.1663787e-05 GeV^-2
fine-structure constant0.0072973525693
first radiation constant3.741771852e-16 W m²
first radiation constant for spectral radiance1.191042972e-16 W m² sr^-1
Hartree energy4.3597447222071e-18 J
Hartree energy in eV27.211386245988 eV
hartree-atomic mass unit relationship2.92126232205e-08 u
hartree-electron volt relationship27.211386245988 eV
hartree-hertz relationship6579683920502000.0 Hz
hartree-inverse meter relationship21947463.13632 m^-1
hartree-joule relationship4.3597447222071e-18 J
hartree-kelvin relationship315775.02480407 K
hartree-kilogram relationship4.8508702095432e-35 kg
helion g factor-4.255250615
helion mag. mom.-1.074617532e-26 J T^-1
helion mag. mom. to Bohr magneton ratio-0.001158740958
helion mag. mom. to nuclear magneton ratio-2.127625307
helion mass5.0064127796e-27 kg
helion mass energy equivalent4.4995394125e-10 J
helion mass energy equivalent in MeV2808.39160743 MeV
helion mass in u3.014932247175 u
helion molar mass0.00301493224613 kg mol^-1
helion relative atomic mass3.014932247175
helion shielding shift5.996743e-05
helion-electron mass ratio5495.88528007
helion-proton mass ratio2.99315267167
hertz-atomic mass unit relationship4.4398216652e-24 u
hertz-electron volt relationship4.135667696e-15 eV
hertz-hartree relationship1.519829846057e-16 E_h
hertz-inverse meter relationship3.3356409519815204e-09 m^-1
hertz-joule relationship6.62607015e-34 J
hertz-kelvin relationship4.799243073e-11 K
hertz-kilogram relationship7.372497323e-51 kg
hyperfine transition frequency of Cs-1339192631770.0 Hz
inverse fine-structure constant137.035999084
inverse meter-atomic mass unit relationship1.3310250501e-15 u
inverse meter-electron volt relationship1.239841984e-06 eV
inverse meter-hartree relationship4.556335252912e-08 E_h
inverse meter-hertz relationship299792458.0 Hz
每米-焦耳关系1.986445857e-25 J
每米-开尔文关系0.01438776877 K
每米-千克关系2.210219094e-42 kg
电导量子的倒数12906.40372 ohm
Josephson 常数483597848400000.0 Hz V^-1
焦耳-原子质量单位关系6700535256.5 u
焦耳-电子伏特关系6.241509074e+18 eV
焦耳-哈特里关系2.2937122783963e+17 E_h
焦耳-赫兹关系1.509190179e+33 Hz
焦耳-每米关系5.034116567e+24 m^-1
焦耳-开尔文关系7.242970516e+22 K
焦耳-千克关系1.1126500560536185e-17 kg
开尔文-原子质量单位关系9.2510873014e-14 u
开尔文-电子伏特关系8.617333262e-05 eV
开尔文-哈特里关系3.1668115634556e-06 E_h
开尔文-赫兹关系20836619120.0 Hz
开尔文-每米关系69.50348004 m^-1
开尔文-焦耳关系1.380649e-23 J
开尔文-千克关系1.536179187e-40 kg
千克-原子质量单位关系6.0221407621e+26 u
千克-电子伏特关系5.609588603e+35 eV
千克-哈特里关系2.0614857887409e+34 E_h
千克-赫兹关系1.356392489e+50 Hz
千克-每米关系4.524438335e+41 m^-1
千克-焦耳关系8.987551787368176e+16 J
千克-开尔文关系6.50965726e+39 K
硅晶格常数5.431020511e-10 m
理想 Si 的晶格间距 (220)1.920155716e-10 m
Loschmidt 常数 (273.15 K, 100 kPa)2.651645804e+25 m^-3
Loschmidt 常数 (273.15 K, 101.325 kPa)2.686780111e+25 m^-3
光效683.0 lm W^-1
磁通量子2.067833848e-15 Wb
Mo x 单位1.00209952e-13 m
摩尔气体常数8.314462618 J mol^-1 K^-1
摩尔质量常数0.00099999999965 kg mol^-1
碳-12 的摩尔质量0.0119999999958 kg mol^-1
摩尔普朗克常数3.990312712e-10 J Hz^-1 mol^-1
理想气体的摩尔体积 (273.15 K, 100 kPa)0.02271095464 m³ mol^-1
理想气体的摩尔体积 (273.15 K, 101.325 kPa)0.02241396954 m³ mol^-1
硅的摩尔体积1.205883199e-05 m³ mol^-1
μ子康普顿波长1.17344411e-14 m
μ子 g 因子-2.0023318418
μ子磁矩-4.4904483e-26 J T^-1
μ子磁矩异常0.00116592089
μ子磁矩对玻尔磁子比-0.00484197047
μ子磁矩对核磁子比-8.89059703
μ子质量1.883531627e-28 kg
μ子质能等效1.692833804e-11 J
μ子质能等效(以 MeV 计)105.6583755 MeV
μ子质量(以 u 计)0.1134289259 u
μ子的摩尔质量0.0001134289259 kg mol^-1
μ子-电子质量比206.768283
μ子-中子质量比0.112454517
μ子-质子磁矩比-3.183345142
μ子-质子质量比0.1126095264
μ子-τ子质量比0.0594635
电子伏秒中的自然单位行动1.054571817e-34 J s
电子伏-秒中的自然单位行动6.582119569e-16 eV s
自然能量单位8.1871057769e-14 J
以 MeV 为单位的自然能量单位0.51099895 MeV
自然长度单位3.8615926796e-13 m
自然质量单位9.1093837015e-31 kg
自然动量单位2.730924488e-22 kg m s^-1
以 MeV/c 为单位的自然单位动量0.5109989461 MeV/c
自然时间单位1.28808866819e-21 s
以 m/s 为单位的自然速度单位299792458.0 m s^-1
中子的康普顿波长1.31959090581e-15 m
中子的 g 因子-3.82608545
中子的旋磁比183247171.0 s^-1 T^-1
中子的旋磁比(以 MHz/T 为单位)29.1646931 MHz T^-1
中子的磁矩-9.6623651e-27 J T^-1
中子磁矩对玻尔磁子比值-0.00104187563
中子磁矩对核磁子比值-1.91304273
中子的质量1.67492749804e-27 kg
中子的质能等效1.50534976287e-10 J
中子的质能等效(以 MeV 为单位)939.56542052 MeV
中子的质量(以 u 为单位)1.00866491595 u
中子的摩尔质量0.0010086649156 kg mol^-1
中子的相对原子质量1.00866491595
中子到屏蔽质子磁矩比-0.68499694
中子-电子磁矩比0.00104066882
中子-电子质量比1838.68366173
中子-μ子质量比8.89248406
中子-质子磁矩比-0.68497934
中子-质子质量差的能量等效2.30557435e-30 kg
中子-质子质量差的能量等效2.07214689e-13 J
中子-质子质量差的能量等效(以 MeV 为单位)1.29333236 MeV
中子-质子质量差的 u 值0.00138844933 u
中子-质子质量比1.00137841931
中子-τ子质量比0.528779
万有引力常数6.6743e-11 m³ kg^-1 s^-2
以 GeV/c² 为单位的万有引力常数与 h-bar c 之比6.70883e-39 (GeV/c²)^-2
核磁子5.0507837461e-27 J T^-1
每电子伏每特斯拉中的核磁子3.15245125844e-08 eV T^-1
每米每特斯拉中的核磁子0.0254262341353 m^-1 T^-1
核磁子在 K/T 中的值0.00036582677756 K T^-1
每 MHz 每特斯拉中的核磁子7.6225932291 MHz T^-1
普朗克常数6.62607015e-34 J Hz^-1
以 eV/Hz 为单位的普朗克常数4.135667696e-15 eV Hz^-1
普朗克长度1.616255e-35 m
普朗克质量2.176434e-08 kg
以 GeV 为单位的普朗克质量能量等效1.22089e+19 GeV
普朗克温度1.416784e+32 K
普朗克时间5.391247e-44 s
质子电荷与质量的比值95788331.56 C kg^-1
质子的康普顿波长1.32140985539e-15 m
质子的 g 因子5.5856946893
质子的旋磁比(以 MHz/T 为单位)267522187.44 s^-1 T^-1
质子的旋磁比(以 MHz/T 为单位)42.577478518 MHz T^-1
proton mag. mom.1.41060679736e-26 J T^-1
proton mag. mom. to Bohr magneton ratio0.0015210322023
proton mag. mom. to nuclear magneton ratio2.79284734463
proton mag. shielding correction2.5689e-05
proton mass1.67262192369e-27 kg
proton mass energy equivalent1.50327761598e-10 J
proton mass energy equivalent in MeV938.27208816 MeV
proton mass in u1.007276466621 u
proton molar mass0.00100727646627 kg mol^-1
proton relative atomic mass1.007276466621
proton rms charge radius8.414e-16 m
proton-electron mass ratio1836.15267343
proton-muon mass ratio8.88024337
proton-neutron mag. mom. ratio-1.45989805
proton-neutron mass ratio0.99862347812
proton-tau mass ratio0.528051
quantum of circulation0.00036369475516 m² s^-1
quantum of circulation times 20.00072738951032 m² s^-1
reduced Compton wavelength3.8615926796e-13 m
reduced muon Compton wavelength1.867594306e-15 m
reduced neutron Compton wavelength2.1001941552e-16 m
reduced Planck constant1.054571817e-34 J s
reduced Planck constant in eV s6.582119569e-16 eV s
reduced Planck constant times c in MeV fm197.3269804 MeV fm
reduced proton Compton wavelength2.10308910336e-16 m
reduced tau Compton wavelength1.110538e-16 m
Rydberg constant10973731.56816 m^-1
Rydberg constant times c in Hz3289841960250800.0 Hz
Rydberg constant times hc in eV13.605693122994 eV
Rydberg constant times hc in J2.1798723611035e-18 J
Sackur-Tetrode constant (1 K, 100 kPa)-1.15170753706
Sackur-Tetrode constant (1 K, 101.325 kPa)-1.16487052358
second radiation constant0.01438776877 m K
shielded helion gyromag. ratio203789456.9 s^-1 T^-1
shielded helion gyromag. ratio in MHz/T32.43409942 MHz T^-1
shielded helion mag. mom.-1.07455309e-26 J T^-1
shielded helion mag. mom. to Bohr magneton ratio-0.001158671471
shielded helion mag. mom. to nuclear magneton ratio-2.127497719
shielded helion to proton mag. mom. ratio-0.7617665618
shielded helion to shielded proton mag. mom. ratio-0.7617861313
shielded proton gyromag. ratio267515315.1 s^-1 T^-1
shielded proton gyromag. ratio in MHz/T42.57638474 MHz T^-1
shielded proton mag. mom.1.41057056e-26 J T^-1
shielded proton mag. mom. to Bohr magneton ratio0.001520993128
shielded proton mag. mom. to nuclear magneton ratio2.792775599
shielding difference of d and p in HD2.02e-08
shielding difference of t and p in HT2.414e-08
speed of light in vacuum299792458.0 m s^-1
standard acceleration of gravity9.80665 m s^-2
standard atmosphere101325.0 Pa
standard-state pressure100000.0 Pa
Stefan-Boltzmann constant5.670374419e-08 W m^-2 K^-4
tau Compton wavelength6.97771e-16 米
tau energy equivalent1776.86 兆电子伏特
tau mass3.16754e-27 kg
tau mass energy equivalent2.84684e-10 焦耳
tau mass in u1.90754 u
tau molar mass0.00190754 千克 mol^-1
tau-electron mass ratio3477.23
tau-muon mass ratio16.817
tau-neutron mass ratio1.89115
tau-proton mass ratio1.89376
Thomson cross section6.6524587321e-29 平方米
triton g factor5.957924931
triton mag. mom.1.5046095202e-26 焦耳特^-1
triton mag. mom. to Bohr magneton ratio0.0016223936651
triton mag. mom. to nuclear magneton ratio2.9789624656
triton mass5.0073567446e-27 千克
triton mass energy equivalent4.500387806e-10 焦耳
triton mass energy equivalent in MeV2808.92113298 兆电子伏特
triton mass in u3.01550071621 u
triton molar mass0.00301550071517 千克 mol^-1
triton relative atomic mass3.01550071621
triton to proton mag. mom. ratio1.0666399191
triton-electron mass ratio5496.92153573
triton-proton mass ratio2.99371703414
unified atomic mass unit1.6605390666e-27 千克
vacuum electric permittivity8.8541878128e-12 法拉每米
vacuum mag. permeability1.25663706212e-06 牛顿安培^-2
von Klitzing constant25812.80745 欧姆
W to Z mass ratio0.88153
weak mixing angle0.2229
Wien frequency displacement law constant58789257570.0 赫兹开尔文^-1
Wien wavelength displacement law constant0.002897771955 米开尔文

单位

SI 前缀

quetta(10^{30})
ronna(10^{27})
yotta(10^{24})
zetta(10^{21})
exa(10^{18})
peta(10^{15})
tera(10^{12})
giga(10^{9})
mega(10^{6})
kilo(10^{3})
hecto(10^{2})
deka(10^{1})
deci(10^{-1})
centi(10^{-2})
milli(10^{-3})
micro(10^{-6})
nano(10^{-9})
pico(10^{-12})
femto(10^{-15})
atto(10^{-18})
zepto(10^{-21})
yocto(10^{-24})
ronto(10^{-27})
quecto(10^{-30})

二进制前缀

kibi(2^{10})
mebi(2^{20})
gibi(2^{30})
tebi(2^{40})
pebi(2^{50})
exbi(2^{60})
zebi(2^{70})
yobi(2^{80})

质量

gram(10^{-3}) 千克
metric_ton(10^{3}) 千克
grain一粒在千克中的质量
lb一磅(常衡制)在千克中的质量
pound一磅(常衡制)在千克中的质量
blob一英寸版本的蛞蝓在千克中的质量(自 1.0.0 版本添加)
slinch一英寸版本的蛞蝓在千克中的质量(自 1.0.0 版本添加)
slug一只蛞蝓在千克中的质量(自 1.0.0 版本添加)
oz一盎司在千克中的质量
ounce一盎司在千克中的质量
stone一英石在千克中的质量
grain一粒在千克中的质量
long_ton一长吨在千克中的质量
short_ton一短吨在千克中的质量
troy_ounce一金衡盎司在千克中的质量
troy_pound一金衡磅的千克数
carat一克拉的千克数
m_u原子质量常数(单位:千克)
u原子质量常数(单位:千克)
atomic_mass原子质量常数(单位:千克)

角度

degree度的弧度数
arcmin角分的弧度数
arcminute角分的弧度数
arcsec角秒的弧度数
arcsecond角秒的弧度数

时间

minute一分钟的秒数
hour一小时的秒数
day一天的秒数
week一周的秒数
year一年(365 天)的秒数
Julian_year一儒略年(365.25 天)的秒数

长度

inch一英寸的米数
foot一英尺的米数
yard一码的米数
mile一英里的米数
mil一毫的米数
pt一点的米数
point一点的米数
survey_foot一测量英尺的米数
survey_mile一测量英里的米数
nautical_mile一海里的米数
fermi一费米的米数
angstrom一埃的米数
micron一微米的米数
au一天文单位的米数
astronomical_unit一天文单位的米数
light_year一光年的米数
parsec一秒差距的米数

压力

atm标准大气压的帕斯卡数
atmosphere标准大气压的帕斯卡数
bar一巴的帕斯卡数
torr一托(毫米汞柱)的帕斯卡数
mmHg一托(毫米汞柱)的帕斯卡数
psi一磅力每平方英寸的帕斯卡数

面积

hectare一公顷的平方米数
acre一英亩的平方米数

体积

liter一升的立方米数
litre一升的立方米数
gallon一加仑(美国)的立方米数
gallon_US一加仑(美国)的立方米数
gallon_imp一加仑(英国)的立方米数
fluid_ounce一液体盎司(美国)的立方米数
fluid_ounce_US一液体盎司(美国)的立方米数
fluid_ounce_imp一液体盎司(英国)的立方米数
bbl一桶的立方米数
barrel一桶的立方米数

速度

kmh千米每小时的米每秒数
mph英里每小时的米每秒数
mach一马赫(近似值,15 摄氏度,1 标准大气压)的米每秒数
speed_of_sound一马赫(近似值,15 摄氏度,1 标准大气压)的米每秒数
knot一节的米每秒数

温度

zero_Celsius摄氏零度对应的开尔文数
degree_Fahrenheit一华氏度(仅温差)的开尔文数
convert_temperature(val, old_scale, new_scale)将温度从一个温度标度转换到另一个(包括摄氏度、开尔文、华氏度和兰氏度)的函数。

能量

eV一电子伏特的焦耳数
electron_volt一电子伏特的焦耳数
calorie一卡(热化学)的焦耳数
calorie_th一卡路里(热化学)等于多少焦耳
calorie_IT一卡路里(国际蒸汽表卡路里,1956 年)等于多少焦耳
erg一爱尔格等于多少焦耳
Btu一英热单位(国际蒸汽表)等于多少焦耳
Btu_IT一英热单位(国际蒸汽表)等于多少焦耳
Btu_th一英热单位(热化学)等于多少焦耳
ton_TNT一吨 TNT 等于多少焦耳

功率

hp一马力等于多少瓦特
horsepower一马力等于多少瓦特

力量

dyn一达因等于多少牛顿
dyne一达因等于多少牛顿
lbf一磅力等于多少牛顿
pound_force一磅力等于多少牛顿
kgf一公斤力等于多少牛顿
kilogram_force一公斤力等于多少牛顿

光学

lambda2nu(lambda_)将波长转换为光学频率
nu2lambda(nu)将光学频率转换为波长。

参考文献

[CODATA2018]

CODATA 2018 年推荐的基础物理常数。

physics.nist.gov/cuu/Constants/

scipy.constants.value

原文:docs.scipy.org/doc/scipy-1.12.0/reference/generated/scipy.constants.value.html#scipy.constants.value

scipy.constants.value(key)

由键索引的 physical_constants 中的值

参数:

keyPython 字符串

字典中的键 physical_constants

返回:

value浮点数

key 对应的 physical_constants 中的值

示例

>>> from scipy import constants
>>> constants.value('elementary charge')
1.602176634e-19 

scipy.constants.unit

原文:docs.scipy.org/doc/scipy-1.12.0/reference/generated/scipy.constants.unit.html#scipy.constants.unit

scipy.constants.unit(key)

字典中由关键字索引的单位

参数:

关键Python 字符串

字典中的关键字 physical_constants

返回:

单位Python 字符串

对应于 关键字 的单位 physical_constants

示例

>>> from scipy import constants
>>> constants.unit('proton mass')
'kg' 

scipy.constants.precision

原文:docs.scipy.org/doc/scipy-1.12.0/reference/generated/scipy.constants.precision.html#scipy.constants.precision

scipy.constants.precision(key)

根据 key 索引的 physical_constants 中的相对精度

参数:

keyPython 字符串

字典physical_constants中的键

返回:

prec浮点数

相对精度,在physical_constants中对应于 key

示例

>>> from scipy import constants
>>> constants.precision('proton mass')
5.1e-37 

scipy.constants.find

原文:docs.scipy.org/doc/scipy-1.12.0/reference/generated/scipy.constants.find.html#scipy.constants.find

scipy.constants.find(sub=None, disp=False)

返回包含给定字符串的physical_constant键列表。

参数:

sub字符串

要搜索键的子字符串。默认情况下,返回所有键。

disp布尔

如果为 True,则打印找到的键并返回 None。否则,返回不打印任何内容的键列表。

返回:

keys列表或 None

如果disp为 False,则返回键列表。否则,返回 None。

示例

>>> from scipy.constants import find, physical_constants 

哪些键在physical_constants字典中包含‘boltzmann’?

>>> find('boltzmann')
['Boltzmann constant',
 'Boltzmann constant in Hz/K',
 'Boltzmann constant in eV/K',
 'Boltzmann constant in inverse meter per kelvin',
 'Stefan-Boltzmann constant'] 

获取名为‘Boltzmann constant in Hz/K’的常数:

>>> physical_constants['Boltzmann constant in Hz/K']
(20836619120.0, 'Hz K^-1', 0.0) 

查找键中包含‘radius’的常数:

>>> find('radius')
['Bohr radius',
 'classical electron radius',
 'deuteron rms charge radius',
 'proton rms charge radius']
>>> physical_constants['classical electron radius']
(2.8179403262e-15, 'm', 1.3e-24) 

scipy.constants.ConstantWarning

docs.scipy.org/doc/scipy-1.12.0/reference/generated/scipy.constants.ConstantWarning.html#scipy.constants.ConstantWarning

exception scipy.constants.ConstantWarning

访问一个不再包含在当前 CODATA 数据集中的常数。

with_traceback()

Exception.with_traceback(tb) – 将 self.traceback 设置为 tb 并返回 self。

scipy.constants.convert_temperature

原文:docs.scipy.org/doc/scipy-1.12.0/reference/generated/scipy.constants.convert_temperature.html#scipy.constants.convert_temperature

scipy.constants.convert_temperature(val, old_scale, new_scale)

将温度刻度从摄氏度、开尔文、华氏度和兰金刻度之一转换为另一个刻度。

参数:

valarray_like

将要转换的温度值(或数组)以原始刻度表示的数值。

old_scalestr

指定原始刻度的字符串,温度值将从中进行转换。支持的刻度有摄氏度(‘Celsius’、‘celsius’、‘C’或‘c’)、开尔文(‘Kelvin’、‘kelvin’、‘K’、‘k’)、华氏度(‘Fahrenheit’、‘fahrenheit’、‘F’或‘f’)和兰金(‘Rankine’、‘rankine’、‘R’或‘r’)。

new_scalestr

指定将温度值转换为的新刻度的字符串。支持的刻度有摄氏度(‘Celsius’、‘celsius’、‘C’或‘c’)、开尔文(‘Kelvin’、‘kelvin’、‘K’、‘k’)、华氏度(‘Fahrenheit’、‘fahrenheit’、‘F’或‘f’)和兰金(‘Rankine’、‘rankine’、‘R’或‘r’)。

返回:

resfloat or array of floats

转换后的温度值以新刻度表达。

注意

从版本 0.18.0 开始新增。

示例

>>> from scipy.constants import convert_temperature
>>> import numpy as np
>>> convert_temperature(np.array([-40, 40]), 'Celsius', 'Kelvin')
array([ 233.15,  313.15]) 

scipy.constants.lambda2nu

原文:docs.scipy.org/doc/scipy-1.12.0/reference/generated/scipy.constants.lambda2nu.html#scipy.constants.lambda2nu

scipy.constants.lambda2nu(lambda_)

将波长转换为光学频率。

参数:

lambda_数组形式

波长需要转换。

返回:

nu浮点数或浮点数数组

等效光学频率。

注意事项。

计算nu = c / lambda,其中 c = 299792458.0,即真空中的光速,单位为米/秒。

示例

>>> from scipy.constants import lambda2nu, speed_of_light
>>> import numpy as np
>>> lambda2nu(np.array((1, speed_of_light)))
array([  2.99792458e+08,   1.00000000e+00]) 

scipy.constants.nu2lambda

原文:docs.scipy.org/doc/scipy-1.12.0/reference/generated/scipy.constants.nu2lambda.html#scipy.constants.nu2lambda

scipy.constants.nu2lambda(nu)

将光频率转换为波长。

参数:

nu类似数组

要转换的光频率。

返回值:

lambda浮点数或浮点数数组

等效波长(们)。

注意事项

计算 lambda = c / nu,其中 c = 299792458.0,即真空中的光速(米/秒)。

示例

>>> from scipy.constants import nu2lambda, speed_of_light
>>> import numpy as np
>>> nu2lambda(np.array((1, speed_of_light)))
array([  2.99792458e+08,   1.00000000e+00]) 

数据集(scipy.datasets

原文:docs.scipy.org/doc/scipy-1.12.0/reference/datasets.html

数据集方法

ascent()获取一个 8 位灰度深度、512 x 512 衍生图像,方便用于演示。
face([gray])获取一个 1024 x 768 的浣熊脸彩色图像。
electrocardiogram()加载一个心电图作为 1-D 信号的示例。

实用方法

download_all([path])下载所有 scipy.datasets 模块的数据集文件的实用方法。
clear_cache([datasets])清理 scipy 数据集缓存目录。

数据集的使用

SciPy 数据集方法可以简单地按如下方式调用:'<dataset-name>()' 这会通过网络下载数据集文件一次,并保存缓存,然后返回一个代表数据集的 numpy.ndarray 对象。

请注意,不同数据集方法的返回数据结构和数据类型可能不同。有关更详细的用法示例,请查看上面特定数据集方法的文档。

数据集检索和存储工作原理

SciPy 数据集文件存储在 SciPy GitHub 组织下的各个 github 仓库中,遵循命名约定为'dataset-<name>',例如 scipy.datasets.face 文件位于 github.com/scipy/dataset-facescipy.datasets 子模块利用并依赖于 Pooch,一个旨在简化获取数据文件的 Python 包。Pooch 在调用数据集函数时使用这些仓库来检索相应的数据集文件。

所有数据集的注册表,基本上是文件名与它们的 SHA256 哈希和仓库网址的映射被维护,Pooch 使用它来处理和验证在函数调用时的下载。下载数据集一次后,文件将保存在系统缓存目录下的'scipy-data'中。

不同平台上的数据集缓存位置可能会有所不同。

对于 macOS:

'~/Library/Caches/scipy-data' 

对于 Linux 和其他类 Unix 平台:

'~/.cache/scipy-data'  # or the value of the XDG_CACHE_HOME env var, if defined 

对于 Windows:

'C:\Users\<user>\AppData\Local\<AppAuthor>\scipy-data\Cache' 

在由于各种安全原因而受限网络连接的环境中,或者在没有持续互联网连接的系统上,可以通过将数据集存储库的内容放置在上述提到的缓存目录中手动加载数据集的缓存,以避免在没有互联网连接时出现数据集获取错误。

scipy.datasets.ascent

原文:docs.scipy.org/doc/scipy-1.12.0/reference/generated/scipy.datasets.ascent.html#scipy.datasets.ascent

scipy.datasets.ascent()

获取一个 8 位灰度位深度,512 x 512 像素的图像,方便用于演示。

该图像源自于www.public-domain-image.com/people-public-domain-images-pictures/上的 accent-to-the-top.jpg。

参数:

返回:

ascentndarray

用于测试和演示的方便图像

示例

>>> import scipy.datasets
>>> ascent = scipy.datasets.ascent()
>>> ascent.shape
(512, 512)
>>> ascent.max()
255 
>>> import matplotlib.pyplot as plt
>>> plt.gray()
>>> plt.imshow(ascent)
>>> plt.show() 

../../_images/scipy-datasets-ascent-1.png

scipy.datasets.face

原文:docs.scipy.org/doc/scipy-1.12.0/reference/generated/scipy.datasets.face.html#scipy.datasets.face

scipy.datasets.face(gray=False)

获取一张 1024 x 768 的浣熊脸部彩色图像。

raccoon-procyon-lotor.jpg 位于 www.public-domain-image.com

Parameters:

graybool, 可选

如果为 True 返回 8 位灰度图像,否则返回彩色图像

Returns:

facendarray

浣熊脸部图像

Examples

>>> import scipy.datasets
>>> face = scipy.datasets.face()
>>> face.shape
(768, 1024, 3)
>>> face.max()
255
>>> face.dtype
dtype('uint8') 
>>> import matplotlib.pyplot as plt
>>> plt.gray()
>>> plt.imshow(face)
>>> plt.show() 

../../_images/scipy-datasets-face-1.png

scipy.datasets.electrocardiogram

原文:docs.scipy.org/doc/scipy-1.12.0/reference/generated/scipy.datasets.electrocardiogram.html#scipy.datasets.electrocardiogram

scipy.datasets.electrocardiogram()

加载心电图作为一维信号的示例。

返回的信号是一段长达 5 分钟的心电图(ECG),即心脏电活动的医学记录,采样频率为 360 赫兹。

返回:

ecgndarray

以 360 赫兹采样的毫伏(mV)单位的心电图。

提供的信号是来自 PhysioNet 上的 MIT-BIH 心律失常数据库的记录 208(MLII 导联)的摘录(19:35 至 24:35)。该摘录包括由噪声引起的伪迹、典型心跳以及病理变化。

1.1.0 版本的新功能。

参考文献

[1]

Moody GB, Mark RG. MIT-BIH 心律失常数据库的影响. IEEE Eng in Med and Biol 20(3):45-50 (2001 年 5-6 月). (PMID: 11446209); DOI:10.13026/C2F305

[2]

Goldberger AL, Amaral LAN, Glass L, Hausdorff JM, Ivanov PCh, Mark RG, Mietus JE, Moody GB, Peng C-K, Stanley HE. PhysioBank, PhysioToolkit 和 PhysioNet:复杂生理信号的新研究资源的组成部分。循环 101(23):e215-e220; DOI:10.1161/01.CIR.101.23.e215

例子

>>> from scipy.datasets import electrocardiogram
>>> ecg = electrocardiogram()
>>> ecg
array([-0.245, -0.215, -0.185, ..., -0.405, -0.395, -0.385])
>>> ecg.shape, ecg.mean(), ecg.std()
((108000,), -0.16510875, 0.5992473991177294) 

如所述,信号特征显示了几个具有不同形态的区域。例如,前几秒显示了正常窦性心律的心脏电活动,如下图所示。

>>> import numpy as np
>>> import matplotlib.pyplot as plt
>>> fs = 360
>>> time = np.arange(ecg.size) / fs
>>> plt.plot(time, ecg)
>>> plt.xlabel("time in s")
>>> plt.ylabel("ECG in mV")
>>> plt.xlim(9, 10.2)
>>> plt.ylim(-1, 1.5)
>>> plt.show() 

../../_images/scipy-datasets-electrocardiogram-1_00_00.png

然而,在第 16 秒之后,首次早期室性收缩,也称为期外收缩,出现了。这些与典型心跳的形态学不同。这种差异可以在以下图中轻松观察到。

>>> plt.plot(time, ecg)
>>> plt.xlabel("time in s")
>>> plt.ylabel("ECG in mV")
>>> plt.xlim(46.5, 50)
>>> plt.ylim(-2, 1.5)
>>> plt.show() 

../../_images/scipy-datasets-electrocardiogram-1_01_00.png

在几个点上,大型伪迹干扰了记录,例如:

>>> plt.plot(time, ecg)
>>> plt.xlabel("time in s")
>>> plt.ylabel("ECG in mV")
>>> plt.xlim(207, 215)
>>> plt.ylim(-2, 3.5)
>>> plt.show() 

../../_images/scipy-datasets-electrocardiogram-1_02_00.png

最后,检查功率谱表明,大部分生物信号由低频组成。在 60 赫兹处,主电网引起的噪声可以清晰地观察到。

>>> from scipy.signal import welch
>>> f, Pxx = welch(ecg, fs=fs, nperseg=2048, scaling="spectrum")
>>> plt.semilogy(f, Pxx)
>>> plt.xlabel("Frequency in Hz")
>>> plt.ylabel("Power spectrum of the ECG in mV**2")
>>> plt.xlim(f[[0, -1]])
>>> plt.show() 

../../_images/scipy-datasets-electrocardiogram-1_03_00.png

scipy.datasets.download_all

原文:docs.scipy.org/doc/scipy-1.12.0/reference/generated/scipy.datasets.download_all.html#scipy.datasets.download_all

scipy.datasets.download_all(path=None)

用于下载scipy.datasets模块中所有数据集文件的实用方法。

参数:

pathstr,可选

下载所有数据集文件的目录路径。如果为 None,则默认为由 pooch 检测到的系统缓存目录。

数据集(scipy.datasets

原文:docs.scipy.org/doc/scipy-1.12.0/reference/datasets.html#module-scipy.datasets

数据集方法

ascent()获取一个 8 位灰度深度的 512 x 512 推导图像,用于演示方便。
face([gray])获取一个 1024 x 768 的彩色浣熊脸部图像。
electrocardiogram()加载一个心电图作为一维信号的示例。

实用方法

download_all([path])下载 scipy.datasets 模块的所有数据集文件的实用方法。
clear_cache([datasets])清理 scipy 数据集缓存目录。

数据集的使用

SciPy 数据集方法可以简单地如下调用:'<dataset-name>()' 这会通过网络下载数据集文件一次,并保存缓存,然后返回表示数据集的 numpy.ndarray 对象。

注意,不同数据集方法的返回数据结构和数据类型可能不同。有关使用的更详细示例,请查看上述特定数据集方法的文档。

数据集检索和存储工作方式

SciPy 数据集文件存储在 SciPy GitHub 组织的各个单独存储库中,遵循命名约定为 'dataset-<name>',例如 scipy.datasets.face 文件位于 github.com/scipy/dataset-facescipy.datasets 子模块利用并依赖于 Pooch,一个简化数据文件获取的 Python 包。Pooch 在调用数据集函数时使用这些存储库来检索相应的数据集文件。

所有数据集的注册表,实质上是文件名与其 SHA256 哈希及存储库 URL 的映射,均由 Pooch 维护,用于在函数调用时处理和验证下载。下载数据集一次后,文件将保存在系统缓存目录下的 'scipy-data' 文件夹中。

数据集缓存位置在不同平台可能有所不同。

对于 macOS:

'~/Library/Caches/scipy-data' 

对于 Linux 和其他类 Unix 平台:

'~/.cache/scipy-data'  # or the value of the XDG_CACHE_HOME env var, if defined 

对于 Windows:

'C:\Users\<user>\AppData\Local\<AppAuthor>\scipy-data\Cache' 

在因各种安全原因而网络连接受限制的环境中,或者在没有持续互联网连接的系统上,可以通过将数据集仓库的内容手动放置在上述提到的缓存目录中,来加载数据集的缓存,以避免在没有互联网连接时获取数据集时发生错误。

scipy.datasets.clear_cache

原文:docs.scipy.org/doc/scipy-1.12.0/reference/generated/scipy.datasets.clear_cache.html#scipy.datasets.clear_cache

scipy.datasets.clear_cache(datasets=None)

清理 scipy 数据集缓存目录。

如果提供了 scipy.datasets 方法或其列表/元组,则 clear_cache 将删除与传递的数据集方法可调用相关联的所有数据文件。

默认情况下,它会删除所有缓存的数据文件。

参数:

datasets 可调用对象或可调用对象的列表/元组或 None

示例

>>> from scipy import datasets
>>> ascent_array = datasets.ascent()
>>> ascent_array.shape
(512, 512)
>>> datasets.clear_cache([datasets.ascent])
Cleaning the file ascent.dat for dataset ascent 

离散傅立叶变换(scipy.fft

原文:docs.scipy.org/doc/scipy-1.12.0/reference/fft.html

快速傅立叶变换(FFT)

fft(x[, n, axis, norm, overwrite_x, ...])计算一维离散傅立叶变换。
ifft(x[, n, axis, norm, overwrite_x, ...])计算一维离散傅立叶逆变换。
fft2(x[, s, axes, norm, overwrite_x, ...])计算二维离散傅立叶变换
ifft2(x[, s, axes, norm, overwrite_x, ...])计算二维离散傅立叶逆变换。
fftn(x[, s, axes, norm, overwrite_x, ...])计算 N 维离散傅立叶变换。
ifftn(x[, s, axes, norm, overwrite_x, ...])计算 N 维离散傅立叶逆变换。
rfft(x[, n, axis, norm, overwrite_x, ...])计算实输入的一维离散傅立叶变换。
irfft(x[, n, axis, norm, overwrite_x, ...])计算rfft的逆变换。
rfft2(x[, s, axes, norm, overwrite_x, ...])计算实数组的二维傅立叶变换。
irfft2(x[, s, axes, norm, overwrite_x, ...])计算rfft2的逆变换
rfftn(x[, s, axes, norm, overwrite_x, ...])计算实输入的 N 维离散傅立叶变换。
irfftn(x[, s, axes, norm, overwrite_x, ...])计算rfftn的逆变换
hfft(x[, n, axis, norm, overwrite_x, ...])计算具有共轭对称性的信号的傅立叶变换,即实谱。
ihfft(x[, n, axis, norm, overwrite_x, ...])计算具有共轭对称性的信号的逆傅立叶变换。
hfft2(x[, s, axes, norm, overwrite_x, ...])计算共轭复数数组的二维傅立叶变换。
ihfft2(x[, s, axes, norm, overwrite_x, ...])计算实谱的二维逆 FFT。
hfftn(x[, s, axes, norm, overwrite_x, ...])计算 Hermite 对称复输入的 N 维 FFT,即具有实谱的信号。
ihfftn(x[, s, axes, norm, overwrite_x, ...])计算实谱的 N 维逆离散傅里叶变换。

离散正弦和余弦变换(DST 和 DCT)

dct(x[, type, n, axis, norm, overwrite_x, ...])返回任意类型序列 x 的离散余弦变换。
idct(x[, type, n, axis, norm, overwrite_x, ...])返回任意类型序列的离散余弦逆变换。
dctn(x[, type, s, axes, norm, overwrite_x, ...])返回沿指定轴的多维离散余弦变换。
idctn(x[, type, s, axes, norm, overwrite_x, ...])返回沿指定轴的多维离散余弦逆变换。
dst(x[, type, n, axis, norm, overwrite_x, ...])返回任意类型序列 x 的离散正弦变换。
idst(x[, type, n, axis, norm, overwrite_x, ...])返回任意类型序列的离散正弦逆变换。
dstn(x[, type, s, axes, norm, overwrite_x, ...])返回沿指定轴的多维离散正弦变换。
idstn(x[, type, s, axes, norm, overwrite_x, ...])返回沿指定轴的多维离散正弦逆变换。

快速 Hankel 变换

fht(a, dln, mu[, offset, bias])计算快速 Hankel 变换。
ifht(A, dln, mu[, offset, bias])计算逆快速 Hankel 变换。

辅助函数

fftshift(x[, axes])将零频率分量移至频谱中心。
ifftshift(x[, axes])fftshift 的逆操作。
fftfreq(n[, d, xp, device])返回离散傅里叶变换的采样频率。
rfftfreq(n[, d, xp, device])返回离散傅里叶变换采样频率(用于 rfft, irfft 的使用)。
fhtoffset(dln, mu[, initial, bias])返回快速 Hankel 变换的最佳偏移量。
next_fast_len(target[, real])查找输入数据到 fft 的下一个快速大小,用于零填充等。
set_workers(workers)默认工作线程数的上下文管理器,用于 scipy.fft
get_workers()返回当前上下文中默认的工作线程数。

后端控制

set_backend(backend[, coerce, only])在固定范围内设置后端的上下文管理器。
skip_backend(backend)在固定范围内跳过某个后端的上下文管理器。
set_global_backend(backend[, coerce, only, ...])设置全局 fft 后端。
register_backend(backend)注册永久使用的后端。

scipy.fft.fft

原文:docs.scipy.org/doc/scipy-1.12.0/reference/generated/scipy.fft.fft.html#scipy.fft.fft

scipy.fft.fft(x, n=None, axis=-1, norm=None, overwrite_x=False, workers=None, *, plan=None)

计算 1-D 离散傅里叶变换。

此函数使用高效的快速傅里叶变换(FFT)算法计算 1-D n-点离散傅里叶变换(DFT)[1]

参数:

xarray_like

输入数组,可以是复数。

nint, optional

输出的变换轴的长度。如果n小于输入的长度,则截断输入。如果n大于输入的长度,则用零填充输入。如果没有给出n,则使用axis指定的轴上的输入长度。

axisint, optional

用于计算 FFT 的轴。如果未给出,则使用最后一个轴。

norm{“backward”,“ortho”,“forward”},optional

标准化模式。默认为“backward”,表示在正向变换上不进行标准化,在ifft上按1/n进行缩放。而“forward”则在正向变换上应用1/n因子。对于norm="ortho",两个方向均按1/sqrt(n)进行缩放。

新版本 1.6.0 中添加了norm={"forward", "backward"}选项。

overwrite_xbool, optional

如果为 True,则x的内容可以被销毁;默认为 False。有关更多详细信息,请参见下面的说明。

workersint, optional

并行计算的最大工作线程数。如果为负数,则从os.cpu_count()循环回绕。有关更多详细信息,请参见下文。

planobject, optional

此参数保留供下游 FFT 供应商提供的预计算计划。目前在 SciPy 中未使用。

新版本 1.5.0 中的新增内容。

返回:

outcomplex ndarray

指定由axis指示的轴或最后一个轴(如果未指定axis)转换的截断或零填充输入。

引发:

IndexError

axes大于x的最后一个轴。

另见

ifft

fft

fft2

二维 FFT。

fftn

N 维 FFT。

rfftn

实输入的 N 维 FFT。

fftfreq

给定 FFT 参数的频率分 bin。

next_fast_len

用于最有效转换的输入填充大小。

注意

FFT(快速傅里叶变换)指的是通过使用计算项中的对称性来高效计算离散傅里叶变换(DFT)的一种方法。当 n 是 2 的幂时,对称性最高,因此对于这些大小的变换效率最高。对于难以因式分解的大小,scipy.fft 使用 Bluestein 算法 [2],因此计算复杂度永远不会超过 O(n log n)。通过使用 next_fast_len 来对输入进行零填充,可能会看到进一步的性能提升。

如果 x 是 1 维数组,则 fft 等效于

y[k] = np.sum(x * np.exp(-2j * np.pi * k * np.arange(n)/n)) 

频率项 f=k/ny[k] 处找到。在 y[n/2] 处达到奈奎斯特频率,并绕到负频率项。因此,对于 8 点变换,结果的频率是 [0, 1, 2, 3, -4, -3, -2, -1]。要重新排列 fft 输出,使零频率分量居中,如 [-4, -3, -2, -1, 0, 1, 2, 3],使用 fftshift

变换可以使用单精度、双精度或扩展精度(长双精度)浮点数完成。半精度输入将转换为单精度,非浮点输入将转换为双精度。

如果 x 的数据类型是实数,则会自动使用“实 FFT”算法,大致减少计算时间的一半。为了进一步提高效率,可以使用 rfft,它执行相同的计算,但只输出对称频谱的一半。如果数据既是实数又是对称的,则 dct 可以再次将效率提升一倍,通过从信号的一半生成一半的频谱。

当指定 overwrite_x=True 时,x 引用的内存可能会被实现方式使用。这可能包括重用内存作为结果,但这并不保证。您不应依赖于变换后 x 的内容,因为这可能会在未来更改而没有警告。

workers 参数指定要将 FFT 计算拆分为的最大并行作业数。这将在 x 中执行独立的 1-D FFT。因此,x 必须至少是 2-D,并且非变换的轴必须足够大,以便分成块。如果 x 太小,则可能使用的作业数少于请求的数量。

参考文献

[1]

Cooley, James W. 和 John W. Tukey, 1965 年, “An algorithm for the machine calculation of complex Fourier series,” Math. Comput. 19: 297-301.

[2]

Bluestein, L., 1970 年, “A linear filtering approach to the computation of discrete Fourier transform”. IEEE Transactions on Audio and Electroacoustics. 18 (4): 451-455.

示例

>>> import scipy.fft
>>> import numpy as np
>>> scipy.fft.fft(np.exp(2j * np.pi * np.arange(8) / 8))
array([-2.33486982e-16+1.14423775e-17j,  8.00000000e+00-1.25557246e-15j,
 2.33486982e-16+2.33486982e-16j,  0.00000000e+00+1.22464680e-16j,
 -1.14423775e-17+2.33486982e-16j,  0.00000000e+00+5.20784380e-16j,
 1.14423775e-17+1.14423775e-17j,  0.00000000e+00+1.22464680e-16j]) 

在这个例子中,实数输入的 FFT 是 Hermitian 的,即在实部对称,在虚部反对称:

>>> from scipy.fft import fft, fftfreq, fftshift
>>> import matplotlib.pyplot as plt
>>> t = np.arange(256)
>>> sp = fftshift(fft(np.sin(t)))
>>> freq = fftshift(fftfreq(t.shape[-1]))
>>> plt.plot(freq, sp.real, freq, sp.imag)
[<matplotlib.lines.Line2D object at 0x...>,
 <matplotlib.lines.Line2D object at 0x...>]
>>> plt.show() 

../../_images/scipy-fft-fft-1.png

scipy.fft.ifft

原文:docs.scipy.org/doc/scipy-1.12.0/reference/generated/scipy.fft.ifft.html#scipy.fft.ifft

scipy.fft.ifft(x, n=None, axis=-1, norm=None, overwrite_x=False, workers=None, *, plan=None)

计算 1-D 逆离散傅里叶变换。

此函数计算由fft计算的 1-D n点离散傅里叶变换的逆变换。换句话说,ifft(fft(x)) == x在数值精度范围内成立。

输入应与fft返回的顺序相同,

  • x[0]应包含零频率项,

  • x[1:n//2]应包含正频率项,

  • x[n//2 + 1:]应包含负频率项,按照从最负频率开始递增的顺序。

对于偶数个输入点,x[n//2]代表正和负 Nyquist 频率值的总和,因为这两者会混叠在一起。详情请参见fft

参数:

xarray_like

输入数组,可以是复数。

nint, optional

输出的转换轴的长度。如果n小于输入的长度,则截断输入。如果n大于输入的长度,则用零填充输入。有关填充问题的说明,请参阅注释。

axisint, optional

计算逆 DFT 的轴。如果未给出,则使用最后一个轴。

norm{“backward”, “ortho”, “forward”}, optional

归一化模式(参见fft)。默认为“backward”。

overwrite_xbool, optional

如果为 True,则可以销毁x的内容;默认值为 False。详见fft

workersint, optional

并行计算中使用的最大工作线程数。如果为负数,则从os.cpu_count()开始循环计数。详见fft

planobject, optional

此参数保留供下游 FFT 供应商提供的预先计算的计划使用。目前 SciPy 未使用此参数。

自版本 1.5.0 起新增。

返回:

outcomplex ndarray

指示的轴或最后一个轴上变换的截断或零填充输入。

异常:

IndexError

如果axes大于x的最后一个轴。

另请参见

fft

1-D(正向)FFT,其逆变换为ifft

ifft2

2-D 逆傅里叶变换。

ifftn

N-D 逆傅里叶变换。

注:

如果输入参数n大于输入的大小,则在末尾附加零以进行填充。尽管这是常见的方法,但可能会导致意想不到的结果。如果需要不同的填充方式,则必须在调用ifft之前执行。

如果x是一个一维数组,那么ifft等效于

y[k] = np.sum(x * np.exp(2j * np.pi * k * np.arange(n)/n)) / len(x) 

fft类似,ifft支持所有浮点类型,并且针对实数输入进行了优化。

示例

>>> import scipy.fft
>>> import numpy as np
>>> scipy.fft.ifft([0, 4, 0, 0])
array([ 1.+0.j,  0.+1.j, -1.+0.j,  0.-1.j]) # may vary 

创建并绘制具有随机相位的带限信号:

>>> import matplotlib.pyplot as plt
>>> rng = np.random.default_rng()
>>> t = np.arange(400)
>>> n = np.zeros((400,), dtype=complex)
>>> n[40:60] = np.exp(1j*rng.uniform(0, 2*np.pi, (20,)))
>>> s = scipy.fft.ifft(n)
>>> plt.plot(t, s.real, 'b-', t, s.imag, 'r--')
[<matplotlib.lines.Line2D object at ...>, <matplotlib.lines.Line2D object at ...>]
>>> plt.legend(('real', 'imaginary'))
<matplotlib.legend.Legend object at ...>
>>> plt.show() 

../../_images/scipy-fft-ifft-1.png

scipy.fft.fft2

原文:docs.scipy.org/doc/scipy-1.12.0/reference/generated/scipy.fft.fft2.html#scipy.fft.fft2

scipy.fft.fft2(x, s=None, axes=(-2, -1), norm=None, overwrite_x=False, workers=None, *, plan=None)

计算 2-D 离散傅里叶变换

此函数通过快速傅里叶变换(FFT)计算 M-D 数组中任何轴上的 N-D 离散傅里叶变换。默认情况下,变换在输入数组的最后两个轴上计算,即 2 维 FFT。

参数:

xarray_like

输入数组,可以是复数

s整数序列,可选

输出的形状(每个转换轴的长度)(s[0] 指代轴 0,s[1] 指代轴 1,以此类推)。这对应于 fft(x, n) 中的 n。沿每个轴,如果给定的形状小于输入的形状,则输入被裁剪。如果形状更大,则用零填充输入。如果未给出 s,则使用由 axes 指定的轴上的输入形状。

axes整数序列,可选

用于计算 FFT 的轴。如果未给出,则使用最后两个轴。

norm{“backward”, “ortho”, “forward”},可选

标准化模式(见 fft)。默认为“backward”。

overwrite_xbool,可选

如果为 True,则 x 的内容可以被销毁;默认值为 False。详情请参阅 fft

workersint,可选

用于并行计算的最大工作线程数。如果为负数,则从 os.cpu_count() 回绕。详情请参阅 fft

plan对象,可选

此参数保留用于传递下游 FFT 供应商提供的预计算计划。目前在 SciPy 中未使用。

自版本 1.5.0 新增。

返回:

out复数 ndarray

截断或零填充输入,沿 axes 指示的轴变换,或者如果未给出 axes 则为最后两个轴。

引发:

值错误

如果 saxes 长度不同,或者未给出 axeslen(s) != 2

索引错误

如果 axes 的元素大于 x 的轴数。

另请参阅

ifft2

逆 2-D FFT。

fft

1-D FFT。

fftn

N 维 FFT。

fftshift

将零频率项移至数组中心。对于 2-D 输入,交换第一和第三象限,第二和第四象限。

注释

fft2 仅仅是 fftn,但默认 axes 不同。

输出与fft类似,在变换后的轴的低阶角落包含零频率的项,这些轴的前半部分包含正频率项,轴的中间包含奈奎斯特频率的项,这些轴的后半部分以递减的负频率顺序包含负频率项。

查看fftn了解详细信息和绘图示例,以及fft了解使用的定义和约定。

例子

>>> import scipy.fft
>>> import numpy as np
>>> x = np.mgrid[:5, :5][0]
>>> scipy.fft.fft2(x)
array([[ 50\.  +0.j        ,   0\.  +0.j        ,   0\.  +0.j        , # may vary
 0\.  +0.j        ,   0\.  +0.j        ],
 [-12.5+17.20477401j,   0\.  +0.j        ,   0\.  +0.j        ,
 0\.  +0.j        ,   0\.  +0.j        ],
 [-12.5 +4.0614962j ,   0\.  +0.j        ,   0\.  +0.j        ,
 0\.  +0.j        ,   0\.  +0.j        ],
 [-12.5 -4.0614962j ,   0\.  +0.j        ,   0\.  +0.j        ,
 0\.  +0.j        ,   0\.  +0.j        ],
 [-12.5-17.20477401j,   0\.  +0.j        ,   0\.  +0.j        ,
 0\.  +0.j        ,   0\.  +0.j        ]]) 

scipy.fft.ifft2

原文:docs.scipy.org/doc/scipy-1.12.0/reference/generated/scipy.fft.ifft2.html#scipy.fft.ifft2

scipy.fft.ifft2(x, s=None, axes=(-2, -1), norm=None, overwrite_x=False, workers=None, *, plan=None)

计算 2-D 离散傅里叶变换的逆变换。

该函数通过快速傅里叶变换(FFT)在 M-D 数组中的任意数量的轴上计算 2-D 离散傅里叶变换的逆变换。换句话说,对于数字精度内,ifft2(fft2(x)) == x。默认情况下,逆变换计算在输入数组的最后两个轴上。

输入与 [ifft](docs.scipy.org/doc/scipy-1… "scipy.fft.ifft")返回的相同方式排序,即应在两个轴的低序角处具有零频率项,这些轴的前半部分具有正频率项,在这些轴的中间具有奈奎斯特频率项,并且这些轴的后半部分具有负频率项,按照递减负频率的顺序。

参数:

x:类似数组

输入数组,可以是复数。

s:整数序列,可选

输出的形状(每个轴的长度)(s[0] 指代轴 0,s[1] 指代轴 1,依此类推)。对应于 ifft(x, n)n。沿每个轴,如果给定的形状小于输入的形状,则输入会被裁剪。如果形状更大,则用零填充输入。如果未给定 s,则使用 axes 指定的轴上的输入形状。关于 [ifft](docs.scipy.org/doc/scipy-1… "scipy.fft.ifft")的零填充问题,请参阅注释。

axes:整数序列,可选

要计算 FFT 的轴。如果未给定,则使用最后两个轴。

norm:{“backward”, “ortho”, “forward”},可选

标准化模式(见 [fft](docs.scipy.org/doc/scipy-1… "scipy.fft.fft"))。默认为“backward”。

overwrite_x:布尔值,可选

如果为 True,则 x 的内容可以被破坏;默认为 False。有关更多详细信息,请参阅 fft

workers:整数,可选

最大要使用的并行计算工作者数。如果为负数,则该值从 os.cpu_count() 循环回绕。有关更多详细信息,请参阅 fft

plan:对象,可选

此参数保留用于向下游 FFT 供应商提供的预先计算的计划。目前在 SciPy 中未使用。

1.5.0 版本中的新功能。

返回:

out:复数 ndarray

被截断或零填充的输入,在 axes 指示的轴上进行变换,或者最后两个轴如果未给定 axes

异常:

值错误

如果 saxes 长度不同,或者未给定 axeslen(s) != 2

索引错误

如果 axes 的元素大于 x 的轴数。

另请参阅

fft2

前向二维 FFT,其中ifft2 是其逆过程。

ifftn

N 维 FFT 的逆过程。

fft

一维 FFT。

ifft

一维逆 FFT。

注意

ifft2 只是具有不同 axes 默认值的ifftn

详见ifftn 以及绘图示例,并参考用法和约定定义的fft

零填充与ifft 类似,通过在指定维度的输入后附加零来完成。尽管这是常见的方法,但可能会导致意外结果。如果需要其他形式的零填充,则必须在调用ifft2 之前执行。

示例

>>> import scipy.fft
>>> import numpy as np
>>> x = 4 * np.eye(4)
>>> scipy.fft.ifft2(x)
array([[1.+0.j,  0.+0.j,  0.+0.j,  0.+0.j], # may vary
 [0.+0.j,  0.+0.j,  0.+0.j,  1.+0.j],
 [0.+0.j,  0.+0.j,  1.+0.j,  0.+0.j],
 [0.+0.j,  1.+0.j,  0.+0.j,  0.+0.j]]) 

scipy.fft.fftn

原文:docs.scipy.org/doc/scipy-1.12.0/reference/generated/scipy.fft.fftn.html#scipy.fft.fftn

scipy.fft.fftn(x, s=None, axes=None, norm=None, overwrite_x=False, workers=None, *, plan=None)

计算 N-D 离散傅里叶变换。

此函数通过快速傅里叶变换(FFT)计算 M-D 数组中任意数量轴上的 N-D 离散傅里叶变换。

参数:

x类数组

输入数组,可以是复数。

s整数序列,可选

输出的形状(每个转换轴的长度)(s[0]表示轴 0,s[1]表示轴 1,依此类推)。对于任何轴,如果给定的形状小于输入的形状,则输入将被截断。如果它更大,则使用零填充输入。如果未提供s,则使用由axes指定的轴上的输入形状。

axes整数序列,可选

在其上计算 FFT 的轴。如果未给出,则使用最后len(s)个轴,或者如果也未指定s,则使用所有轴。

norm{“backward”, “ortho”, “forward”},可选

标准化模式(参见fft)。默认为“backward”。

overwrite_x布尔型,可选

如果为 True,x的内容可以被破坏;默认为 False。有关更多详细信息,请参见fft

workers整数,可选

最大工作程序数用于并行计算。如果为负数,则从os.cpu_count()的值循环回。有关更多详细信息,请参见fft

计划对象,可选

此参数保留了下游 FFT 供应商提供的预计划。目前在 SciPy 中未使用。

自版本 1.5.0 起新增。

返回:

out复数 ndarray

被截断或零填充的输入,在由axes指示的轴或由参数部分中解释的sx的组合中进行了转换。

Raises:

ValueError

如果saxes的长度不同。

IndexError

如果axes的元素大于x的轴数。

另请参见

ifftn

fftn的逆,逆 N-D FFT。

fft

1-D FFT,其定义和惯例。

rfftn

实输入的 N-D FFT。

fft2

2-D FFT。

fftshift

将零频率项移到数组中心。

注意事项

输出与 fft 类似,包含所有轴的低阶角的零频率项,所有轴的前半部分的正频率项,所有轴中间的奈奎斯特频率项,以及所有轴后半部分的负频率项,按照递减负频率的顺序排列。

例子

>>> import scipy.fft
>>> import numpy as np
>>> x = np.mgrid[:3, :3, :3][0]
>>> scipy.fft.fftn(x, axes=(1, 2))
array([[[ 0.+0.j,   0.+0.j,   0.+0.j], # may vary
 [ 0.+0.j,   0.+0.j,   0.+0.j],
 [ 0.+0.j,   0.+0.j,   0.+0.j]],
 [[ 9.+0.j,   0.+0.j,   0.+0.j],
 [ 0.+0.j,   0.+0.j,   0.+0.j],
 [ 0.+0.j,   0.+0.j,   0.+0.j]],
 [[18.+0.j,   0.+0.j,   0.+0.j],
 [ 0.+0.j,   0.+0.j,   0.+0.j],
 [ 0.+0.j,   0.+0.j,   0.+0.j]]])
>>> scipy.fft.fftn(x, (2, 2), axes=(0, 1))
array([[[ 2.+0.j,  2.+0.j,  2.+0.j], # may vary
 [ 0.+0.j,  0.+0.j,  0.+0.j]],
 [[-2.+0.j, -2.+0.j, -2.+0.j],
 [ 0.+0.j,  0.+0.j,  0.+0.j]]]) 
>>> import matplotlib.pyplot as plt
>>> rng = np.random.default_rng()
>>> [X, Y] = np.meshgrid(2 * np.pi * np.arange(200) / 12,
...                      2 * np.pi * np.arange(200) / 34)
>>> S = np.sin(X) + np.cos(Y) + rng.uniform(0, 1, X.shape)
>>> FS = scipy.fft.fftn(S)
>>> plt.imshow(np.log(np.abs(scipy.fft.fftshift(FS))**2))
<matplotlib.image.AxesImage object at 0x...>
>>> plt.show() 

../../_images/scipy-fft-fftn-1.png