Radiação de Corpo Negro, teoria disponível em: http://coral.ufsm.br/gef/Moderna/moderna02.pdf
Dados gerados: https://plot.ly/~zrhans/408/


 

!---------------------------------------------------
! Calcula e gera arquivos com valores de Radiância
! em função do comprimento de onda para um 
! Corpo Negro.
!---------------------
! Autor: Hans Zimermann
! Data: 09-10-2016 Alt:
!---------------------------------------------------
program curvas_de_radiancia
implicit none

real, parameter :: c1 = 3.74e-16 ! [W][m^2] ou [J/s][m^2]
real, parameter :: c2 = 1.44e-2 ! [m][K]
real :: lambda = 0. , T = 0.
real :: radiancia = 0.
integer :: i, N = 20 ! N numero de pontos da função
real :: dl

T =7000.

! Relação entre lambda e N contador  incremento = (b - a) / n
dl = ( 2e-6 - 0.)/ N

open(unit=1, file="radiacia.txt", status="replace") 
open(unit=2, file="radiacia-x.txt", status="replace") 
do i = 1,N
    lambda = lambda + dl
    radiancia = (c1)*(lambda**(-5.0))*( 1 / (exp(c2/(lambda*T))-1.0) )
    print 100,lambda, radiancia
    write(1,100) radiancia
    write(2,100) lambda
end do
100 format (es12.2)

 close(1)
 close(2)
 stop('Programma finalizado!')
end program curvas_de_radiancia

! TO DO (para os alunos)
! otimizar a escrita em arquivos empregando arranjos
! usar laços para gerar radiância para faixas distintas de temperaturas
! Saída de dados deve ser semelhante a https://plot.ly/~zrhans/408/

Anúncios

Escrito por zrhans

Professor at UFSM

Deixe um comentário

Faça o login usando um destes métodos para comentar:

Logotipo do WordPress.com

Você está comentando utilizando sua conta WordPress.com. Sair / Alterar )

Imagem do Twitter

Você está comentando utilizando sua conta Twitter. Sair / Alterar )

Foto do Facebook

Você está comentando utilizando sua conta Facebook. Sair / Alterar )

Foto do Google+

Você está comentando utilizando sua conta Google+. Sair / Alterar )

Conectando a %s