Dando parabens aos Oceanografos pelo "dia do Oceanografo", seguem algumas leituras do dia de hoje.[1] - Geophysical data analysis using Python - Computers & Geosciences (2002)[2] - OOF: A Python engine for automating regional and coastal ocean forecasts - Environmental Modelling & Software (2011)Encontrei esse trabalho[1] dos Bascos autores do PyClimate (Jon Saenz, Juan Zubillaga, Jesus Fernandez), falando sobre o pacote PyClimate e a implementacao de ferramentas basicas para a oceanografia.Funcoes de distribuicao de probabilidades (PDF's), metodo de EOF e SVD, uso de netCDF, como trabalhar com dias julianos nas convencoes do Cooperative Ocean/Atmosphere Research Data Service (COARDS), filtros multivariados e outros detalhes.O segundo trabalho[2] e um pacote de ferramentas para trabalhar com o ROMS automatizar previsoes costeiras entre outras coisas. Uma demostracao do que ja e aplicado no Brasil esta aqui: http://oceano.fis.ufba.br/oof/main/forecast.phpAinda nao disponibilizado o codigo (nao sei o porque ainda), mas ele referencia outras ferramentas da modelagem que integram o FORTRAN, como o a implementacao do modelo atmosferico Neelin-Zeng QTCM1 (feito ja em python http://www.johnny-lin.com/py_pkgs/qtcm/ ).Anexos:[1][2]Boas leituras. Ciclotux.blogspot.com esta desativado!Deixo aqui o redirecionamento para a continuidade desse bloBs, Python Powered!CicloTux.orgSe voce mantem algum feed desse blog, por favor modifique o seu apontador.Ate mais. Aproveitando o tempo de recesso sem postagens, vou falar um pouquinho de como fiz para construir as matrizes de lat e long, dos dados de gelo do NSIDC, com as dicas da Claudinha Parise.Os dados estao em formato binario, como integer e armazenados de 4 em 4 bytes (em Little endian)[1]. Nao sei se o matlab chegaria a dar problemas com isso, mas em Python e bom especificar. ("<" Little Endian; ">" Big Endian); o "i" e de integer, "u" seria de string(unicode)[2]. Essa foi a dica do Irber; pois eu tava usando dtype = 'uint32', pensando somente na questao dos 4 bytes e esquecendo do "little endian".Dessa forma, baixa-se o dado de latitude para o hemisferio sul [aqui] e divide-se por 100000 para ter os graus decimais. Mesmo procedimento para a Longitude.import numpy as npf = open('pss25lats_v2.dat','rb')lat = np.fromfile(f, dtype='<i4')/100000.lat = lat.reshape(332,316)f.close()[1] http://nsidc.org/data/polar_stereo/tools_geo_pixel.html[2] http://docs.scipy.org/doc/numpy/user/basics.byteswapping.html Um livro interessante, sobre Python aplicado as ciencias atmosfericas e oceanicas.A Hands-On Introduction to Using Python in the Atmospheric and Oceanic SciencesOutro livro bacana e sobre a utilizacao do Python em hidrologia.Python in HydrologyBoas leituras. Esta disponivel para download o livro:Estudos Oceanograficos - do instrumental ao praticoOrganizado pelo Professor Danilo Calazans - FURG.Outros livros estao disponiveis no site do Ciencias do Mar.Boas leituras! Meu camarada Irber, relembrando como fazer um loop 'tradicionalista' onde se pegam os indices dos itens de uma lista ou de um numpy array, usando o enumerate, para pegar o valor e seu "indice".Buscando, dessa forma, um loop tradicionalista, porem mais pythonico (eu acho).valores = ([1,3,5,7,9])for i, value in enumerate(valores): print i, valueOut[2]:0 11 32 53 74 9Sendo o jeito um tanto mais "conservador" e talvez menos pythonico:for i in xrange(len(valores)): print i, valores[i]Out[4]:0 11 32 53 74 9Ate mais. Aqui vao alguns modulos para trabalhar com dados oceanograficos.oceans # http://pypi.python.org/pypi/oceans/seawater # http://pypi.python.org/pypi/seawater/2.0.1pyclimate # http://www.pyclimate.org/pyhdf # http://pysclint.sourceforge.net/pyhdf/pupynere # para trabalhar com netcdf (http://pypi.python.org/pypi/pupynere/1.0.15 )puppy # http://pypi.python.org/pypi/Puppy/0.1.4pydap # http://pydap.org/pandas #