Hewlett-Packard HP-38G

Datasheet legend
Ab/c: Fractions calculation
AC: Alternating current
BaseN: Number base calculations
Card: Magnetic card storage
Cmem: Continuous memory
Cond: Conditional execution
Const: Scientific constants
Cplx: Complex number arithmetic
DC: Direct current
Eqlib: Equation library
Exp: Exponential/logarithmic functions
Fin: Financial functions
Grph: Graphing capability
Hyp: Hyperbolic functions
Ind: Indirect addressing
Intg: Numerical integration
Jump: Unconditional jump (GOTO)
Lbl: Program labels
LCD: Liquid Crystal Display
LED: Light-Emitting Diode
Li-ion: Lithium-ion rechargeable battery
Lreg: Linear regression (2-variable statistics)
mA: Milliamperes of current
Mtrx: Matrix support
NiCd: Nickel-Cadmium rechargeable battery
NiMH: Nickel-metal-hydrite rechargeable battery
Prnt: Printer
RTC: Real-time clock
Sdev: Standard deviation (1-variable statistics)
Solv: Equation solver
Subr: Subroutine call capability
Symb: Symbolic computing
Tape: Magnetic tape storage
Trig: Trigonometric functions
Units: Unit conversions
VAC: Volts AC
VDC: Volts DC
Years of production: 1995-2000 Display type: Graphical display  
New price: USD 79.95   Display color: Blue  
    Display technology: Liquid crystal display 
Size: 7"×3½"×1" Display size: 131×64 pixels
Weight: 10 oz    
    Entry method: Formula entry 
Batteries: 3×"AAA" alkaline Advanced functions: Trig Exp Hyp Lreg Grph Solv Intg Cmem Snd Mtrx 
External power:   Memory functions:  
I/O: Serial port, IR port     
    Programming model: HP Aplets 
Precision: 12 digits Program functions: Jump Cond Subr Lbl Ind  
Memories: 32(0) kilobytes Program display: Text display  
Program memory: 32 kilobytes Program editing: HP Aplets  
Chipset: Saturn   Forensic result:  

hp38g.jpg (24451 bytes)The calculator with Aplets. Hmmm, I am not exactly sure what to think of this concept... I think I prefer the much "purer" programming model of User RPL on the HP-48SX. That said, the HP-38G is a quite capable "do-everything" calculator on its own right, clearly superior conceptually to calculators with similar capabilities from other manufacturers.

For instance, just like the HP-48SX, the HP-38G provides fully integrated support for complex variables. Most built-in functions, including trigonometric, exponential, and logarithmic functions, support complex arguments or arguments yielding a complex result.

One of the few exceptions is the generalized factorial function, which works only for real arguments. All the more reason for building a decent Gamma functionimplementation for this machine!

As it turns out, the most flexible method for adding the Gamma function seems to be through the Function Aplet. You can define the function F1 to read as follows:

F1(X)=IFTE(RE(X)<0,F1(X+1)/X,sqrt(2pi)/X*
           (1.00000000019+76.1800917295/(X+1)-
            86.5053203294/(X+2)+24.0140982408/(X+3)-
            1.23173957245/(X+4)+1.20865097387E-3/(X+5)-
            5.39523938495E-6/(X+6))
           *(X+5.5)^(X+.5)*EXP(-X-5.5))

Later, as long as the Function Aplet (or a copy you have created, in which this definition is stored) is active, you'll be able to obtain the Gamma function value for any argument by typing, for instance, F1(.5). This also works when the argument is complex; e.g., F1((0,1)) evaluates to the Gamma function of i.

Incidentally, the Function Aplet makes it real easy to plot the Gamma function. If you set the plot's X-range to -4.1..4.1, the Y-range to -6.5 to 6.5, the resolution to Detail, and turn off the Connect setting, this is what you should see on the calculator's display:

Plot of the Gamma function