Square root of a matrix

7 vues (au cours des 30 derniers jours)
Qian Feng
Qian Feng le 21 Fév 2017
Modifié(e) : Matt J le 21 Fév 2017
I encountered a problem when I try to compute the square root of a positive definite matrix
syms x real
mi = [1; exp(x); exp(2*x); exp(3*x); exp(-x)];
F = vpa(simplify(int(mi*mi',x,-10,0), 'Steps', 100)); Fs = sqrtm(F);
The problem here is Fs should be a symmetric matrix but Fs- Fs' here is not a zero matrix.
I have tried to use symbolic calculation instead of vpa but it seems that it requires a very long time to compute.
Is there any way that Fs can be computed without destroying its symmetric structure ?

Réponse acceptée

Matt J
Matt J le 21 Fév 2017
Modifié(e) : Matt J le 21 Fév 2017
You can post-correct the asymmetry as follows,
Fs=(Fs+Fs.')/2

Plus de réponses (0)

Catégories

En savoir plus sur Symbolic Math Toolbox dans Help Center et File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by