Version 3 (modified by 15 years ago) (diff) | ,
---|
Actualización a MMS_0.6
Transformaciones
El uso de las transformaciones (@MMS.Transformation
) de MMS_0.5 en los proyectos ha sido muy variopinto
dada la flexibilidad que ofrecían a los usuarios. Sin embargo, su diseño original
no estaba pensado para ello y esto conlleva algunas dificultades sobre todo
de cara a la persistencia. En MMS_0.6 las transformaciones se modifican y asumen un
papel más definido y estricto, destinado a las transformaciones invertibles propias
de la linealización de los modelos.
A continuación describimos cómo ha de modificarse la programación para conseguir los mismos resultados:
Transformación del Output
La transformación del output no suele presentar la flexibilidad en las transformaciones que comentábamos y se limita a la familia de transformaciones BoxCox. Éstas están implementadas en MMS_0.6.
Código en MMS_0.5
@MMS.Transformation _.transformation = BoxCox(0,0);
Código en MMS_0.6 Construcción de la transformación:
// Modo 1 @MMS.Transformation _.transformation.1 = @MMS.Transformation.BoxCox::Default(0,0); // Modo 2 @MMS.Transformation _.transformation.2 = @MMS.Transformation::Family("BoxCox", [[0,0]]); // Nombre de la transformación Text _.transformation.2::GetName(?); //> "BoxCox_0.0"
Alternativa en los argumentos de una MVariable:
// Modo 1 ó 2 NameBlock [_.output|_.input] = [[ ... @MMS.Transformation _.transformation = ... ... ]] // Modo 3 (por nombre) NameBlock [_.output|_.input] = [[ ... Text _.transformationLabel = "BoxCox_0.0"; ... ]]