The following warnings occurred:
Warning [2] Undefined array key 62596 - Line: 275 - File: inc/plugins/threaded_mode.php PHP 8.1.2-1ubuntu2.14 (Linux)
File Line Function
/inc/class_error.php 153 errorHandler->error
/inc/plugins/threaded_mode.php 275 errorHandler->error_callback
/inc/plugins/threaded_mode.php 23 ThreadedMode::showthread_threaded
/inc/class_plugins.php 142 threaded_mode_showthread_threaded
/showthread.php 918 pluginSystem->run_hooks
Warning [2] Undefined array key 62600 - Line: 275 - File: inc/plugins/threaded_mode.php PHP 8.1.2-1ubuntu2.14 (Linux)
File Line Function
/inc/class_error.php 153 errorHandler->error
/inc/plugins/threaded_mode.php 275 errorHandler->error_callback
/inc/plugins/threaded_mode.php 23 ThreadedMode::showthread_threaded
/inc/class_plugins.php 142 threaded_mode_showthread_threaded
/showthread.php 918 pluginSystem->run_hooks
Warning [2] Undefined array key 62608 - Line: 275 - File: inc/plugins/threaded_mode.php PHP 8.1.2-1ubuntu2.14 (Linux)
File Line Function
/inc/class_error.php 153 errorHandler->error
/inc/plugins/threaded_mode.php 275 errorHandler->error_callback
/inc/plugins/threaded_mode.php 23 ThreadedMode::showthread_threaded
/inc/class_plugins.php 142 threaded_mode_showthread_threaded
/showthread.php 918 pluginSystem->run_hooks
Warning [2] Undefined array key 62614 - Line: 275 - File: inc/plugins/threaded_mode.php PHP 8.1.2-1ubuntu2.14 (Linux)
File Line Function
/inc/class_error.php 153 errorHandler->error
/inc/plugins/threaded_mode.php 275 errorHandler->error_callback
/inc/plugins/threaded_mode.php 23 ThreadedMode::showthread_threaded
/inc/class_plugins.php 142 threaded_mode_showthread_threaded
/showthread.php 918 pluginSystem->run_hooks
Warning [2] Undefined array key 62615 - Line: 275 - File: inc/plugins/threaded_mode.php PHP 8.1.2-1ubuntu2.14 (Linux)
File Line Function
/inc/class_error.php 153 errorHandler->error
/inc/plugins/threaded_mode.php 275 errorHandler->error_callback
/inc/plugins/threaded_mode.php 23 ThreadedMode::showthread_threaded
/inc/class_plugins.php 142 threaded_mode_showthread_threaded
/showthread.php 918 pluginSystem->run_hooks
Warning [2] Undefined array key 62625 - Line: 275 - File: inc/plugins/threaded_mode.php PHP 8.1.2-1ubuntu2.14 (Linux)
File Line Function
/inc/class_error.php 153 errorHandler->error
/inc/plugins/threaded_mode.php 275 errorHandler->error_callback
/inc/plugins/threaded_mode.php 23 ThreadedMode::showthread_threaded
/inc/class_plugins.php 142 threaded_mode_showthread_threaded
/showthread.php 918 pluginSystem->run_hooks
Warning [2] Undefined array key 62627 - Line: 275 - File: inc/plugins/threaded_mode.php PHP 8.1.2-1ubuntu2.14 (Linux)
File Line Function
/inc/class_error.php 153 errorHandler->error
/inc/plugins/threaded_mode.php 275 errorHandler->error_callback
/inc/plugins/threaded_mode.php 23 ThreadedMode::showthread_threaded
/inc/class_plugins.php 142 threaded_mode_showthread_threaded
/showthread.php 918 pluginSystem->run_hooks
Warning [2] Undefined array key 62638 - Line: 275 - File: inc/plugins/threaded_mode.php PHP 8.1.2-1ubuntu2.14 (Linux)
File Line Function
/inc/class_error.php 153 errorHandler->error
/inc/plugins/threaded_mode.php 275 errorHandler->error_callback
/inc/plugins/threaded_mode.php 23 ThreadedMode::showthread_threaded
/inc/class_plugins.php 142 threaded_mode_showthread_threaded
/showthread.php 918 pluginSystem->run_hooks
Warning [2] Undefined array key 62640 - Line: 275 - File: inc/plugins/threaded_mode.php PHP 8.1.2-1ubuntu2.14 (Linux)
File Line Function
/inc/class_error.php 153 errorHandler->error
/inc/plugins/threaded_mode.php 275 errorHandler->error_callback
/inc/plugins/threaded_mode.php 23 ThreadedMode::showthread_threaded
/inc/class_plugins.php 142 threaded_mode_showthread_threaded
/showthread.php 918 pluginSystem->run_hooks
Warning [2] Undefined array key 62641 - Line: 275 - File: inc/plugins/threaded_mode.php PHP 8.1.2-1ubuntu2.14 (Linux)
File Line Function
/inc/class_error.php 153 errorHandler->error
/inc/plugins/threaded_mode.php 275 errorHandler->error_callback
/inc/plugins/threaded_mode.php 23 ThreadedMode::showthread_threaded
/inc/class_plugins.php 142 threaded_mode_showthread_threaded
/showthread.php 918 pluginSystem->run_hooks
Warning [2] Undefined array key 62642 - Line: 275 - File: inc/plugins/threaded_mode.php PHP 8.1.2-1ubuntu2.14 (Linux)
File Line Function
/inc/class_error.php 153 errorHandler->error
/inc/plugins/threaded_mode.php 275 errorHandler->error_callback
/inc/plugins/threaded_mode.php 23 ThreadedMode::showthread_threaded
/inc/class_plugins.php 142 threaded_mode_showthread_threaded
/showthread.php 918 pluginSystem->run_hooks
Warning [2] Undefined array key 62644 - Line: 275 - File: inc/plugins/threaded_mode.php PHP 8.1.2-1ubuntu2.14 (Linux)
File Line Function
/inc/class_error.php 153 errorHandler->error
/inc/plugins/threaded_mode.php 275 errorHandler->error_callback
/inc/plugins/threaded_mode.php 23 ThreadedMode::showthread_threaded
/inc/class_plugins.php 142 threaded_mode_showthread_threaded
/showthread.php 918 pluginSystem->run_hooks
Warning [2] Undefined array key 62645 - Line: 275 - File: inc/plugins/threaded_mode.php PHP 8.1.2-1ubuntu2.14 (Linux)
File Line Function
/inc/class_error.php 153 errorHandler->error
/inc/plugins/threaded_mode.php 275 errorHandler->error_callback
/inc/plugins/threaded_mode.php 23 ThreadedMode::showthread_threaded
/inc/class_plugins.php 142 threaded_mode_showthread_threaded
/showthread.php 918 pluginSystem->run_hooks
Warning [2] Undefined array key 62653 - Line: 275 - File: inc/plugins/threaded_mode.php PHP 8.1.2-1ubuntu2.14 (Linux)
File Line Function
/inc/class_error.php 153 errorHandler->error
/inc/plugins/threaded_mode.php 275 errorHandler->error_callback
/inc/plugins/threaded_mode.php 23 ThreadedMode::showthread_threaded
/inc/class_plugins.php 142 threaded_mode_showthread_threaded
/showthread.php 918 pluginSystem->run_hooks
Warning [2] Undefined array key 62654 - Line: 275 - File: inc/plugins/threaded_mode.php PHP 8.1.2-1ubuntu2.14 (Linux)
File Line Function
/inc/class_error.php 153 errorHandler->error
/inc/plugins/threaded_mode.php 275 errorHandler->error_callback
/inc/plugins/threaded_mode.php 23 ThreadedMode::showthread_threaded
/inc/class_plugins.php 142 threaded_mode_showthread_threaded
/showthread.php 918 pluginSystem->run_hooks
Warning [2] Undefined array key 62665 - Line: 275 - File: inc/plugins/threaded_mode.php PHP 8.1.2-1ubuntu2.14 (Linux)
File Line Function
/inc/class_error.php 153 errorHandler->error
/inc/plugins/threaded_mode.php 275 errorHandler->error_callback
/inc/plugins/threaded_mode.php 23 ThreadedMode::showthread_threaded
/inc/class_plugins.php 142 threaded_mode_showthread_threaded
/showthread.php 918 pluginSystem->run_hooks
Warning [2] Undefined array key 62667 - Line: 275 - File: inc/plugins/threaded_mode.php PHP 8.1.2-1ubuntu2.14 (Linux)
File Line Function
/inc/class_error.php 153 errorHandler->error
/inc/plugins/threaded_mode.php 275 errorHandler->error_callback
/inc/plugins/threaded_mode.php 23 ThreadedMode::showthread_threaded
/inc/class_plugins.php 142 threaded_mode_showthread_threaded
/showthread.php 918 pluginSystem->run_hooks
Warning [2] Undefined array key 62788 - Line: 275 - File: inc/plugins/threaded_mode.php PHP 8.1.2-1ubuntu2.14 (Linux)
File Line Function
/inc/class_error.php 153 errorHandler->error
/inc/plugins/threaded_mode.php 275 errorHandler->error_callback
/inc/plugins/threaded_mode.php 23 ThreadedMode::showthread_threaded
/inc/class_plugins.php 142 threaded_mode_showthread_threaded
/showthread.php 918 pluginSystem->run_hooks
Warning [2] Undefined array key 62789 - Line: 275 - File: inc/plugins/threaded_mode.php PHP 8.1.2-1ubuntu2.14 (Linux)
File Line Function
/inc/class_error.php 153 errorHandler->error
/inc/plugins/threaded_mode.php 275 errorHandler->error_callback
/inc/plugins/threaded_mode.php 23 ThreadedMode::showthread_threaded
/inc/class_plugins.php 142 threaded_mode_showthread_threaded
/showthread.php 918 pluginSystem->run_hooks
Warning [2] Undefined array key 62809 - Line: 275 - File: inc/plugins/threaded_mode.php PHP 8.1.2-1ubuntu2.14 (Linux)
File Line Function
/inc/class_error.php 153 errorHandler->error
/inc/plugins/threaded_mode.php 275 errorHandler->error_callback
/inc/plugins/threaded_mode.php 23 ThreadedMode::showthread_threaded
/inc/class_plugins.php 142 threaded_mode_showthread_threaded
/showthread.php 918 pluginSystem->run_hooks
Warning [2] Undefined variable $thread - Line: 295 - File: inc/plugins/threaded_mode.php PHP 8.1.2-1ubuntu2.14 (Linux)
File Line Function
/inc/class_error.php 153 errorHandler->error
/inc/plugins/threaded_mode.php 295 errorHandler->error_callback
/inc/plugins/threaded_mode.php 23 ThreadedMode::showthread_threaded
/inc/class_plugins.php 142 threaded_mode_showthread_threaded
/showthread.php 918 pluginSystem->run_hooks
Warning [2] Trying to access array offset on value of type null - Line: 295 - File: inc/plugins/threaded_mode.php PHP 8.1.2-1ubuntu2.14 (Linux)
File Line Function
/inc/class_error.php 153 errorHandler->error
/inc/plugins/threaded_mode.php 295 errorHandler->error_callback
/inc/plugins/threaded_mode.php 23 ThreadedMode::showthread_threaded
/inc/class_plugins.php 142 threaded_mode_showthread_threaded
/showthread.php 918 pluginSystem->run_hooks
Warning [2] Undefined variable $fid - Line: 295 - File: inc/plugins/threaded_mode.php PHP 8.1.2-1ubuntu2.14 (Linux)
File Line Function
/inc/class_error.php 153 errorHandler->error
/inc/plugins/threaded_mode.php 295 errorHandler->error_callback
/inc/plugins/threaded_mode.php 23 ThreadedMode::showthread_threaded
/inc/class_plugins.php 142 threaded_mode_showthread_threaded
/showthread.php 918 pluginSystem->run_hooks
Warning [2] Undefined array key 62654 - Line: 331 - File: inc/plugins/threaded_mode.php PHP 8.1.2-1ubuntu2.14 (Linux)
File Line Function
/inc/class_error.php 153 errorHandler->error
/inc/plugins/threaded_mode.php 331 errorHandler->error_callback
/inc/plugins/threaded_mode.php 332 ThreadedMode::buildtree
/inc/plugins/threaded_mode.php 332 ThreadedMode::buildtree
/inc/plugins/threaded_mode.php 332 ThreadedMode::buildtree
/inc/plugins/threaded_mode.php 332 ThreadedMode::buildtree
/inc/plugins/threaded_mode.php 332 ThreadedMode::buildtree
/inc/plugins/threaded_mode.php 332 ThreadedMode::buildtree
/inc/plugins/threaded_mode.php 332 ThreadedMode::buildtree
/inc/plugins/threaded_mode.php 304 ThreadedMode::buildtree
/inc/plugins/threaded_mode.php 23 ThreadedMode::showthread_threaded
/inc/class_plugins.php 142 threaded_mode_showthread_threaded
/showthread.php 918 pluginSystem->run_hooks
Warning [2] Undefined array key 62667 - Line: 331 - File: inc/plugins/threaded_mode.php PHP 8.1.2-1ubuntu2.14 (Linux)
File Line Function
/inc/class_error.php 153 errorHandler->error
/inc/plugins/threaded_mode.php 331 errorHandler->error_callback
/inc/plugins/threaded_mode.php 332 ThreadedMode::buildtree
/inc/plugins/threaded_mode.php 332 ThreadedMode::buildtree
/inc/plugins/threaded_mode.php 332 ThreadedMode::buildtree
/inc/plugins/threaded_mode.php 332 ThreadedMode::buildtree
/inc/plugins/threaded_mode.php 332 ThreadedMode::buildtree
/inc/plugins/threaded_mode.php 332 ThreadedMode::buildtree
/inc/plugins/threaded_mode.php 332 ThreadedMode::buildtree
/inc/plugins/threaded_mode.php 332 ThreadedMode::buildtree
/inc/plugins/threaded_mode.php 304 ThreadedMode::buildtree
/inc/plugins/threaded_mode.php 23 ThreadedMode::showthread_threaded
/inc/class_plugins.php 142 threaded_mode_showthread_threaded
/showthread.php 918 pluginSystem->run_hooks
Warning [2] Undefined array key 62615 - Line: 331 - File: inc/plugins/threaded_mode.php PHP 8.1.2-1ubuntu2.14 (Linux)
File Line Function
/inc/class_error.php 153 errorHandler->error
/inc/plugins/threaded_mode.php 331 errorHandler->error_callback
/inc/plugins/threaded_mode.php 332 ThreadedMode::buildtree
/inc/plugins/threaded_mode.php 304 ThreadedMode::buildtree
/inc/plugins/threaded_mode.php 23 ThreadedMode::showthread_threaded
/inc/class_plugins.php 142 threaded_mode_showthread_threaded
/showthread.php 918 pluginSystem->run_hooks
Warning [2] Undefined array key 62642 - Line: 331 - File: inc/plugins/threaded_mode.php PHP 8.1.2-1ubuntu2.14 (Linux)
File Line Function
/inc/class_error.php 153 errorHandler->error
/inc/plugins/threaded_mode.php 331 errorHandler->error_callback
/inc/plugins/threaded_mode.php 332 ThreadedMode::buildtree
/inc/plugins/threaded_mode.php 332 ThreadedMode::buildtree
/inc/plugins/threaded_mode.php 332 ThreadedMode::buildtree
/inc/plugins/threaded_mode.php 332 ThreadedMode::buildtree
/inc/plugins/threaded_mode.php 304 ThreadedMode::buildtree
/inc/plugins/threaded_mode.php 23 ThreadedMode::showthread_threaded
/inc/class_plugins.php 142 threaded_mode_showthread_threaded
/showthread.php 918 pluginSystem->run_hooks
Warning [2] Undefined array key 62789 - Line: 331 - File: inc/plugins/threaded_mode.php PHP 8.1.2-1ubuntu2.14 (Linux)
File Line Function
/inc/class_error.php 153 errorHandler->error
/inc/plugins/threaded_mode.php 331 errorHandler->error_callback
/inc/plugins/threaded_mode.php 332 ThreadedMode::buildtree
/inc/plugins/threaded_mode.php 332 ThreadedMode::buildtree
/inc/plugins/threaded_mode.php 332 ThreadedMode::buildtree
/inc/plugins/threaded_mode.php 332 ThreadedMode::buildtree
/inc/plugins/threaded_mode.php 332 ThreadedMode::buildtree
/inc/plugins/threaded_mode.php 332 ThreadedMode::buildtree
/inc/plugins/threaded_mode.php 304 ThreadedMode::buildtree
/inc/plugins/threaded_mode.php 23 ThreadedMode::showthread_threaded
/inc/class_plugins.php 142 threaded_mode_showthread_threaded
/showthread.php 918 pluginSystem->run_hooks
Warning [2] Undefined array key 62809 - Line: 331 - File: inc/plugins/threaded_mode.php PHP 8.1.2-1ubuntu2.14 (Linux)
File Line Function
/inc/class_error.php 153 errorHandler->error
/inc/plugins/threaded_mode.php 331 errorHandler->error_callback
/inc/plugins/threaded_mode.php 332 ThreadedMode::buildtree
/inc/plugins/threaded_mode.php 332 ThreadedMode::buildtree
/inc/plugins/threaded_mode.php 332 ThreadedMode::buildtree
/inc/plugins/threaded_mode.php 332 ThreadedMode::buildtree
/inc/plugins/threaded_mode.php 332 ThreadedMode::buildtree
/inc/plugins/threaded_mode.php 332 ThreadedMode::buildtree
/inc/plugins/threaded_mode.php 304 ThreadedMode::buildtree
/inc/plugins/threaded_mode.php 23 ThreadedMode::showthread_threaded
/inc/class_plugins.php 142 threaded_mode_showthread_threaded
/showthread.php 918 pluginSystem->run_hooks
Warning [2] Undefined array key 62644 - Line: 331 - File: inc/plugins/threaded_mode.php PHP 8.1.2-1ubuntu2.14 (Linux)
File Line Function
/inc/class_error.php 153 errorHandler->error
/inc/plugins/threaded_mode.php 331 errorHandler->error_callback
/inc/plugins/threaded_mode.php 332 ThreadedMode::buildtree
/inc/plugins/threaded_mode.php 332 ThreadedMode::buildtree
/inc/plugins/threaded_mode.php 304 ThreadedMode::buildtree
/inc/plugins/threaded_mode.php 23 ThreadedMode::showthread_threaded
/inc/class_plugins.php 142 threaded_mode_showthread_threaded
/showthread.php 918 pluginSystem->run_hooks
Warning [2] Undefined variable $theme - Line: 3 - File: inc/plugins/threaded_mode.php(305) : eval()'d code PHP 8.1.2-1ubuntu2.14 (Linux)
File Line Function
/inc/class_error.php 153 errorHandler->error
/inc/plugins/threaded_mode.php(305) : eval()'d code 3 errorHandler->error_callback
/inc/plugins/threaded_mode.php 305 eval
/inc/plugins/threaded_mode.php 23 ThreadedMode::showthread_threaded
/inc/class_plugins.php 142 threaded_mode_showthread_threaded
/showthread.php 918 pluginSystem->run_hooks
Warning [2] Trying to access array offset on value of type null - Line: 3 - File: inc/plugins/threaded_mode.php(305) : eval()'d code PHP 8.1.2-1ubuntu2.14 (Linux)
File Line Function
/inc/class_error.php 153 errorHandler->error
/inc/plugins/threaded_mode.php(305) : eval()'d code 3 errorHandler->error_callback
/inc/plugins/threaded_mode.php 305 eval
/inc/plugins/threaded_mode.php 23 ThreadedMode::showthread_threaded
/inc/class_plugins.php 142 threaded_mode_showthread_threaded
/showthread.php 918 pluginSystem->run_hooks
Warning [2] Undefined variable $theme - Line: 3 - File: inc/plugins/threaded_mode.php(305) : eval()'d code PHP 8.1.2-1ubuntu2.14 (Linux)
File Line Function
/inc/class_error.php 153 errorHandler->error
/inc/plugins/threaded_mode.php(305) : eval()'d code 3 errorHandler->error_callback
/inc/plugins/threaded_mode.php 305 eval
/inc/plugins/threaded_mode.php 23 ThreadedMode::showthread_threaded
/inc/class_plugins.php 142 threaded_mode_showthread_threaded
/showthread.php 918 pluginSystem->run_hooks
Warning [2] Trying to access array offset on value of type null - Line: 3 - File: inc/plugins/threaded_mode.php(305) : eval()'d code PHP 8.1.2-1ubuntu2.14 (Linux)
File Line Function
/inc/class_error.php 153 errorHandler->error
/inc/plugins/threaded_mode.php(305) : eval()'d code 3 errorHandler->error_callback
/inc/plugins/threaded_mode.php 305 eval
/inc/plugins/threaded_mode.php 23 ThreadedMode::showthread_threaded
/inc/class_plugins.php 142 threaded_mode_showthread_threaded
/showthread.php 918 pluginSystem->run_hooks
Warning [2] Undefined variable $lang - Line: 5 - File: inc/plugins/threaded_mode.php(305) : eval()'d code PHP 8.1.2-1ubuntu2.14 (Linux)
File Line Function
/inc/class_error.php 153 errorHandler->error
/inc/plugins/threaded_mode.php(305) : eval()'d code 5 errorHandler->error_callback
/inc/plugins/threaded_mode.php 305 eval
/inc/plugins/threaded_mode.php 23 ThreadedMode::showthread_threaded
/inc/class_plugins.php 142 threaded_mode_showthread_threaded
/showthread.php 918 pluginSystem->run_hooks
Warning [2] Attempt to read property "messages_in_thread" on null - Line: 5 - File: inc/plugins/threaded_mode.php(305) : eval()'d code PHP 8.1.2-1ubuntu2.14 (Linux)
File Line Function
/inc/class_error.php 153 errorHandler->error
/inc/plugins/threaded_mode.php(305) : eval()'d code 5 errorHandler->error_callback
/inc/plugins/threaded_mode.php 305 eval
/inc/plugins/threaded_mode.php 23 ThreadedMode::showthread_threaded
/inc/class_plugins.php 142 threaded_mode_showthread_threaded
/showthread.php 918 pluginSystem->run_hooks





Idiosyncrasy of the 33S (revised)



#2

I have listed some of the idiosyncrasy of the 33S below. My question is when would these show up in common scenarios. Why would you input –0, or when would you have a negative H.MMSS. I am asking out of ignorance.
Mike

Converting H.MMSS from H.DDDD, of a negative H.MMSS
HMS

-0 in Polar Conversion
Polar-coordinate / Complex

Missing negative real roots
Solve

Stays in Rad / Grad after a self test
Radians

Probability Overflow
nCr


#3

Hi, Mike...

This is a bit like the Pentium CPU FDIV division bug maybe 5-6 years ago (IIRC). Intel said it was a rare event and normal users would never encounter a problem. Pure hubris & BS. Do you want to know if your CPU or calculator is 'eligible to provide a correct solution'??? I don't.

While these specific instances you list are sometimes 'hard to get to' in simple calculator use, they're a sign of poorly designed algorithms & preprocessing/range reduction methods, and even worse testing for 'corner cases'. It's a real confidence-reducer.

Actually, inability to find negative roots of a simple equation really calls into question the whole rootfinder architecture, and this could well be magnified in more complex situations. What about cubic polynomial equation with three negative roots? Will the 33S find it? Dunno.
So then you end up doing things semi-manually because you don't have confidence in calculator.

Many calculators' H.MS<->H.h -style functions are named D.MS<->Dd (degree/min/sec<==> decimal degrees) instead; this is, in fact, called 'sexagesimal conversion'. If you think about using these operations in navigational/map calculations instead of time calculations, then usage of negative values can make sense and should operate properly. (And this is really even applicable for time offsets and relative times, etc.)

The inability to intelligently handle "-0" as an argument is a real input argument processing fault and does not engender much confidence in the calculator's use & design. Similarly, the fact that the calc can even operate _anytime_ in RAD mode but not have the RAD annunciator displayed is atrocious. Right now, we just know this happens coming out of self-test mode: are there other times this could happen? Improper handling of machine state in one instance could well have side effects elsewhere.

The worst thing is that this is 2004, with many many predecessor calculators from many manufacuturers able to handle all these (and many similar) issues properly. It'd be one thing if this were an early 70s calculator: many difficult workarounds had to be made in terms of ROM space, CPU speed, etc. But with a decent 8-bit CPU and plenty of ROM & RAM today - there's no excuse.

Messrs. Hewlett and Packard are probably spinning in their graves. And Carly doesn't even have a clue.

Bill Wiese

San Jose CA


#4

The root finding issue is only for direct solve cases.

X^2 - 4
SOLVE X

will return +2 if done using the Equation solver.

This can be alieviated by entering the equation as X^2+0*X - 4 which will return roots + 2 or -2 depending on initial guess.

Actually, if you take a look at the equation solver / root solver learning modules on the hp website, you'll see how it can be done using a program without much effort.

Only a concern in the direct solve mode.


#5

Gene --

OK, can you enlighten us about what methods were incorporated into the HP-33S algorithms for solving equations?

I got the following results when solving the following equations and program after setting x to -5 and entering -1 in the stack X-register.

X^2-4        2.00               program:
SQ(X)-4 2.00 LBL V
X*X-4 -2.00 RCL X
(program) -2.00 x2
4
-
RTN

Are the x2 and yx functions handled in a special way within equations? I'd assumed that SOLVE was simply evaluating the function and adjusting the input guesses using a refined Newton's Method.

I preferred the straightforwardness of the original HP-34C implementation, which was ported to the HP-15C and HP-41C Advantage Pac: Key in two values specifying the range in which to look for the root of a programmed function, then SOLVE the program containing the function.

Why should the user have to insert mathematically needless expressions into an equation in order to "trick" thee 33S into performing as desired?

-- KS


#6

That I don't know. I don't know how the internal solutions work.

Regarding the insertion of 0*X insertion, that's a user-found addition to get the 33S solver to not solve the equation "directly". Apparently, if the variable shows up in the equation more than once, the 33S solution method changes.

All I know is, I can get the negative and positive roots by solving an equation in a program or by adding a 0*X in the equation mode.

Gene


#7

Well, I tried a few more examples of solving equations on the 33S, to determine its methods for handling polynomials or equations in which the variable to be solved appeared only once in the expression.

The rule seems to be as follows:

"For polynomial equations in which the variable to be solved appears only once, SOLVE on the HP-33S will algebraically compute the solution value of the variable, using the positive-valued root of every term that is taken to a positive-integer power.

For all other types of equations, the the function is solved by numerical iteration using repeated evaluation."

Consider the following expression:

(2*X+3)^2-1

Both solutions are real-valued and negative: -1 and -2. However, no matter what initial guesses are stored in the X variable and the x-register, the 33S will always return "-1" as the solution. This is because:

    (2*X+3)^2-1 = 0
-> (2*X+3)^2 = 1
-> (2*X+3) = sqrt(1)
-> (2*X+3) = +1 [but never -1]
-> 2*X = -2
-> X = -1

"-1" is always returned very quickly, even if "-2" is stored in the X variable and x-register as first guesses (which happen to be a solution).

But, if "+0*X" is inserted into the expression, or if the (2*X+3)^2 term is expanded, then the user can obtain the "-2" solution by entering guesses that bound -2, but not -1.

I did not see this "special feature" documented anywhere in Chapter 7 or Appendix D of the HP-33S manual.

If my analysis is correct, I think KinHPo was "too clever by half" by implementing algebraic solutions and employing the CBRT and XROOT functions for solving this small subset of polynomials.

This was an unnecessary "refinement" that provides more pitfalls than real benefits -- sometimes, the user will wonder why he cannot obtain the root in the range he specifies! Heck, if the polynomial is so simple that it can be algebraically solved, the user should do the algebra himself.

Add one more thing to the list of blunders by KinHPo.

-- KS


Edited: 5 Sept 2004, 12:23 a.m.


#8

Hi Karl. Sorry you are frustrated, but this is not exactly a flash of news. Try reading through the learning modules on HP's site, particularly these two:

http://www.hp.com/calculators/docs/guides/33sAdvSolver.pdf
Advanced uses of the Solver part 1

and

http://www.hp.com/calculators/docs/guides/33sAdvSolver2.pdf
Advanced users of he solver part 2

(Both written by Wlodek)

and finally these last three:

http://www.hp.com/calculators/docs/guides/33sSolver.pdf

http://www.hp.com/calculators/docs/guides/33sSolver2.pdf

http://www.hp.com/calculators/docs/guides/33sRoots.pdf

As Wlodek discusses in the first of these above, the solver goes for a direct, principal solution.

Question: I would think most people really interested in a calculator would really dig into these learning modules, but that doesn't seem to be the case. Is it that people don't know they are there or ?


#9

Looking at the title of my last response, it may seem short or irritated.

Not at all what I intended. I do think looking at the learning modules more by everyone would be helpful. Wlodek spent a lot of time talking about the solver and and how it differs from the 32SII.

Maybe I just need to mention them more often. :-)

Gene

#10

Gene posted,

Quote:
Hi Karl. Sorry you are frustrated, but this is not exactly a flash of news.

Hmmm. In view of your follow-up post titled, "And please don't take offense at the shortness of the title!", I guess I won't take you to task for that statement.

I'm certainly not frustrated per se about these somewhat-troubling things we are finding about the HP-33S -- after all, I have a wide assortment of "purebred" HP-designed-and-engineered calc's that do not have these issues.

Rather, I am disappointed that the designers of the 33S didn't "think things through" like HP did in the old days.

Thank you for giving me the "Learning Module" links. It spared me the trouble of plowing through HP's graphics-intensive, marketing-driven corporate website in search of information I wasn't sure would exist. Wlodek did indeed prepare useful explanations of the methods.

My points are two-fold:

1. This usage of direct-solutions by SOLVE in Equation mode should have been mentioned in the User's Manual. Users shouldn't have to navigate corporate websites without broadband and download graphical documents to find out why their calculator isn't performing intuitively, or as described in the printed manual they received in the package. I realize that the "direct method" techniques are new, and would not have been documented in the 32SII UM, but the 33S UM should have been enhanced.

2. The direct-solution procedures sometimes contradict the UM documentation, as illustrated in my example. I still believe that the direct method was not absolutely necessary, and the efforts to implement it might have been better spent in other areas too numerous to mention. However, there is some value in the procedure, and now that it has been done, here's a suggestion for HP to improve the logic:

STEP 1: Attempt to find the direct solution, if the format of the equation permits. Otherwise, try numerical iteration.

STEP 2: If a direct solution is found within the guess-range provided by the user, return the value and stop.

STEP 3: If a direct solution is found outside the range given by the user, store the value, and try numerical iteration.

STEP 4: If no direct solution can be found, try numerical iteration.

STEP 5: If a numerically-iterated solution is found within the guess-range provided by the user, return the value and stop.

STEP 6: If no iterated solution is found within the guess-range provided by the user, AND an outside-the-range direct solution was found in STEP 3, return that value and stop.

STEP 7: If an iterated solution is found outside the range given by the user, return that value and stop.

-- KS

Edited: 5 Sept 2004, 3:11 p.m.


#11

I too wish the 33S designers had chosen to do things differently in places. Unfortunately, they didn't ask me ahead of time. VERY BIG :-)

When I saw the UM, it was pretty much finished by then...perhaps I can pass along your good suggestion to add to the explanation in the UM.

It does bother me that more people aren't aware of the learning modules. After all, the 42 modules for the 33s have been available since the day the 33S was available on the HP website.

And, again, sorry for any short comments that might have offended/irritated. That was not my intent. :-)

Gene

#12

Mike --

Thanks much for making the effort to consolidate the bug topics into a concise posting with links to the authors who described the respective problems most thoroughly. I was considering such an exercise; I'm planning to send the bug reports and my recent critique of the 33S to HP.

As for your questions about -0, Bill is right in that the bug suggests improper input processing. Sure, most users would not deliberately enter -0 from the keyboard, but I noticed the same problems when using +/- to change the sign of a previously-calculated result. So, it's certainly possible to provide an input of -0 to a function inside a program.

The discoverer of the HMS bug was using the 33S to do realistic calculations in a navigation-training class.

The "-0 Polar-conversion" bug is important because it involves conversion of purely-imaginary numbers.

-- KS

#13

Looking at the problems with the 33S from a general perspective: It doesn't matter if the trigger condition for the error is "rare"; errors of this sort destroy confidence in the calculator.

I certainly would not purchase a 33S--errors in software, especially those in core math routines--indicate a lack of quality control testing.

Consider: If the software is emulated (like much of the 49+) automated testing could have been done on development station emulators. And, if the code was re-written in assembly, where was the testing?

And, as an aside, the Intel math bug was a chip level/microcode/hardware problem,i.e.base level. The errors found in the 33S are application level. Application level errors can/should be fixed by firmware updates. But, oops, HP didn't make allowances for that either...
(and, come on, how much would it have really cost. I have a moderately priced TV multi-remote controller that can be updated--over the phone--with new firmware/data)

All in all, it shows HP attempting to trade on its past reputation rather than maintaining that reputation


#14

Having the ROM updateable means 1.flash ROM, 2. an I/O port of some kind.

It wouldn't be allowed on the US engineering exam (NCEES). There goes a fair chunk of the market.


#15

Being only a lowly computer consultant I what I know of the NCEES exams is only what I've read here.
I thought they were concerned about alphanumeric programables with IR communication possibilities.
It should possible to put an internal hardwire port in the battery compartment or such and design the internal update for firmware only.
Anyway, errors in firmware giving incorrect answers would also tend to eliminate a market, right?


#16

Do you think more then .1% of potential buyers would read this board? I don't.

". I thought they were concerned about alphanumeric programables with IR communication possibilities."

Its not just IR. Even the TI graphic calculators have been banned because thy have an 'alpha lock' key.

Another problem is, by having a link port and flash rom, some clever person could alter the calculator in a way that would annoy the NCEES. I think the calculator rule is stupid, but theres nothing that that I can do about it.

#17

NCEES will *not* allow any calculator that can store and output text to a PC. Currently, calculators with *any* type of port, IR or serial, are banned.

If HP could design a port that could upload new firmware, yet not allow downloads of stored data, then it *might* be acceptable to NCEES. Or maybe not; NCEES is rather paranoid.

I would imagine that NCEES exam candidates are easily the biggest market for the 33S; it is popular because (1) it is the only NCEES-approved RPN model in current production, and (2) it is the best NCEES-approved programmable model (either RPN or algebraic) in current production. So it makes sense to buy a 33S if you are taking an NCEES exam, and a few obscure bugs aren't going to change that.

But I can't see why anyone other than an NCEES exam candidate (or one of those wacky HP calculator collectors) would buy this model. You can get a comparable scientific calculator, like the Casio FX-115MS Plus, for $15, so why pay $50-60 for the 33S? The only advantages of the 33S are (1) RPN, and (2) programmability, and if you value those features you would be much better off with a 48GII or 49G+.


#18

Are NCEES 'wizards' worried by digital cameras and the like, notably found in a lot of portable phones nowadays ?

I know I'd rather capture an image in less than 1 second than painfully type 2000+ characters per page.

So the calculator restriction sounds dumber and dumber.


#19

I presume portable phones are also banned - otherwise you could call for (outside) help! (And, using text messaging, you don't have to talk at all, or listen, to convey information.)

#20

The rules may vary somewhat from state to state, but you can generally assume that *no* digital devices will be allowed in the exam room, except for approved calculators. Cell phones, with or without cameras, are definitely out. Even digital watches are explicitly banned in some states -- if you bring in a watch, it must be analog.

For example, the California engineering board (at http://www.dca.ca.gov/pels/e_03_new_policies.pdf ) offers the following gentle hints:

**********

ELECTRONIC DEVICES NOT ALLOWED IN EXAMINATION ROOM

Electronic devices including but not limited to cell phones, pagers, personal data assistants (PDAs), digital wristwatches, digital clocks, scanners, cameras or any calculating device which, in the opinion of the Board, may pose a threat to exam security SHALL NOT BE BROUGHT INTO THE EXAMINATION ROOM. If any of these items are brought into the examination room, you will be required to leave them at your own risk in a box or container inside the examination area. The Board assumes no responsibility or liability for any of these items. These items will be returned to you after the examination. If you refuse to surrender the items to the Board's representatives upon request, you will be removed from the examination for failing to comply with the laws and policies regarding examination security and subversion. If you are found to have such devices with you during the examination, the item(s) will be confiscated and you will be removed from the examination. In addition to the items being confiscated, the incident will be reported to the Enforcement Unit of the Board for investigation as a possible violation of the laws regarding examination security and subversion. Penalties for such a violation can include, but are not limited to, your examination being voided and your examination fee being forfeited. LEAVE THESE DEVICES IN YOUR CAR OR AT HOME!

#21

But HP *is* maintaining its reputation. Remeber the many bugs with the 48 models? 35? 32SII? It was never a good idea to be an early adopter without being forced to it. Ok, I don't know the situation with TI, Casio, Sharp etc., maybe HP calculators have fewer bugs. Anyone else knows?

Thomas


Possibly Related Threads…
Thread Author Replies Views Last Post
  WP 34S: IR plotting (revised) Marcus von Cube, Germany 41 10,256 06-12-2012, 05:13 PM
Last Post: Walter B
  48GX Erable etc ever to be updated /revised etc? mr-scorpio 9 2,303 09-27-2011, 04:33 AM
Last Post: mr-scorpio
  Fast and Accurate Trigs (HP-12C Platinum) - Revised version. Gerson W. Barbosa 9 2,535 12-05-2006, 06:10 PM
Last Post: Gerson W. Barbosa
  Integration Times "Old" 33s vs "New" 33s John Smitherman 21 5,081 12-14-2005, 12:04 AM
Last Post: Karl Schneider
  Revised HP12c platinum solutions book now online Gene Wright 1 789 04-29-2004, 06:54 PM
Last Post: Gordon Dyer
  Re: A revised family tree Jose Goncalves 0 635 09-01-2002, 07:43 PM
Last Post: jose goncalves
  Re: A revised family tree Jose Goncalves 0 628 09-01-2002, 07:41 PM
Last Post: jose goncalves
  Re: A revised family tree Ellis Easley 0 593 08-26-2002, 11:28 PM
Last Post: Ellis Easley
  A revised family tree Jose Goncalves 3 1,036 08-26-2002, 05:16 PM
Last Post: Ellis Easley

Forum Jump: