Stopping the automation of a 10 x 1 into a 10x10 matrix in Matlab.
4 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
Shrishti Yadav
le 20 Nov 2021
Modifié(e) : Star Strider
le 20 Nov 2021
S1 is a 10 x 1 double. and S is 1 x 2 double. I am doing some calculations with those numbers and in the end for my theta I should just get distinct 10 x 1 double array too. But for some reason I am getting 10 x 10 for theta. I don't understand why or how to fix it.
% Calculating the distance from original source location for all locations with error.
sx = S1(:,1) - S(1);
sy = S1(:,2) - S(2);
l = sqrt((sx).^2+ (sy).^2); %distance between original source location and error source locations.
zz = sqrt((S1(:,1)).^2+ (S1(:,2)).^2); % distance of error source locations from origin.
ss = sqrt((S(1)).^2+ (S(2)).^2); %distance of the source from origin.
% Calculating the resolution for a traingle with lengths l, zz, ss
n = (zz.^2 + ss.^2 - l.^2);
d = (2 .* zz .* ss);
theta = acos(n/d);
0 commentaires
Réponse acceptée
Star Strider
le 20 Nov 2021
Modifié(e) : Star Strider
le 20 Nov 2021
Use element-wise dividion (./) iunstead of (/) in the acos call —
theta = acos(n./d)
.
0 commentaires
Plus de réponses (0)
Voir également
Catégories
En savoir plus sur Matrices and Arrays 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!