Mercurial > forge
changeset 2506:af4a61237e05 octave-forge
Value in zero
author | sis-sou |
---|---|
date | Wed, 20 Sep 2006 16:36:11 +0000 |
parents | 4367971980b9 |
children | 47329999217e |
files | main/specfun/inst/Si.m |
diffstat | 1 files changed, 14 insertions(+), 10 deletions(-) [+] |
line wrap: on
line diff
--- a/main/specfun/inst/Si.m Wed Sep 20 16:30:28 2006 +0000 +++ b/main/specfun/inst/Si.m Wed Sep 20 16:36:11 2006 +0000 @@ -29,17 +29,21 @@ endif s = size(x)(2); for t = 1:s - if(imag(x(t)) == 0) - F = @(x) sin(x)./x; - y(t) = quad(F,0,x(t)); + if( x == 0) + y = 0; else - y(t) = 0; - for k = 0:100 - y(t) = y(t) + (besselj(k + 0.5,x(t)./2)).^2; - endfor - y(t) = y(t).*pi; - if(real(x(t))==0) - y(t)=i.*imag(y(t)); + if(imag(x(t)) == 0) + F = @(x) sin(x)./x; + y(t) = quad(F,0,x(t)); + else + y(t) = 0; + for k = 0:100 + y(t) = y(t) + (besselj(k + 0.5,x(t)./2)).^2; + endfor + y(t) = y(t).*pi; + if(real(x(t))==0) + y(t)=i.*imag(y(t)); + endif endif endif endfor