vOs4OVirtual Observatory Solar System Scaling Service for Outreach

El sistemasolara escala

Presentación

¿Si el sol tuviera el tamaño de una pelota de fútbol, cuál sería el tamaño de la Tierra? ¿Cuál sería la distancia de Júpiter? ¿Qué tamaño deben tener los planetas para que el sistema solar quepa en mi jardín? ¿Y en mi aula?

VOS4O propone una solución simple a todas las preguntas sobre la escala del sistema solar. Partiendo de una referencia (diámetro, distancia o escala), VOS4O calcula los diámetros y las distancias a la escala de todos los planetas, la excentricidad de sus órbitas y sus posiciones alrededor del Sol (longitud heliocéntrica) en cualquier fecha.

¿Cómo se hace?

¿Cómo se hace?

Para crear un sistema solar a escala debes usar el formulario en línea o interrogar directamente al servicio a través de su API. Los resultados serán dados con una tabla y dos imágenes.

Formulario

La página del formulario presenta por defecto los diámetros y las distancias de los planetas para que la distancia entre el Sol y la Tierra valga 1 metro. Sus posiciones alrededor del Sol (longitudes heliocéntricas) están calculadas para la fecha actual. Para cambiar la escala o la fecha, debes abrir la pestaña  Definición de los parámetros y definir los siguientes parámetros :

Escala
Distancia
Define la escala al valor elegido para la distancia del planeta elegido. Por ejemplo, si el parámetro unidad es el metro, entonces elegir una distancia de 7.22 para Neptuno, diseña un sistema solar donde la distancia del Sol a Neptuno vale 7.22 metros.
Diámetro
Define la escala al valor elegido para el diámetro del planeta elegido. Por ejemplo, si el parámetro unidad es el metro, entonces elegir 1 para el diámetro de la Tierra diseña un sistema solar donde el diámetro de la Tierra vale 1 metro.
Proporción
Define un coeficiente multiplicador X/Y aplicado a todas las unidades de tamaño. Por ejemplo, la escala 1:1000000 (un millonésimo) permite dividir por un millón todas las distancias y diámetros de los planetas.
Unidad
Especifica la unidad de tamaño de la escala : unidad astronómica (149597870 km), kilómetro, metro, centímetro, milímetro.

Para definir los parámetros adicionales, dar al botón ... :

Ajustar las unidades
Cambia automáticamente las unidades de las distancias y de los diámetros cuando los valores son demasiado pequeños o grandes con respecto a la escala y la unidad seleciondas. Por ejemplo, una distancia de 1234 metros estará escrita 1.23 kilómetros, y una distance de 0.123 metros estará escrita 12.30 centímetros.
Multiplicar los diámetros por
Permite usar dos escalas diferentes para las distancias y los diámetros. Aquí, los diámetros estan multiplicados por el valor especificado si la escala selecionada es distancia o escala.
Dividir las distancias por
Permite usar dos escalas diferentes para las distancias y los diámetros. Aquí las distancias estan divididas por el valor especificado si la escala selecionada es diámetro.
Fecha
Especifica la fecha para el cálculo de las posiciones de los planetas alrededor del Sol (longitudes heliocéntricas). Se puede hacer click sobre la fecha para abrir un calendario, o introducir una fecha al formato ISO 8601 redondeada al minuto más cercano.
Idioma
Especifica el idioma de los resultados.

Dar al botón Calcular para poner a escala el sistema solar con los parámetros especificados. Cuando los cálculos estén terminados la tabla con los valores y las imágenes se mostrarán automáticamente.

Para descargar los resultados, debes abrir la pestaña  Descargar los resultados. Para descargar una imagen debes elegir el formato deseado (SVG, PNG, PDF, TIFF), y hacer click en el botón Descargar la imagen. Para descargar la tabla debes elegir el formato deseado (CSV, VOTABLE), y apretar el botón Descargar la tabla.

API

La API (Interfaz de programación de aplicaciones) permite interrogar directamente VOS4O desde una aplicación o un programa diferente. Uno puede crear su propria página Web de puesta a escala del sistema solar, o interrogar y descargar los resultados del servicio en su programa propio. Para saber más...

API - Web Service

A propósito

La API (interfaz de programación de aplicaciones) permite interrogar directamente VOS4O desde una aplicación o un programa diferente. Uno puede crear su propria página Web de puesta a escala del sistema solar, o interrogar y descargar los resultados del servicio y recuperar la tabla y las imágenes en su propio programa. Hay dos métodos disponibles para interrogar al servicio:

  • Búsqueda HTTP : interrogar simplemente al servicio con un programa de descarga Internet no interactivo como wget, curl o un objeto XMLHttpRequest del lenguage Javascript.
  • Servicio Web : interrogar al servicio por medio de su servicio Web (WS) basado en los protocolos SOAP+WSDL+HTTP.

La utilización de la API es libre y gratuita para un uso personal o pedagógico y no comercial. Si quieres desarrollar una aplicación que usa VOS4O, te recomendamos contactarnos para estar informado de las evoluciones.

Te rogamos que utilices nuestro sistema de informe de incidentes para señalar un problema o para peticiones de mejora del servicio.

Definición de la escala

La definición de la escala puede hacerse de 3 maneras:

x:y
para especificar un coeficiente multiplicador X/Y que se aplique a todas las unidades de longitud. Por ejemplo la escala 1:1000000 (un millonésimo) permite de dividir por un millón las distancias y los diámetros de los planetas.
a(planeta):x
para traer la escala al valor x dado de la distancia de un planeta determinado. Por ejemplo, si el parámetro unidad=m (metro) entonces la escala a(neptune):7.22 permite componer un sistema solar en el cual la distancia Sol – Neptuno vale 7.22 metros.
d(planeta):x
para traer la escala al valor x dado del diámetro de un planeta determinado. Por ejemplo si el parámetro unite=m (metro) entonces la escala d(Tierra):1 permite componer un sistema solar en el cual el diámetro de la Tierra vale 1 metro.

Descripción de la tabla y las imágenes

La tabla generada por el servicio VOS4O aporta el diámetro del Sol, los diámetros de los planetas y sus distancias al Sol puestas a escala en la unidad elegida. Las excentricidades de las órbitas de los planetas están también disponibles, al igual que sus longitudes medias heliocéntricas en una época determinada, expresadas en grados.

La primera imagen generada por el servicio VOS4O representa gráficamente el sistema solar puesto a la escala en función de los parámetros elegidos. Al lado de cada planeta, dispuesto a lo largo de un eje graduado en escala logarítmica respetando sus distancias relativas, figura su diámetro y su distancia al Sol calculadas en función de la escala y de la unidad elegidas.

La segunda imagen representa el sistema solar visto desde arriba. Cada planeta se posiciona sobre su órbita en función de su longitud media heliocéntrica calculada para la fecha dada. La referencia de las longitudes es la dirección del punto vernal medio (o equinoccio medio), materializado por el símbolo γ.

Búsqueda HTTP

Con la ayuda de un programa de descarga Internet no interactivo (wget, curl), o con la ayuda de un navegador Internet, se puedes llamar al servicio a través de su punto de acceso HTTP :

https://ssp.imcce.fr/webservices/vos4o/scale.php?[parámetros]

en que los [parámetros] es una lista de parámetros definidos dentro de la tabla 1, separados por el caracter &. Si todos los parámetros son omitidos entonces el servicio reenvía el sistema solar puesto a escala a partir de los valores que son indicados por defecto en la tabla 1.

Tabla 1 : Parámetros de una búsqueda HTTP
ParámetroDefiniciónFormato
-escala=<string> Define la puesta a la escala del sistema solar. Defecto: 1:1 X:Y o a|d(planeta):x
-autoescala=<int> Carga automáticamente la unidad de las distancias y los diámetros cuando los valores son demasiado pequeños o demasiado grandes con respecto a la escala y la unidad seleccionadas. Defecto: 1* 0 o 1
-factorescala=<double> Multiplica los diámetros por el valor dado si la escala seleccionada es X:Y o distancia, o divide las distancias por el valor dado si la escala seleccionada es diámetro. Défaut: 1.0 > 0.0
-unidad=<string> Define la unidad de longitud de la puesta a escala : unidad astronómica (149597870 km), kilómetro, metro, centímetro, milímetro. Defecto: ua ua, km, m, cm, mm
-idioma=<string> Define la lengua de los resultados. Defecto: en-us de-de, el-el, en-us, es-es, fi-fi, fr-fr, hi-hi, it-it, pl-pl, pt-pt, ro-ro, zh-hans
-mime=<string> Define el tipo MIME de los resultados. Defecto: html html, votable, text/csv, text
-fecha=<string> Define la época del cálculo de las longitudes heliocéntricas en el formato ISO 8601. Defecto: now now, aaaa:mm:jj hh:mi:ss

* Si el tipo MIME requerido es VOTABLE entonces el parámetro autoescala vale 0 sea cual sea el valor aportado.

La respuesta de una búsqueda HTTP está compuesta por una tabla y por dos imágenes, formateada en HTML, VOTable/XML o en texto simple según el tipo MIME elegido (parámetro -mime).

Ejemplos de búsquedas :

servicio Web

El servicio VOS4O puede ser interrogado por medio de un servicio Web basado en los protocolos SOAP+WSDL+HTTP permitiendo una interacción directa entre tu propia aplicación y el servicio.

Web Servicio URI :
https://ssp.imcce.fr/webservices/vos4o/vos4o.php
Espacio de nombre :
https://ssp.imcce.fr/webservices/vos4o
WSDL:
https://ssp.imcce.fr/webservices/vos4o/vos4o.php?wsdl
Encabezado SOAP :
nombre del elemento del encabezado SOAP : clientID
contenido del encabezado SOAP : array('from' => 'NombreDelProyecto, 'hostip'=>'')
Método :
scale (inputArray)

Parámetros de entrada

Los parámetros de entrada del método scale están agrupados en un cuadro y deben definir las variables descritas en la tabla 2.

Tabla 2 : Definición de las variables de entrada del método 'scale'
ParámtroTypeDefiniciónDéfautValor
escala string Define la puesta a la escala del sistema solar 1:1 X:Y o a|d(<p>):x
autoescala boolean Canga automáticamente la unidad de las distancias y los diámetros cuando los valores son demasiado pequeños o demasiado grandes con respecto a la escala y la unidad verdadero* verdadero | falso
factorescala doble Multiplica los diámetros por el valor si la escala es X:Y o distancia, o divide las distancias por el valor si la escala es diámetro 1.0 > 0.0
unidad string Unidad de longitud de la puesta a la escala ua ua, km, m, cm, mm
idioma string Idioma de los resultados en-us de-de, el-el, en-us, es-es, fi-fi, fr-fr, hi-hi, it-it, pl-pl, pt-pt, ro-ro, zh-hans
mime string Tipo MIME de los resultados html html, votable, text/csv, text
fecha string Fecha de cálculo de las longitudes heliocéntricas en el formato ISO 8601 now now, aaaa:mm:jj hh:mi:ss

* Si el tipo MIME requerido es VOTABLE entonces el parámetro autoscale es falso en cualquier valor aportado.

Parámetros de salida

La respuesta del método 'scale' es un objeto que contiene los atributos siguientes :

'status'
El estado de la respuesta, basada en los códigos HTTP : 200 = ok, 400 = mala búsqueda, 404 = no encontrado, 500 = error interno.
'ticket'
Marca temporal de la respuesta.
'result'
Una cadena de caracteres que contiene la tabla y las imágenes del sistema solar puesto a escala.

Tipo mime

Según el tipo MIME seleccionado, la respuesta es devuelta al formato :

votable
los datos son escritos en un documento XML siguiendo el estandar VOTable de la IVOA
html
los datos están disponibles en un documento HTML5
text
los datos en un documento de texto.

¿Cómo se hace?

Hay dos maneras de utilizar el servicio de puesta a escala del sistema solar : escribir a un cliente para enviar una búsqueda al servidor VOS4O para seguidamente recibir y utilizar la respuesta, o usar un navegador Web o un programa de transferencia de datos como curl o wget. En este caso, ejecutar en una consola la petición :

$> curl "<URL>"

o

$> wget "<URL>"

en que la <URL> está descrita en la sección búsqueda HTTP.

Para escribir un programa cliente que invoque el servicio VOS4O, hay que elegir un idioma que implemente el protocolo de comunicación SOAP. He aquí un ejemplo de cliente escrito en PHP:

1/ Define los parámetros de entrada del servicio:

// Client's ID: provide the name of your project or organisation or yourself
$from = 'MyName';
// Input parameters
$param = array('scale' => 'd(Terre)=1.0',
               'autoscale' => true,
               'scalefactor' => 1.0,
               'unit' => 'm',
               'axis' => 'log',
               'lang' => 'es-es',
               'mime' => 'html',
               'epoch' => 'now');

2/ Define los parámetros SOAP, el espacio de nombre, y el URI del WSDL del servicio :

// Enables or disables the WSDL caching feature
ini_set('soap.wsdl_cache_enabled', 1);
// VOS4O name space
$namespace = 'https://ssp.imcce.fr/webservices/vos4o';
// VOS4O WSDL
$uriwsdl = $namespace.'/vos4o.wsdl';

3/ Instanciar el objeto SoapClient, definir el encabezado SOAP, después llamar al método y gestionar las excepciones :

try {
  // Instantiate the client
  $client = new SoapClient($uriwsdl, array('exceptions'=>1));
  // SOAP header
  $header = array('from'=>$from, 'hostip'=>'');
  $client->__setSoapHeaders(array(
     new SOAPHeader($namespace, 'clientID', $header)
  ));  
  // Call the resolver method
  $response = $client->__soapCall('scale',array($param));
  // Display the results
  if ($param['mime'] == 'text') {
    header("HTTP/1.0 ".$response->status);
    header("Content-Type: text/plain");
    $res = split(';', $response->result);
    $nbr = count($res);
    $newkey = array_keys($res);
    for ($i=0; $i<$nbr; $i++) { echo $res[$newkey[$i]],"\n"; };
  } else if ($param['mime'] == 'html') {
    header("HTTP/1.0 ".$response->status);
    header("Content-Type: text/html");
    echo $response->result;
  } else {
    header("HTTP/1.0 ".$response->status);
    header("Content-Type: text/xml");
    echo $response->result."\n";
  }
} catch (SoapFault $fault) {
  trigger_error("SOAP Fault: {$fault->getTraceAsString()} 
      (faultcode: {$fault->faultcode}, 
       faultstring: {$fault->faultstring})", E_USER_ERROR);
}

Créditos

Concepto : B. Carry (OCA)
Realización : J. Berthier (IMCCE)
Webdesign : Y. Gominet (IMCCE)

Traduciones :

No dudes en contactarnos para proponer una traducción en su idioma.

Este servicio de difusión científica es libre para toda utilización que no sea comercial (ver las menciones legales). Las figuras del sistema solar a escala están bajo licencia Creative Commons BY-NC-SA 2.0 Francia.

Este servicio ha sido desarrollado y es mantenido por el equipo OV del IMCCE y el equipo TOP del laboratorio Lagrange del Observatoire de la Côte d'Azur, con el apoyo técnico y financiero del Observatoire de Paris, du Centre National de la Recherche Scientifique (CNRS) y del Ministère de l'Education Nationale.

Fuente de los datos :

Si deseas más información, te invitamos a dirigirte al libro "Introduction aux éphémérides astronomiques", suplemento explicativo a "La Connaissance des temps", EDP Sciences, 1998.

Fuente de las imagenes :

  • Imagen de fondo : creación original de Y. Gominet.
  • Imagen de fondo para dispositivos ≤ 1025px : qygjxz.com, con modificaciones nuestras.
  • Texturas de los planetas :
    • Mercurio : Messenger, NASA/Johns Hopkins University Applied Physics Laboratory/Carnegie Institution of Washington.
    • Venus : Mariner 10, Mattias Malmer / NASA.
    • Tierra : Image Meteosat-2, ESA.
    • Marte : HST, S. Lee (University of Colorado), J. Bell (Cornell University), M. Wolff (Space Science Institute), and NASA.
    • Júpiter : HST, NASA/ESA/A. Simon (Goddard Space Flight Center).
    • Saturno : Voyager 1, NASA/JPL.
    • Urano : Voyager 2, NASA/JPL-Caltech.
    • Neptuno : Voyager 2, NASA/JPL.

Origen de los tipos de letras :

Definición de los parámetros
Descargar los resultados

Definición de los parámetros

 

Formato de los resultados

Elegir los parámetros de escala y dar al boton Calcular...
Figura del sistema solar a escala
Vista desde arriba del sistema solar