Generazione matrici con Matlab
Ciao a tutti!
Sono nuova da queste parti...
Vi pongo il mio problema: secondo voi come si potrebbe, dati dei numeri, costruire una matrice (con Matlab) tale che abbia come autovalori i numeri inseriti?
Grazie!
BM
Sono nuova da queste parti...
Vi pongo il mio problema: secondo voi come si potrebbe, dati dei numeri, costruire una matrice (con Matlab) tale che abbia come autovalori i numeri inseriti?
Grazie!
BM
Risposte
se i numeri sono $x1...xn$, una matrice come quella che ti serve è $"diag"(x1, ..., xn)$. abbastanza banale però funziona.
P.S.: il codice esatto è diag([x0, ..., xn]).
P.S.: il codice esatto è diag([x0, ..., xn]).
Oppure si può considerare il polinomio $(x-x1)(x-x2)...(x-xn)$ e generarne la matrice companion. Viene qualcosa di meno banale però se i numeri sono tanti ho paura che ci saranno problemi di condizionamento.
P.S.: Il comando Matlab per generare la matrice companion è compan(u), dove u è il vettore dei coefficienti del polinomio.
P.S.: Il comando Matlab per generare la matrice companion è compan(u), dove u è il vettore dei coefficienti del polinomio.
Grazie, a questo non avevo pensato!
Ho bisogno di matrici piccole, quindi penso che il condizionamento non sia un problema.
Adesso provo ad automatizzare il procedimento.
Ho bisogno di matrici piccole, quindi penso che il condizionamento non sia un problema.
Adesso provo ad automatizzare il procedimento.
