Azzera filtri
Azzera filtri

Wrong matrix multiplication answer

4 visualizzazioni (ultimi 30 giorni)
Joao
Joao il 12 Ott 2014
Risposto: Image Analyst il 12 Ott 2014
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

Risposta accettata

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

Più risposte (1)

Image Analyst
Image Analyst il 12 Ott 2014
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.

Categorie

Scopri di più su Creating and Concatenating Matrices in Help Center e File Exchange

Tag

Community Treasure Hunt

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

Start Hunting!

Translated by