How to create a counter to store multiple solutions
6 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
Hi there,
Im trying to create a counter for my QW results. At the moment it's only storing the last 2 values. I would like to create an array with 208 rows and 1 column to store all the results. Could someone please assist.
![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/1112790/image.png)
0 Kommentare
Antworten (1)
Karim
am 31 Aug. 2022
Bearbeitet: Karim
am 1 Sep. 2022
Since you have a double loop, the easiest method will be to add a variable e.g. counter. Initialize it to zero, and then add 1 to it just before you want to save some data. You can then use that counter as an index.
% initalize output variables (104 rows 2 column)
Mij_out = zeros( 104, 2);
QW_out = zeros( 104, 2);
A = [0 0.25];
B = [0 3.25];
P = -94.2194;
xi = 0.5:0.5:4;
yi = -1:0.5:5;
% initialize the counter
counter = 0;
for i = 1:8
for j = 1:13
Mij = [xi(i) yi(j)];
UMA = A-Mij;
UMB = B-Mij;
Mag_UMA = sqrt(sum(UMA.^2,2));
Mag_UMB = sqrt(sum(UMB.^2,2));
FAM = UMA ./ Mag_UMA;
FBM = UMB ./ Mag_UMB;
G = [FAM' FBM'];
k = [0;-P];
if rank(G) == rank([G k])
% solve for M2
QW = G\k;
end
% add to the counter
counter = counter + 1;
% save the data
Mij_out( counter,:) = Mij;
QW_out( counter,:) = abs(QW);
end
end
Mij_out
QW_out
3 Kommentare
Karim
am 1 Sep. 2022
I updated the answer, and included the code from your picture. The code runs without error
Siehe auch
Kategorien
Mehr zu Loops and Conditional Statements finden Sie in Help Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!