物理学常数 matlab,[转载]科学计算:Python VS. MATLAB(6)----物理常数

科学计算:Python VS.

MATLAB(6)----物理常数

物理常数亦被称为物理学常量或自然常数,指的是物理学中数值固定不变的物理量,是一个与物理测量无关的固定值。物理常数有很多,其中比较著名的有真空光速、普朗克常数、万有引力常数、玻尔兹曼常数及阿伏伽德罗常数。它们被假设在宇宙中任何地方和任何时刻都相同。(摘自wikipedia)

scipy中的constants模块用来处理自然界的常数。主要分为数学常数、物理常数和物理单位。基本囊括了常见的各个常数,以及常用的各种非SI单位制对SI单位制的折合量。

首先我们必须引入这个包:from scipy import constants as

const

1.数学常数

就两个,一个是圆周率const.pi=3.14159265359;一个是黄金分割const.golden=1.61803398875。

2.物理常数

物理常数的规范化表述应该包括以下几个要素:物理量的名称--符号--数值--单位--不确定度.

但是对于那些比较著名的常数,可能不需要这么罗嗦,只给出一个数值就行啦!比如:

真空光速:const.c 给出299792458.0

普朗克常量:const.h 给出6.62606896e-34

万有引力常数:const.G 给出6.67428e-11

玻耳兹曼常数:const.k 给出1.3806504e-23

还想以这样的形式使用其他常量,但是又不知道是不是已经实现,可以输入const.之后按tab键查看。

更多的时候我们使用constants中实现的一个物理常数词典physical_constants。词典以物理量名称作为key,返回这个物理量的数值、单位和精度。物理量的名称是全称。比如,光速是speed

of light in vacuum,电子质量是electron mass。

例子1:

value,unit,precision=const.physical_constants[“speed of

light in vacuum”]

可以查看:

value=299792458.0

unit=m s^-1

precision=0.0

例子2:

value,unit,precision=const.physical_constants[“electron

mass”]

可以查看:

value=9.10938215e-31

unit=kg

precision=4.5e-38

如果不知道物理量的名称怎么写,两个办法。第一,查文档,看看文档中有没有;第二,自己动手,使用这个字典的方法const.physical_constants.viewkeys(),就列出了物理常数字典中的所有常量的名称。

3.物理单位

国际单位制的基本单位为米、千克、秒、安培、开尔文、摩尔和坎德拉。这些单位进行组合得出一些导出单位,比如速度是米每秒m*s-1;力是牛顿,即千克米每二次方秒kg*m*s-2。这些单位都是国际通用单位,不过,还有很多非国际单位在使用,比如速度中的千米每小时kmh、迈mph;力中的磅lbf等。做科学计算的时候,经常需要对这些单位进行规范化,使用单一的国际单位制进行计算。

3.1 SI单位制前缀

国际单位制的前缀表示基本单位的倍数或者分数,用来描述不同的量级。最常见的kilo表示1,000,mega表示1,000,000,milli表示0.001等等。SI单位制大致是按照1000进位,变换前缀的。我们做一个实验:

x=23

print

x #结果当然是23

print

x*const.kilo #结果是23000.0

3.2非标准单位向对标准单位的折算。

质量以kg为基本单位:

print

const.lb #得到0.45359237

角度以弧度为基本单位:

print

const.degree #得到0.0174532925199

时间以秒为基本单位:

print

const.hour #得到3600.0

长度以米为基本单位:

print

const.inch #得到0.0254

压力以帕斯卡为基本单位:

print

const.bar #得到100000.0

面积以平方米为基本单位:

print

const.acre #得到4046.8564224

体积以立方米为基本单位:

print

const.gallon #得到0.003785411784

速度以米每秒为基本单位:

print

const.kmh #得到0.277777777778

能量以焦耳为基本单位:

print

const.eV #得到1.602176487e-19

功率以瓦特为基本单位: print

const.hp #得到745.699871582

力以牛顿为基本单位:

print

const.lbf #得到4.44822161526

以上只是给出了每个物理量的一个非SI单位制的使用。以此触类旁通,解决自己遇到的非SI单位制问题即可。

对于温度,还实现了几个不同温标之间的转换函数,C2K, K2C,

F2K等。比如:

print const.C2K(0)

会得到273.15

对于光学,给出了波长lambda和频率nu之间的转换函数lambda2nu和nu2lambda。例如:

print const.lambda2nu(1)

会得到:

299792458.0

4.有什么用和怎么用

对于简单的使用常数比较少的物理问题,完全可以自己定义一个常数变量,赋予它一定精度的数值,而不使用上面提到的这些常数。不过对于物理味道比较重的问题,不妨就使用scipy提供的内置物理常数进行计算,为了方便使用我们可以事先做出一个别名表,为后续的计算提供方便,比如:

e_m,=const.physical_constants[“electron

mass”] #电子质量

e_e,=const.physical_constants[“elementary

charge”] #基本电荷量

……

使用的时候,就没必要再用那么长的代码了,只需使用e_m和e_e就可以了,你会发现,这样使用,确实是挺方便的!

=================================

From

罴羆的博客

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值