Sintassi Matlab

schwarz89it
buongiorno,
nel programma che sto usando mi trovo con
out{index_mesh,1}(abs(out{index_mesh,1}(:,1))<0.001,3)

dove out è una cell $3\times 2$, il fatto è che non capisco che cosa faccia con esattezza, e perché sia stato posto quel minore, qualcuno me lo può tradurre? Così riesco a continuare. Index_mesh altro non è che un contatore che varia da 1 a 4

Risposte
Raptorista1
La prima cosa che mi viene in mente è che sia un'"equivalenza per floating point". I numeri nel pc possono essere affetti da errore numerico, per cui il codice
x = 1
if x == 1
...

che prima assegna [inline]1[/inline] alla variabile [inline]x[/inline] e poi verifica che [inline]x[/inline] sia effettivamente [inline]1[/inline] potrebbe fallire per colpa dell'errore numerico.
Tuttavia quello che di solito si fa è di verificare non che un numero sia uguale ad un altro ([inline]x == 1[/inline]) ma che la loro distanza sia molto piccola ([inline]|x-1|<0.0...01[/inline]).

Rispondi
Per rispondere a questa discussione devi prima effettuare il login.