Podemos crear un monitor en tiempo real de una variable de la siguiente manera:.Creación de monitores en tiempo real robustos para las variables
[email protected]@Row[{"x = ", Dynamic[x]}]
(Esto es más interesante y útil si x
pasa a ser algo así como $Assumptions
es tan fácil de establecer un valor y luego olvidarse de él.)
Desafortunadamente, esto deja de funcionar si se reinicia el kernel (Quit[]
, luego se evalúa algo). La paleta ya no mostrará cambios en el valor x
.
¿Hay alguna manera de hacer esto para que siga funcionando incluso en las sesiones del kernel? Me encuentro reiniciando el kernel con bastante frecuencia. (Si la paleta resultante hace que el núcleo se inicia automáticamente después de Quit
que está bien.)
Actualización: Como se mencionó en los comentarios, resulta que la paleta deja de trabajar sólo si dejamos evaluando Quit[]
. Al usar Evaluation -> Quit Kernel -> Local
, seguirá funcionando.
El tutorial de Mma sobre [Almacenar y rastrear estados de paleta] (http://reference.wolfram.com/mathematica/tutorial/StoringAndTrackingPaletteStates.html) describe algunos métodos que deberían ser útiles. – kglr
@kguler Lo he visto anteriormente, pero si no recuerdo mal, solo se trata de almacenar el estado entre sesiones (por ejemplo, 'DynamicModule'). Esto no es lo que necesito. Tenga en cuenta que el código del programa (no el estado) permanece igual entre sesiones, y la variable que monitoreo está codificada. Sin embargo, después de reiniciar el núcleo, deja de funcionar, ya sea porque no se actualiza dinámicamente o porque el '' $ CellContext' '' before 'x' en la paleta causa problemas (solo una suposición, no pude verificar o corregir esto)) – Szabolcs
Tenga en cuenta que, si sale del kernel del menú desplegable, Evauation-> Quit kernel -> Local, su paleta seguirá funcionando después de iniciar una nueva sesión. –