Matlab Limitation?

1 次查看(过去 30 天)
Alex
Alex 2012-2-15
编辑: Mathias 2013-10-13
Hey all, I've been performing some calculations with Matlab, and I've been getting unexpected results. I've been trying to calculate reflectance (R) of materials using this Fresnel equation:
R=(((n0-(n-1i.*k))./(n0+(n-1i.*k)))+(((n-1i.*k)-(n2-1i.*k2))./((n-1i.*k)+(n2-1i.*k2))).*(exp(-2.*1i.*(2.*pi./y).*(n-1i.*k).*120))./(1+((n0-(n-1i.*k))./(n0+(n-1i.*k))).*(((n-1i.*k)-(n2-1i.*k2))./((n-1i.*k)+(n2-1i.*k2))).*(exp(-2.*1i.*(2.*pi./y).*(n-1i.*k).*120))))
But all the answers I'm getting aren't what they should be (we're running a test with known values. If you want to give it a try, the values that we're currently using are as follows:
y = 250
n0 = 1
n = 1.61
k = 0
n2 = 1.69
k2 = 3.67
R = .5 (or somewhere around there)
But the answer I get is R = .092.
So, is Matlab incapable of performing such a calculation, or is there something that I can do differently go get this to work? I'd love to hear your thoughts on this one.
Thanks.

采纳的回答

John D'Errico
John D'Errico 2012-2-15
Is it incapable? No. Have you written it out correctly? How can we even guess? What are the odds that as long a line as that, you have made a typo? I will point out that you do NOT get 0.092. You get a complex result.
R = 0.092354 - 0.74233i
My guess is you have a typo.
  3 个评论
Alex
Alex 2012-2-15
After taking the complex conjugate of the answer, we've gotten the proper results. So, the answer and the code were both correct after all, we were just missing the extra step. Thanks for checking it out.
Walter Roberson
Walter Roberson 2012-2-15
complex conjugate, or the magnitude?

请先登录,再进行评论。

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Get Started with MATLAB 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by