Přeskočit na obsah
Naše paměť

Svátek v matrice: jak dopočítat kalendářní den

Návod, jak z církevního svátku v matrice bezpečně získat kalendářní den, rozlišit pohyblivá data a uchovat původní znění zápisu.

7 minut čtení

Z označení svátku k pracovnímu datu

V zápisu čtete „první neděli po Velikonocích“, ale potřebujete kalendářní datum. Převod rozdělte na čtení, výklad a výpočet. I správně napsaný program vrátí nepoužitelný výsledek, když zadáte jiný rok nebo zvolíte nesprávný kalendář. Původní označení proto nepřepisujte vypočteným dnem.

Výsledkem bude řádek v tabulce, v němž zůstane doslovný text, návrh výkladu, případný výsledek a stav kontroly. Nevyřešený svátek může mít datum prázdné. To je přesnější než konkrétní den doplněný jen proto, aby tabulka neměla mezery.

Pokud postup konzultujete s modelem, použijte smyšlený text nebo malý historický výřez bez osobních údajů žijících. Skutečné údaje žijících do chatu ani cloudové tabulky neposílejte. Vlastní výpis a závěr si uchovejte u sebe.

Krok 1: Doslovný přepis bez okamžitého přepočtu

Prvním pravidlem bezpečné práce je zachování původního textu. Do své badatelské tabulky vytvořte samostatný sloupec pro doslovný přepis data přesně v té podobě, v jaké je zapsáno v knize. Zapište text včetně dobového pravopisu, zkratek a případných pochybností ve čtení. Pokud stojí „dominica in albis“, zachovejte latinské znění. Moderní české znění patří až vedle jako výklad. Příklad je smyšlený; na skutečném snímku opisujte to, co vidíte.

Tento přístup přímo navazuje na zásady popsané v článku Sjednocení dat v tabulce bez ztráty nejistoty, kde původní text zůstává trvalou kotvou vedle standardizovaných sloupců. Jakmile máte původní znění bezpečně uložené, můžete v sousedním sloupci začít pracovat na výkladu.

Krok 2: Rozlišení pevných a pohyblivých svátků

Pro další postup potřebujete rozlišit, zda označení odkazuje k pevnému dni v příslušném kalendáři, nebo k datu odvozenému například od Velikonoc. Toto rozlišení je otázka k ověření, nikoli úkol pro výpočetní funkci.

U pevného svátku dohledávejte význam celého názvu v podkladu pro příslušnou dobu a místo. Samotné jméno „svatý N.“ nemusí určit jediný den. Prověřte, kterého světce a kterou slavnost text označuje. Dnešní kalendář jmen sám nestačí jako doklad staršího významu. Pokud je zdroj nejednoznačný, napište obě možnosti do výkladu a den nevyplňujte.

Dvě pevné ukázky jsou sv. Václav 28. září a Narození sv. Jana Křtitele 24. června. Jan Křtitel má i svátek Umučení 29. srpna; označení v zápisu proto bez upřesnění nestačí. Například označení „na sv. Václava“ při doloženém roku 1791 vede k návrhu 1791-09-28; „na Narození sv. Jana Křtitele“ k 1791-06-24. Vždy nejprve ověřte celé označení v zápisu, nikoli jen křestní jméno světce.

U pohyblivého označení potřebujete výchozí svátek, rok a přesný odstup. Následující tabulka počítá od Velikonoční neděle; záporné číslo znamená dny před ní. Poslední sloupec slouží ke kontrole skriptu pro rok 2026.

OznačeníOdstup ve dnechDatum 2026
Popeleční středa-4618. 2.
Květná neděle-729. 3.
Bílá neděle+712. 4.
Nanebevstoupení Páně+3914. 5., čtvrtek
Letnice+4924. 5.
Boží tělo+604. 6., čtvrtek

Bílá neděle je první neděle po Velikonocích, latinsky dominica in albis, také Quasimodo. Ve smyšleném příkladu roku 1785 níže pracujeme právě s tímto latinským označením. Tabulka nenahrazuje přečtení celého textu ani neurčuje, ke které události datum patří.

V českých zemích se gregoriánský kalendář zavedl v roce 1584. Před tímto rokem zde uvedený výpočet neplatí a skript vyhodí chybu. U zápisů z přechodného roku ověřte místní kalendářní souvislost zvlášť. K ověření použijte Friedrichovu Rukověť křesťanské chronologie; pouhý výsledek funkce historický výklad nepotvrzuje. Funkce nepřevádí juliánské datum.

Krok 3: Co svěřit modelu a co nechat na skriptu

Model můžete požádat o možné významy přesně přepsaného označení a otázky pro badatele. Každý návrh zůstává pracovní. Ke zvolenému výkladu potřebujete dohledatelný zdroj, který skutečně odpovídá místu a období zápisu. Nezjištěný význam nedoplňujte odhadem.

Výpočet přenechte ověřenému skriptu nebo tabulce. Vstupní rok, kalendář a odstup přitom určujete vy. Omezení skriptů a kontrolu na známém vzorku vysvětlují články Co zvládne skript a co ne a Od chatu ke skriptu. Ani bezchybné spuštění nepotvrzuje historický výklad.

Ukázka skriptu pro výpočet Velikonoc v Pythonu

Pro výpočet data Velikonoční neděle v gregoriánském kalendáři existuje zavedený matematický postup, který lze snadno zapsat v jazyce Python bez použití externích knihoven. Následující ukázka obsahuje funkci pro výpočet Velikonoc a funkci pro posun o zadaný počet dnů. Vypíše všech šest svátků z tabulky:

from datetime import date, timedelta

def datum_velikonoc(rok: int) -> date:
    """Vypocet data Velikonocni nedele v gregorianskem kalendari."""
    if not 1584 <= rok <= 4099:
        raise ValueError("Ukazka prijima pouze roky 1584 az 4099.")
    a = rok % 19
    b = rok // 100
    c = rok % 100
    d = b // 4
    e = b % 4
    f = (b + 8) // 25
    g = (b - f + 1) // 3
    h = (19 * a + b - d - g + 15) % 30
    i = c // 4
    k = c % 4
    l = (32 + 2 * e + 2 * i - h - k) % 7
    m = (a + 11 * h + 22 * l) // 451
    mesic = (h + l - 7 * m + 114) // 31
    den = ((h + l - 7 * m + 114) % 31) + 1
    return date(rok, mesic, den)

def datum_svatku(rok: int, odstup: int) -> date:
    return datum_velikonoc(rok) + timedelta(days=odstup)

rok_zapis = 2026
odstupy = {
    "Popelecni streda": -46,
    "Kvetna nedele": -7,
    "Bila nedele": 7,
    "Nanebevstoupeni Pane": 39,
    "Letnice": 49,
    "Bozi telo": 60,
}
print("Velikonoce:", datum_velikonoc(rok_zapis))
for nazev, odstup in odstupy.items():
    print(nazev + ":", datum_svatku(rok_zapis, odstup))
print("Bila nedele 1785:", datum_svatku(1785, 7))

Ukázku uložte jako soubor svatek.py a spusťte příkazem python3 svatek.py. Pro rok 2026 vypíše Velikonoce 2026-04-05 a svátky podle tabulky výše. Poslední řádek ukáže Bílou neděli 1785-04-03. Funkce přijímá roky 1584 až 4099; horní mez je omezením ukázky. Změnou rok_zapis zvolíte jiný rok, argumentem odstup jiný počet dnů. Program žádný váš soubor nepřepisuje.

Krok 4: Ověření výpočtu na známých datech

Než výsledky skriptu nebo tabulkového vzorce zanesete k matričním záznamům, musíte celý postup důkladně otestovat. Nespoléhejte na to, že kód funguje, jen proto, že proběhl bez chybového hlášení.

Začněte kontrolou, kterou zvládnete porovnat přímo zde: Velikonoce 2024 jsou 31. března, Velikonoce 2026 jsou 5. dubna. Spusťte funkci pro oba roky a poté pro rok 2026 porovnejte všech šest posunů s tabulkou. Kontrolujete tak nejen základní datum, ale i znaménko odstupu a přechod mezi měsíci.

Pro vlastní práci přidejte další kontrolní roky z nezávislé předlohy a poznamenejte si zdroj. Při neshodě výpočet nepřebírejte a prověřte kalendář, vstupní rok i kód. Shoda vzorku stále nepotvrzuje význam nejasného svátku.

Krok 5: Výsledná tabulka se zachováním jistoty

Výsledná tabulka musí uchovávat celou cestu od zápisu v knize až po kalendářní den. Zaveďte proto čtyři klíčové sloupce:

  1. Doslovný zápis: text přepsaný z matriky bez úprav.
  2. Výklad: identifikace svátku či světce (pracovní návrh).
  3. Návrh data: kalendářní den ve standardním formátu (rok-měsíc-den).
  4. Jistota: označení míry spolehlivosti a případné pochybnosti.

Následující ukázka je celá smyšlená. Čísla P1 a P2 zastupují vlastní výpisy s označením knihy a snímku. Výsledek u P1 je podmíněný výkladem a kalendářem; není to tvrzení o ověřeném archivním nálezu.

Doslovný zápisVýkladNávrh dataJistota a další krok
P1: „dominica in albis“, rok 1785návrh: sedm dnů po velikonoční neděli v gregoriánském výpočtu1785-04-03, pracovní výsledekvýpočet uveden výše; ověřit čtení, rok a kalendářní souvislost
P2: „na den swateho N.“, rok 1791světec a slavnost neurčenivýznam neověřen; hledat dobový kalendářní podklad

Na rozdíl od postupu pouhého sjednocování dat zde smíte zapsat početní návrh: původní zápis zůstává, návrh je výslovně označený a neslouží jako doložený fakt. Sloupec datum_upravene z článku o sjednocení zůstává prázdný.

Rok připojte s vysvětlením, odkud jej znáte. Nadpis ročníku ověřte v souvislosti s daným zápisem; při přechodu do jiného oddílu jej nepřenášejte automaticky z předchozího snímku. Ke každému řádku přidejte také druh události. Datum křtu zůstává datem křtu, i když jste je získali výpočtem.

U P1 máte hotový početní návrh, u P2 hotovou otázku pro další hledání. Po badatelském ověření doplňte zdroj výkladu a datum kontroly. Samotné slovo „vysoká“ ve sloupci jistoty by neukázalo, zda jste ověřili písmena, kalendář, nebo jen aritmetiku.

Psali: Ford Prefect · Hlubina myšlení

Článek napsal jazykový model a zkontroloval jej druhý model. Postup je návrh, neověřili jsme ho vlastním měřením.