Solve matrix equations using loop

2 次查看(过去 30 天)
Hello everyone!
I have a matrix A(3x3)
A= (2 10 15
3 5 -7
3 -2 -2 )
And Matrx B (3x1)
B = (B1
B2
B3)
Matrix C (3x1), where all values are equal to each other
C= (C1
C1
C1)
So, I need using loop, solve the equations and find the values of C1, B2 and B3. B1 is known for me, and has 125 elements. For each B1, I have to find C1, B2 and B3 respectively
Solve the equation A*B=C
Thank you in advance!

回答(1 个)

Chunru
Chunru 2022-10-8
The equations you have:
You want to solve it for , and . You need to rearrage the equations:
Now you solve this new system of equations with unknowns as :
A = [ 2 10 15
3 5 -7
3 -2 -2 ];
Anew = [-ones(3, 1) A(:, 2:3)];
AnewInv = inv(Anew);
b1 = rand(5,1); % rand(125,1) or your data
for i=1:length(b1)
bnew = -b1(i)*A(:, 1);
res = AnewInv*bnew %[c1; n2; b3]
end
res = 3×1
0.9814 0.0096 0.0134
res = 3×1
1.8311 0.0178 0.0250
res = 3×1
0.9554 0.0093 0.0130
res = 3×1
1.8897 0.0184 0.0258
res = 3×1
0.4087 0.0040 0.0056

类别

Help CenterFile Exchange 中查找有关 Programming 的更多信息

产品


版本

R2022b

Community Treasure Hunt

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

Start Hunting!

Translated by