关于黑体辐射的正确公式,即普朗克公式:
% 定义普朗克常数,单位为J·s
h = 6.63e-34;
% 定义真空中的光速,单位为m/s
c = 3e8;
% 定义玻尔兹曼常数,单位为J/K
k = 1.38e-23;
% 外层循环,设置不同的辐射温度
for T = 2700:100:3500 % T代表辐射温度,单位为K,步长为100
% 定义波长范围及计算步长,单位为m
l=(1:10:5001).*10^(-9);
% 根据普朗克辐射定律计算指定温度光谱辐出度
% 公式为M=(2*h*pi*c^2)/(lambda^5)/(exp(h*c/(lambda*k*T)) - 1)
M = (2 * h *pi* c ^ 2)./(l.^5)./(exp(h * c./(l * k * T)) - 1);
% 绘制光谱辐出度曲线,颜色为蓝色,线宽为1.4
plot(l,M,'-b','LineWidth',1.4);
% 找出指定温度下光谱辐出度的最大值
maxM = max(M);
% 找到最大值对应的索引,可用于确定峰值波长点的位置
[~, i] = max(M);
% 在曲线的特定位置标记对应的温度值T
% l(i + 20)和M(i + 20)确定标记的坐标位置
% 设置垂直和水平对齐方式以及字体大小
text(l(i + 20),M(i + 20),[num2str(T),'K'],'VerticalAlignment',...
'baseline','HorizontalAlignment','left','fontsize',7);
hold on; % 保持图形,以便后续在同一图上继续绘制
end
% 添加横坐标标签,lambda代表波长
xlabel('\lambda');
% 添加纵坐标标签,M(lambda,T)表示与波长和温度相关的光谱辐出度
ylabel('M(\lambda,T)');
% 添加标题,表明与普朗克量子假说相关
title('普朗克量子假说');
% 开启网格线,使图形更清晰
grid on;
hold off;