Opened 16 years ago
Closed 16 years ago
#205 closed enhancement (fixed)
Uso de API Modular del tipo Primary
| Reported by: | mafernandez | Owned by: | mafernandez |
|---|---|---|---|
| Priority: | major | Milestone: | Strategy and Adapter 0.5 |
| Component: | StrategyBSR | Keywords: | |
| Cc: |
Description (last modified by )
Para acelerar la construcción de estructuras internodales ( i.e.
jerarquías) es necesario reescribir la estructura de los adaptadores para
que los ficheros ASCII producidos sean solamente de tipo Primary.
Change History (7)
comment:1 Changed 16 years ago by
| Component: | General → StrategyBSR |
|---|---|
| due_date: | MM/DD/YY → 03/30/10 |
| estimated: | 0 → 8 |
| Milestone: | → Strategy & Adapter 0.5 |
| Owner: | set to mafernandez |
| Status: | new → assigned |
| version: | 0.6 → 0.5 |
comment:2 Changed 16 years ago by
| Component: | StrategyBSR → Estrategia BSR |
|---|---|
| Description: | modified (diff) |
comment:3 Changed 16 years ago by
| due_date: | 03/30/10 → 2010-03-30 |
|---|
comment:4 Changed 16 years ago by
(In [1334]) Cambios en las clases adaptadoras del modelo a BSR. (MMS_0.6)
Se consigue adaptar las jerarquías y priors mediante módulos Primary. Las restricciones a los parámetros se adaptan en cada parámetro y las de las combinaciones en un módulo joint adicional.
Refs #205
Estos cambios cierran el tique en cuanto a la versión 0.6 se refiere.
comment:5 Changed 16 years ago by
| Resolution: | → fixed |
|---|---|
| Status: | assigned → closed |
Los cambios realizados en la versión 0.5 adaptan jeraquías y priors en módulos primary, las restricciones quedan en un módulo joint.
comment:6 Changed 16 years ago by
| Resolution: | fixed |
|---|---|
| Status: | closed → reopened |
Se han separado los prior definidos (sigma != ?) e indefinidos (sigma = ?) a la hora de especificarlos en la API de tipo primary.
Los prior definidos ahora se escriben como un único segmento primary.
comment:7 Changed 16 years ago by
| Resolution: | → fixed |
|---|---|
| Status: | reopened → closed |
![(please configure the [header_logo] section in trac.ini)](/mms/chrome/site/logomms.png)
El último comentario del ticket https://www.tol-project.org/ticket/745
hace referencia a un cambio que se introdujo en el API de un modulo tipo
"primary".
Un modulo "primary" debe responder al siguiente API (se da con un ejemplo)
para ofrecer las ecuaciones de regresión:
Real Get.Equation.Size( Real void ) { VRows( _.Y ) }; VMatrix Get.OutputVMatrix( Real void ) { _.Y }; VMatrix Get.InputVMatrix( Real void ) { Eye( VRows( _.Y ) ) };la información de los omitidos es dada con las funciones siguientes:
La estructura que retorna Get.Missing es la siguiente (tomada de DBApi):
@Bsr.Missing.Info( /* nombre del parámetro missing */ Text Name = missing.name(dte), /* contenedor del missing: "output", "input "*/ Real Owner.Type = _.ownerType, /* nombre del segmento que contiene el parámetro missing */ Text Owner.Name = _.id_node+"::"+_.name, /* en caso de ser tipo "input", indica el indice de columna en la que aparece el missing, este índice es referido a la matriz que se retorna en Get.InputVMatrix*/ Real Owner.Column = ?, /* índice de fila donde aparece el missing */ Real Owner.Row = 1+DateDif(Dating(_.serie),_.firstDate,dte), /* parámetro media del prior normal asociado al parámetro missing */ Real Prior.Average = _.avg, /* parámetro sigma del prior normal asociado al parámetro missing, si sigma es ? o inf se asume prior no informativo */ Real Prior.Sigma = _.stds*_.missing.sigmaFactor, /* intervalo de truncamiento */ Real Prior.LowerBound = _.missing.lowerBound, Real Prior.UpperBound = _.missing.upperBound );El API de un modulo "joint" puede coexistir con la de un "primary", sería
recomendable mantener el API "joint" para poder comparar resultados al
hacer el cambio a "primary". Para que BSR use una u otra basta con
modificar el atributo ModuleType del nodo:
Text Get.ModuleType( Real void ) { "primary" };o
Text Get.ModuleType( Real void ) { "joint" };