CALENDARIO REPUBLICANO

Tema en 'Cultivo de plantas aromáticas y condimentos' comenzado por cultor felix ٢, 14/9/18.

  1. Buenos días:

    El Calendario Republicano está relacionado con el campo; es el calendario de los Agricultores, Hortelanos y Jardineros.

    El mes Fructidor es el mes de los frutos; es el último del verano y del año para el cual le faltan cinco días para completarlo.

    Por eso, se le añaden cinco días (seis en los años bisiestos) llamados «Días Complementarios».

    Los meses están reunidos en estaciones: tres meses de otoño, tres meses de invierno, tres meses de primavera y tres meses de otoño.

    Cada mes consta de 30 días y es dividido en tres «décadas» de diez días:

    Primidi, Duodi, Tridi, Quartidi, Quintidi, Sextidi, Septidi, Octidi, Nonidi y Décadi.

    Cada día lleva un nombre de planta de campo, apero (siempre un Décadi), animal de campo (siempre un Quintidi) o fenómenos atmosféricos.

    El Año Republicano empieza el día del otoño.

    También se le podría llamar el «Calendario del Agricultor» o «Calendario del Campo».

    Décadi 30 de Fructidor de CCXXVI​

    S2,
    Eiffel.
     
  2. torpeyvago

    torpeyvago Ego sum abbas Cucaniensis

    Mensajes:
    147
    Ubicación:
    Ciudad Real (España)
    Muchas gracias, Cultor Felix, por la información. La verdad es que siento cierto entusiasmo por los calendarios.
    A mí me sale que hoy 28 de Fructidor del 228, pero me puedo haber equivocado.
    En fin, si alguien quiere calcularlo por su cuenta aquí está mi código en javascript:

    PHP:
    function JD(Ano, Mes, Dia, Hor, Min, Seg) {
        
    // Torpeyvago, GNU 2014
        
    var AA = Ano;
        var 
    MM = Mes;
        if (
    MM < 3) {
            
    AA = AA - 1;
            
    MM = MM + 12;
        }
        var 
    AX = ~~(AA / 100);
        var 
    BB = 2 - AX + ~~(AX / 4);
        return ~~(
    365.25 * (AA + 4716)) + ~~(30.6001 * (MM + 1)) + Dia + Hor / 24 + Min / 1440 + Seg / 86400 + BB - 1524.5;
    }

    function 
    CalendarioFrances(dblJD) {
       
    // Torpeyvago, GNU 2014
       
    var dblAnoNuevo;
       var 
    lngAno;
       var 
    lngMes;
       var 
    lngDia;
       var 
    lngDecada;
       var 
    dbldeltaAR;
       var 
    dblAR;
       var 
    dblDec;
       var 
    dblRad;
       var 
    i;
       var 
    Y;
       var 
    strCF;

       var 
    strMes = new Array(14);
       var 
    strDia = new Array(11);
       var 
    strSans = new Array(7);

       var 
    dblAnoTropico = 365.242189236;
       var 
    dblEra = 2375844.5;

       
    strMes[1] = "Vendémiaire";
       
    strMes[2] = "Brumaire";
       
    strMes[3] = "Frimaire";
       
    strMes[4] = "Nivôse";
       
    strMes[5] = "Pluviôse";
       
    strMes[6] = "Ventôse";
       
    strMes[7] = "Germinal";
       
    strMes[8] = "Floréal";
       
    strMes[9] = "Prairial";
       
    strMes[10] = "Messidor";
       
    strMes[11] = "Thermidor";
       
    strMes[12] = "Fructidor";
       
    strMes[13] = "";

       
    strSans[1] = "Jour de la Vertu";
       
    strSans[2] = "Jour du Génie";
       
    strSans[3] = "Jour du Labor";
       
    strSans[4] = "Jour de la Raison";
       
    strSans[5] = "Jour de la Récompense";
       
    strSans[6] = "Jour de la Révolution";

       
    strDia[1] = "Primidi";
       
    strDia[2] = "Duodi";
       
    strDia[3] = "Tridi";
       
    strDia[4] = "Quatridi";
       
    strDia[5] = "Quintidi";
       
    strDia[6] = "Settidi";
       
    strDia[7] = "Septidi";
       
    strDia[8] = "Octidi";
       
    strDia[9] = "Nonidi";
       
    strDia[10] = "Decadi";

       
    Y = ~~((dblJD - 1721325.6978) / 365.2425055);
       
    dblAnoNuevo = 1721325.6978 + 365.2425055 * Y - 0.126689 * Math.pow((Y / 1000), 2) + 0.0019401 * Math.pow((Y / 1000), 3);
       
    lngAno = Math.round((dblAnoNuevo - dblEra) / dblAnoTropico, 0) + 1;
       
    lngMes = ~~((dblJD - dblAnoNuevo) / 30) + 1;
       
    lngDia = ~~(dblJD - dblAnoNuevo) % 30 + 1;
       
    lngDecada = (lngDia / 10 - ~~(lngDia / 10)) * 10;

       if (
    lngMes === 13) {
         
    strCF = lngAno + " " + strSans[lngDia];
       }
       else {
         
    strCF = lngAno + " " + strMes[lngMes] + " " + lngDia;
       }
       return 
    strCF;
    }
    También lo tengo en BASIC por si alguien lo quiere.
     
  3. torpeyvago

    torpeyvago Ego sum abbas Cucaniensis

    Mensajes:
    147
    Ubicación:
    Ciudad Real (España)
    Bueno, pues también lo pongo, y solucionado ;) :
    PHP:
    Public Function DíaJuliano(Día As Date) As Double
        
    '  Torpeyvago, GNU 2014'
        
    DíaJuliano = Día + 2415018.5
    End 
    Function

    Public Function 
    CalendarioFrancés(dblJD As Double) As String
        
    ' Torpeyvago, GNU 2014'
        
    Dim dblAñoNuevo         As Double
        Dim lngAño              
    As Long
        Dim lngMes              
    As Long
        Dim lngDía              
    As Long
        Dim strMes
    (1 To 13)     As String
        Dim strDía
    (1 To 10)     As String
        Dim strSans
    (1 To 6)     As String
        Dim lngDécada           
    As Long
        Dim dbldeltaAR          
    As Double
        Dim dblAR               
    As Double
        Dim dblDec              
    As Double
        Dim dblRad              
    As Double
        Dim dblT
    (-1 To 1)       As Double
        Dim dblV
    (-1 To 1)       As Double
        Dim i                   
    As Long
     
        
    Const dblAñoTrópico = 365.242189236
        
    Const dblEra = 2375844.5
     
        strMes
    (1) = "Vendémiaire"
        
    strMes(2) = "Brumaire"
        
    strMes(3) = "Frimaire"
        
    strMes(4) = "Nivôse"
        
    strMes(5) = "Pluviôse"
        
    strMes(6) = "Ventôse"
        
    strMes(7) = "Germinal"
        
    strMes(8) = "Floréal"
        
    strMes(9) = "Prairial"
        
    strMes(10) = "Messidor"
        
    strMes(11) = "Thermidor"
        
    strMes(12) = "Fructidor"
        
    strMes(13) = ""
     
        
    strSans(1) = "Jour de la Vertu"
        
    strSans(2) = "Jour du Génie"
        
    strSans(3) = "Jour du Labor"
        
    strSans(4) = "Jour de la Raison"
        
    strSans(5) = "Jour de la Récompense"
        
    strSans(6) = "Jour de la Révolution"
     
        
    strDía(1) = "Primidi"
        
    strDía(2) = "Duodi"
        
    strDía(3) = "Tridi"
        
    strDía(4) = "Quatridi"
        
    strDía(5) = "Quintidi"
        
    strDía(6) = "Sextidi"
        
    strDía(7) = "Septidi"
        
    strDía(8) = "Octidi"
        
    strDía(9) = "Nonidi"
        
    strDía(10) = "Decadi"
       
        'Cálculo del año nuevo
        SolRaDecR dblJD, dblAR, dblDec, dblRad
        dbldeltaAR = dblAR - Pi ' 
    12h
        
    If dbldeltaAR < 0 Then dbldeltaAR = dbldeltaAR + PiDos
        dblT
    (0) = dblJD - dbldeltaAR / PiDos * dblAñoTrópico
        dblT
    (-1) = dblT(0) - 2
        dblT
    (1) = dblT(0) + 2
        
    For i = -1 To 1
            SolRaDecR dblT
    (i), dblAR, dblDec, dblRad
            dblV
    (i) = dblAR
        Next i
        dblT
    (0) = dblInterInv(Pi, dblT(), dblV)
        
    dblT(-1) = dblT(0) - 0.5
        dblT
    (1) = dblT(0) + 0.5
        
    For i = -1 To 1
            SolRaDecR dblT
    (i), dblAR, dblDec, dblRad
            dblV
    (i) = dblAR
        Next i
     
        dblAñoNuevo 
    = dblInterInv(Pi, dblT(), dblV)
        
    lngAño = Round((dblAñoNuevo - dblEra) / dblAñoTrópico, 0) + 1
        lngMes 
    = (dblJD - dblAñoNuevo) \ 30 + 1
        lngDía 
    = (dblJD - dblAñoNuevo) Mod 30 + 1
        lngDécada 
    = (lngDía / 10 - Int(lngDía / 10)) * 10
        
    If lngMes = 13 Then
            CalendarioFrancés 
    = Format(lngAño) & " " & strSans(lngDía)
        Else
            
    CalendarioFrancés = Format(lngAño) & " " & strMes(lngMes) & " " & Format(lngDía, "00")  & ", " & strDía(lngDécada) &  " " & String(Int(lngDía / 10) + 1, "I")
        
    End If
    End Function
     
  4. Correo Volver

    Correo Volver

    Mensajes:
    11.833
    Ubicación:
    Costa oriental del Cantábrico
    Cuando la agricultura era parte fundamental de la economía.
     
  5. Hola:

    Puede que me equivoqué pero el día del equinoccio de otoño es cuando empieza el Año Nuevo y, según WKPD, es el CCXXVII (227).

    S2,
    Eiffel.
     
  6. Hola:

    Ya hemos terminado con la serie de los meses. Para llegar a fin de año, se añaden 5 ó 6 días complementarios. Son los «sans-culottides» (epagómenos).

    1. Día de la Virtud
    2. Día del Genio
    3. Día del Trabajo
    4. Día de la Opinión
    5. Día de las Recompensas
    6. Día de la Revolución (sólo en los años bisiestos).

    El término «sans-culottides» viene de «sans-culotte». (ver https://es.wikipedia.org/wiki/Sans_culottes).

    S2,
    Eiffel.