Opened 10 years ago
Closed 9 years ago
#1919 closed enhancement (fixed)
Agilizar la función SetSumC
| Reported by: | Pedro Gea | Owned by: | Pedro Gea |
|---|---|---|---|
| Priority: | normal | Milestone: | Mantainance |
| Component: | Kernel | Version: | |
| Severity: | normal | Keywords: | |
| Cc: |
Description
Se necesita aumentar la eficiencia de SetSumC del paquete StdLib en la medida de lo posible.
Change History (4)
comment:1 Changed 10 years ago by
comment:2 Changed 10 years ago by
comment:3 Changed 10 years ago by
comment:4 Changed 9 years ago by
| Resolution: | → fixed |
|---|---|
| Status: | new → closed |
Note: See
TracTickets for help on using
tickets.

SetSumCsuma las series en el mayor intervalo posible, suponiendo ceros en las series que no están definidas en él.La función es especialmente costosa en la concatenación de series, por eso, se intenta evitar en la medida de lo posible.
Se sugiere una posible alternativa:
Serie SetSumC(Set s) { Date begin = Group("Min", EvalSet(s, First)); Date end = Group("Max", EvalSet(s, Last)); Serie w = SubSer(CalInd(W, Dating(s[1])), begin, end); Serie SetSum(EvalSet(s, Serie (Serie ss) { Date b = First(ss); Date e = Last(ss); If(b==begin, If(e==end, ss, ss>>w), If(e==end, w<<ss, w<<ss>>w)) //w<<ss>>w })) };Necesitaría comprobar que el conjunto de series no es vacío y quizá que todas las series están en el mismo fechado.