20.1 Equations and Evaluation
235
To optimize the convergency we use for (s) < 0
ζ(s) = 2
s π
s−1 sin
πs
2
Γ (1 − s)ζ(1 − s) ∀ s ∈ C\{0, 1} ,
(20.4)
and restrict the evaluation via series approximation to positive real parts of the
argument s.
20.1.2 Evaluation
The evaluation of the Riemann zeta function via riemzeta is based on the series
approximation (20.3b) with syntax [obj, zetaval] = riemzeta(s, n).
The input argument “s” is the function argument ζ(s), an arbitrary complex array.
“n” (optional, given by γ n (s)) is the upper integer value of the first series in
Eq. (20.3b) and either a scalar value or of the same size as “s”. Output arguments
are the object “obj” with properties “zeta” (function value), “s” (function argument),
“nek” (summation limit of the first sum), and “info” with some general information.
In case of the summation “info” comes with a value for the accuracy based on γ n (s).
This value should be as small as possible (< 10 −9 ). The output argument “zetaval”
equals obj.zeta.
The zeros of ζ(
1
2 + i · t) can be estimated with the SPECFUNPHYS class
riemzetaroot with syntax [obj, tzero] = riemzetaroot(t0, t1,
dt). The zeros within the interval [t0, t1] will be searched. Thus the input
arguments “t0”, “t1” are real scalar values. For the search process the interval will be
split into subintervals of length dt. The optional input argument “dt” is a real scalar
value with default value 0.5. Output arguments are the object “obj” with properties
“t” (s =
1
2 + i · t), “fval”, the corresponding value of the ζ -function and “info” with
some general information, and in addition “tzero” the t-values (equal obj.t).
riemzetaroot comes in addition with the method
[iszetazero, obj] = zerotest(obj,n,dt,nofig)
to test if “obj.t” corresponds to a root of ζ(
1
2 + i · t). The evaluation of riemzetaroot is based on the MATLAB-functions fminbnd and fzero. Thus in an
unlikely case it could be that only a close to zero value will be returned. Therefore
zerotest evaluates the surrounding of obj.t and checks for changes in sign of
the real and imaginary function value. The input arguments are the object “obj”,
the optional integer vector “n” with the row numbers of obj.t to check (default
is all), “dt” (optional) the step size for evaluating the ζ -function with default value
0.1 and “nofig” (optional) if a figure shall be plotted (default) or not (“y”). The
output argument “iszetazero” is a cell variable with the corresponding information
and “obj” the object of the class riemzetaroot.
235
To optimize the convergency we use for (s) < 0
ζ(s) = 2
s π
s−1 sin
πs
2
Γ (1 − s)ζ(1 − s) ∀ s ∈ C\{0, 1} ,
(20.4)
and restrict the evaluation via series approximation to positive real parts of the
argument s.
20.1.2 Evaluation
The evaluation of the Riemann zeta function via riemzeta is based on the series
approximation (20.3b) with syntax [obj, zetaval] = riemzeta(s, n).
The input argument “s” is the function argument ζ(s), an arbitrary complex array.
“n” (optional, given by γ n (s)) is the upper integer value of the first series in
Eq. (20.3b) and either a scalar value or of the same size as “s”. Output arguments
are the object “obj” with properties “zeta” (function value), “s” (function argument),
“nek” (summation limit of the first sum), and “info” with some general information.
In case of the summation “info” comes with a value for the accuracy based on γ n (s).
This value should be as small as possible (< 10 −9 ). The output argument “zetaval”
equals obj.zeta.
The zeros of ζ(
1
2 + i · t) can be estimated with the SPECFUNPHYS class
riemzetaroot with syntax [obj, tzero] = riemzetaroot(t0, t1,
dt). The zeros within the interval [t0, t1] will be searched. Thus the input
arguments “t0”, “t1” are real scalar values. For the search process the interval will be
split into subintervals of length dt. The optional input argument “dt” is a real scalar
value with default value 0.5. Output arguments are the object “obj” with properties
“t” (s =
1
2 + i · t), “fval”, the corresponding value of the ζ -function and “info” with
some general information, and in addition “tzero” the t-values (equal obj.t).
riemzetaroot comes in addition with the method
[iszetazero, obj] = zerotest(obj,n,dt,nofig)
to test if “obj.t” corresponds to a root of ζ(
1
2 + i · t). The evaluation of riemzetaroot is based on the MATLAB-functions fminbnd and fzero. Thus in an
unlikely case it could be that only a close to zero value will be returned. Therefore
zerotest evaluates the surrounding of obj.t and checks for changes in sign of
the real and imaginary function value. The input arguments are the object “obj”,
the optional integer vector “n” with the row numbers of obj.t to check (default
is all), “dt” (optional) the step size for evaluating the ζ -function with default value
0.1 and “nofig” (optional) if a figure shall be plotted (default) or not (“y”). The
output argument “iszetazero” is a cell variable with the corresponding information
and “obj” the object of the class riemzetaroot.
