Attenzione! Javascript è disabilitato

The Sky Of Baronie

Welcome to this site, dedicated to the beauty of the sky of Sardinia...

Versione inglese
Versione inglese

ASTROJS – Code examples: The equation of time

Listings for the calculation of the equation of time.
Before commencing, connect your Html page to the Astrojs library, pasting the following listing, under the tag <title>.
IMPORTANT! The functions in red, are not Javascript commands, but belong to the Astrojs library.

<script type="text/javascript" src="http://www.suchelu.it/astrojs/astrojs.js"></script>

The equation of time for today:

<script language="JavaScript" type="text/javascript">
    //<!--

    var v_eqtime=eq_tempo();          // the value equation time today.

    document.write(v_eqtime+"<br>");  // writes the results in minutes and seconds decimals.
    document.write(sc_md(v_eqtime));  // writes the results:  mm|ss. with one decimal.
                                      // mm|ss = minutes & seconds
    //-->

</script>

The equation of time for any date:

<script language="JavaScript" type="text/javascript">
    //<!-- 
                                   // modified the variables of time.

    var dd=23;                     // day.
    var mm=6;                      // month.
    var yy=2011;                   // year.
    var hh=12;                     // hours.
    var mi=0;                      // minutes=0.
    var se=0;                      // seconds=0.

    var njd=calcola_jddata(dd,mm,yy,hh,mi,se); //the J.D. for the date.

    var v_eqtime=eq_tempo_data(yy,njd);     //   Eq.Time for the date.

    document.write(v_eqtime+"<br>");  //  writes the results in minutes and seconds decimals.
    document.write(sc_md(v_eqtime));  // writes the results:  mm|ss. with one decimal.

    //-->

</script>

The equation of time for any date - JEAN MEEUS algorithm

This is the listing to calculate the value of the equation of time with the method described in the volume of J.MEEUS.
The difference compared to previous listings, can vary from 1" to 10" seconds (at certain times of the year).
You can find both methods on the net.

<script language="JavaScript" type="text/javascript">
    //<!-- 
                                   // modified the variables of time.

    var dd=23;                     // giorno.
    var mm=6;                      // mese.
    var yy=2011;                   // anno.
    var hh=0;                      // ora =0.
    var mi=0;                      // minuti=0.
    var se=0;                      // secondi=0.

    var njd=calcola_jddata(dd,mm,yy,hh,mi,se); // calcola il G.G. della data.

    var v_eqtempo=eq_tempo_data2(yy,njd);     //   Eq.Tempo per la data (MEEUS).

    document.write(v_eqtempo+"<br>");  // scrive il risultato in minuti con decimali.
    document.write(sc_md(v_eqtempo));  // scrive il risultato in formato mm|ss. con un decimale.

    //-->

</script>

Mezzogiorno locale:

Conoscendo il valore dell'equazione del tempo, è possibile calcolare l'ora del nostro mezzogiorno vero locale.

<script language="JavaScript" type="text/javascript">
    //<!-- 

    var Long=9.6355;              // Inserire la longitudine della nostra località.
                                  // In gradi sessadecimali.

    var v_eqtempo=eq_tempo();     // Il valore dell'equazione del Tempo di oggi in minuti.
        v_eqtempo=v_eqtempo/60;   // Il valore dell'equazione del Tempo in ore.

    var D_long=15-Long;      // Differenza in longitudine dal meridiano di riferimento (15°).
    var D_long_t=D_long/15;  // Dividere per 15 per avere la differenza in ore decimali.

    var mezzogiorno=12+D_long_t-v_eqtempo; // Il nostro mezzogiorno locale in ore decimali.

        mezzogiorno=sc_ore(mezzogiorno);   // Il nostro mezzogiorno locale in hh mm ss.

    document.write(mezzogiorno);    // scrive il risultato in minuti con decimali.


    //-->

</script>

Mezzogiorno locale, per altre date:


<script language="JavaScript" type="text/javascript">
    //<!--

    var Long=9.6355;               // Inserire la longitudine della nostra località.

    var dd=23;                     // giorno.
    var mm=6;                      // mese.
    var yy=2011;                   // anno.
    var hh=12;                     // ora (mezzogiorno).
    var mi=0;                      // minuti=0.
    var se=0;                      // secondi=0.

    var njd=calcola_jddata(dd,mm,yy,hh,mi,se);  // calcola il G.G. della data.

    var v_eqtempo=eq_tempo_data(yy,njd);  // Eq.Tempo per la data.
        v_eqtempo=v_eqtempo/60;           // Il valore dell'equazione del Tempo in ore.

    var D_long=15-Long;      // Differenza in longitudine dal meridiano di riferimento (15°).
    var D_long_t=D_long/15;  // Dividere per 15 per avere la differenza in ore decimali.

    var mezzogiorno=12+D_long_t-v_eqtempo; // Il nostro mezzogiorno locale in ore decimali.

        mezzogiorno=sc_ore(mezzogiorno);   // Il nostro mezzogiorno locale in hh mm ss.

    document.write(mezzogiorno);    // scrive il risultato in minuti con decimali.


    //-->

</script>


In questi due listati, il mezzogiorno è indicato in "Ora solare", aggiungete un'ora (+1) quando è in vigore l'Ora Legale.

Mezzogiorno locale: Altro metodo

Un altro metodo per calcolare il mezzogiorno locale, è quello di utilizzare la funzione ST_SOLE(njd,LON,LAT,ALT); per il calcolo del sorgere, transito e tramonto del Sole. In questo caso, il transito del Sole sul meridiano locale corrisponderà al mezzogiorno vero locale.
L'altitudine non influenza il transito, ma è un parametro importante nella funzione ST_SOLE(...).

<script language="JavaScript" type="text/javascript">
    //<!--
    //calcola il G.G. per la data indicata nelle variabili.

    var dd=23;         // giorno.
    var mm=6;          // mese.
    var yy=2011;       // anno.
    var hh=0;          // ora. ( sempre=0 ).
    var mi=0;          // minuti=0.
    var se=0;          // secondi=0.

    var LAT=42.53;     // Latitudine in gradi sessadecimali.
    var LON=12.21;     // Longitudine in gradi sessadecimali. (negativa a W di Greenwich)
    var ALT=0;         // Altitudine in metri sul livello del mare.

    var    njd=calcola_jddata(dd,mm,yy,hh,mi,se);   // G.G. della data.

    var a_sole=ST_SOLE(njd,LON,LAT,ALT);

    //La variabile [3] dell'Array [a_sole], corrisponde al transito sul meridiano.

    var t_transito=a_sole[3];   //Il transito del Sole in T.U.
    var mezzogiorno=t_transito; //Il transito corrisponde al mezzogiorno locale in T.U.
    var t_locale=hh_loc(1,njd); //calcola le ore da aggiungere al T.U. per avere il Tempo Locale.

        mezzogiorno=mezzogiorno+t_locale; //Mezzogiorno locale in Tempo Medio Locale.

        mezzogiorno=sc_oresd(mezzogiorno); // Formattazione in hh|mm|ss e stampa del risultato.

    document.write(mezzogiorno);   // scrive il risultato in minuti con decimali.

//-->

</script>

Applicate i due metodi e confrontate i risultati, tenendo conto, che il primo metodo, non considera l'ora legale, di conseguenza ci potrebbe essere una differenza di un'ora esatta.

The graph of the Equation of Time:

This is the graph of E.T. for 2012. The red line indicates today’s date; while the contact point, of the line with the sine curve, corresponds to the value of E.T. at this precise moment. AstroJS carries out 366 calculations in order to create this graph, therefore if you use a particularly slow Internet connection you might not be able to see it right away.

Copiate e incollate questo listato nella vostra pagina web, per inserire questo grafico.

<iframe name="equazione del tempo" src="http://www.suchelu.it/astrojs/equa_tempo.html" width="380" height="463" frameborder="0" marginwidth="0" marginheight="0" scrolling="no"></iframe>

Apri menu: >>

Copyright ©2009 - Salvatore Ruiu
Tutti i contenuti del sito sono protetti dal diritto d'autore.
All Rights Reserved.

Questo sito è Online da dicembre 2009 || Ultima modifica: 10-Dicembre 2009 || Questa pagina web rispetta le direttive del W3C | CSS 2.1 | XHTML 1.0