Matrix construction over a loop
1 view (last 30 days)
Show older comments
x=[1:1:10];
a=2;
b=4;
c=6;
for i=1:length(x)
A=a*b/x(i);
B=c+A(i)/b;
D=a+b;
E=1-2*c;
MAT=[B(i);D;E];
M=sqrt([MAT])
end
I am not able to matrix corresponding to 10 values of x.
plz help
thanks
1 Comment
David Fletcher
on 11 Apr 2021
This line will create a scaler value for A
A=a*b/x(i);
On the following line you are trying to index a scaler value
B=c+A(i)/b;
Accepted Answer
VBBV
on 11 Apr 2021
clear
x=[1:1:10];
a=2;
b=4;
c=6;
for i=1:length(x)
A(i)=a*b/x(i);
B(i)=c+A(i)/b;
D=a+b;
E=1-2*c;
MAT(i,:)=[B(i);D;E];
end
M=sqrt(abs(MAT))
2 Comments
VBBV
on 11 Apr 2021
In my solution, the Matrix MAT is not 3 x 1. It is 10 x 3 for which sqrt is possible and same as what you would get if you perform MAT.^(1/2) element wise operation.
More Answers (1)
Jan
on 11 Apr 2021
Maybe you want:
for i = 1:length(x)
A(i) = a * b / x(i);
B(i) = c + A(i) / b;
D(i) = a + b;
E(i) = 1 - 2 * c;
...
0 Comments
See Also
Categories
Find more on Loops and Conditional Statements 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!