Sto eseguendo alcuni lavori di elaborazione dati in MATLAB e il solver usa l'operatore BACKSLASH. A volte, ricevo avvertenze del tipo:Matlab: Come catturare l'avviso
Warning: Rank deficient, rank = 1390, tol = 1.335195e-010.
Warning: Rank deficient, rank = 1386, tol = 1.333217e-010.
Vorrei ricevere quelle avvertenze. Sto cercando di convertire avvertimento per errore e poi prendere come descritto qui sotto titolo “avvertimenti di cattura”: http://undocumentedmatlab.com/blog/trapping-warnings-efficiently Nell'esempio seguente stringa è stato utilizzato per convertire avvertimento all'errore:
s = warning('error', 'MATLAB:DELETE:Permission');
Tuttavia, Non sono sicuro di quale stringa utilizzare per il mio caso. Ho provato a utilizzare
s = warning('error', 'Warning: Rank deficient’);
Ma, non ha funzionato. Qualsiasi aiuto sarebbe apprezzato.
saluti, DK
Grazie. ha funzionato. Ma, potresti per favore spiegare anche come posso estrarre l'identificatore in base all'avviso visualizzato ?? –
Questo è ciò che fa la chiamata 'lastwarn' a due uscite. Puoi usare 'dbstop se warning' se hai problemi ad arrivare a uno stato in cui l'avviso che ti interessa è quello" ultimo ". – Edric
Grazie, ha funzionato perfettamente –