Opened 14 years ago
Closed 14 years ago
#1107 closed doubt (fixed)
Duda sobre la fecha TheEnd
Reported by: | imendez | Owned by: | Víctor de Buen Remiro |
---|---|---|---|
Priority: | normal | Milestone: | |
Component: | TimeAlgebra | Version: | 2.0.1 |
Severity: | major | Keywords: | |
Cc: |
Description
Hola, cuando hago operaciones con series y las restrinjo con SubSer, si supero el año 2500 d.C. la serie resultante no parece tener como fecha fin la que yo le pongo, sino TheEnd:
Serie srVie = EQ(CalVar(WD(5), Mensual)*CalInd(M(7), Mensual), 5); Serie srSab = EQ(CalVar(WD(6), Mensual)*CalInd(M(7), Mensual), 5); Serie srDom = EQ(CalVar(WD(7), Mensual)*CalInd(M(7), Mensual), 5); Serie srAll = SubSer(And(srVie, srSab, srDom), y1600, y2499); Serie srAuto = AutoDating(srAll); Date d1 = Last(srAuto); Serie srAll2 = SubSer(And(srVie, srSab, srDom), y1600, y2500); Serie srAuto2 = AutoDating(srAll2); Date d2 = Last(srAuto2);
Se puede ver que la fecha fin de srAuto (d1) es y2495m07d01, mientras que la de srAuto2 (d2) es TheEnd.
Si se tabula srAuto2, llega hasta la última fecha anterior a la fecha fin por defecto (DefLast) que cumpla las condiciones señaladas. Sin embargo, si se tabulan de forma conjunto srAuto y srAuto2, ambas llegan hasta la misma fecha, y2495m07d01.
¿A qué se debe?
Un saludo.
Change History (2)
comment:1 Changed 14 years ago by
comment:2 Changed 14 years ago by
Resolution: | → fixed |
---|---|
Status: | new → closed |
Simplemente hay un límite porque algún límite hay que poner. Algunas operaciones pueden dar lugar a ciclos infinitos por lo que hay que cortar por algún sitio.
¿Tienes pensado algún proyecto que dé previsiones a 500 años?
Si es así podemos extenderlo al año 3000 o al 9999.
De ahí no podemos pasar porque eso es incompatible con el formato de fechas y sería muy lento permitir formato de año libre.
Yo me temo que dentro de 500 años no habrá aquí nadie para comprobar si falla TOL. En cualquier caso en 5 siglos nos da tiempo a aumentarlo.