Fortran – lendo arquivos ascii

Snippet para testar leitura em Fortran de arquivos ascii com colunas separadas por vírgula ou espaços.

!http://www.cs.mtu.edu/~shene/COURSES/cs201/NOTES/chap04/iostatus.html
program exemplo
implicit none
integer :: io = 0 !end of file reached ... < 0 do normal stuff  < Something Wrong... 
real :: a,b,c
 character(10) :: arquivo

arquivo = 'dados.csv'
!arquivo = 'dados.txt'

open(1,file = arquivo)

do
    read(1,*,iostat=io)a,b,c
    if (io < 0) exit
    print*,a,b,c
enddo

 close(1)
end program exemplo

Resultado

zrhans:~/workspace/2016-01 $ gfortran learq.f90                                                                                                                  
zrhans:~/workspace/2016-01 $ ./a.out 
   1.20000005       3.40000010      -3.20000005    
   2.20000005      -8.39999962       13.1999998    
   2.20000005      -8.39999962       13.1999998

dados.txt

1.2 3.4 -3.2
2.2 -8.4 13.2
2.2 -8.4 13.2

dados.csv

1.2,3.4,-3.2
2.2,-8.4,13.2
2.2,-8.4,13.2
TratamentoEstatistico

Tratamento estatístico de medidas com erros aleatórios

+ Estimativa do valor correto da grandeza medida

Uma boa estimativa para o valor correto de uma grandeza pode ser expresso pela média aritmética dos valores medidos:

[ \bar{V} = \frac{1}{N}\sum_{i=1}^{N}{V_{i}} ]

+ Dispersão da medidas (Desvio Padrão)

Quantitativamente, a dispersão do conjunto de medidas pode ser caracterizada pela desvio padrão dos valores medidos:

[ \sigma = \sqrt{\frac{1}{N-1}\sum_{i=1}^{N}{(V_{i} – \bar V_{i})^2}} ]

+ Erro padrão da média

A medida que se aumenta o número de medidas, a média do conjunto vai se tornando uma grandeza mais precisa, consequentemente o erro padrão da média define-se por:

[ \sigma_{\bar V} = \frac{\sigma}{\sqrt{N}} ]

+ Erro percentual ou relativo

É o erro da grandeza medida como porcentagem do valor da medida:

[ (\sigma_{\bar V}){r} = \frac{\sigma{\bar V}}{\bar V}\times 100 \ \% ]

Verified by MonsterInsights