changeset 2626:1c3458564078 octave-forge

Matrix support.
author sis-sou
date Sun, 08 Oct 2006 18:03:09 +0000
parents 25c9f1f8a139
children d0c7ab30eb58
files main/specfun/inst/zeta.m
diffstat 1 files changed, 9 insertions(+), 6 deletions(-) [+]
line wrap: on
line diff
--- a/main/specfun/inst/zeta.m	Sun Oct 08 09:24:19 2006 +0000
+++ b/main/specfun/inst/zeta.m	Sun Oct 08 18:03:09 2006 +0000
@@ -21,16 +21,19 @@
 	if (nargin != 1)
 			usage ("zeta(x)");
 	endif
-	s = columns(t);
-	for j = 1:s
-		if(real(t(j)) > 0)
+	z = zeros(size(t));
+	for j = 1:prod(size(t))
+		if(real(t(j)) >= 0)
 			if(imag(t(j)) == 0 && real(t(j)) > 1)
 				F= @(x) 1./(gamma(t(j))).*x.^(t(j)-1)./(exp(x)-1);
 				z(j) = quad(F,0,Inf);
+			elseif(t(j) == 0)
+				z(j) = -0.5;
+			elseif(t(j) == 1)
+				z(j) = Inf;
 			else
-				z(j) = 0;
 				for k = 1:100
-					z(j) = z(j) + (-1).^(k-1)./(k.^t(j));
+					z(j) += (-1).^(k-1)./(k.^t(j));
 				endfor
 				z(j) = 1./(1-2.^(1-t(j))).*z(j);
 			endif
@@ -38,4 +41,4 @@
 			z(j) = 2.^t(j).*pi.^(t(j)-1).*sin(pi.*t(j)./2).*gamma(1-t(j)).*zeta(1-t(j));
 		endif
 	endfor
-endfunction
\ No newline at end of file
+endfunction;
\ No newline at end of file