MINI-CURSO
INTRODUÇÃO AO NCL
DIA 3
USO DE ARQUIVOS
Mini-Curso – Introdução ao NCL
●
Oferece suporte a vários tipos de arquivos:
●
Formatos suportados:
– netCDF; HDF4/H5; HDF-EOS; GRIB1-2; Shapefile
●
Binários:
– Sequenciais e diretos
addfile() - abre arquivos suportados
forma de uso:
f = addfile( nome_arq.ext, status )
nome_arq : qualquer nome válido (string) ext : extensão que identifica o tipo do
arquivo (string) – não precisa fazer parte do nome do arquivo.
netCDF*: “nc” ou “cdf”
HDF*: “hdf”, “hdfeos”, “h5”, “he5” GRIB: “grb”, “grib”
Lendo dados de arquivos:
variável = variável_referência_arquivo ->variável_arquivo
Uma vez carregado ao NCL, a variável do arquivo pode ser usada normalmente:
Buscando uma informação via coordenadas: Indexação padrão e por coordenadas misturadas! Coordenadas reais do dado obtido.
Indicando que é uma parte dos dados.
Abrindo múltiplos arquivos suportados: addfiles() Variável de referência é uma lista agora!! Vetor de strings!
Lendo dados de múltiplos arquivos suportados:
- join: união dos dados; criação de uma nova dimensão!!!
- cat (padrão): concatenação dos dados; primeira dimensão à esquerda aumentada.
Definição deste comportamento: Subrotina ListSetType()
Sintaxe:
ListSetType( lista, opção )
sendo
lista: vetor string com lista de arquivos opção: uma das strings, “join” ou “cat”
Dimensão
aumentada.
Na realidade,
tem-se apenas 26 níveis
verticais
Inclusão de “[:]” na
leitura de dados do
arquivo
Alterando o
comportamento normal da
função addfiles
Nova dimensão!
Tamanho igual ao número
de arquivos.
Arquivos binários
O NCL fornece capacidade de leitura e escrita de arquivos binários.
Funções:
cbin{read, write} : funções para arquivos binários
com padrão da linguagem C.
fbin{dir*,rec*} : funções para arquivos binários com
com padrão da linguagem Fortran. Características:
Arquivos ASCII
O NCL fornece capacidade de leitura e escrita de dados contidos em arquivos ASCII – texto puro.
Funções:
asciiread : leitura de arquivos ASCII.
asciiwrite : armazena dados em arquivos ASCII; não
permite formatação dos dados (uma única coluna de dados).
write_matrix : grava tabelas de dados em arquivos
ASCII; permite controle de formato
Arquivo “dados.txt”
contendo uma matriz de
dados 3x3
Dimensões dos
dados
Lendo dados de um arquivo ASCII:
asciiread aceita o valor “-1”, ao invés do número de
Dimensões passadas à função asciiread:
Escrevendo arquivos ASCII:
asciiwrite( “novo_dados.txt”, dados )
write_matrix( dados, “3i5”, opcoes )
Matriz a ser gravada
no arquivo ASCII
nome do arquivo
opcao = True
opcao@fout
=
“novo_dados.txt”
Matriz a ser
gravada no
Criando arquivos netCDF:
Ótima maneira de armazenar variáveis e seus metadados (coordenadas, atributos etc).
Dois métodos:
a) Simples: transferência direta da variável e seus metadados para o arquivo netCDF
Criando arquivos netCDF: método simples Passo 1)
Atribuir à variável a ser armazenada todos os meta-dados (coordenadas, atributos etc).
Criando arquivos netCDF: método simples Passo 2)
Abrir o arquivo netCDF novo (criação; status = “c” ).
Passo 3)
Criando arquivos netCDF: método simples Verificação:
Arquivo netCDF criado.
Ele existe!!
Criando arquivos netCDF: método simples Verificação:
Coordenadas da
variável guardadas
no arquivo.
Criando arquivos netCDF: método simples Verificação:
Dados armazenados
junto com os seus
atributos!
Criando arquivos netCDF: método simples Verificação: