HPGL Desenvolvedor: HPGL/MIT-UFAÚltima versão: 0.9.9 2010Gênero: BibliotecaLicença: BSDWebsite: hpgl.aoizora.org
HPGL é um acrónimo para High Performance Geostatistics Library. É uma biblioteca de programação desenvolvida em C++ mas chamada em Python para operações de geoestatística. Foi produzida com o apoio da companhia russa MIT-UFA e é actualmente a única biblioteca de geoestatística paralelizada sendo, principalmente por esse motivo, a de melhor performance. É compatível com algumas das bibliotecas científicas e numéricas mais conhecidas em Python, como é o caso do numpy e scipy, e apela ao seu uso pela sua facilidade de utilização.Vladimir Savichev, Andrey Bezrukov, Artur Mukharlyamov, Konstantin Barsky, Dina Nasibullina, 2010, HPGL - High Performance Geostatistics Library: User Guide - Version 0.9.9.
Nota histórica
A HPGL teve a sua primeira versão lançada em 2009 (0.9.3) e no mesmo ano foram sendo feitas várias actualizações introduzindo novos algoritmos e suporte para diferentes formatos de ficheiros bem como adesão à licença BSD. A sua última actualização foi em 2010 (0.9.9) e por esta altura já compunha os algoritmos de geoestatística mais usados.
Com a estabilização da biblioteca começaram a desenvolver um software com base na mesma, HPGL-GUI, que pretende facilitar a sua utilização por meio de um interface gráfico de utilizador cuja versão actual para download ainda não é final (0.9.1).
Funções
A última versão lançada tem, entre outros, os seguintes algoritmos:
Krigagem simples (SK) Krigagem normal (krigagem ordinária) (OK) Krigagem da Indicatriz (IK) Krigagem com médias locais (LVM Kriging) Co-Krigagem simples com modelos de Markov 1 e 2 (Markov Models 1 & 2) Simulação sequencial da indicatriz (SIS) Simulação sequencial gaussiana (SGS)
Utilização
A biblioteca é chamada a partir da linguagem Python usando o seguinte comando:
from geo_bsd import *
Implicando a importação directa de todas as suas funções. Para além da biblioteca principal existem duas secundárias:
from geo_bsd.routines import * from geo_bsd.cvariogram import *
As malhas na biblioteca HPGL são cartesianas e por isso definidas por números de blocos na direção X (I), Y (J) e Z (K). A malha é gerada com o seguinte comando:
I = 50 # valores de exemplo J = 50 # valores de exemplo K = 10 # valores de exemplo grid_object = SugarboxGrid(I, J, K)
A leitura de ficheiros em formato GEO-EAS é feita da seguinte maneira:
from geo_bsd.routines import * dict_gslib = LoadGslibFile(filename)
E de formato eclipse:
prop = load_cont_property(filename, undefined_value, size)
Um krigagem simples pode ser lançada com os comandos:
grid = SugarboxGrid(55, 52, 100) prop = load_cont_property("HARD_DATA.INC", -99, size ) cov_krig = CovarianceModel(type=1, ranges=(10,10,10), sill=1) prop_result = simple_kriging(prop, grid,radiuses = (20, 20, 20),max_neighbours = 12,cov_model = cov_krig,mean = 1.6)
Benchmark
Os autores da HPGL fizeram notar no seu lançamento um benchmark de comparação com a GSLIB:
1 CPU (Intel Core Duo 1.8 Ghz) Tamanho da malha: 166x141x225 (5+ millions cells) Propriedade de indicatriz/categórica: 20% de pontos definidos, 80% indefinidos, 2 classes de indicatriz Propriedade continua: 20% de pontos definidos, 80% indefinidos, Valores: [0:1] Variograma = (10, 10, 10) Raio de procura = (20, 20, 20) Número máximo de pontos vizinhos = 12
AlgoritmoGSLIBHPGL 0.9.5 Krigagem simples4m 10s1m 7s Krigagem normal4m 30s1m 80s Krigagem da indicatriz1h 30m+1m 60s Simulação sequencial da indicatriz4m 40s1m 30s Simulação sequencial gaussiana3m 10s1m 70s
Ver também
Geoestatística GsTL, biblioteca de geoestatística para C++. GSLIB, biblioteca de geoestatística para Fortran. mGstat, biblioteca de geoestatística para Matlab. GeoPack, biblioteca de geoestatística para Mathematica. geoR, biblioteca de geoestatística para R. Lista de software para geoestatística
Ligações externas
Categoria:Geoestatística Categoria:Sistemas de informação geográfica Categoria:Bibliotecas Python