Re: [問題] 透射率-波長的圖形跑不出來已回收
※ 引述《asatsay (小中)》之銘言:
: 小弟有寫一程式
: 但圖形就是沒出現
: 且X軸明明設400~700,run出的座標卻是699~701
: 想請各位大大幫忙指正,謝謝@@
: 以下是程式碼
: ns=1.52
: no=1
: nh=2.3
: nl=1.46
: ns2=nh^2/ns
: lambda0=480
: for lambda=400:700
: delta=(2*pi*0.25*lambda0)./lambda
: H=[cos(delta) i*sin(delta)./nh; i*nh*sin(delta) cos(delta)]
: L=[cos(delta) i*sin(delta)./nl; i*nl*sin(delta) cos(delta)]
: M=H*L
: Mt=M.^7
: F=[1;ns]
: N=Mt*H*F
: B=N(1)
: C=N(2)
: T=(4*ns2*100)./((B+C)*conj(B+C))
: plot(lambda, T)
: end
: xlabel ('λ(nm)')
: ylabel ('T')
: 感恩~~
是這樣修改嗎?因為圖形有點怪怪的XD
以下是改過的程式碼,請各位大大過目,謝謝@@
ns=1.52
no=1
nh=2.3
nl=1.46
ns2=nh^2/ns
lambda0=480
lambda1=400:700
for lambda=400:700
x=1:301
delta=(2*pi*0.25*lambda0)./lambda
H=[cos(delta) i*sin(delta)./nh; i*nh*sin(delta) cos(delta)]
L=[cos(delta) i*sin(delta)./nl; i*nl*sin(delta) cos(delta)]
M=H*L
Mt=M.^7
F=[1;ns]
N=Mt*H*F
B=N(1)
C=N(2)
T(lambda-399)=(4*ns2*100)./((B+C)*conj(B+C))
end
plot(lambda1, T(x))
xlabel ('λ(nm)')
ylabel ('T')
謝謝!!
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.120.135.133
→
12/22 12:43, , 1F
12/22 12:43, 1F
推
12/22 14:36, , 2F
12/22 14:36, 2F
討論串 (同標題文章)
本文引述了以下文章的的內容:
完整討論串 (本文為第 2 之 2 篇):