-
Notifications
You must be signed in to change notification settings - Fork 0
/
planck.m
69 lines (61 loc) · 1.99 KB
/
planck.m
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
%
% Copyright (C) 2016-10-17 Imke Hans
% This code was developed for the EC project ÒFidelity and Uncertainty in
% Climate Data Records from Earth Observations (FIDUCEO)Ó.
% Grant Agreement: 638822
% <Version> Reviewed and approved by <name, instituton>, <date>
%
% This program is free software; you can redistribute it and/or modify it
% under the terms of the GNU General Public License as published by the Free
% Software Foundation; either version 3 of the License, or (at your option)
% any later version.
% This program is distributed in the hope that it will be useful, but WITHOUT
% ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
% FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
% more details.
%
% A copy of the GNU General Public License should have been supplied along
% with this program; if not, see http://www.gnu.org/licenses/
%
function M = planck(f, T)
%PLANCK Calculates the spectral radiant exitance for a black body
%based on Max Planck's law (W/(m^2cm^-1))
% M = planck(f, T) computes the spectral radiant exitance
% based on Max Planck's law based on a given temperature (T, in Kelvin)
% and frequency (f in Hz) THE FREQUENCY IS CONVERTED TO WAVENUMBER!
%
%
% %%% based on specexitance.m
% Created by Jaap de Vries, 8/20/2012
% jpdvrs@yahoo.com
%
%
% %-----------------------------------------------------------------------%
% Speed of light in a vacuum
c0 = 2.99792458*10.^8;
%
% Planck's constant
h = 6.626176*10.^-34;
%
% Boltzman constant
k = 1.380662*10.^-23;
%
% Refractive index of the medium.
n = 1;
%
% Defining two new constants
%
% c1 = 2*h*c0^2
c1 =1.191042e-8 ; %W/(m^2 cm^-4)
%
% c2 = h*c/k
c2 = 1.4387752; %K cm
%
%
%
%-------------------------------------------------------------------------%
% frequency to wavenumber conversion in 1/m
nu=(f/c0);
nu=nu/100; %conversion to 1/cm
% Calculate the spectral radiant exitance in(W/(m^2cm^-1))
M = (c1*nu.^3) ./ (exp(c2*nu./T)-1);