python强度公式计算_python – 黑体谱的普朗克斯公式
我试图写一个简单的python代码,用于给定温度T = 200K的强度与波长的关系图.
到目前为止我有这个……
import scipy as sp
import math
import matplotlib.pyplot as plt
import numpy as np
pi = np.pi
h = 6.626e-34
c = 3.0e+8
k = 1.38e-23
def planck(wav, T):
a = 2.0*h*pi*c**2
b = h*c/(wav*k*T)
intensity = a/ ( (wav**5)*(math.e**b - 1.0) )
return intensity
我不知道如何定义波长(wav),从而产生普朗克公式的图.任何帮助,将不胜感激.
解决方法:
这是一个基本情节.要使用plt.plot(x,y,fmt)进行绘图,您需要两个相同大小的数组x和y,其中x是要绘制的每个点的x坐标,y是y坐标,fmt是描述如何的字符串绘制数字.
因此,您需要做的就是创建一个均匀间隔的波长阵列(我称之为波长的np.array).这可以通过范围(开始,结束,间隔)来完成,这将创建从开始到结束(不包括)间隔开的数组.
然后使用函数在数组中的每个点处计算强度(将存储在另一个np.array中),然后调用plt.plot绘制它们.注意numpy让你在vectorized form中快速对数组进行数学运算,这在计算上是有效的.
import matplotlib.pyplot as plt
import numpy as np
h = 6.626e-34
c = 3.0e+8
k = 1.38e-23
def planck(wav, T):
a = 2.0*h*c**2
b = h*c/(wav*k*T)
intensity = a/ ( (wav**5) * (np.exp(b) - 1.0) )
return intensity
# generate x-axis in increments from 1nm to 3 micrometer in 1 nm increments
# starting at 1 nm to avoid wav = 0, which would result in division by zero.
wavelengths = np.arange(1e-9, 3e-6, 1e-9)
# intensity at 4000K, 5000K, 6000K, 7000K
intensity4000 = planck(wavelengths, 4000.)
intensity5000 = planck(wavelengths, 5000.)
intensity6000 = planck(wavelengths, 6000.)
intensity7000 = planck(wavelengths, 7000.)
plt.hold(True) # doesn't erase plots on subsequent calls of plt.plot()
plt.plot(wavelengths*1e9, intensity4000, 'r-')
# plot intensity4000 versus wavelength in nm as a red line
plt.plot(wavelengths*1e9, intensity5000, 'g-') # 5000K green line
plt.plot(wavelengths*1e9, intensity6000, 'b-') # 6000K blue line
plt.plot(wavelengths*1e9, intensity7000, 'k-') # 7000K black line
# show the plot
plt.show()
而你看到:
您可能需要清理轴标签,添加图例,在同一图表上绘制多个温度下的强度等.咨询relevant matplotlib documentation.
标签:python,numpy,scipy,matplotlib
来源: https://codeday.me/bug/20190831/1772064.html
python强度公式计算_python – 黑体谱的普朗克斯公式相关推荐
- python利用公式计算_Python利用openpyxl处理Excel文件(公式实例)
前面我们学习了Python使用openpyxl模块处理Excel文件的大部分内容,今天,我们通过一个例子来学习Python使用Excel公式的方法,引出今天的主题利用openpyxl处理Excel公式 ...
- python利用近似公式计算π_python如何利用公式计算π
python利用公式计算π的方法:首先导入数学模块及时间模块:然后计算Pi精确到小数点后几位数,代码为[print('n{:=^70}'.format('计算开始'))]:最后完成计算,代码为[pri ...
- python操作excel模板_Python Excel模板读写,维护公式和格式
我已经查过了,似乎找不到我要找的东西.我在这里找到的所有线索最后都成了我的死胡同.xlrd.xlwt和xlutils几乎可以满足我的需要,但是-基本思想是,我需要使用Python将简单数据(字符串)写 ...
- python读取excel公式计算结果为none_python读取excel保存公式无法读取
原因: 以data_only=True或默认data_only=False打开会得到两种不同的结果,各自独立,即data_only=True状态下打开的,会发现公式结果为None(空值)或者一个计算好 ...
- c语言编程序按下列公式计算e的值,编写程序,利用公式 ,求出e的近似值
已知一个三角形中三条边的长度分别为a,b和c,编写程序利用公式求出三角形的面积,其中S=(a+b+c)/2.要求边长a. usingSystem;usingSystem.Collections.Gen ...
- python公式计算_Python Numpy计算各类距离的方法
详细: 1.闵可夫斯基距离(Minkowski Distance) 2.欧氏距离(Euclidean Distance) 3.曼哈顿距离(Manhattan Distance) 4.切比雪夫距离(Ch ...
- 自学python编程基础科学计算_Python基础与科学计算常用方法
Python基础与科学计算常用方法 本文使用的是Jupyter Notebook,Python3.你可以将代码直接复制到Jupyter Notebook中运行,以便更好的学习. 导入所需要的头文件 i ...
- python中怎么计算_python中的加减乘除运算
python中的加减乘除运算,是学习python入门的基础,是以后进行数学计算的关键部分.包括运算表达式的写法,运算规则,加减乘除,求余,求商等等. 工具/原料 python 电脑 方法/步骤 1 1 ...
- python编程工时计算_Python编程题:两个日期间的天数统计(附代码)
编程题一:计算两个日期之间的天数 题目如下: 题目一 解题思路: 将两个日期格式化成time模块中的标准时间结构struct_time,缺少值用0补齐利用time模块函数分别计算两个日期到时间戳(指格 ...
- python空气质量指数计算_Python入门案例(八):空气质量指数(AQI)计算
一.空气质量指数计算V1.0 主要知识点:分支结构.函数.异常处理# -*- coding:utf-8 -*- """ @author:Angel @file:AQI_V ...
最新文章
- torch转mnn笔记
- 基于权因子的图像融合
- C++ 标准库类型 vector
- word2vec原理_Word2vec详细整理(1)—权重更新原理
- SpringCloud版本说明
- python manager与basemanager_使用Python多处理管理器(BaseManager/SyncManager)与远程计算机共享队列时出现管道中断...
- 乱七八糟的编程技巧(随机数、效率)和网站(http://bytew.net/OIer/)
- 《如何搭建小微企业风控模型》第五节 特征工程(上)
- 杭州趣链张帅:趣链拥有大厂都没有的优势
- 从零开始react实战:云书签-1 react环境搭建
- matlab遗传算法工具箱及应用 pdf,MATLAB遗传算法工具箱及应用(雷英杰)
- html如何退出登录,微信小程序怎么退出登录
- android studio开发app设置登录界面
- Springboot 之 使用POI读取解析Excel文件
- 人类的历史就是一部创业史
- 巴菲特致股东的一封信:1989年
- 云计算与大数据技术应用2020.10.15
- 区间DP例题(持续更新)
- JavaBean为什么需要序列化?
- 快速学习Spring Boot