[運算] 詢問用matlab求解normcdf裡面的x

看板MATLAB作者 (多多)時間8年前 (2016/12/26 21:13), 編輯推噓1(101)
留言2則, 1人參與, 最新討論串1/1
版上各位大大您們好,最近剛學matlab,遇到了一些問題,想詢問一下,謝謝您們 我的程式碼如下,一直出現錯誤訊息,好像是normcdf那邊出了問題,但看了許久無法解 決,所以想來求助版上各位大神,謝謝您們 clear clc gc=0.0184; gd=0.0184; c=0.0379; d=0.12; w=0.15; r=1; p=0.98; h=2.25; b0=2; rf=0.3; f=@(x) p*exp(gd-r*gc+((r^2)*(c^2)*(1-(w^2))/2))*((1+x)/x)*exp((d^2)-(2*r*w*d*c )+((r^2)*(w^2)*(c^2)))+b0*p*(h*((1+x)/x)*exp(gd+((d^2)/2))-rf)+(1-h)*(((1+x)/x )*exp(gd+((d^2)/2))*normcdf(((-log10(rf)+log10((1+x)/x))+gd+(d^2))/d)-(rf*(nor mcdf(((-log10(rf)+log10((1+x)/x))+gd)/d)))); x=fzero(f,1); -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 110.28.12.27 ※ 文章網址: https://www.ptt.cc/bbs/MATLAB/M.1482758034.A.EAF.html

01/01 03:40, , 1F
跟normcdf沒什麼關係,你這個函數在x>0的時候都是正的
01/01 03:40, 1F

01/01 03:42, , 2F
而x<=0的時候,log10((1+x)/x)就會出現虛數
01/01 03:42, 2F
文章代碼(AID): #1OOHUIwl (MATLAB)
文章代碼(AID): #1OOHUIwl (MATLAB)