Freitag, 19. Juli 2013

New universal formula for day of week calculation!

I recently developed a new universal formula in the tradition of Gauss and Zeller for day of week calculation!

Solka’s Universal Formula for Day of Week Calculation

W = D + M + Y
Year Offset Y:
Y = [(5*X)7 * (Y int 4*X) + Y4*X + Y4*X int 4 –   
       Y int 100 + Y int 400 – 1]7

W – day of week; Sun=0 … Sat=6
D – day
M – month offset; 0; 3; 3 / 6; 1; 4 / 6; 2; 5 / 0; 3; 5
       for January – December
Y – year offset
Y – year
X – positive integer
lower index – mod

examples
X=100
Y = [4Y int 400 + Y400 + Y400 int 4 – Y int 100 – 1]
X=25
Y = [5Y int 100 + Y100 + Y100 int 4 + Y int 400 – 1]7


X=10
Y = [Y int 40 + Y40 + Y40 int 4 – Y int 100 + Y int 400 – 1]7

August 23, 1994
example X =100
W = (23 + 2 + 5007*1994int400 + 1994400 + 1994400int4 –
         – 1994int100 + 1994int400 - 1)7
     = (25 + 3*1994int400 + 394 + 394int4 - 19 + 4 - 1)7
     = (25 + 3*4 + 394 + 98 – 16)7
     = (25 + 12 + 394 + 98 – 16)7
     = 513/7 ==> 73 remainder 2 ==> Tuesday

August 23, 1994
example X =25
W = (23 + 2 + 1257*1994int100 + 1994100 + 1994100int4 –
         – 1994int100 + 1994int400 - 1)7
     = (25 + 6*1994int100 + 94 + 94int4 - 19 + 4 - 1)7
     = (25 + 6*19 + 94 + 23 – 16)7
     = (25 + 114 + 94 + 23 – 16)7
     = 240/7 ==> 34 remainder 2 ==> Tuesday

August 23, 1994
example X =10
W = (23 + 2 + 507*1994int40 + 199440 + 199440int4 –
        – 1994int100 + 1994int400 - 1)7
     = (25 + 1*1994int40 + 34 + 34int4 – 19 + 4 - 1)7
     = (25 + 3*49 + 34 + 8 – 16)7
     = (25 + 147 + 34 + 8 – 16)7
     = 198/7 ==> 28 remainder 2 ==> Tuesday

A partition of the year into "the century" and "the year in the century" will get:

Y = 100H + E   with   H = Y int 100   and   E=Y100     
Which would correspond to the mathematical form:  
Y = H + E         with   H = [5 H + H int 4 – 1]7   and   E = [E + E int 4]7               

Year in Century Offset E:
E = [(5*X)7 * (E int 4*X) + E4*X + E4*X int 4]7

H – century
E – year in century
H – century offset
E – year in century offset
X – positive integer (1 … 25)

Solka’s Universal Formula corresponds to their special cases …

... Zeller’s Formula
W = (D + 2,6(M + 1) int 1 + E + E int 4 + H int 4 – 2H)7

W – day of week; Sat=0 … Fri=6
D – day
M – month; Mar=3 … Jan=13, Feb=14
E – year in century (adjusted Gregorian date March - February)
H – century

August 23, 1994
W = (23 + 2,6*(8+1)int1 + 94 + 94int4 + 19int4 - 2*19)7
     = (23 + 23,4int1 + 94 + 23,5int1 + 4,75int1 – 38)7
     = (23 + 23 + 94 + 23 + 4 – 38)7
     = 129/7 ==> 18 remainder 3 ==> Tuesday

... Gauss'/Sokolow’s Formula
W = (D + M + 3E + 5E4 - 2H4)7

W – day of week; Sat=0 … Fri=6
D – day
M – month offset; 0; 3; 3 / 6; 1; 4 / 6; 2; 5 / 0; 3; 5 for
       January – December
E – year in century (standard Gregorian date January - December)
H – century

August 23, 1994
W = (23 + 2 + 3 * 94 + 5 * 944 – 2 * 194)7
     = (23 + 2 + 282 + 10 – 6)7
     = 311/7 ==> 44 remainder 3 ==> Tuesday


... X=7 transforms the universal formula into "sun cycle of 28 years" formula 
E = [E28 + E28 int 4]7

 E – year in century offset
E – year in century

... X=3 transforms the universal formula into Lewis' Caroll's formula 
E = [E int 12 + E12 + E12 int 4]7

... X=1 transforms the universal formula into Dioysius’ Exiguus’ classic formula 
E = [E + E int 4]7



Hans-Christian Solka
July 19, 2013
revised
May 17, 2014

Donnerstag, 11. Juli 2013

Universalformel zur Bestimmung der Kennzahl für das Jahr im Jahrhundert



           Fast alle bisher bekannten Methoden, gehen wie die klas­sische Schaltjahr-Methode auf eine universelle Formel zur Er­mitt­lung der Kenn­zahl für das Jahr im Jahrhundert E zurück. Kürzt man die Jahre im Jahr­­hundert um ein Vielfaches X von Vier, kann man die Kennzahl E berechnen:

           E = [(5*X)7 * (E int 4*X) + E4*X + E4*X int 4]7

           Symbole
           E – Kennzahl für Jahr im Jahrhundert                          X – ganze Zahl (1 … 25)
           E – Jahr im Jahrhundert
           Der Index bezieht sich auf die Rechenoperation "mod" bzw. Divisionsrest: 

D.h. (5*X)7 entspricht (5*X)mod7 und E4*X  entspricht Emod(4*X). 

Diese Universalformel habe ich bisher nicht in der Literatur zur Kalenderrechnung gefunden.



Montag, 3. Juni 2013

Schnapszahlmethode

Bei meinem Buch "Die Schnapszahl-Methode" wurde die 3. erweiterte Auflage fertig gestellt.

Die Schnapszahl-Methode beschreibt einen Effekt der Kalenderrechner – den sogenannten „Kalender im Kopf“. Die Schnapszahl-Methode ist ein sehr einfaches und elegantes Verfahren zur Berechnung des Wochentags für ein beliebiges Datum. Die Methode ist virtuos und völlig neu. Die Schnapszahl-Methode ist für die Jahre von 1955 bis 2054 extrem simpel. Ihre Erweiterung auf den Zeitraum 1900 bis 2099 ist einfach. Der rechnerische Aufwand geht dabei nicht über ein „Zählen bis 13“ hinaus. In mehr als einem Drittel aller Fälle muss überhaupt nicht gerechnet werden, man weiß die Antwort sofort. Es müssen keinerlei Kennzahlen für Wochentage, Monate oder gar Jahre gelernt werden. Der „Kalenderrechner“ kann völlig stressfrei „unter Feuer“ das richtige Monatskalenderblatt für jeden beliebigen Monat zwischen 1900 und 2099 entwickeln. Von diesem Monatskalenderblatt kann man den Wochentag für jeden beliebigen Tag des Monats ablesen

Hauptsächlich wurden für die neue Auflage die Vorlagen für die Kalenderblätter überarbeitet. Die einfache Version wirkt durch die Einbeziehung von Tierkreiszeichen für die Zuschauer plausibler.
Ebenso wurde das Buch neu strukturiert. Einige der Grafiken wurden verkleinert, so dass trotz der Erweiterung des Buchs die Seitenanzahl nicht anwuchs.

Auch die Erläuterung der Schnapszahl-Methode wurde überarbeitet. So wurde die Vorgehensweise für die Daten der 1700 bis 1899 eingefügt. Damit kann die Schnapszahl-Mehode auf alle Daten des gregorianischen Kalenders angewendet werden.  

Die Schnapszahl-Methode kann auch für die Berechnung des Doomsdays genutzt werden.

Das Buch ist direkt beim Autor erhältlich oder bei
http://www.lulu.com/spotlight/ozmdatsolkadotde

Freitag, 3. Mai 2013

phonetische Ziffer-Konsonanten-Kodierung - "Majorsystem"

In meinem Buch "Enzyklopädie der Wochentagsberechnung" habe ich im Kapitel "Mnemotechnische Grundlagen" den Abschnitt "Kodieren von Ziffern" überarbeitet.

Es scheint sich bestätigen, dass die Kodierung von ziffern durch Konsonanten ursprünglich in Indien entwickelt wurde, wie bereits 1936 Ernest Wood schreibt.

Der erste schriftliche Nachweis soll sich in einem Buch aus dem 7. Jh. des indischen Astronomen Haridatta befinden. Haridattas Buch und eine zitierbare Quelle dazu liegt mir allerdings nicht vor :=)

Ich führe aus:

"Die Kodierung von Ziffern durch Buchstaben wurde in Kerala/Indie*2 und unabhängig davon viele Jahrhunderte später in Euro­pa durch Pierre Hérigone, 1632 [1] und Johann Justus Win­(c)kel­­mann (Stanislaus Mink von Weunßhein), 1648 [2] entwickelt. Winkel­­mann ver­wen­de­te erst­mals nur noch Konsonanten zur Kodierung.

Einen Fortschritt brachte im 19. Jahrhundert die phonetische Kodierung. Sie ermög­lich­te nicht nur eine flexiblere Über­setzung von Zahlen in Wörter, sondern auch ein Trans­for­mie­ren von Wörtern in Zah­len. Die Übersetzung wurde von der Fessel der Orthografie be­freit. Die hier ange­ge­be­ne international ge­bräuch­li­che Lautzuord­nung geht auf den fran­zö­si­schen Steno­grafie­experten und Mne­mo­tech­ni­ker Aimé Paris, 1825 [3] zurück. Sie wird als „Majorsystem“ bezeichnet:"

*2 Als „Katapayadi System“ [4] wohl erstmals in einem Buch des ind. Astronomen Haridatta (ca. 683) beschrieben.

Desweiteren interessante Fakten:

Pierre Hérigone publizierte die ersten vier Bände seines Werkes 1632 und wohl nicht erst 1634, wie oft angegeben.

Stanislaus Mink von Weunßhein war die Schreibweise des Pseudonyms von Winkelmann auf dem Titelblatt seines Buchs 1648." 

[1] Pierre Hérigone: „Cursus Mathematicus, Tome II, l’arithmetique”; Paris, 1632 (2. Aufl. 1644)
[2] Stanisl. Mink von Weunßhein: „Von der Gedächtniskunst”; J.K.M., 1648
[3] Aimé Paris: „Exposition et pratique des procédés de la mnémotechnie”; Paris, 1825
[4] Ernest E. Wood: „Mind and Memory Training”; p. 112/113, 1936 (Reprint 1974)

Mittwoch, 24. April 2013

The Mental Calculator's Handbook

"The Mental Calculator's Handbook" by Fountain and van Konigsfeld is very well written. The reckoning techniques are explained clearly and explained using examples. The reader is taken from basics to more complex matters.

I went right to the Calendar section.  I guess I was a bit disappointed, but I'm not sure what I was expecting.  The classical method - well explained and used by authors is lightning fast. But ...
I was disappointed that they taught only this well known 4 offset algorithm and his variations in the calendar field.
Variations mean quest like:
- On which months falls Friday, 13th in 2014?
- In which years did the same day of the week fall on the same day like in the year ccyy?
Sadly nothing revolutionary new for me.

I recommend the seriously interested reader to buy this book. I'm sure it will be contribute finer knowledge to everyone interested in this field.

Freitag, 22. März 2013

Mondphasen im Kopf auf unter 36 Stunden genau berechnen

Ich habe den Abschnitt "die Berechnung der Mondphasen 1900 - 2099 im Kopf" meiner Enzyklopädie nochmal überarbeitet. Nach einigen Diskussionen mit F. S. - danke - habe ich mein Berechnungsvergahren leicht verändert, um die Genauigkeit zu erhöhen.

Mehr als 99% aller Berechnungen sind auf ±1 Tag bzw. ±36 Stunden Abweichung vom astronomischen Neumond genau. Im Zeitraum 1900 bis 2099 gibt es 20 rechnerische Abweichungen von 36 bis maximal 49 Stunden, darunter 8 berechnete Neumonde mit +40 bis +46 Stunden Abweichung vom astronomischen Neumond (alle erst ab 2050).

Conway ist nicht genauer:
Vollmond 24.11.1992 09:11 UT
Conway: 28 ==> fast Vollmond, Abweichung 51 Stunden

Die Berechnung ist kinderleicht.

Mittwoch, 20. März 2013

Mondphasen im Kopf berechnen

Endlich ist es vollbracht!

Die Enzyklopädie der Wochentagsberechnung wurde thematisch aus meiner Sicht abgeschlossen. Als letzter Abschnitt wurde die Berechnung der Mondphasen im Kopf für jedes Datum in den Jahren 1900 bis 2099 eingefügt. Der Algorithmus ist einfach und gut für das Kopfrechnen umsetzbar.

Mein Algorithmus liefert für den Zeitraum 1900 bis 2099 eine Genauigkeit von +/- 1 Tag. Die einzigen bisher gefundenen größeren Abweichnungen treten bei der Berechnung des Neumonds am 4.9. und am 2.11. 1956 mit rund 42h Abweichung auf.