Display of Complex Numbers on wp34s Message #1 Posted by Jeff O. on 22 Aug 2011, 2:50 p.m.
My biggest wish for wp34s is that it handled and displayed complex numbers more like the 42s and 35s. I think I understand why that was not practical, or at least did not seem practical at the beginning of development. And the way wp34s handles complex numbers is probably as good as can be without adopting a paradigm similar to the 42s/35s. I also understand that Walter and perhaps others on the team felt that the dot-matrix part of the display was not suitable for “full-time” numerical display and better used for status, annunciators and messages. But for some reason I recently wondered how it would look to use the dot-matrix area to display the imaginary part or angle of a complex number. Not sure if it is new, but I was recently made aware of the aRC# (using small “a” for alpha) command and it occurred to me that I could use it to simulate imaginary or angle display. So I wrote two small programs, as follows:
Command Comment
LBL 16 so I can press XEQ CPX for this one. Depending on your version you might have to press XEQ 16
CLa
ai
aRC# Y
PROMPT
RTN
Command Comment
LBL 41 so I can press XEQ XEQ for this one. Depending on your version you might have to press XEQ 41
CLa
a/ that is the first symbol (looks like the 42s angle symbol) on the h-test menu in alpha mode
aRC# Y
PROMPT
RTN
Key in the above programs, I’ll wait….
Set your calculator to FIX 4. Press 4 ENTER, 3, XEQ CPX. The dot matrix area should be displaying “i4.0000”, and I think it looks pretty good. Now press g ->P, then XEQ XEQ. Now the dot-matrix area should be displaying “/53.1301”, and again, I think it looks pretty good. I realize that I would be free to use the above at my leisure to display rectangular complex and/or polar complex values as I desire. But, it got me thinking, maybe a little of this display methodology could be built into the 34s. Not some sort of complex display mode that would always display as such, just a couple little things as follows:
- Create two new internal commands that would temporarily display the Y register as the imaginary component or angle. By temporary I mean the same as the SHOW command, active only until some other key is pressed. Call one RDISP, one PDISP for rectangular display and polar display, respectively
-
Upon execution of the ->REC command, temporarily put in RDISP mode, so you can see both the real and imaginary components you just created without doing an exchange.
-
Upon execution of the ->POL command, temporarily put in PDISP mode, so you can see both the magnitude and angle you just created without doing an exchange.
-
Upon execution of ANY Complex command, temporarily put in RDISP mode so you can see your complex result without doing an exchange.
-
Upon pressing CPX, put in RDISP mode (instead of displaying the small “C” annunciator) to both indicate that you are about to treat the x and y registers as a complex rectangular value, (i.e. execute a function on a complex argument) and let you see both values you are about to use.
The programs work in other display modes besides FIX 4 of course, I just specified FIX 4 for my example because it looks good. In other display modes, the dot-matrix area might be forced to use the small font. It still looks fine to me, but looked best in large font. If my suggested RDISP and PDISP commands are adopted, perhaps they could always truncate the Y value so it could be displayed in the large font. That brings me to one last question, I noticed that the small font version of the / symbol looks like a “less than” symbol, i.e. “<”. Any reason it could not simply be the left three columns of the large font symbol, i.e. in ASCII art:
*
*
***
Or maybe the right three columns:
*
*
*
***
I realize that as usual, it is easy for me to suggest things and there may be many reasons why the above cannot or will not be implemented by the developers, from technical coding reasons to not liking the ideas even if they are feasible. But I would be interested in hearing comments on the ideas, positive, negative or in between.
Best regards
Jeff
.
|