ddefalco
Questo è un forum di discussione e non un sistema di messaggistica, in particolare con me.
Ciò vuol dire che ognuno che vi partecipa contribuisce alla discussione di un argomento (topic) cercando di risolvere i problemi che si pongono, con un intervento (post) che viene messo a disposizione di tutti: va pertanto inteso come un dibattito tra tutti nel quale gli interventi (e non le persone), hanno lo stesso peso.
Certamente non è una comunicazione ‘peer to peer’ con me (per fare questo esiste il ricevimento in stanza, l’email, la chat…) né tantomeno dev’essere un’esibizione del proprio sapere o non sapere (esame).

Pertanto bandiamo frasi del tipo “Ci scusiamo per eventuali errori”, “accettiamo consigli per eventuali correzioni”, peggio ancora “domanda per il professore”, …, e pensiamo sempre al “sodo”.
Concediamo alla forma, tutt’al più qualche volta, un saluto.
Domenico de Falco.

ddefalco

ING - IND 13 : DDEFALCO's Forum
 
IndiceCalendarioFAQCercaLista UtentiGruppiRegistratiAccedi

Condividi | 
 

 Matrice B=A*A' quadrata simmetrica e semidefinita positiva-MATLAB

Andare in basso 
AutoreMessaggio
nicoga14



Numero di messaggi : 4
Corso di appartenenza : Dinamica e Controllo dei Sistemi Meccanici
NomeCognome : Nicola Gagliardo
Data d'iscrizione : 18.10.15

MessaggioTitolo: Matrice B=A*A' quadrata simmetrica e semidefinita positiva-MATLAB   Mer Gen 20, 2016 11:11 am

Salve ragazzi vi posto il listato matlab in cui ho verificato tramite dei cicli "if else" che una matrice B=A*At , con A una matrice random generica ad es. 7x10, è quadrata simmetrica e semidefinita positiva. Lanciandolo in matlab non ha dato errori, se trovate qualche incongruenza fatemi sapere Very Happy
Torna in alto Andare in basso
Visualizza il profilo
nicoga14



Numero di messaggi : 4
Corso di appartenenza : Dinamica e Controllo dei Sistemi Meccanici
NomeCognome : Nicola Gagliardo
Data d'iscrizione : 18.10.15

MessaggioTitolo: Re: Matrice B=A*A' quadrata simmetrica e semidefinita positiva-MATLAB   Mer Gen 20, 2016 11:11 am

load('matrice_random7x10.mat')
A %matrice A 7x10
disp('verificare che una matrice B=A*At sia quadrata sym e semidefinita positiva')
At=A'; %trasposta della matrice A
B=A*At
pause;
disp(' si calcolano le dimensioni della matrice B verificando se è quadrata')
size(B)%si verifica che B è quadrata (7x7)
disp(' si crea un ciclo if per vedere se B è quadrata')
pause;
if size(B)==[7,7]
matriceB='quadrata'
else matriceB='non quadrata'
end;
Bt=B';
Bo=B-Bt %se una matrice è sym allora B=Bt quandi calcolo B-Bt e verifico che sia una matrice con tutti zero
pause;
O=zeros(m) %si genera una matrice 7x7 di tutti zeri
disp(' si crea un ciclo if per vedere se Bo è uguale a O, se è vero B è sym')
pause;
if Bo==O
matriceB='simmetrica'
else matriceB='non simmetrica'
end;
pause;
disp('verifico che B è semidefinita positiva')
y=rand(7,1)%si genera un vettore 7x1
yt=y';
ytBy=yt*B*y %una matrice B è semidefinita positiva se il prodotto indicato con ytBy è >=0)
a=ytBy
disp(' si crea un ciclo if per vedere se B è semidefinita positiva')
pause;
if a>=0
matriceB='semidefinita positiva'
else matriceB='non semidefinita positiva'
end;
disp('-----Fine----')
Torna in alto Andare in basso
Visualizza il profilo
bestlin



Numero di messaggi : 16
Corso di appartenenza : Meccanica Applicata alle Macchine
NomeCognome : nicola angelino
Data d'iscrizione : 24.05.12

MessaggioTitolo: Re: Matrice B=A*A' quadrata simmetrica e semidefinita positiva-MATLAB   Ven Mar 11, 2016 9:14 am

ho ricontrollato il tutto e fatto girare in matlab, va tutta alla perfezione!
inoltre risulta essere un ottimo esempio per chi è alle prime armi con i cicli "if else"
Torna in alto Andare in basso
Visualizza il profilo
Contenuto sponsorizzato




MessaggioTitolo: Re: Matrice B=A*A' quadrata simmetrica e semidefinita positiva-MATLAB   

Torna in alto Andare in basso
 
Matrice B=A*A' quadrata simmetrica e semidefinita positiva-MATLAB
Torna in alto 
Pagina 1 di 1

Permessi di questa sezione del forum:Non puoi rispondere agli argomenti in questo forum
ddefalco :: CORSI :: Dinamica e Controllo di Sistemi Meccanici-
Vai verso: