[問題] 手算沒負值 Matlab卻會算出負值

看板MATLAB作者 (台南金城武)時間12年前 (2011/11/07 15:43), 編輯推噓1(101)
留言2則, 1人參與, 最新討論串1/1
k=1.38066e-23; q=1.60218e-19; un=1500; up=450; E=11.9*8.854e-14; Na=1e15; Nd=1e18; T=298; s=1e-7; G=1e13; x=0:2e-6:2e-4 ni2=(9.38e19*(T/300)^2.*exp(-6884/T))^2; Pn2=(ni2/Nd*(exp(q*(-5)/(k*T))-1)-G*s)*exp(-x/0.0011)+G*s+ni2/Nd; 問題在x=0時,算出負值,根本不合理啊 x=0時實際上只剩下ni2/Nd*exp(q*(-5)/(k*T))這一項 結果Matlab算出負的 請教各強者要如何做修正才會對 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 122.117.163.182

11/07 17:46, , 1F
我覺得 你要不要先無因次畫一下
11/07 17:46, 1F

11/07 17:47, , 2F
還有正負號可能要看你是不是浮點運算的誤差所致
11/07 17:47, 2F
文章代碼(AID): #1EjumNsl (MATLAB)