В чем разница между двумя способами ввода Matlab Complex Matrices
Вот два способа ввода команды в Matlab. Я не думаю, что есть какая-то разница между ними. Однако результат действительно другой. Поэтому мне интересно, что я пропустил в этой ситуации.
Вот первый вход:
>> A = [(-0.025+0.01i) -0.025;
3 (1-2i)];
>> B = [(5.7955+1.5529i) 0]';
>> I=inv(A)*B
Вывод выглядит так:
I =
1.0e+02 *
-0.7063 - 1.2723i
-1.1030 + 1.6109i
Вот второй вход:
>> A = [(-0.025+0.01i) -0.025;3 (1-2i)];
>> B = [(5.7955+1.5529i);0];
>> I=inv(A)*B
И Matlab дает мне результат ниже:
I =
2.44764705882354 - 145.499411764706i
-176.067882352941 + 84.3624705882353i
Я действительно запутался в этой ситуации. Если вы знаете что-нибудь, пожалуйста, дайте мне знать об этом. Благодарю.
1 ответ
Решение
Использование B = [(5.7955+1.5529i) 0].'
который на самом деле поэлементно транспонировать, а не B = [(5.7955+1.5529i) 0]'
который является сопряженным транспонировать.
Можно также использовать явный вызов для транспонирования команды - B = transpose([(5.7955+1.5529i) 0])