Code for simulating multiple matrices
1 次查看(过去 30 天)
显示 更早的评论
T = ones(5);
D = 0.9;
Deg = D*eye(5);
Mn = zeros(5);
N = [0 0 0 0 0;0 0 0.2 0 0;0 0.2 0 0.2 0;0 0 0.2 0 0;0 0 0 0 0];
M1 = (T - (Deg * (T-Mn) - (N*Mn)));
M2 = (T - (Deg * (T-M1) - (N*M1)));
Hello all,
Above are the 5x5 variables and rule im trying to simulate. Im relatively new to MatLab, and im wondering if theres any simple way of replacing the likes of M1 and M2, to give me all the ranges of simulated answers (Mn), to whatever range I want?
Thanks!
0 个评论
采纳的回答
Sriram Tadavarty
2020-3-16
Hi Caillin,
To get the output for all the ranges of simulated answers from M1 to Mn, you can use a for loop.
n = 5;
T = ones(n);
D = 0.9;
Deg = D*eye(n);
Mn = zeros(n);
N = randn(n); %[0 0 0 0 0;0 0 0.2 0 0;0 0.2 0 0.2 0;0 0 0.2 0 0;0 0 0 0 0];
for i = 1:n
M(:,:,i) = (T - (Deg * (T-Mn) - (N*Mn)));
Mn = M(:,:,i);
end
% All the values of M1...Mn is in the matrix M
disp(M);
Hope this helps.
Regards,
Sriram
2 个评论
Sriram Tadavarty
2020-3-17
Hi Caillin,
The for syntax is not used properly. What do you want to do here? Inorder to make all the values of Mn higher than 1 to the value of 1, you can perform Mn(Mn>1) = 1; rather than using the for loop.
更多回答(0 个)
另请参阅
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!