zoukankan      html  css  js  c++  java
  • IDL绘制黑体辐射曲线

      普朗克定律是热红外遥感中常常使用的三大定律之一,描述了黑体辐射能量的情况。绝对黑体的辐射光谱对于研究一切物体的辐射规律具有根本的意义。1900年普朗克引进量子概念,将辐射当做不连续的量子发射,成功地从理论上得出了与实验精确符合的绝对黑体辐射出射度随波长的分布函数。试着用IDL绘出了黑体辐射曲线,利于以后计算黑体辐射出射度,以备不时之需!

    普朗克公式:
     
    代码:
      ;+
      ; :Author: caozhigang
      ; :Copyright:UCAS
      ; :blog:blog.sina.com.cn/ahnucao
      ;-
     
    PRO PLANK_SPECTRUMCURVES
      ;生成普朗克光谱曲线
      colors=['r','g','b','c','m','y','k']
      wavelengths=FINDGEN(1000,start = 1,increment = 0.1);1_100 um
      radiance = CALC_OMMITRADIANCE(wavelengths,250)
      plots = PLOT(wavelengths,radiance,Name = STRING(250)+'K',colors[0],$
        AXIS_STYLE = 1,xtitle ='wavelength(um)',ytitle = '辐射出射度/(m^2*um)')
      PLOTS.TITLE = '黑体辐射曲线'
      lege = legend(target = plots,$
        /DATA, /AUTO_TEXT_COLOR)
      c_index = 1
      FOR T= 270,340,20 DO BEGIN
        ;计算黑体辐射出射度
        radiance = CALC_OMMITRADIANCE(wavelengths,T)
        ;  ;随机产生一个颜色
        ;  colorNames = TAG_NAMES(!color)
        ;  index = ROUND(RANDOMU(seed,1)*N_ELEMENTS(colorNames)+0)
        ;  color = colorNames[index]
        plots = PLOT(wavelengths,radiance,Name = STRING(T)+'K',colors[c_index],$
          AXIS_STYLE = 1,xtitle ='wavelength(um)',ytitle = '辐射出射度/(m^2*um)',/OVERPLOT)
        lege.ADD,plots
        c_index = c_index+1
      ENDFOR
    END
     
    FUNCTION CALC_OMMITRADIANCE,wavelengths,T
      ;
      ;wavelengths=FINDGEN(1000,start = 1,increment = 0.1);1_100 um
      spectrum= FINDGEN(1000);保存强度
      colors = !color
      c = 3*10.0^14; m/s
      h = 6.6256*10.0^(-34);Plank statics num
      k = 1.38*10.0^(-23);S_P statics num
      FOR i = 0,N_ELEMENTS(wavelengths)-1 DO BEGIN
        ;
        first_factor = 2*!pi*c*c*h/(wavelengths[i]^5.0)
        sencond_factor = 1.0/(EXP(c*h/(k*wavelengths[i]*T))-1)
        spectrum[i] = first_factor * sencond_factor*10^12.0;这里乘上10^12次方,是为了将um2转换为转化为m2的单位
      ENDFOR
      RETURN,spectrum
    END

    效果图:

  • 相关阅读:
    Java项目xml相关配置
    Jquery的bind跟on绑定事件的区别
    命令操作Mysql数据库
    Jquery实现功能---购物车
    Jquery插件---渐隐轮播
    Jquery制作插件---内容切换
    PCB画板的快捷键
    蓝牙2.0传数据给数码管
    蓝牙2.0传数据给数码管
    共阳极数码管计数器
  • 原文地址:https://www.cnblogs.com/ahnucao/p/4938752.html
Copyright © 2011-2022 走看看