필터 지우기
필터 지우기

Wrong matrix multiplication answer

조회 수: 5 (최근 30일)
Joao
Joao 2014년 10월 12일
답변: Image Analyst 2014년 10월 12일
Hi,
This multiplication gets a wrong answer:
E=[Eopt(1) 0];
coupler=[sqrt(0.9) 1i*sqrt(0.1);1i*sqrt(0.1) sqrt(0.9)];
Eout=coupler*E(1);
The answer:
Eout =
9.4868 + 0.0000i -0.0000 + 3.1623i
-0.0000 + 3.1623i 9.4868 + 0.0000i
I am multiplying a 2x2 with a 2x1 matrix, so the result should be a 2x1 matrix.
Why is that?
Thanks

채택된 답변

Guillaume
Guillaume 2014년 10월 12일
No, you are multiplying a 2x2 matrix with a scalar, the first element of E.
Did you mean?
Eout = coupler * E;

추가 답변 (1개)

Image Analyst
Image Analyst 2014년 10월 12일
E(1) is a scalar = just a single number. Try this:
Eopt = 3 % Whatever....
E=[Eopt(1) 0]
coupler=[sqrt(0.9) 1i*sqrt(0.1);1i*sqrt(0.1) sqrt(0.9)]
Eout= E * coupler % E is now a matrix and on the left.

카테고리

Help CenterFile Exchange에서 Creating and Concatenating Matrices에 대해 자세히 알아보기

태그

Community Treasure Hunt

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

Start Hunting!

Translated by