Solving normcdf for sigma
조회 수: 3 (최근 30일)
이전 댓글 표시
Hello
I am trying to solve the following equation for sigma but keep encountering errors: normcdf(1.43,1.415,sigma)-normcdf(1.4,1.415,sigma)=0.02 The code I've entered is: syms sigma solve(normcdf(1.43,1.415,sigma)-normcdf(1.4,1.415,sigma)==0.02)
Any help would be greatly appreciated.
Thanks
댓글 수: 0
답변 (1개)
John D'Errico
2018년 4월 8일
The symbolic toolbox does not understand normcdf very well. But fzero will work just fine.
fun = @(sigma) normcdf(1.43,1.415,sigma)-normcdf(1.4,1.415,sigma)-0.02;
[sigma,fval] = fzero(fun,1)
sigma =
0.59835074767517
fval =
1.73472347597681e-17
As a test:
normcdf(1.43,1.415,sigma)-normcdf(1.4,1.415,sigma)
ans =
0.02
If you really, absolutely needed the utmost accuracy (why???) you could use the transformation for normcdf into erf. But that makes absolutely no sense in this context, since you have only 3 significant digits on your other numbers.
댓글 수: 4
Torsten
2018년 4월 9일
I suggest that you plot the function
fun = @(sigma) normcdf(1.43,1.415,sigma)-normcdf(1.4,1.415,sigma)-0.98;
to see where its zero is approximately located.
Best wishes
Torsten.
참고 항목
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!