Solving a linear system equations with variables on both sides

7 次查看(过去 30 天)
I am trying to solve a linear system of equation in which variables occur on both sides.
Lu = [Lu1; Lu2; Lu3]
A = [1 2 3; 4 5 6; 7 8 9];
B = [U1; U2; U3];
In this system, I know Lu1, U2, and U3 and none of them is zero. Is there a way to solve this system of equations?

回答(3 个)

Walter Roberson
Walter Roberson 2017-11-17
If the system is Lu'*A == B, then that is 9 equations in 3 unknowns. If you proceed to solve one variable at a time, then after you have solved for all three variables you reach the system
[ U2 == U2, U2 == U2, U2 == U2]
[ U2 == U2, U2 == U2, U2 == U2]
[ U2 == U3, U2 == U3, U2 == U3]
so the system can only be solved in the case that U2 == U3
  2 个评论
joe kangas
joe kangas 2020-11-22
this is a system with three unknowns and three equations, not 9. This problem comes up a lot in finite element solutions and as far as I'm aware there's not a straight forward general soltution. I believe they are itterative
Walter Roberson
Walter Roberson 2020-11-23
If the system is Lu'*A == B' then
Lu = sym('Lu', [3 1], 'real');
A = [1 2 3; 4 5 6; 7 8 10]; %note original 7 8 9 is not full rank
B = sym('U', [3,1], 'real');
Lu'*A == B'
ans = 
So that is three equations in six unknowns.
%Lu' == B' * inv(A)
%Lu' == B'/A
%Lu = (B'/A)'
left_LU_solution = (B'/A)'
left_LU_solution = 
On the other hand if the equations were
A*Lu == B
ans = 
Then that would be a system of 9 equations in 6 unknowns:
right_Lu_solultion = A\B
right_Lu_solultion = 

请先登录,再进行评论。


Bruno Luong
Bruno Luong 2020-11-22
See my answer in another thread.

Paul
Paul 2020-11-22
Similar problem discussed here

类别

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

Community Treasure Hunt

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

Start Hunting!

Translated by