Post Reply 
wp34s doesn't give correct zeta function value
03-09-2022, 01:18 PM
Post: #8
RE: wp34s doesn't give correct zeta function value
The WP34S implementation on the DM42 gives the wrong answers - the same wrong answers that have been reported on the iPhone version.

I've looked at the XROM code for the zeta function. It includes these lines:
Code:

zeta_int::        LocR 08
            STO .01
            STO .07
            Num 1/2
            x>? 0
                JMP zeta_calc
Changing this code to
Code:

zeta_int::        LocR 08
            STO .01
            STO .07
            x>0?
                JMP zeta_calc
gives the correct answers.

There are two things going on. First, I believe that the comparison "x>? 0" compares the value of x with the contents of register zero, rather than with the number zero. Second, as the code stands the comparison is with the fixed value of 1/2 that the previous command puts on the stack.

This page here shows the most recent change to zeta.wp34s. It shows that Num 1/2 has been removed from the WP31S branch but not from other branches. All three branches contain what I believe to be the incorrect comparison operation. As a result of this, evaluating \(\zeta(x)\) for negative values of \(x\) gives incorrect answers. For example, on my iPad, my physical WP34S, and on a Windows emulator I get \(\zeta(-7)=4.547\dots\times10^{-3}\), whereas Wolfram Alpha gives \(\frac1{240}=4.166\dots\times10^{-3}\). The code with the corrected comparison operator gives the correct answer.

Nigel (UK)
Find all posts by this user
Quote this message in a reply
Post Reply 


Messages In This Thread
RE: wp34s doesn't give correct zeta function value - Nigel (UK) - 03-09-2022 01:18 PM



User(s) browsing this thread: 1 Guest(s)