[Python-es] Interpolacion varios Puntos.

Kiko kikocorreoso en gmail.com
Mar Sep 13 09:56:32 CEST 2011


>
>
> Básicamente mi programa parte de tres array, dos de los cuales
> representan información espacial regular (Latitud y Longitud) y un tercero
> que representa un campo de temperaturas. Cada celda de esta ultimo array
> tiene una coordenada espacial que se encuentra en los dos primeros arrays.
> Existe alguna funcion en python (estoy trabajando con SciPy/Numpy) que me
> permita identificar los elementos de este array que rodean mi punto de
> interes?
>
>
¿Tu tercera matriz tiene la forma (lon, lat, T)?, ¿las coordenadas lon, lat
están equiespaciadas?, ¿los valores lon, lat están ordenados?

Si la distancia entre los puntos de tu matriz es regular (conoces la
distancia entre puntos al N-S y entre puntos al E-W) y están ordenados es
sencillo sacar los índices de los cuatro puntos alrededor de tu punto de
interés.

Luego, para obtener la T en tu punto genérico puedes usar interpolación
bilineal [1], que tiene en cuenta la distancia de tu punto genérico a los
cuatro puntos de alrededor. Aunque hay que ir con cuidado puesto que la T
depende mucho de la altitud de tu punto. Si la altitud de los cuatro puntos
de alrededor no es la misma necesitarás hacer una corrección usando alguna
fórmula que tenga en cuenta el perfil vertical de la T.

[1] http://en.wikipedia.org/wiki/Bilinear_interpolation
------------ próxima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <http://mail.python.org/pipermail/python-es/attachments/20110913/181dcc27/attachment.html>


Más información sobre la lista de distribución Python-es