| 191 | | salteado de entre las celdas de la matriz de input o de output). Por este motivo no resulta |
| 192 | | ni mucho menos trivial condicionar de una forma genérica y eficiente. |
| 193 | | Posiblemente sea necesaria una función C++ a la que se le pase el miembro a modificar, los nuevos |
| 194 | | valores y una serie de argumentos opcionales para especificar modificaciones parciales, para |
| 195 | | que la acción se ejecute con la celeridad debida. |
| 196 | | {{{ |
| 197 | | #!java |
| 198 | | Real ChangeValues({Real|Matrix|VMatrix} store, {Real|Matrix|VMatrix} newValues [, Set optArgs=Empty] ) |
| 199 | | }}} |
| 200 | | La función {{{ChangeValues}}} será llamada desde el master para establecer, total o parcialmente según |
| 201 | | se indique en los argumentos opcionales {{{optArgs}}}, el nuevo valor o vector de valores {{{newValues}}} |
| 202 | | de cierto miembro de un bloque que será el dado por el argumento {{{store}}}. |
| 203 | | En la definición del master, el protocolo tendría la forma de una tabla con la estructura básica de |
| 204 | | condicionamiento, que en cada fila incluiría la información de condicionamiento de una variable o |
| 205 | | grupo de variables: [[BR]] |
| 206 | | {{{ |
| 207 | | Real cnr_blk : Índice del bloque condicionador |
| 208 | | Set cnr_idx : Índices de los parámetros del grupo dentro del bloque condicionador |
| 209 | | Real cnd_blk : Índice del bloque condicionado |
| 210 | | Text cnd_mbr : Nombre del miembro del bloque condicionado que se ha de modificar con {{{ChangeValues}}} |
| 211 | | Set cnd_opt : Argumentos opcionales para pasar como {{{optArgs}}} a {{{ChangeValues}}} |
| 212 | | }}} |
| 213 | | Cada vez que se genera una muestra del i-ésimo bloque hay que modificar los valores correspondientes |
| 214 | | a los enlaces para los que {{{cnr_blk = i}}}. Primero habría que copiar el sub-vector del bloque recién |
| 215 | | generado en la posición correspondiente dentro del vector conjunto, que será el que se almacene en |
| 216 | | el disco como cadena MCMC. Luego habría que llevar a cabo el condicionamiento de cada uno de los bloques |
| 217 | | afectados llamando a {{{ChangeValues}}}. |
| | 191 | salteado de entre las celdas de la matriz de input o de output). Además, los valores con los |
| | 192 | que hay que sustituir los valores a condicionar no tienen porqué ser directamente los valores |
| | 193 | condicionadores, sino que en general serán el resultado de una función dependiente de los mismos. |
| | 194 | Por estos motivos no resulta ni mucho menos trivial condicionar de una forma genérica y eficiente. |
| | 195 | También habría que copiar el sub-vector del bloque recién generado en la posición correspondiente |
| | 196 | dentro del vector conjunto ubicado en el master, que será el que se almacene en el disco como cadena |
| | 197 | MCMC. |