Teste

teste

sábado, 5 de dezembro de 2009

Climategate: como aplicar uma correcção MUITO ARTIFICIAL ao declínio

Este pedaço de código, com comentários semi-traduzidos por mim, é uma maravilha. Ainda não se sabe onde foi usado ou sequer se foi usado. Mas que o títudo é sugestivíssimo, é. Deve estar relacionado com "value added data": dados de valor acrescentado.

O CRU destruiu ou deitou fora os dados (originais) que estivarem na origem dos seus 'trabalhos' tendo apenas ficado dados já mastigados. Será a rotina que se segue uma das dentaduras que lhes acrescentaram "valor"? Não perca as cenas dos próximos episódios.

Voltemos ao tema quente:
1) ;
2) ; Apply a VERY ARTIFICAL correction for decline!!
3) ;
4) yrloc=[1400,findgen(19)*5.+1904]
5) valadj=[0.,0.,0.,0.,0.,-0.1,-0.25,-0.3,0.,-0.1,0.3,0.8,1.2,1.7,2.5,2.6,2.6,2.6,2.6,2.6]*0.75 ; fudge factor
6) if n_elements(yrloc) ne n_elements(valadj) then message,'Oooops!'
7)
8) yearlyadj=interpol(valadj,yrloc,timey)
As linhas de 1 a 3 contêm comentários (a numeração de linha foi acrescentada por mim).

Bocas da reacção referem frequentemente que a maioria dos trabalhos apresentados pelas sumidades universitárias são feitos pelos alunos. Se a rapaziada se portar bem verá o seu nome aparecer algures, nas letrinhas miudinhas do 'paper'.

Pois a notita 'MUITO ARTIFICIAL" (very artificial) cheira-me a contra-canalhice. Será o wistle blower?

Continuando, na linha 4 yrloc é uma tabela de 2o elementos contendo 1400 e 19 anos entre 1904 e 1994 em incrementos de 5 anos:

yrloc = [1400, 1904, 1909, 1914, 1919, 1924, 1929, ... , 1964, 1969, 1974, 1979, 1984, 1989, 1994]

A função findgen() cria uma tabela de 19 valores em vírgula flutuante:

Na linha 5, malha "factor de disparate" como o arrogante programador gosta de lhe chamar, estão as fundações da manipulação das leituras de temperatura. Contém 20 valores a modos que aleatórios. Já cá voltaremos

Na linha 6, não vá o diabo tecê-las, verifica-se se yrloc tem o mesmo número de atributos que valadj.

Na linha 8 há magia. Lembram-se da tabela de leituras de tempeatura válidas? E lembram-se da tabela de números aleatórios da linha 2? Bom, as duas tabelas são então interpoladas.

A função interpol() pega em elementos de ambas as tabelas e "adivinha" aos pontos intermédios, de forma a criar um efeito de alisamento dos dados. Esta técnica é frequentemente usada quando se trata de processar pontos de dados simples, mas não deste estilo.

A principal coisa aqui a perceber é que a função interpol() fará com que as temperaturas válidas (yrloc) serão desviadas em direcção aos valores valadj.

E o resultado é .. táááá táááá


Imagine-se agora, apenas como exercício, que o método acima foi aplicado aos resultados abaixo.


Last, but not least, há que fazer notar ao Sérgio Pinto que este "trabalho" é muito capaz de vir a ser considerado como "de especialistas de universidades conceituadas", coisa que ele não se cansa de reclamar que o Fiel-Inimigo apresente. Stay tuned.

Sem comentários: