#-*-encoding:utf8-*-
import pylab
import numpy as np
from math import exp
from math import pow

pi = 3.14159265358979323846 #universal constant pi
h = 6.626070040e-34 #Planc's constant
k = 1.38064852e-23  #Boltzmann's constant
c = 299792458 #Speed of light in m/s

def intensity(lamda, T):
    lamda=lamda*pow(10,-9) #muunto nanometreistä metreiksi
    return 8*pi*h*c/pow(lamda,5)/(exp(h*c/(k*T*lamda))-1)

x = np.linspace(100,3000,1400)
T = int(input("Anna mustan kappaleen lämpötila kelvinasteina: "))
y=[]
for i in range(0,len(x)):
    y.append(intensity(x[i],T))

pylab.plot(x,y,linewidth=3)
pylab.axvline(x=400,color="purple")
pylab.axvline(x=700,color="red")
pylab.grid(color='grey', linestyle='-', linewidth=1)
pylab.xlabel("aallonpituus (nm)")
pylab.ylabel("Intensiteetti")
pylab.title("Mustan kappaleen spektri, T=" + str(T) + " K")
pylab.show()

