SciPy 的常量模块包含许多物理常量:
from scipy import Constants as Cprint C.c # 真空中的光速print C.h # 普朗克常数299792458.06.62606957e-34在字典physical_constants中,以物理常量名称为key,对应的值是包含三个元素的元组,分别是常数值、单位和误差。例如,以下程序用于检查电子的质量:
C.physical_constants['电子质量'](9.10938291e-31, 'kg', 4e-38) 除了物理常数之外,constants模块还包含很多单位信息,这是当一个数量单位转换成一个标准单位。价值:
# 1英里等于多少米,1英寸等于多少米,1克等于多少公斤,1磅等于多少公斤C.mile C.inch C.gram C.pound-- -------------- ---- ------ ------ ------------------1609.3439999999998 0.0254 0.001 0.45359236999999997SciPy的特殊模块是一个非常完整的函数库,其中包含基本数学函数、特殊数学函数以及NumPy中出现的所有函数。由于功能较多,本节仅简单介绍。至于其包含的具体函数列表,建议读者参考SciPy帮助文档。
伽马函数 是概率统计中经常出现的特殊函数。其计算公式如下:
显然,通过这个公式来计算(z) 的值比较麻烦。您可以使用特殊模块中的gamma() 来计算:
import scipy.special as Sprint S.gamma(4)print S.gamma(0.5)print S.gamma(1+1j) # gamma函数支持复数打印S.gamma(1000)6.01.77245385091(0.498015668118-0.154949828302j )inf (z) 函数是阶乘函数在实数和复数系统上的扩展。它生长得非常快。 1000的阶乘已经超出了双精度浮点数的表示范围,所以结果是无穷大。为了计算更大的范围,可以使用gammaln() 来计算ln(|(x)|) 的值。它采用特殊的算法直接计算函数的对数,因此可以表示更大的范围。
S.gammaln(1000)5905.2204232091808special 模块中的某些函数不是数学意义上的特殊函数。例如,log1p(x) 计算log(1+x) 的值。这是因为浮点数的精度有限,无法准确表示非常接近1的实数。例如,1 + 1e-20的值无法用浮点数表示,因此log(1+1e的值-20) 为0。当使用log1p() 时,可以非常准确地计算:
print 1 + 1e-20print np.log(1+1e-20)print S.log1p(1e-20)1.00.01e-20实际上,当x很小时,log1p(x)约等于x。这可以通过log(1+x)执行泰勒级数展开证明来完成。在后续章节中我们将学习如何使用符号计算库SymPy进行泰勒级数展开。
这些特殊函数与NumPy 中的通用数学函数一样,都是ufunc 函数,支持数组上的广播操作。例如,ellipj(u, m) 计算雅可比椭圆函数,该函数有两个参数u 和m,返回四个值sn、cn、dn 和phi,其中phi 满足以下椭圆积分,并且
由于ellipj() 支持广播操作,因此在下面的程序中调用它时传递的两个参数的形状分别为(200, 1) 和(1, 5),因此得到的四个结果数组的形状均为(200 , 5),图1显示了这些曲线。
本文采摘于网络,不代表本站立场,转载联系作者并注明出处:https://www.iotsj.com//kuaixun/5932.html
用户评论
学习了这个技能后,我可以轻松处理各种科学计算需求!
有10位网友表示赞同!
SciPy里有很多实用的常数和特殊函数,简直就是数据分析利器。
有13位网友表示赞同!
对Python的掌握要达到更高层次,就要深入了解SciPy这些核心库!
有18位网友表示赞同!
Python 数据分析必备! 学习SciPy常数和特殊函数真太重要了!
有18位网友表示赞同!
以前不知道原来还有那么多专门用在数学计算中的特殊函数。
有19位网友表示赞同!
想要成为一名优秀的Python数据分析师,学习这些函数是关键。
有14位网友表示赞同!
真是帮了大忙!终于不再需要自己手动去计算那些繁琐的常数了!
有17位网友表示赞同!
SciPy文档写的真详细,很容易理解这些复杂的数学概念。
有14位网友表示赞同!
感谢分享!这次学习让我对Python数据分析有了更系统的认识。
有6位网友表示赞同!
现在做数据分析项目的时候,可以轻松调用到各种需要的常数和特殊函数。
有10位网友表示赞同!
学习这方面的知识,感觉自己的Python技能又提升了一个层次!
有20位网友表示赞同!
太棒了!可以帮助我快速高效地处理科学计算问题
有6位网友表示赞同!
这些特殊的数学函数真是太厉害了!竟然可以用Python代码直接实现!
有10位网友表示赞同!
数据分析过程中经常会用到这些常数和特殊函数,早点学习真的很重要!
有6位网友表示赞同!
SciPy简直是Python中最强大的科学计算库之一
有10位网友表示赞同!
有了这些知识,我可以更加深入地理解数据背后的数学模型。
有12位网友表示赞同!
以后再也不用手写复杂的公式了, 太方便了!
有15位网友表示赞同!
原来Python可以这么灵活运用到数学领域!
有17位网友表示赞同!