Azzera filtri
Azzera filtri

2x2 matrix calculation

27 visualizzazioni (ultimi 30 giorni)
dhlee
dhlee il 21 Giu 2022
Commentato: dhlee il 21 Giu 2022
Dear all,
I want to solve the 2x2 matrix problem.
There are three 2x2 matrix (Ta, Tb, Tc). Two matrix are known and one matrix is unknown value.
For example Ta = [3 4 ; 4 3], Tb=[1 2 ; 2 1], Tc=[x y ; y x].
Can I solve the Tc, when I have equation with Ta=Tc * Tb * Tc.
Thank you~!

Risposta accettata

Sam Chak
Sam Chak il 21 Giu 2022
Maybe you can solve the problem like this?
syms x y
Ta = sym('Ta', [2 2]);
Tb = sym('Tb', [2 2]);
Tc = sym('Tc', [2 2]);
Ta = [sym('3') sym('4'); sym('4') sym('3')]
Ta = 
Tb = [sym('1') sym('2'); sym('2') sym('1')]
Tb = 
Tc = [x y; y x]
Tc = 
Meqn = Ta - Tc*Tb*Tc
Meqn = 
eqns = [Meqn(1, 1) == 0, Meqn(1, 2) == 0];
[xsol, ysol] = solve(eqns)
xsol = 
ysol = 
x = double(xsol)
x = 4×1
-0.2638 -1.2638 1.2638 0.2638
y = double(ysol)
y = 4×1
-1.2638 -0.2638 0.2638 1.2638
% Check if correct
TB = [1 2; 2 1];
TC = [x(3) y(3); y(3) x(3)];
TA = TC*TB*TC
TA = 2×2
3 4 4 3
  1 Commento
dhlee
dhlee il 21 Giu 2022
Thank you for your quick solution~! ^^
I installed symbolic math toolbox for using the syms.

Accedi per commentare.

Più risposte (0)

Tag

Community Treasure Hunt

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

Start Hunting!

Translated by