EphemPedia

Anhänger der rechnenden Astronomie

Benutzer-Werkzeuge

Webseiten-Werkzeuge


datumseingabe

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen der Seite angezeigt.

Link zu der Vergleichsansicht

Beide Seiten, vorherige ÜberarbeitungVorherige Überarbeitung
Nächste Überarbeitung
Vorherige Überarbeitung
datumseingabe [2024/02/26 14:09] querndatumseingabe [2025/07/02 15:09] (aktuell) – [Schaltjahr] hcgreier
Zeile 32: Zeile 32:
 ==== Beispiel für JavaScript ==== ==== Beispiel für JavaScript ====
  
-Die Funktion ''isLeap'' übernimmt eine Jahreszahl und gibt bei einem Schaltjahr ''1'' zurück, bei einem Gemeinjahr hingegen ''0''. Der Parameter ist die Ganzahl der gegebenen Jahres $Y$.+Die Funktion ''isLeap'' übernimmt eine Jahreszahl und gibt bei einem Schaltjahr ''1'' zurück, bei einem Gemeinjahr hingegen ''0''. Der Parameter ist die Ganzahl des gegebenen Jahres $Y$.
  
 <code> <code>
Zeile 53: Zeile 53:
 Es wird ein Monat $M$ aus der Tabelle ausgewählt, der zwischen 1 und 12 liegt. Es wird ein Monat $M$ aus der Tabelle ausgewählt, der zwischen 1 und 12 liegt.
 {{tablelayout?rowsHeaderSource=1&colwidth="130px,140px,170px"&float=center}} {{tablelayout?rowsHeaderSource=1&colwidth="130px,140px,170px"&float=center}}
 +^  Tabelle 1  |||
 ^  Nummer $M$  ^ Monatsname  ^  Monatslänge $N$  ^ ^  Nummer $M$  ^ Monatsname  ^  Monatslänge $N$  ^
 |  1           | Januar      |  31               | |  1           | Januar      |  31               |
Zeile 76: Zeile 77:
  
 Der [[julianischer Tag JD|Julianischer Tag JD]] wird aufgrund seines Umfangs in einem eigenen Kapitel behandelt. Der [[julianischer Tag JD|Julianischer Tag JD]] wird aufgrund seines Umfangs in einem eigenen Kapitel behandelt.
-===== Tagesnummer ===== 
  
-$Z$ liegt zwischen 1 bis 365 (bzw. 366 in einem Schaltjahr). Es gilt:+===== Wochentage =====
  
-$$Z = \sum_{M = 1}^{13} N\cdot(M - 1+ D$$ +Der Julianische Tag wird auf einen Betrag zwischen 0 und 7 reduziert. Diesem Wert wird der Name eines Wochentags (Tabellezugeordnet.
- +
-===== Wochentage =====+
  
-Der Julianische Tag wird auf Betrag zwischen und reduziert. Diesem Wert wird der Name eines Wochentags (Tabelle) zugeordnet.+\[\begin{align} 
 +\mathrm{wt} =&\;\mathrm{red}[{(\mathrm{round}(\mathrm{red}(JD,7) + 1),0),7}] \\ 
 +=&\; \mathrm{red}({JD + 1.5, 7}) + 1 
 +\end{align}\tag{1}\]
  
-\[ \begin{align} \mathrm{wt} =&\;\mathrm{red}[{(\mathrm{round}(\mathrm{red}(JD,7) + 1),0),7}] \\=&\; \mathrm{red}({JD + 1,7}) + 1 \end{align} \] 
 {{tablelayout?rowsHeaderSource=1&colwidth="99px,150px"&float=center}} {{tablelayout?rowsHeaderSource=1&colwidth="99px,150px"&float=center}}
 +^  Tabelle 2  ||
 ^  wt     ^ Wochentag   ^ ^  wt     ^ Wochentag   ^
 |  0      | Sonntag     | |  0      | Sonntag     |
Zeile 109: Zeile 110:
 ==== Beispiel ==== ==== Beispiel ====
  
-**Man ermittle den Wochtag für den 15.4.2023.**+{{:beispiel_calculator.png?nolink| }} **Man ermittle den Wochtag für den 15.4.2023.**
  
 Der Julianische Tag für dieses Datum wurde bereits in [[:julianischer_tag_jd#beispiel_1|Beispiel 1]] ermittelt. Für 00:00 $UT$ lautet das Ergebnis $JD = 2460049.5$ Der Julianische Tag für dieses Datum wurde bereits in [[:julianischer_tag_jd#beispiel_1|Beispiel 1]] ermittelt. Für 00:00 $UT$ lautet das Ergebnis $JD = 2460049.5$
Zeile 123: Zeile 124:
 Der ganzzahlige Rest einer Division lässt sich in diversen Programmiersprachen mit der ''Modulo-Funktion'' ermitteln. Der Operator, auch genannt Restwert-Operator, kann sich dabei unterscheiden: Der ganzzahlige Rest einer Division lässt sich in diversen Programmiersprachen mit der ''Modulo-Funktion'' ermitteln. Der Operator, auch genannt Restwert-Operator, kann sich dabei unterscheiden:
  
-  * In Java/JavaScript ist der Operator das ''&'': $10\;\textsf{&}\;3 = 1$ (10:3 = 3, Rest 1) +  * In Java/JavaScript ist der Operator das ''%'': $10\;\textsf{%}\;3 = 1$ (10:3 = 3, Rest 1) 
-  * In Python ist der Operator ebenfalls ''&''+  * In Python und PHP ist der Operator ebenfalls ''%''.
-  * In PHP lautet der Operator ''%''.+
  
 </WRAP> </WRAP>
  
 {{anchor:tag_des_jahres}} {{anchor:tag_des_jahres}}
 +
 ===== Tagesnummer des Jahres ===== ===== Tagesnummer des Jahres =====
  
-In manchen Fällen ist es notwendig, die Tagesnummer eines gegebenen Jahres zu ermitteln. Dabei ist zwischen Gemeinjahren und Schaltjahren zu unterscheiden. Der Tag 1 jedes Monats entpricht der folgenden Tagesnummer:+Die Tagesnummer $Z$ gibt die Summe der Tage vom Jahresbeginn bis zum gegegeben Tag des Jahres an. 
 + 
 +$Z$ liegt zwischen 1 bis 365 (bzw. 366 in einem Schaltjahr). Es gilt: 
 + 
 +$$Z = \sum_{M = 1}^{13} N\cdot(M - 1) + D\tag{2}$$ 
 + 
 +Dabei ist $N$ ist die [[#monatsname |Anzahl der Tage]] in jedem Monat. In einigen Fällen ist es notwendig, diese Tagesnummer eines gegebenen Jahres zu ermitteln. Dabei ist zwischen Gemeinjahren und Schaltjahren zu unterscheiden. Der Tag $1jedes Monats entpricht der folgenden Tagesnummer:
  
 {{tablelayout?rowsHeaderSource=1&colwidth="125px,60px,60px,60px,60px,60px,60px,60px,60px,60px,60px,60px,60px"&float=center}} {{tablelayout?rowsHeaderSource=1&colwidth="125px,60px,60px,60px,60px,60px,60px,60px,60px,60px,60px,60px,60px"&float=center}}
-            |  Jan   Feb   Mär   Apr   Mai   Jun   Jul   Aug   Sep   Okt   Nov   Dez  |+^  Tabelle 3  ||||||||||||| 
 +^              Jan   Feb   Mär   Apr   Mai   Jun   Jul   Aug   Sep   Okt   Nov   Dez  ^
 | Gemeinjahr  |  0    |  31    59    90    120  |  151  |  181  |  212  |  243  |  273  |  304  |  334  | | Gemeinjahr  |  0    |  31    59    90    120  |  151  |  181  |  212  |  243  |  273  |  304  |  334  |
 | Schaltjahr  |  0    |  31    60    91    121  |  152  |  182  |  213  |  244  |  274  |  305  |  335  | | Schaltjahr  |  0    |  31    60    91    121  |  152  |  182  |  213  |  244  |  274  |  305  |  335  |
Zeile 154: Zeile 162:
   const firsts = [0, 31, 59, 90, 120, 151, 181, 212, 243, 273, 304, 334];   const firsts = [0, 31, 59, 90, 120, 151, 181, 212, 243, 273, 304, 334];
   if(isLeap(Y)) {   if(isLeap(Y)) {
 +    // Für Schaltjahre: März bis Dezember um 1 erhöhen.
     let i = firsts.length;     let i = firsts.length;
     while(i-- > 2) {     while(i-- > 2) {
Zeile 186: Zeile 195:
 </code> </code>
 </WRAP> </WRAP>
- 
  
 {{anchor:dezimales_jahr}} {{anchor:dezimales_jahr}}
 +
 ===== Jahr in dezimaler Darstellung ===== ===== Jahr in dezimaler Darstellung =====
  
-Mithilfe der obigen Funktionen lässt sich ein beliebiges Datum nun als "dezimale Jahreszahl" darstellen. Man ermittelt die Tagesnummer des Jahres und addiert dann den entsprechenden Bruchteil (Gemeinjahr/Schaltjahr) zum gegebenen Jahr (Integer!).\\ +Mithilfe den beiden oben genannten Funktionen ''isLeap'' und ''getDayOfYear'' lässt sich ein beliebiges Datum nun als "dezimale Jahreszahl" darstellen. Man ermittelt die Tagesnummer des Jahres und addiert dann den entsprechenden Bruchteil (Gemeinjahr/Schaltjahr) zum gegebenen Jahr (Integer!). Die dezimale Jahreszahl ist z.B. bei der Ermittlung der [[:mondphasen|Mondphasen]] und der [[konstellationen_der_planeten#aspekte|Aspekte der Planeten]] von Nutzen
-Die dezimale Jahreszahl ist z.B. bei der Ermittlung der [[:mondphasen|Mondphasen]] von Nutzen.+ 
 +$$J = Y + \frac{Z}{365 + Q}\tag{3}$$ 
 + 
 +$Q = 0$ im Normaljahr und $Q = 1$ im Schaltjahr. $J$ ist dann das Jahr in Dezimalform.
  
 <WRAP center round box 100%> <WRAP center round box 100%>
Zeile 205: Zeile 217:
 console.log(getDecimalYear(2023, 6, 16));   // => 2023.454794520548 console.log(getDecimalYear(2023, 6, 16));   // => 2023.454794520548
 console.log(getDecimalYear(2024, 10, 24));  // => 2024.811475409836 console.log(getDecimalYear(2024, 10, 24));  // => 2024.811475409836
-// Test für 1. Januar+// 1. Januar 00:00 Uhr
 console.log(getDecimalYear(2024, 1, 1));    // => 2024 console.log(getDecimalYear(2024, 1, 1));    // => 2024
 +// 31. Dezember 00:00 Uhr
 +console.log(getDecimalYear(2024, 12, 31));  // => 2024.9972677595629
 +
 </code> </code>
 </WRAP> </WRAP>
- 
- 
- 
- 
- 
- 
- 
datumseingabe.1708952991.txt.gz · Zuletzt geändert: 2024/12/20 01:33 (Externe Bearbeitung)