A ver si los cartografos, piratas y similares si me resuleven una duda... no se como calcular el desplazamiento sufrido por una estacion meteorologica cuando los datos vienen dados en coordenadas... por ejemplo, la estacion de Lerida estuvo hasta 1983 en:
Altitud: 199 m - Latitud: 41º 37' 13'' N - Longitud: 00º 37' 07'' E
Luego paso a:
Altitud: 192 m - Latitud: 41º 37' 33'' N - Longitud: 00º 35' 42'' E
¿Se la llevaron cerca, lejos?... ¿que me podeis decir?... y si explicais los calculos, mejor... ;D
Gracias... ;)
Cita de: Vigorro... en Domingo 03 Agosto 2008 22:36:59 PM
A ver si los cartografos, piratas y similares si me resuleven una duda... no se como calcular el desplazamiento sufrido por una estacion meteorologica cuando los datos vienen dados en coordenadas... por ejemplo, la estacion de Lerida estuvo hasta 1983 en:
Altitud: 199 m - Latitud: 41º 37' 13'' N - Longitud: 00º 37' 07'' E
Luego paso a:
Altitud: 192 m - Latitud: 41º 37' 33'' N - Longitud: 00º 35' 42'' E
¿Se la llevaron cerca, lejos?... ¿que me podeis decir?... y si explicais los calculos, mejor... ;D
Gracias... ;)
El método matemático sería pasarlos a coordenadas cartesianas, por ejemplo UTM con un programilla de transformación encontrable en la red y una vez con dos coordenadas en metros calcular la distancia entre ellos con otra formulita
Opción B ... la del cartógrafo vago, pongo google earth en lat long grados minutos segundos
marco punto 1 marco punto 2 y tiro línea de punto 1 a punto 2.....unos instantes
Vale me salen 2.07 km el punto exterior sale por un polígono a las afueras de la ciudad
------------------------
Si quieres detalles sobre el cálculo
Primero pasaríamos de coordenadas geográficas (latitud longitud) a cartesianas
http://www.cartesia.org/articulo276.html (http://www.cartesia.org/articulo276.html)
Cuando tuviéramos las coordenadas en UTM de la forma
x 299651.43 m
y 4611025.15 m
2 2
dist = raiz cuadrada ( (x1-x2) + (y1-y2) )
Y si no entras en la oficina virtual del catastro y localizas el punto exacto.
Buf, salen mas de 2 kilometros hacia el oeste practicamente, si no me equivoco, no se como pueden luego hacer una serie larga a partir de estos casos en los organismos oficiales... :crazy: bueno, la altura no varia mucho, pero aun asi, no me fio yo de esas series compuestas...
Es que puede haber cambios muy importantes... la antigua estacion de Malaga, que funciono entre 1877 y 1986, mas de 100 años, casi jamas llego a marcar helada, pues consta como minima absoluta -0'9 el 19 de Enero de 1891... estaba en:
Altitud: 53 m - Latitud: 36º 43' 28'' N - Longitud: 04º 25' 36'' O
La nueva, la del aeropuerto, que funciona desde 1942, llego a marcar -3'8 el 4 de Febrero de 1954, demasiada diferencia contando la multitud de entradas frias que tuvo que aguantar la estacion antigua... la del aeropuerto esta en:
Altitud: 7 m - Latitud: 36º 40' 00'' N - Longitud: 04º 29' 17'' O O meto de nuevo la otra para comparar:
Altitud: 53 m - Latitud: 36º 43' 28'' N - Longitud: 04º 25' 36'' O
He hecho calculos (sin earth, no lo tengo) y salen poco menos de 5 kilometros... lo dicho, menudas series "largas" de vez en cuando aparecen por ahi... :crazy:
Muchas gracias, todo perfectamente claro y explicado... util el programita...
Aquí tienes sobre los mapas la diferencia de la ubicación de las 2 estaciones que indicas:
La de Lleida, con 2,07 Km
(https://foro.tiempo.com/imagenes/imagen-no-existe.png)
Y la de Málaga, que son nada más y nada menos que 8,4 Km :o
(https://foro.tiempo.com/imagenes/imagen-no-existe.png)
Gracias Frank, perfecto... :o
Juer, no se como use el programita de borinot, pero me salian casi 5 kilometros solo para lo de Malaga... ::)
nota a borinot: no supe como meter los segundos, ¿puede estar el error ahi?... :-[
Ya puestos, te voy a pedir un favor, Frank... te doy las coordenadas de las dos estaciones de Orense... la antigua funciono entre 1867 y 1969, y la moderna esta operativa desde 1951... a ver si puedes calcularme la distancia en un momentillo... ;)
antigua: Altitud: 148 m - Latitud: 42º 20' 00'' N - Longitud: 07º 51' 47'' O
moderna: Altitud: 143 m - Latitud: 42º 19' 40'' N - Longitud: 07º 51' 37'' O
Veo solo desplazamiento de 20 segundos hacia el sur y de 10 segundos al este, vamos, una insignificancia... ¡¡pues menudas diferencias en algun valor!!...
La temperatura media mas alta para Enero de la antigua fueron los 10'6 de 1955... para la nueva son los ¡¡ 14'6 !! de 1966... :o :crazy: igual es un error, en los demas records las diferencias son de decimas... :confused:
La distancia puede ser poca, pero como en las coordenadas no se refleja la altitud, ¿igual la han subido/bajado unos metros?...
Cita de: Vigorro... en Lunes 04 Agosto 2008 14:04:08 PM
Ya puestos, te voy a pedir un favor, Frank... te doy las coordenadas de las dos estaciones de Orense... la antigua funciono entre 1867 y 1969, y la moderna esta operativa desde 1951... a ver si puedes calcularme la distancia en un momentillo... ;)
antigua: Altitud: 148 m - Latitud: 42º 20' 00'' N - Longitud: 07º 51' 47'' O
moderna: Altitud: 143 m - Latitud: 42º 19' 40'' N - Longitud: 07º 51' 37'' O
Veo solo desplazamiento de 20 segundos hacia el sur y de 10 segundos al este, vamos, una insignificancia... ¡¡pues menudas diferencias en algun valor!!...
La temperatura media mas alta para Enero de la antigua fueron los 10'6 de 1955... para la nueva son los ¡¡ 14'6 !! de 1966... :o :crazy: igual es un error, en los demas records las diferencias son de decimas... :confused:
Pues la diferencia en distancia son unos 700 metros, no es una distancia muy larga, en comparación con las otras para que se vaya tanto.
(https://foro.tiempo.com/imagenes/imagen-no-existe.png)
Cita de: _00_ en Lunes 04 Agosto 2008 14:09:46 PM
La distancia puede ser poca, pero como en las coordenadas no se refleja la altitud, ¿igual la han subido/bajado unos metros?...
Mmmm, ¿como que no?... ::)
antigua:
Altitud: 148 m - Latitud: 42º 20' 00'' N - Longitud: 07º 51' 47'' O
moderna:
Altitud: 143 m - Latitud: 42º 19' 40'' N - Longitud: 07º 51' 37'' O
¿O te refieres a otra cosa?... :confused:
Gracias Frank, la verdad es que es inexplicable semejante diferencia... los 14 son de la estacion nueva, que no esta en el casco urbano, por lo que veo... mas raro aun... seria esperable que la antigua, en mitad de la poblacion, se hubiera podido desmarcar en un momento dado, ¿pero la nueva?... :confused: esta 5 metros mas baja, pero vamos, ni que la hubieran puesto en un hoyo...
Creo que es un error, sinceramente, porque si me voy a media de Enero mas baja, me sale esto...
antigua: 3'6 en 1935...
nueva: 4'3 en 1976...
Esto es mas coherente...
Cita de: Vigorro... en Domingo 03 Agosto 2008 22:36:59 PM
A ver si los cartografos, piratas y similares si me resuleven una duda... no se como calcular el desplazamiento sufrido por una estacion meteorologica cuando los datos vienen dados en coordenadas... por ejemplo, la estacion de Lerida estuvo hasta 1983 en:
Altitud: 199 m - Latitud: 41º 37' 13'' N - Longitud: 00º 37' 07'' E
Luego paso a:
Altitud: 192 m - Latitud: 41º 37' 33'' N - Longitud: 00º 35' 42'' E
¿Se la llevaron cerca, lejos?... ¿que me podeis decir?... y si explicais los calculos, mejor... ;D
Gracias... ;)
Puedes hacerlo de forma aproximada utilizando la
fórmula del semi-senoverso (http://en.wikipedia.org/wiki/Haversine_formula)Si quieres afinar más puedes utilizar la fórmula de Vincenty (http://www.ngs.noaa.gov/PUBS_LIB/inverse.pdf (http://www.ngs.noaa.gov/PUBS_LIB/inverse.pdf))
function distVincenty(lat1, lon1, lat2, lon2) {
var a = 6378137, b = 6356752.3142, f = 1/298.257223563; // WGS-84 ellipsiod
var L = (lon2-lon1).toRad();
var U1 = Math.atan((1-f) * Math.tan(lat1.toRad()));
var U2 = Math.atan((1-f) * Math.tan(lat2.toRad()));
var sinU1 = Math.sin(U1), cosU1 = Math.cos(U1);
var sinU2 = Math.sin(U2), cosU2 = Math.cos(U2);
var lambda = L, lambdaP = 2*Math.PI;
var iterLimit = 20;
while (Math.abs(lambda-lambdaP) > 1e-12 && --iterLimit>0) {
var sinLambda = Math.sin(lambda), cosLambda = Math.cos(lambda);
var sinSigma = Math.sqrt((cosU2*sinLambda) * (cosU2*sinLambda) +
(cosU1*sinU2-sinU1*cosU2*cosLambda) * (cosU1*sinU2-sinU1*cosU2*cosLambda));
if (sinSigma==0) return 0; // co-incident points
var cosSigma = sinU1*sinU2 + cosU1*cosU2*cosLambda;
var sigma = Math.atan2(sinSigma, cosSigma);
var sinAlpha = cosU1 * cosU2 * sinLambda / sinSigma;
var cosSqAlpha = 1 - sinAlpha*sinAlpha;
var cos2SigmaM = cosSigma - 2*sinU1*sinU2/cosSqAlpha;
if (isNaN(cos2SigmaM)) cos2SigmaM = 0; // equatorial line: cosSqAlpha=0 (§6)
var C = f/16*cosSqAlpha*(4+f*(4-3*cosSqAlpha));
lambdaP = lambda;
lambda = L + (1-C) * f * sinAlpha *
(sigma + C*sinSigma*(cos2SigmaM+C*cosSigma*(-1+2*cos2SigmaM*cos2SigmaM)));
}
if (iterLimit==0) return NaN // formula failed to converge
var uSq = cosSqAlpha * (a*a - b*b) / (b*b);
var A = 1 + uSq/16384*(4096+uSq*(-768+uSq*(320-175*uSq)));
var B = uSq/1024 * (256+uSq*(-128+uSq*(74-47*uSq)));
var deltaSigma = B*sinSigma*(cos2SigmaM+B/4*(cosSigma*(-1+2*cos2SigmaM*cos2SigmaM)-
B/6*cos2SigmaM*(-3+4*sinSigma*sinSigma)*(-3+4*cos2SigmaM*cos2SigmaM)));
var s = b*A*(sigma-deltaSigma);
// initial & final bearings
var fwdAz = Math.atan2(cosU2*sinLambda, cosU1*sinU2-sinU1*cosU2*cosLambda);
var revAz = Math.atan2(cosU1*sinLambda, -sinU1*cosU2+cosU1*sinU2*cosLambda);
s = s.toFixed(3); // round to 1mm precision
return s;
}
Saludos.
Tras recuperarme del ultimo post de vaqueret, rescato el topic puesto que le he pillado un post a ampalma en Caza donde linka una web para calcular esto de las coordenadas sin necesidad de programa, basta con escribir las mismas y listo...
http://www.fcc.gov/mb/audio/bickel/DDDMMSS-decimal.html
Jodo, la serie de Lerida me parecce a mi que debe tener unos cambios... de estar en la ciudad a estar fuera... madre mia... series asi deberian ser nuevas totalemente, o al menos tener las dos estaciones operativas varios años para poder hacer correcciones.