¿Es posible ver la versión completa de Message
que se truncó? IE, veo algo similar a 0.105309,0.394682,<<20>>,<<20>>,<<20>>,0.394631
en la ventana Messages
. Supongo que <<20>>
representa partes omitidas, ¿cómo puedo obtener todo?Ver mensajes truncados en Mathematica
La función llamada es FindMaximum en un problema con 50 variables.
Actualización: respuesta de Simon parece funcionar para mensajes generales, también me encontré con un enfoque que es específico para capturar el mensaje FindMaximum "no es un número real".
Para obtener el punto que causa FindMaximum a fallar con el mensaje "no es un número real" que puede hacer lo siguiente (Message
redefinición es el único enfoque que pude encontrar, porque el punto no sea traspasada a EvaluationMonitor
o StepMonitor
)
Unprotect[Message];
Message[FindMaximum::"nrnum", args___] := (captured = {args};
Print["Captured FindMaximum::nrnum at ", First[{args}]]);
{badvals, badvars, badobj} = ReleaseHold[captured];
No creo que guarde los mensajes que están desactivados (al menos no los que usan el mecanismo 'Off []'). Ver mis comentarios a continuación. – Simon
@Simon La función no documentada '' Internal'HandlerBlock'' permite capturar mensajes que están desactivados. Ver mi respuesta a continuación. –