Problema con MATLAB
Buongiorno a tutti!
Ho realizzato una funzione MATLAB e ho provato a testarla. Si tratta di una funzione che determina l'inversa di una matrice. Nonostante in molti testi vi sia la sintassi da me utilizzata, il programma mi restituisce un messaggio d'errore.
Riporto l'incipit della function:
L'errore è:
Dovrei quindi dichiarare a priori la matrice $M$ che dovrebbe essere una generica matrice (non necessariamente quadrata in quando dopo ho posto un if di controllo).
Come posso risolvere il problema?
Vi ringrazio in anticipo per le risposte.
Ho realizzato una funzione MATLAB e ho provato a testarla. Si tratta di una funzione che determina l'inversa di una matrice. Nonostante in molti testi vi sia la sintassi da me utilizzata, il programma mi restituisce un messaggio d'errore.
Riporto l'incipit della function:
function I = inversa(M) [r,c]=size(M); [...]
L'errore è:
??? Input argument "M" is undefined. Error in ==> inversa at 5 [r,c]=size(M)
Dovrei quindi dichiarare a priori la matrice $M$ che dovrebbe essere una generica matrice (non necessariamente quadrata in quando dopo ho posto un if di controllo).
Come posso risolvere il problema?
Vi ringrazio in anticipo per le risposte.
Risposte
ma in qualche punto del programma gli dici come è fatta $M$?
No. Fornisco solamente le istruzioni per calcolare l'inversa. D'altra parte ho letto che in MATLAB non è necessario dichiarare una matrice. A questo punto non mi torna quell'informazione!
In ogni caso $M$ deve essere una matrice di ordine qualsiasi immessa dall'utente...
In ogni caso $M$ deve essere una matrice di ordine qualsiasi immessa dall'utente...
ok però per testarla dovrai dargli qualcosa "in pasto"...
in ogni caso questo può fare al caso tuo:
http://www.matrixlab-examples.com/matrix-inversion.html
in ogni caso questo può fare al caso tuo:
http://www.matrixlab-examples.com/matrix-inversion.html
Ti ringrazio per l'utile link!
Sì infatti dovevo dare una matrice, ma non ne ho il modo perché nel momento in cui salvo la funzione, mi compare il messaggio d'errore. Tutto ciò mi sorprende perché in molti libri funzioni simili vengono definite così senza dare informazioni aggiuntive sulla matrice...
Sì infatti dovevo dare una matrice, ma non ne ho il modo perché nel momento in cui salvo la funzione, mi compare il messaggio d'errore. Tutto ciò mi sorprende perché in molti libri funzioni simili vengono definite così senza dare informazioni aggiuntive sulla matrice...
Tutto risolto!
Sbagliavo la procedura: contemporaneamente salvavo e testavo la funzione senza aver prima immesso nella command window la matrice scelta! A quanto ho capito devo:
1. Salvare la funzione;
2. Immettere la matrice input;
3. Richiamare la funzione.
Giusto?
Purtroppo sono ancora alle prime armi!
Grazie per la collaborazione!
Sbagliavo la procedura: contemporaneamente salvavo e testavo la funzione senza aver prima immesso nella command window la matrice scelta! A quanto ho capito devo:
1. Salvare la funzione;
2. Immettere la matrice input;
3. Richiamare la funzione.
Giusto?
Purtroppo sono ancora alle prime armi!
Grazie per la collaborazione!