How to create positive semidefinite matrix from random value ?
11 views (last 30 days)
Show older comments
Waqar Ahmed
on 8 Jan 2021
Answered: Walter Roberson
on 8 Jan 2021
I form a matrix A in matlab as
A=rand(50);
I want to know how to make symmetric matrix using equation
A=0.5 *(A+A');
but how can I make it positive semidefinite matrix?
0 Comments
Accepted Answer
Walter Roberson
on 8 Jan 2021
A = rand(50);
A = 0.5 *(A+A');
issymmetric(A)
d = eig(A)
all(imag(d) == 0 & d >= 0)
APos = A'*A;
issymmetric(APos)
d = eig(APos)
all(imag(d) == 0 & d >= 0)
0 Comments
More Answers (0)
See Also
Categories
Find more on Resizing and Reshaping Matrices in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!