HP (Hewlett Packard) Prime Graphing Calculator NW280AAABA User Manual |
HP Prime Graphing Calculator
User Guide
Copyright © 2013 Hewlett-Packard Development Company, L.P.
Reproduction, adaptation, or translation of this manual is prohibited without prior written per-
mission of Hewlett-Packard Company, except as allowed under the copyright laws.
Printing History
Edition 1
July 2013
Contents
Preface
Manual conventions ................................................................ 9
Notice ................................................................................. 10
1 Getting started
Before starting ...................................................................... 11
On/off, cancel operations...................................................... 12
The display .......................................................................... 13
Sections of the display ...................................................... 14
Navigation........................................................................... 16
Touch gestures ................................................................. 17
The keyboard ....................................................................... 18
Context-sensitive menu ...................................................... 19
Entry and edit keys................................................................ 20
Shift keys......................................................................... 22
Adding text...................................................................... 23
Math keys ....................................................................... 24
Menus ................................................................................. 28
Toolbox menus................................................................. 29
Input forms ........................................................................... 29
System-wide settings.............................................................. 30
Home settings .................................................................. 30
Specifying a Home setting................................................. 34
Mathematical calculations...................................................... 35
Choosing an entry type..................................................... 36
Entering expressions ......................................................... 37
Reusing previous expressions and results............................. 40
Storing a value in a variable.............................................. 42
Complex numbers ................................................................. 43
Sharing data ........................................................................ 44
Online Help ......................................................................... 45
2 Reverse Polish Notation (RPN)
History in RPN mode ............................................................. 48
Sample calculations............................................................... 49
Manipulating the stack........................................................... 51
Contents
1
3 Computer algebra system (CAS)
CAS view.............................................................................53
CAS calculations...................................................................54
Settings ................................................................................55
4 Exam Mode
Modifying the default configuration.....................................62
Creating a new configuration.............................................63
Activating Exam Mode...........................................................64
Cancelling exam mode......................................................66
Modifying configurations........................................................66
To change a configuration .................................................66
To return to the default configuration ...................................67
Deleting configurations......................................................67
5 An introduction to HP apps
Application Library ................................................................71
App views ............................................................................72
Symbolic view..................................................................73
Symbolic Setup view .........................................................74
Plot view..........................................................................74
Plot Setup view.................................................................76
Numeric view...................................................................77
Numeric Setup view..........................................................78
Quick example......................................................................79
Common operations in Symbolic view......................................81
Symbolic view: Summary of menu buttons............................86
Common operations in Symbolic Setup view.............................87
Common operations in Plot view ............................................88
Zoom ..............................................................................88
Trace...............................................................................94
Plot view: Summary of menu buttons....................................96
Common operations in Plot Setup view.....................................96
Configure Plot view...........................................................96
Common operations in Numeric view ....................................100
Zoom ............................................................................100
Evaluating......................................................................102
Custom tables.................................................................103
Numeric view: Summary of menu buttons...........................104
Common operations in Numeric Setup view............................105
Combining Plot and Numeric Views.......................................106
Adding a note to an app......................................................106
Creating an app..................................................................107
App functions and variables .................................................109
2
Contents
6 Function app
Getting started with the Function app .................................... 111
Analyzing functions............................................................. 118
The Function Variables......................................................... 122
Summary of FCN operations ................................................ 124
7 Advanced Graphing app
Getting started with the Advanced Graphing app ................... 126
Plot Gallery ........................................................................ 134
Exploring a plot from the Plot Gallery................................ 134
8 Geometry
Getting started with the Geometry app .................................. 135
Plot view in detail................................................................ 141
Plot Setup view............................................................... 146
Symbolic view in detail........................................................ 148
Symbolic Setup view....................................................... 150
Numeric view in detail ........................................................ 150
Geometric objects............................................................... 153
Geometric transformations ................................................... 161
Geometry functions and commands....................................... 165
Symbolic view: Cmds menu............................................. 165
Numeric view: Cmds menu.............................................. 182
Other Geometry functions................................................ 188
9 Spreadsheet
Getting started with the Spreadsheet app............................... 193
Basic operations ................................................................. 197
Navigation, selection and gestures................................... 197
Cell references............................................................... 198
Cell naming................................................................... 198
Entering content ............................................................. 199
Copy and paste ............................................................. 202
External references.............................................................. 202
Referencing variables...................................................... 203
Using the CAS in spreadsheet calculations............................. 204
Buttons and keys................................................................. 205
Formatting options .............................................................. 206
Spreadsheet functions.......................................................... 208
10 Statistics 1Var app
Getting started with the Statistics 1Var app ............................ 209
Entering and editing statistical data....................................... 213
Computed statistics.............................................................. 216
Plotting .............................................................................. 217
Contents
3
Plot types .......................................................................217
Setting up the plot (Plot Setup view)...................................219
Exploring the graph ........................................................219
11 Statistics 2Var app
Getting started with the Statistics 2Var app.............................221
Entering and editing statistical data .......................................226
Numeric view menu items ................................................227
Defining a regression model .................................................229
Computed statistics..............................................................231
Plotting statistical data..........................................................232
Plot view: menu items ......................................................234
Plot setup.......................................................................234
Predicting values.............................................................235
Troubleshooting a plot.....................................................236
12 Inference app
Getting started with the Inference app....................................237
Importing statistics ...............................................................241
Hypothesis tests...................................................................243
One-Sample Z-Test ..........................................................244
Two-Sample Z-Test ..........................................................245
One-Proportion Z-Test......................................................246
Two-Proportion Z-Test ......................................................247
One-Sample T-Test ..........................................................248
Two-Sample T-Test...........................................................249
Confidence intervals ............................................................251
One-Sample Z-Interval .....................................................251
Two-Sample Z-Interval......................................................251
One-Proportion Z-Interval .................................................252
Two-Proportion Z-Interval..................................................253
One-Sample T-Interval......................................................254
Two-Sample T-Interval......................................................254
13 Solve app
Getting started with the Solve app.........................................257
One equation.................................................................258
Several equations ...........................................................261
Limitations......................................................................262
Solution information.............................................................263
14 Linear Solver app
Getting started with the Linear Solver app...............................265
Menu items.........................................................................267
4
Contents
15 Parametric app
Getting started with the Parametric app ................................. 269
16 Polar app
Getting started with the Polar app......................................... 275
17 Sequence app
Getting started with the Sequence app .................................. 279
Another example: Explicitly-defined sequences ....................... 283
18 Finance app
Getting Started with the Finance app..................................... 285
Cash flow diagrams ............................................................ 287
Time value of money (TVM).................................................. 288
TVM calculations: Another example....................................... 289
Calculating amortizations..................................................... 291
19 Triangle Solver app
Getting started with the Triangle Solver app ........................... 293
Choosing triangle types ....................................................... 295
Special cases ..................................................................... 296
20 The Explorer apps
Linear Explorer app............................................................. 297
Quadratic Explorer app....................................................... 300
Trig Explorer app................................................................ 302
21 Functions and commands
Keyboard functions ............................................................. 307
Math menu......................................................................... 310
Numbers....................................................................... 311
Arithmetic...................................................................... 312
Trigonometry.................................................................. 314
Hyperbolic .................................................................... 315
Probability..................................................................... 315
List................................................................................ 320
Matrix........................................................................... 321
Special ......................................................................... 321
CAS menu.......................................................................... 322
Algebra ........................................................................ 322
Calculus........................................................................ 323
Solve ............................................................................ 328
Rewrite.......................................................................... 330
Integer .......................................................................... 334
Polynomial..................................................................... 337
Contents
5
Plot ...............................................................................342
App menu ..........................................................................343
Function app functions.....................................................343
Solve app functions.........................................................344
Spreadsheet functions......................................................345
Statistics 1Var app functions.............................................363
Statistics 2Var app functions.............................................363
Inference app functions....................................................364
Finance app functions .....................................................367
Linear Solver app functions ..............................................369
Triangle Solver app functions ...........................................369
Linear Explorer functions..................................................371
Quadratic Explorer functions............................................371
Common app functions....................................................371
Ctlg menu...........................................................................372
Creating your own functions .................................................425
22 Variables
Home variables...................................................................431
App variables .....................................................................432
Function app variables ....................................................432
Geometry app variables..................................................433
Spreadsheet app variables...............................................433
Solve app variables ........................................................433
Advanced Graphing app variables...................................434
Statistics 1Var app variables............................................435
Statistics 2Var app variables............................................437
Inference app variables ...................................................439
Parametric app variables.................................................441
Polar app variables.........................................................442
Finance app variables.....................................................442
Linear Solver app variables..............................................443
Triangle Solver app variables...........................................443
Linear Explorer app variables...........................................443
Quadratic Explorer app variables.....................................443
Trig Explorer app variables..............................................444
Sequence app variables ..................................................444
23 Units and constants
Units..................................................................................445
Unit calculations..................................................................446
Unit tools............................................................................448
Physical constants................................................................449
List of constants...............................................................451
6
Contents
24 Lists
Create a list in the List Catalog ............................................. 453
The List Editor................................................................. 455
Deleting lists....................................................................... 457
Lists in Home view............................................................... 457
List functions....................................................................... 459
Finding statistical values for lists............................................ 462
25 Matrices
Creating and storing matrices............................................... 466
Working with matrices......................................................... 467
Matrix arithmetic................................................................. 471
Solving systems of linear equations ....................................... 474
Matrix functions and commands............................................ 476
Matrix functions .................................................................. 477
Examples....................................................................... 487
26 Notes and Info
The Note Catalog ............................................................... 489
The Note Editor .................................................................. 490
27 Programming
The Program Catalog .......................................................... 498
Creating a new program ..................................................... 501
The Program Editor......................................................... 501
The HP Prime programming language ................................... 511
The User Keyboard: Customizing key presses .................... 515
App programs ............................................................... 519
Program commands ............................................................ 525
Commands under the Tmplt menu..................................... 525
Block ............................................................................ 525
Branch .......................................................................... 526
Loop ............................................................................. 527
Variable........................................................................ 530
Function ........................................................................ 531
Commands under the Cmds menu .................................... 531
Strings .......................................................................... 531
Drawing........................................................................ 534
Matrix........................................................................... 541
App Functions................................................................ 543
Integer .......................................................................... 544
I/O .............................................................................. 546
More ............................................................................ 551
Variables and Programs.................................................. 553
Contents
7
28 Basic Integer arithmetic
The default base..................................................................576
Changing the default base...............................................577
Examples of integer arithmetic...............................................578
Integer manipulation............................................................579
Base functions.....................................................................580
A Glossary
B Troubleshooting
Calculator not responding ....................................................585
To reset .........................................................................585
If the calculator does not turn on.......................................585
Operating limits ..................................................................586
Status messages ..................................................................586
C Product Regulatory Information
Federal Communications Commission Notice..........................589
European Union Regulatory Notice........................................591
Index ...................................................................................595
8
Contents
Preface
Manual conventions
The following conventions are used in this manual to
represent the keys that you press and the menu options
that you choose to perform operations.
•
•
A key that initiates an unshifted function is
represented by an image of that key:
e,B,H, etc.
A key combination that initiates a shifted unction (or
inserts a character) is represented by the appropriate
shift key (S or A) followed by the key for that
function or character:
Sh initiates the natural exponential function
and Az inserts the pound character (#)
The name of the shifted function may also be given in
parentheses after the key combination:
SJ(Clear), SY (Setup)
•
•
•
A key pressed to insert a digit is represented by that
digit:
5, 7, 8, etc.
All fixed on-screen text—such as screen and field
names—appear in bold:
CAS Settings, XSTEP, Decimal Mark, etc.
A menu item selected by touching the screen is
represented by an image of that item:
,
,
.
Note that you must use your finger to select a menu
item. Using a stylus or something similar will not
select whatever is touched.
Preface
9
•
Items you can select from a list, and characters on the
entry line, are set in a non-proportional font, as
follows:
Function, Polar, Parametric, Ans, etc.
•
•
Cursor keys are represented by =, \, >, and <.
You use these keys to move from field to field on a
screen, or from one option to another in a list of
options.
Error messages are enclosed in quotation marks:
“Syntax Error”
Notice
This manual and any examples contained herein are
provided as-is and are subject to change without notice.
Except to the extent prohibited by law, Hewlett-Packard
Company makes no express or implied warranty of any
kind with regard to this manual and specifically disclaims
the implied warranties and conditions of merchantability
and fitness for a particular purpose and Hewlett-Packard
Company shall not be liable for any errors or for
incidental or consequential damage in connection with
the furnishing, performance or use of this manual and the
examples herein.
1994–1995, 1999–2000, 2003–2006, 2010–2013
Hewlett-Packard Development Company, L.P.
The programs that control your HP Prime are copyrighted
and all rights are reserved. Reproduction, adaptation, or
translation of those programs without prior written
permission from Hewlett-Packard Company is also
prohibited.
For hardware warranty information, please refer to the
HP Prime Quick Start Guide.
Product Regulatory and Environment Information is
provided on the CD shipped with this product.
10
Preface
1
Getting started
The HP Prime Graphing Calculator is an easy-to-use yet
powerful graphing calculator designed for secondary
mathematics education and beyond. It offers hundreds of
functions and commands, and includes a computer
algebra system (CAS) for symbolic calculations.
In addition to an extensive library of functions and
commands, the calculator comes with a set of HP apps.
An HP app is a special application designed to help you
explore a particular branch of mathematics or to solve a
problem of a particular type. For example, there is a HP
app that will help you explore geometry and another to
help you explore parametric equations. There are also
apps to help you solve systems of linear equations and to
solve time-value-of-money problems.
The HP Prime also has its own programming language
you can use to explore and solve mathematical problems.
Functions, commands, apps and programming are
covered in detail later in this guide. In this chapter, the
general features of the calculator are explained, along
with common interactions and basic mathematical
operations.
Before starting
Charge the battery fully before using the calculator for the
first time. To charge the battery, either:
•
Connect the calculator to a computer using the USB
cable that came in the package with your HP Prime.
(The PC needs to be on for charging to occur.)
•
Connect the calculator to a wall outlet using the HP-
provided wall adapter.
Getting started
11
When the calculator is on, a battery symbol appears in
the title bar of the screen. Its appearance will indicate how
much power the battery has. A flat battery will take
approximately 4 hours to become fully charged.
Battery Warning
•
To reduce the risk of fire or burns, do not
disassemble, crush or puncture the battery; do not
short the external contacts; and do not dispose of the
battery in fire or water.
•
To reduce potential safety risks, only use the battery
provided with the calculator, a replacement battery
provided by HP, or a compatible battery
recommended by HP.
•
•
Keep the battery away from children.
If you encounter problems when charging the
calculator, stop charging and contact HP
immediately.
Adapter Warning
•
•
To reduce the risk of electric shock or damage to
equipment, only plug the AC adapter into an AC
outlet that is easily accessible at all times.
To reduce potential safety risks, only use the AC
adapter provided with the calculator, a replacement
AC adapter provided by HP, or an AC adapter
purchased as an accessory from HP.
On/off, cancel operations
To turn on
Press
to turn on the calculator.
O
To cancel
When the calculator is on, pressing the J key cancels
the current operation. For example, it will clear whatever
you have entered on the entry line. It will also close a
menu and a screen.
To turn off
Press
(Off) turn the calculator off.
SO
To save power, the calculator turns itself off after several
minutes of inactivity. All stored and displayed information
is saved.
12
Getting started
The Home View
Home view is the starting point for many calculations.
Most mathematical functions are available in the Home
view. Some additional functions are available in the
computer algebra system (CAS). A history of your
previous calculations is retained and you can re-use a
previous calculation or its result.
To display Home view, press
.
H
The CAS View
CAS view enables you to perform symbolic calculations. It
is largely identical to Home view—it even has its own
history of past calculations—but the CAS view offers some
additional functions.
To display CAS view, press
.
K
Protective cover
The calculator is provided with a slide cover to protect the
display and keyboard. Remove the cover by grasping
both sides of it and pulling down.
You can reverse the slide cover and slide it onto the back
of the calculator. This will ensure that you do not misplace
the cover while you are using the calculator.
To prolong the life of the calculator, always place the
cover over the display and keyboard when you are not
using the calculator.
The display
To adjust the
brightness
To adjust the brightness of the display, press and hold
O, then press the + or
key to increase or
w
decrease the brightness. The brightness will change with
each press of the + or key.
w
To clear the display
•
•
Press J or O to clear the entry line.
Press SJ (Clear) to clear the entry line and the
history.
Getting started
13
Sections of the display
Title bar
History
Entry line
Menu buttons
Home view has four sections (shown above). The title bar
shows either the screen name or the name of the app you
are currently using—Functionin the example above. It
also shows the time, a battery power indicator, and a
number of symbols that indicate various calculator
settings. These are explained below. The history displays
a record of your past calculations. The entry line
displays the object you are currently entering or
modifying. The menu buttons are options that are
relevant to the current display. These options are selected
by tapping the corresponding menu button. You close a
menu, without making a selection from it, by pressing
J.
Annunciators. Annunciators are symbols or characters
that appear in the title bar. They indicate current settings,
and also provide time and battery power information.
Annunciator
Meaning
[Lime green]
The angle mode setting is currently
degrees.
π
[Lime green]
The angle mode setting is currently
radians.
S [Cyan]
The Shift key is active. The function
shown in blue on a key will be
activated when a key is pressed.
Press S to cancel shift mode.
14
Getting started
Annunciator
Meaning (Continued)
CAS [White]
You are working in CAS view, not
Home view.
A...Z [orange]
In Home view
The Alpha key is active. The charac-
ter shown in orange on a key will
be entered in uppercase when a
key is pressed. See “Adding text”
on page 23 for more information.
In CAS view
The Alpha–Shift key combination is
active. The character shown in
orange on a key will be entered in
uppercase when a key is pressed.
See “Adding text” on page 23 for
more information.
a...z [orange]
In Home view
The Alpha–Shift key combination is
active. The character shown in
orange on a key will be entered in
lowercase when a key is pressed.
See “Adding text” on page 23 for
more information.
In CAS view
The Alpha key is active. The charac-
be entered in lowercase when a key
is pressed. See “Adding text” on
page 23 for more information.
U
[Yellow]
The user keyboard is active. All the
following key presses will enter the
customized objects associated with
the key. See “The User Keyboard:
Customizing key presses” on page
515 for more information.
Getting started
15
Annunciator
Meaning (Continued)
1U
[Yellow]
The user keyboard is active. The
next key press will enter the custom-
ized object associated with the key.
See “The User Keyboard: Customiz-
ing key presses” on page 515 for
more information.
[Time]
Current time. The default is 24-hour
format, but you can choose AM–PM
format. See “Home settings” on
page 30 for more information.
[Green with
gray border]
Battery-charge indicator.
Navigation
The HP Prime offers two modes of navigation: touch and
keys. In many cases, you can tap on an icon, field, menu,
or object to select (or deselect) it. For example, you can
open the Function app by tapping once on its icon in the
Application Library. However, to open the Application
Library, you will need to press a key: I.
Instead of tapping an icon in the Application Library, you
can also press the cursor keys—=,\,<,>—until the
app you want to open is highlighted, and then press
E. In the Application Library, you can also type the
first one or two letters of an app’s name to highlight the
app. Then either tap the app’s icon or press E to
open it.
Sometimes a touch or key–touch combination is available.
For example, you can deselect a toggle option either by
tapping twice on it, or by using the arrow keys to move to
the field and then tapping a touch button along the bottom
of the screen (in this case
).
Note that you must use your finger or a capacitive stylus
to select an item by touch.
16
Getting started
Touch gestures
In addition to selection by tapping, there are other touch-
related operations available to you:
To quickly move from page to page, flick:
Place a finger on the screen and quickly swipe it in the
desired direction (up or down).
To pan, drag your finger horizontally or vertically across
the screen.
To quickly zoom in, make an open pinch:
Place the thumb and a finger close together on the
screen and move them apart. Only lift them from the
screen when you reach the desired magnification.
To quickly zoom out, make an closed pinch:
Place the thumb and a finger some distance apart on
the screen and move them toward each other. Only lift
them from the screen when you reach the desired
magnification.
Note that pinching to zoom only works in applications
that feature zooming (such as where graphs are plotted).
In other applications, pinching will do nothing, or do
something other than zooming. For example, in the
Spreadsheet app, pinching will change the width of a
column or the height of a row.
Getting started
17
The keyboard
The numbers in the legend below refer to the parts of the
keyboard described in the illustration on the next page.
Number Feature
1
2
LCD and touch-screen: 320 × 240 pixels
Context-sensitive touch-button menu
HP Apps keys
3
4
Home view and preference settings
Common math and science functions
Alpha and Shift keys
5
6
7
On, Cancel and Off key
List, matrix, program, and note catalogs
Last Answer key (Ans)
8
9
10
11
12
13
14
15
16
17
Enter key
Backspace and Delete key
Menu (and Paste) key
CAS (and CAS preferences) key
View (and Copy) key
Escape (and Clear) key
Help key
Rocker wheel (for cursor movement)
18
Getting started
1
2
17
16
3
4
15
14
13
12
11
5
10
9
6
7
8
Context-sensitive menu
A context-sensitive menu occupies the bottom line of the
screen.
The options available depend on the context, that is, the
view you are in. Note that the menu items are activated by
touch.
Getting started
19
There are two types of buttons on the context-sensitive
menu:
•
menu button: tap to display a pop-up menu. These
buttons have square corners along their top (such as
in the illustration above).
•
command button: tap to initiate a command. These
buttons have rounded corners (such as
illustration above).
in the
Entry and edit keys
The primary entry and edit keys are:
Keys
Purpose
N to r
Enter numbers
or J
Cancels the current operation or
clears the entry line.
O
Enters an input or executes an
E
operation. In calculations,
acts like “=”. When
E
or
is present as a menu key,
acts the same as pressing
E
or
.
For entering a negative number. For
example, to enter –25, press
Q25. Note: this is not the same
operation that is performed by the
subtraction key (w).
Q
F
d
Math template: Displays a palette
of pre-formatted templates repre-
senting common arithmetic expres-
sions.
Enters the independent variable
(that is, either X, T, or N, depend-
ing on the app that is currently
active).
20
Getting started
Keys
Purpose (Continued)
Sv
Relations palette: Displays a palette
of comparison operators and Bool-
ean operators.
Sr
Sc
C
Special symbols palette: Displays a
palette of common math and Greek
characters.
Automatically inserts the degree,
minute, or second symbol accord-
ing to the context.
Backspace. Deletes the character to
the left of the cursor. It will also
return the highlighted field to its
default value, if it has one.
C
Delete. Deletes the character to the
right of the cursor.
S
(Clear)
Clears all data on the screen
(including the history). On a set-
tings screen—for example Plot
Setup—returns all settings to their
default values.
SJ
Cursor keys: Moves the cursor
<>=\
around the display. Press
to
S\
move to the end of a menu or
screen, or to move to the
S=
start. (These keys represent the
directions of the rocker wheel.)
Getting started
21
Keys
Purpose (Continued)
Displays all the available
Sa
characters. To enter a character, use
the cursor keys to highlight it, and
then tap
. To select multiple
characters, select one, tap
and continue likewise before
,
pressing
. There are many
pages of characters. You can jump
to a particular Unicode block by
tapping
and selecting the
block. You can also flick from page
to page.
Shift keys
There are two shift keys that you use to access the
operations and characters printed on the bottom of the
keys:
and
.
S
A
Key
Purpose
Press S to access the operations
printed in blue on a key. For
S
instance, to access the settings for
Home view, press SH.
A
Press the A key to access the
characters printed in orange on a
key. For instance, to type Z in Home
view, press
and then press
A
y. For a lowercase letter, press
AS and then the letter. In CAS
view,
and another key gives a
A
lowercase letter, and AS and
another letter gives an uppercase
letter.
22
Getting started
Adding text
The text you can enter directly is shown by the orange
characters on the keys. These characters can only be
entered in conjunction with the A and S keys. Both
uppercase and lowercase characters can be entered, and
the method is exactly the opposite in CAS view than in
Home view.
Keys
Effect in Home view
Effect in CAS view
Makes the next charac- Makes the next charac-
A
ter uppercase
ter lowercase
Lock mode: makes all
characters uppercase
until the mode is reset
Lock mode: makes all
characters lowercase until
the mode is reset
AA
S
With uppercase locked, With lowercase locked,
makes the next character makes the next character
lowercase
uppercase
Makes the next charac- Makes the next charac-
AS
ter lowercase
ter uppercase
Lock mode: makes all
characters lowercase until characters uppercase
the mode is reset until the mode is reset
Lock mode: makes all
AS
A
With lowercase locked, With uppercase locked,
makes the next character makes the next character
S
uppercase
lowercase
With lowercase locked, With uppercase locked,
SA
makes all characters
makes all characters low-
uppercase until the mode ercase until the mode is
is reset
reset
Reset uppercase lock
mode
Reset lowercase lock
mode
A
Reset lowercase lock
mode
Reset uppercase lock
mode
AA
AA
You can also enter text (and other characters) by
displaying the characters palette:
.
Sa
Getting started
23
Math keys
The most common math functions have their own keys on
the keyboard (or a key in combination with the S key).
Example 1: To calculate SIN(10), press e10 and
press
. The answer displayed is –0.544… (if your
E
angle measure setting is radians).
Example 2: To find the square root of 256, press
Sj 256 and press
. The answer displayed
E
is 16. Notice that the S key initiates the operator
represented in blue on the next key pressed (in this case √
on the j key).
“Functions and commands”, starting on page 305).
Note that the order in which you enter operands and
operators is determined by the entry mode. By default, the
entry mode is textbook, which means that you enter
operands and operators just as you would if you were
writing the expression on paper. If your preferred entry
mode is Reverse Polish Notation, the order of entry is
different. (See chapter 2, “Reverse Polish Notation (RPN)”,
starting on page 47.)
Math
template
The math template key (F)
helps you insert the framework
for common calculations (and for
vectors, matrices, and
hexagesimal numbers). It
displays a palette of pre-formatted outlines to which you
add the constants, variables, and so on. Just tap on the
template you want (or use the arrow keys to highlight it
and press E). Then enter the components needed
to complete the calculation.
24
Getting started
Example: Suppose you want to find the cube root of
945:
1. In Home view, press F.
2. Select
.
The skeleton or framework for your calculation now
appears on the entry line:
3. Each box on the template needs to be completed:
3>945
4. Press E to display the result: 9.813…
The template palette can save you a lot of time, especially
with calculus calculations.
You can display the palette at any stage in defining an
expression. In other words, you don’t need to start out with
a template. Rather, you can embed one or more templates
at any point in the definition of an expression.
Math
shortcuts
As well as the math template,
there are other similar screens
that offer a palette of special
characters. For example,
pressing Sr displays the
special symbols palette, shown at the right. Select a
character by tapping it (or scrolling to it and pressing
E).
A similar palette—the relations
palette—is displayed if you press
Sv. The palette displays operators
useful in math and programming. Again,
just tap the character you want.
Other math shortcut keys include d. Pressing this key
inserts an X, T, , or N depending on what app you are
using. (This is explained further in the chapters describing
the apps.)
Similarly, pressing Sc enters a degree, minute, or
second character. It enters ° if no degree symbol is part of
your expression; enters ′ if the previous entry is a value in
Getting started
25
degrees; and enters ″ if the previous entry is a value in
minutes. Thus entering:
36Sc40Sc20Sc
yields 36°40′20″. See “Hexagesimal numbers” on page
26 for more information.
Fractions
The fraction key (c) cycles through thee varieties of
fractional display. If the current answer is the decimal
fraction 5.25, pressing c converts the answer to the
common fraction 21/4. If you press c again, the
answer is converted to a mixed number (5 + 1/4). If
pressed again, the display returns to the decimal fraction
(5.25).
The HP Prime will
approximatefractionand
mixed number
representations in cases
where it cannot find
exact ones. For example,
enter 5 to see the
decimal approximation:
219602
-----------------
2.236…. Press c once to see
and again to see
98209
23184
--------------
2 + 98209 . Pressing c a third time will cycle back to the
original decimal representation.
Hexagesimal
numbers
Any decimal result can de displayed in hexagesimal
format; that is, in units subdivided into groups of 60. This
includes degrees, minutes, and seconds as well as hours,
11
-----
minutes, and seconds. For example, enter
to see the
8
decimal result: 1.375. Now press S c to see
1°22′ 30. Press S c again to return to the decimal
representation.
HP Prime will produce the best approximation in cases
where an exact result is not possible. Enter 5 to see the
decimal approximation: 2.236… Press S c to see
2°14′ 9.84472.
26
Getting started
Note that the degree and minute entries must be integers,
and the minute and second entries must be positive.
Decimals are not allowed, except in the seconds.
Note too that the HP
Prime treats a value in
hexgesimal format as a
single entity. Hence any
operation performed on
a hexagesimal value is
performed on the entire
value. For example, if
you enter 10°25′ 26″ 2, the whole value is squared, not just
the seconds component. The result in this case is
108°39′ 26.8544″ .
EEX key
(powers of
10)
Numbers like 5 104 and 3.21 10–7 are expressed in
scientific notation, that is, in terms of powers of ten. This is
simpler to work with than 50000 or 0.000000321. To
enter numbers like these, use the B functionality. This is
easier than using
10
.
s
k
Example: Suppose you want to calculate
4 10–136 1023
----------------------------------------------------
3 10–5
First select Scientificas the number format.
1. Open the Home Settings window.
SH
2. Select Scientific
from the Number
Format menu.
3. Return home: H
4. Enter 4BQ13
s6B23n
3BQ5
Getting started
27
5. Press E
The result is
8.0000E15. This is
equivalent to
8 × 1015.
Menus
A menu offers you a
choice of items. As in the
case shown at the right,
some menus have sub-
menus and sub-sub-
menus.
To select from a
menu
There are two techniques for selecting an item from a
menu:
•
•
direct tapping and
using the arrow keys to highlight the item you want
and then either tapping
or pressing
.
E
Note that the menu of buttons along the bottom of the
screen can only be activated by tapping.
Shortcuts
•
•
•
Press
when you are at the top of the menu to
=
immediately display the last item in the menu.
Press when you are at the bottom of the menu to
immediately display the first item in the menu.
\
Press S
to jump straight to the bottom of the
\
menu.
•
•
Press S
to jump straight to the top of the menu.
=
Enter the first few characters of the item’s name to
jump straight to that item.
•
Enter the number of the item shown in the menu to
jump straight to that item.
28
Getting started
To close a menu
A menu will close automatically when you select an item
from it. If you want to close a menu without selecting
anything from it, press
or J.
O
Toolbox menus
The Toolbox menus (D) are a collection of menus
offering functions and commands useful in mathematics
and programming. The Math, CAS, and Catlg menus
offer over 400 functions and commands. The items on
these menus are described in detail in chapter 21,
“Functions and commands”, starting on page 305.
Input forms
An input form is a screen that provides one or more fields
for you to enter data or select an option. It is another name
for a dialog box.
•
If a field allows you to enter data of your choice, you
can select it, add your data, and tap . (There
is no need to tap first.)
•
If a field allows you to choose an item from a menu,
you can tap on it (the field or the label for the field),
tap on it again to display the options, and tap on the
item you want. (You can also choose an item from an
open list by pressing the cursor keys and pressing
E when the option you want is highlighted.)
•
If a field is a toggle field—one that is either selected
or not selected—tap on it to select the field and tap
on it again to select the alternate option.
(Alternatively, select the field and tap
.)
The illustration at the right
shows an input form with
all three types of field:
Calculator Name is a
free-form data-entry field,
Font Size provides a
menu of options, and
Textbook Display is a
toggle field.
Getting started
29
Reset input
form fields
To reset a field to its default value, highlight the field and
press C. To reset all fields to their default values, press
SJ (Clear).
System-wide settings
System-wide settings are values that determine the
appearance of windows, the format of numbers, the scale
of plots, the units used by default in calculations, and
much more.
There are two system-wide settings: Home settings and
CAS settings. Home settings control Home view and the
apps. CAS settings control how calculations are done in
the computer algebra system. CAS settings are discussed
in chapter 3.
Although Home settings control the apps, you can
override certain Home settings once inside an app. For
example, you can set the angle measure to radians in the
Home settings but choose degrees as the angle measure
once inside the Polar app. Degrees then remains the angle
measure until you open another app that has a different
angle measure.
Home settings
You use the Home
Settings input form to
specify the settings for
Home view (and the
default settings for the
apps). Press SH
(Settings) to open the
Home Settings input
form. There are four pages of settings.
30
Getting started
Page 1
Setting
Options
Angle Measure Degrees: 360 degrees in a circle.
Radians: 2 radians in a circle.
The angle mode you set is the angle
setting used in both Home view and
the current app. This is to ensure
that trigonometric calculations done
in the current app and Home view
give the same result.
Number
Format
The number format you set is the for-
mat used in all Home view calcula-
tions.
Standard: Full-precision display.
Fixed: Displays results rounded to
a number of decimal places. If you
choose this option, a new field
appears for you to enter the number
of decimal places. For example,
123.456789becomes 123.46 in
Fixed 2format.
Scientific: Displays results with an
one-digit exponent to the left of the
decimal point, and the specified
number of decimal places. For
example, 123.456789becomes
1.23E2 in Scientific 2
format.
Engineering: Displays results with
an exponent that is a multiple of 3,
and the specified number of
significant digits beyond the first
one. Example: 123.456E7
becomes 1.23E9 in Engineer-
ing 2format.
Getting started
31
Setting
Options (Continued)
Entry
Textbook: An expression is
entered in much the same way as if
you were writing it on paper (with
some arguments above or below
others). In other words, your entry
could be two-dimensional.
Algebraic: An expression is
entered on a single line. Your entry
is always one-dimensional.
RPN: Reverse Polish Notation. The
arguments of the expression are
entered first followed by the
operator. The entry of an operator
automatically evaluates what has
already been entered.
Integers
Sets the default base for integer
arithmetic: binary, octal, decimal,
or hex. You can also set the number
of bits per integer and whether inte-
gers are to be signed.
Complex
Choose one of two formats for
displaying complex numbers:
(a,b)or a+b*i.
To the right of this field is an
unnamed checkbox. Check it if you
want to allow complex output from
real input.
Language
Choose the language you want for
menus, input forms, and the online
help.
32
Getting started
Setting
Options (Continued)
Decimal Mark Dotor Comma. Displays a number
as 12456.98 (dot mode) or as
12456,98 (comma mode). Dot
mode uses commas to separate
elements in lists and matrices, and
to separate function arguments.
Comma mode uses semicolons as
separators in these contexts.
Page 2
Setting
Options
Font Size
Choose between small, medium,
and large font for general display.
Calculator
Name
Enter a name for the calculator.
Textbook
Display
If selected, expressions and results
are displayed in textbook format
(that is, much as you would see in
textbooks). If not selected, expres-
sions and results are displayed in
algebraic format (that is, in one-
dimensional format). For example,
4 5
is displayed as [[4,5],[6,2]]
in6a2lgebraic format.
Menu Display
This setting determines whether the
commands on the Math and CAS
menus are presented descriptively
or in common mathematical
shorthand. The default is to provide
the descriptive names for the
functions. If you prefer the functions
to be presented in mathematical
shorthand, deselect this option.
Getting started
33
Setting
Options (Continued)
Time
Set the time and choose a format:
24-hour or AM–PM format. The
checkbox at the far right lets you
choose whether to show or hide the
time on the title bar of screens.
Date
Set the date and choose a format:
YYYY/MM/DD, DD/MM/YYYY, or
MM/DD/YYYY.
Color Theme
Light: black text on a light back-
ground
Dark: white text on a dark back-
ground
At the far right is a option for you to
choose a color for the shading
(such as the color of the highlight).
Page 3
Page 3 of the Home Settings input form is for setting
Exam mode. This mode enables certain functions of the
calculator to be disabled for a set period, with the
disabling controlled by a password. This feature will
primarily be of interest to those who supervise
examinations and who need to ensure that the calculator
is used appropriately by students sitting an examination.
It is described in detail in chapter 4, “Exam Mode”,
starting on page 61.
Page 4
information.
Specifying a Home setting
This example demonstrates how to change the number
format from the default setting—Standard—to Scientific
with two decimal places.
34
Getting started
1. Press SH
(Settings) to open the
Home Settings
input form.
The Angle
Measure field is
highlighted.
2. Tap on Number
Format (either the field label or the field). This selects
the field. (You could also have pressed \ to select
it.)
3. Tap on Number
Format again. A
menu of number
format options
appears.
4. Tap on Scientific.
The option is chosen
and the menu closes. (You can also choose an item
by pressing the cursor keys and pressing E
when the option you want is highlighted.)
5. Notice that a number
appears to the right
of the Number
Format field. This is
the number of
decimal places
currently set. To
change the number
that appears.
6. Press
to return to Home view.
H
Mathematical calculations
The most commonly used math operations are available
from the keyboard (see “Math keys” on page 24). Access
to the rest of the math functions is via various menus (see
“Menus” on page 28).
Getting started
35
Note that the HP Prime represents all numbers smaller
–499
than 1 × 10
as zero. The largest number displayed is
499
9.99999999999 × 10 . A greater result is displayed as
this number.
Where to
start
The home base for the calculator is the Home view (
).
H
You can do all your non-symbolic calculations here. You
can also do calculations in CAS view, which uses the
computer algebra system (see chapter 3, “Computer
algebra system (CAS)”, starting on page 53). In fact, you
can use functions from the CAS menu (one of the Toolbox
menus) in an expression you are entering in Home view,
and use functions from the Math menu (another of the
Toolbox menus) in an expression you are entering in CAS
view.
Choosing an entry type
The first choice you need to make is the style of entry. The
three types are:
•
Textbook
An expression is
entered in much the
same way as if you
were writing it on paper (with some arguments above
or below others). In other words, your entry could be
two-dimensional, as in the example above.
•
•
Algebraic
An expression is
entered on a single
line. Your entry is
always one-dimensional.
RPN (Reverse Polish Notation). [Not available in CAS
view.]
The arguments of the expression are entered first
followed by the operator. The entry of an operator
automatically evaluates what has already been
entered. Thus you will need to enter a two-operator
36
Getting started
expression (as in the example above) in two steps, one
for each operator:
Step 1: 5 h – the natural logarithm of 5 is
calculated and displayed in history.
Step 2: Szn – is entered as a divisor and
applied to the previous result.
More information about RPN mode can be found in
chapter 2, “Reverse Polish Notation (RPN)”, starting
on page 47.
Note that on page 2 of the Home Settings screen, you
can specify whether you want to display your calculations
in Textbook format or not. This refers to the appearance of
your calculations in the history section of both Home view
and CAS view. This is a different setting from the Entry
setting discussed above.
Entering expressions
The examples that follow assume that the entry mode is
Textbook.
•
•
An expression can contain numbers, functions, and
variables.
To enter a function, press the appropriate key, or
open a Toolbox menu and select the function. You
can also enter a function by using the alpha keys to
spell out its name.
•
When you have finished entering the expression,
press E to evaluate it.
If you make a mistake while entering an expression, you
can:
•
•
•
delete the character to the left of the cursor by
pressing
C
delete the character to the right of the cursor by
pressing S
C
clear the entire entry line by pressing O or J.
Getting started
37
232 – 14
---------------------------
ln45
8
Example
Calculate
–3
23jw14S
R
j8>>nQ3
>h45E
This example illustrates a
number of important
points to be aware of:
•
the importance of
delimiters (such as parentheses)
•
•
how to enter negative numbers
the use of implied versus explicit multiplication.
Parentheses
As the example above shows, parentheses are
automatically added to enclose the arguments of
functions, as in LN(). However, you will need to manually
add parentheses—by pressing
—to enclose a group
R
of objects you want operated on as a single unit.
Parentheses provide a way of avoiding arithmetic
ambiguity. In the example above we wanted the entire
numerator divided by –3, thus the entire numerator was
enclosed in parentheses. Without the parentheses, only
14√8would have been divided by –3.
The following examples show the use of parentheses, and
the use of the cursor keys to move outside a group of
objects enclosed within parentheses.
Entering ...
Calculates …
45
sin45 +
sin45 +
85 9
e
e
+Sz
45
>+Sz
85>
9
s
Sj
Sj
85
9
85 9
s
38
Getting started
Algebraic
precedence
The HP Prime calculates according to the following order
of precedence. Functions at the same level of precedence
are evaluated in order from left to right.
1. Expressions within parentheses. Nested parentheses
are evaluated from inner to outer.
2. !, √, reciprocal, square
3. nth root
4. Power, 10n
5. Negation, multiplication, division, and modulo
6. Addition and subtraction
7. Relational operators (<, >, ≤, ≥, ==, ≠, =)
8. AND and NOT
9. OR and XOR
10.Left argument of | (where)
11. Assign to variable (:=)
Negative
numbers
It is best to press Q to start a negative number or to insert
a negative sign. Pressing w instead will, in some
next number you enter from the last result. (This is
explained in “To reuse the last result” on page 41.)
To raise a negative number to a power, enclose it in
2
2
parentheses. For example, (–5) = 25, whereas –5 = –25.
Explicit and
implied
multiplication
Implied multiplication takes place when two operands
appear with no operator between them. If you enter AB,
for example, the result is A*B. Notice in the example on
page 38 that we entered 14Sk8 without the
multiplication operator after 14. For the sake of clarity, the
calculator adds the operator to the expression in history,
but it is not strictly necessary when you are entering the
expression. You can, though, enter the operator if you
wish (as was done in the examples on page 38). The
result will be the same.
Getting started
39
Large results
If the result is too long or too tall to be seen in its
entirety—for example, a many-rowed matrix—highlight it
and then press
. The result is displayed in full-
screen view. You can now press = and \ (as well as
>and <) to bring hidden parts of the result into view.
Tap
to return to the previous view.
Reusing previous expressions and results
Being able to retrieve and reuse an expression provides a
quick way of repeating a calculation that requires only a
few minor changes to its parameters. You can retrieve and
reuse any expression that is in history. You can also
retrieve and reuse any result that is in history.
To retrieve an expression and place it on the entry line for
editing, either:
•
tap twice on it, or
•
use the cursor keys to highlight the expression and
then either tap on it or tap
To retrieve a result and place it on the entry line, use the
cursor keys to highlight it and then tap
.
.
If the expression or result you want is not showing, press
= repeatedly to step through the entries and reveal those
that are not showing. You can also swipe the screen to
quickly scroll through history.
T I P
Pressing S= takes you straight to the very first entry
in history, and pressing S\ takes you straight to the
most recent entry.
Using the clipboard
Your last four expressions are always copied to the
clipboard and can easily be retrieved by pressing
SZ. This opens the clipboard from where you can
quickly choose the one you want.
Note that expressions and not results are available from
the clipboard. Note too that the last four expressions
remain on the clipboard even if you have cleared history.
40
Getting started
To reuse the last
result
Press S+ (Ans) to
retrieve your last answer
for use in another
calculation. Ans
appears on the entry
line. This is a shorthand for your last answer and it can be
part of a new expression. You could now enter other
components of a calculation—such as operators, number,
variables, etc.—and create a new calculation.
T I P
You don’t need to first select Ansbefore it can be part of
a new calculation. If you press a binary operator key to
the entry line as the first component of the new
calculation. For example, to multiply the last answer by
13, you could enter S+ s13E. But the
first two keystrokes are unnecessary. All you need to enter
is s13E.
The variable Ansis always stored with full precision
whereas the results in history will only have the precision
determined by the current Number Format setting (see
page 31). In other words, when you retrieve the number
assigned to Ans, you get the result to its full precision; but
when you retrieve a number from history, you get exactly
what was displayed.
You can repeat the previous calculation simply by pressing
E. This can be useful if the previous calculation
involved Ans. For example, suppose you want to calculate
the nth root of 2 when n is 2, 4, 8, 16, 32, and so on.
1. Calculate the square root of 2.
Sj2E
2. Now enter √Ans.
SjS+E
This calculates the fourth root of 2.
Getting started
41
3. Press E
repeatedly. Each time
you press, the root is
twice the previous
root. The last answer
shown in the
illustration at the right
32
is 2 .
To reuse an
expression or result
from the CAS
When your are working in Home view, you can retrieve
an expression or result from the CAS by tapping Z and
selecting Get from CAS. The CAS opens. Press
or
=
until the item you want to retrieve is highlighted and
\
press E. The highlighted item is copied to the cursor
point in Home view.
Storing a value in a variable
You can store a value in a variable (that is, assign a value
to a variable). Then when you want to use that value in a
calculation, you can refer to it by the variable’s name. You
can create your own variables, or you can take advantage
of the built-in variables in Home view (named A to Z and
) and in the CAS (named a to z, and a few others). CAS
variables can be used in calculations in Home view, and
Home variables can be used in calculations in the CAS.
There are also built-in app variables and geometry
variables. These can also be used in calculations.
Example: To assign 2 to to the variable A:
Szj
AaE
Your stored value
appears as shown at the
right. If you then wanted
to multiply your stored
value by 5, you could
enter: Aas5E.
You can also create your own variables in Home view. For
example, suppose you wanted to create a variable called
MEand assign 2 to it. You would enter:
Szj
AQAcE
42
Getting started
variable called ME. Tap or press E to
confirm your intention. You can now use that variable in
subsequent calculations: ME*3will yield 29.6088132033,
for example.
You can also create variables in CAS view in the same
way. However, the built-in CAS variables must be entered
in lowercase. However, the variables you create yourself
can be uppercase or lowercase.
See chapter 22, “Variables”, starting on page 427 for
more information.
As well as built-in Home and CAS variables, and the
variables you create yourself, each app has variables that
you can access and use in calculations. See “App
functions and variables” on page 109 for more
information.
Complex numbers
You can perform arithmetic operations using complex
numbers. Complex numbers can be entered in the
following forms, where x is the real part, y is the
imaginary part, and i is the imaginary constant, –1 :
•
•
•
•
•
(x, y)
x + yi (except in RPN mode)
x – yi (except in RPN mode)
x + iy (except in RPN mode), or
x – iy (except in RPN mode)
To enter i:
•
•
press
or
ASg
press Sy.
There are 10 built-in variables available for storing
complex numbers. These are labeled Z0to Z9. You can
Getting started
43
also assign a complex number to a variable you create
yourself.
To store a complex
number in a variable,
enter the complex
number, press
,
enter the variable that
you want to assign the complex number to, and then press
. For example, to store 2+3i in variable Z6:
E
R2o3>
Ay6E
Sharing data
As well as giving you access to many types of
mathematical calculations, the HP Prime enables you to
create various objects that can be saved and used over
and over again. For example, you can create apps, lists,
matrices, programs, and notes. You can also send these
objects to other HP Primes. Whenever you encounter a
screen with
as a menu item, you can select an item
on that screen to send it to another HP Prime.
You use one of the
supplied USB cables to
send objects from one
HP Prime to another.
Micro-A: sender
Micro-B: receiver
This is the micro-A–micro B USB cable. Note that the
connectors on the ends of the USB cable are slightly
different. The micro-A connector has a rectangular end
and the micro-B connector has a trapezoidal end. To
share objects with another HP Prime, the micro-A
connector must be inserted into the USB port on the
sending calculator, with the micro-B connector inserted
into the USB port on the receiving calculator.
General procedure
The general procedure for sharing objects is as follows:
1. Navigate to the screen that lists the object you want
to send.
This will be the Application Library for apps, the List
Catalog for lists, the Matrix Catalog for matrices, the
44
Getting started
Program Catalog for programs, and the Notes
Catalog for notes.
2. Connect the USB cable between the two calculators.
The micro-A connector—with the rectangular
end—must be inserted into the USB port on the
sending calculator.
3. On the sending calculator, highlight the object you
want to send and tap
.
In the illustration at
the right, a program
named
TriangleCalcs
has been selected in
the Program Catalog
and will be sent to the
connected calculator
when
tapped.
is
Online Help
Press
W
to open the online help. The help initially
provided is context-sensitive, that is, it is always about the
current view and its menu items.
For example, to get help on the Function app, press I,
select Function, and press
W
From within the help system, tapping
.
displays a
hierarchical directory of all the help topics. You can
navigate through the directory to other help topics, or use
the search facility to quickly find a topic. You can find help
on any key, view, or command.
Getting started
45
46
Getting started
2
Reverse Polish Notation (RPN)
The HP Prime provides you with three ways of entering objects in
Home view:
•
Textbook
An expression is entered in much the same way was if you
were writing it on paper (with some arguments above or
below others). In other words, your entry could be two-
dimensional, as in the following example:
•
•
Algebraic
An expression is entered on a single line. Your entry is always
one-dimensional. The same calculation as above would
appear like this is algebraic entry mode:
RPN (Reverse Polish Notation).
The arguments of the expression are entered first followed by
the operator. The entry of an operator automatically
evaluates what has already been entered. Thus you will need
in two steps, one for each operator:
Step 1: 5 h – the natural logarithm of 5 is calculated and
displayed in history.
Step 2: Szn – is entered as a divisor and
applied to the previous result.
You choose your preferred entry method from page 1 of the
Home Settings screen (SH). See “System-wide settings”,
starting on page 30 for instructions on how to choose settings.
RPN is available in Home view, but not in CAS view.
Reverse Polish Notation (RPN)
47
The same entry-line editing tools are available in RPN mode as
in algebraic and textbook mode:
•
•
Press C to delete the character to the left of the cursor.
Press SC to delete the character to the right of the
cursor.
•
•
Press J to clear the entire entry line.
Press SJ to clear the entire entry line.
History in RPN mode
The results of your calculations are kept in history. This history is
displayed above the entry line (and by scrolling up to
calculations that are no longer immediately visible). The
calculator offers three histories: one for the CAS view and two for
Home view. CAS history is discussed in chapter 3. The two
histories in Home view are:
•
non-RPN: visible if you have chosen algebraic or textbook
as your preferred entry technique
•
RPN: visible only if you have chosen RPN as your preferred
entry technique. The RPN history is also called the stack. As
shown in the illustration below, each entry in the stack is
given a number. This is the stack level number.
As more calculations are added, an entry’s stack level number
increases.
If you switch from RPN to algebraic or textbook entry, your
history is not lost. It is just not visible. If you switch back to RPN,
your RPN history is redisplayed. Likewise, if you switch to RPN,
your non-RPN history is not lost.
When you are not in RPN mode, your history is ordered
chronologically: oldest calculations at the top, most recent at the
48
Reverse Polish Notation (RPN)
bottom. In RPN mode, your history is ordered chronologically by
default, but you can change the order of the items in history. (This
is explained in “Manipulating the stack” on page 51.)
Re-using
results
There are two ways to re-use a result in history. Method 1
deselects the copied result after copying; method 2 keeps the
copied item selected.
Method 1
1. Select the result to be copied. You can do this by pressing
= or \ until the result is highlighted, or by tapping on it.
2. Press E. The result is copied to the entry line and is
deselected.
Method 2
1. Select the result to be copied. You can do this by pressing
= or \ until the result is highlighted, or by tapping on it.
2. Tap
and select ECHO. The result is copied to the
entry line and remains selected.
Note that while you can copy an item from the CAS history to
use in a Home calculation (and copy an item from the Home
history to use in a CAS calculation), you cannot copy items from
or to the RPN history. You can, however, use CAS commands
and functions when working in RPN mode.
Sample calculations
The general philosophy behind RPN is that arguments are
placed before operators. The arguments can be on the entry line
(each separated by a space) or they can be in history. For
example, to multiply by 3, you could enter:
SzX 3
on the entry line and then enter the operator (s). Thus your
entry line would look like this before entering the operator:
However, you could also have entered the arguments separately
and then, with a blank entry line, entered the operator (s).
Your history would look like this before entering the operator:
Reverse Polish Notation (RPN)
49
If there are no entries in history and you enter an operator or
function, an error message appears. An error message will also
appear if there is an entry on a stack level that an operator needs
but it is not an appropriate argument for that operator. For
example, pressing f when there is a string on level 1 displays
an error message.
An operator or function will work only on the minimum number
of arguments necessary to produce a result. Thus if you enter on
the entry line 2 4 6 8and press s, stack level 1 shows 48.
Multiplication needs only two arguments, so the two arguments
last entered are the ones that get multiplied. The entries 2and 4
are not ignored: 2is placed on stack level 3 and 4on stack level
2.
Where a function can accept a variable number of arguments,
you need to specify how many arguments you want it to include
in its operation. You do this by specifying the number in
parentheses straight after the function name. You then press
E to evaluate the function. For example, suppose your
stack looks like this:
Suppose further that you want to determine the minimum of just
the numbers on stack levels 1, 2, and 3. You choose the MIN
function from the MATH menu and complete the entry as
MIN(3). When you press E, the minimum of just the last
three items on the stack is displayed.
50
Reverse Polish Notation (RPN)
Manipulating the stack
A number of stack-manipulation options are available. Most
appear as menu items across the bottom the screen. To see these
items, you must first select an item in history:
PICK
ROLL
Copies the selected item to stack level 1. The item below the one
that is copied is then highlighted. Thus if you tapped
four
times, four consecutive items will be moved to the bottom four
stack levels (levels 1–4).
There are two roll commads:
•
Tap
to move the selected item to stack level 1. This is
similar to PICK, but PICK duplicates the item, with the
duplicate being placed on stack level1. However, ROLL
doesn’t duplicate an item. It simply moves it.
•
Tap
to move the item on stack level 1 to the currently
highlighted level
Swap
Stack
You can swap the position of the objects on stack level 1 with
those on stack level 2. Just press o. The level of other objects
at the time, otherwise a comma will be entered.
Tapping
displays further stack-manipulation tools.
DROPN Deletes all items in the stack from the highlighted item down to
and including the item on stack level 1. Items above the
highlighted item drop down to fill the levels of the deleted items.
If you just want to delete a single item from the stack, see “Delete
an item” below.
Reverse Polish Notation (RPN)
51
DUPN Duplicates all items between (and including) the highlighted item
and the item on stack level 1. If, for example, you have selected
the item on stack level 3, selecting DUPNduplicates it and the
two items below it, places them on stack levels 1 to 3, and moves
the items that were duplicated up to stack levels 4 to 6.
Echo Places a copy of the selected result on the entry line and leaves
the source result highlighted.
LIST Creates a list of results, with the highlighted result the first element
in the list and the item on stack level 1 the last.
Before
After
Show an
item
To show a result in full-screen textbook format, tap
Tap to return to the history.
.
Delete an To delete an item from the stack:
item
1. Select it. You can do this by pressing = or \ until the item
is highlighted, or by tapping on it.
2. Press C.
Delete all To delete all items, thereby clearing the history, press SJ.
items
52
Reverse Polish Notation (RPN)
3
Computer algebra system (CAS)
A computer algebra system (CAS) enables you to perform
symbolic calculations. By default, CAS works in exact mode,
giving you infinite precision. On the other hand, non-CAS
limited by the precision of the calculator (to 12 significant
1
3
2
7
-- --
digits in the case of the HP Prime). For example,
+
yields
the approximate answer .619047619047 in Home view (with
13
-----
Standard numerical format), but yields the exact answer
the CAS.
in
21
The CAS offers many hundreds of functions, covering algebra,
calculus, equation solving, polynomials, and more. You select
a function from the CAS menu, one of the Toolbox menus
discussed in chapter 21, “Functions and commands”,
beginning on page 305. Consult that chapter for a
description of all the CAS functions and commands.
CAS view
CAS calculations are done
in CAS view. CAS view is
almost identical to Home
view. A history of
calculations is built and you
can select and copy previous
calculations just as you can
in Home view, as well as
store objects in variables.
To open CAS view, press K. CAS appears in red at the left
of the title bar to indicate that you are in CAS view rather than
Home view.
Computer algebra system (CAS)
53
The menu buttons in CAS view are:
•
•
: assigns an object to a variable
: applies common simplification rules to reduce an
expression to its simplest form. For example,
c
simplify(ea + LN(b*e ))yields b *EXP(a)*EXP(c).
•
•
: copies a selected entry in history to the entry line
: displays the selected entry in full-screen mode,
with horizontal and vertical scrolling enabled. The entry
is also presented in textbook format.
CAS calculations
With one exception, you perform calculations in CAS view
RPN entry mode in CAS view, just algebraic and textbook
modes). All the operator and function keys work in the same
way in CAS view as Home view (although all the alpha
characters are lowercase rather than uppercase). But the
primary difference is that the default display of answers is
symbolic rather than numeric.
You can also use the template key (F) to help you insert the
framework for common calculations (and for vectors and
matrices). This is explained in detail in “Math template” on
page 24.
The most commonly used
CAS functions are available
from the CAS menu, one of
the Toolbox menus. To
display the menu, press
D. (If the CAS menu is not
open by default, tap
.) Other CAS
commands are available from the Catlg menu (another of the
Toolbox menus).
To choose a function, select a category and then a command.
54
Computer algebra system (CAS)
Example 1
To find the roots of 2x2 + 3x – 2:
1. With the CAS menu open, select Polynomial and then
Find Roots.
The function proot()
appears on the entry
line.
2. Between the
parentheses, enter:
2Asj+3
Asw2
3. Press E.
Example 2
To find the area under the graph of 5x2 – 6 between x =1 and
x = 3:
1. With the CAS menu open, select Calculus and then
Integrate.
The function int()
appears on the entry
line.
2. Between the
parentheses, enter:
5Asjw6
oAso1o
3
3. Press E.
Settings
Various settings allow you to
configure how the CAS
works. To display the
settings, press SK. The
modes are spread across
two pages.
Computer algebra system (CAS)
55
Page 1
Setting
Purpose
Angle Measure
Select the units for angle measure-
ments: Radiansor Degrees.
Number Format
(first drop-down
list)
Select the number format for dis-
played solutions:
Standard or Scientific or
Engineering
Number Format
(second drop-
down list)
Select the number of digits to dis-
play in approximate mode (man-
tissa + exponent).
Integers (drop-
down list)
Select the integer base:
Decimal(base 10)
Hex(base 16)
Octal (base 8)
Integers (check
box)
If checked, any real number equiv-
alent to an integer in a non-CAS
environment will be converted to
an integer in the CAS. (Real num-
bers not equivalent to integers are
treated as real numbers in CAS
whether or not this option is
selected.)
Simplify
Select the level of automatic sim-
plification:
None: do not simplify automati-
cally (use
for manual sim-
plification)
Minimum: do basic simplifications
Maximum: always try to simplify
Exact
If checked, the calculator is in
exact mode and solutions will be
symbolic. If not checked, the calcu-
lator is in approximate mode and
solutions will be approximate. For
26
example, 26n5 yields ----------- in
5
exact mode and 5.2 in approxi-
mate mode.
56
Computer algebra system (CAS)
Setting
Purpose (Cont.)
Complex
Select this to allow complex results
in variables.
If checked, second order polyno-
mials are factorized in complex
mode or in real mode if the dis-
criminant is positive.
Use √
Use i
If checked, the calculator is in
complex mode and complex solu-
tions will be displayed when they
exist. If not checked, the calculator
is in real mode and only real solu-
tions will be displayed. For exam-
ple, factors(x4–1) yields
(x–1),(x+1),(x+i),(x–i) in complex
mode and
(x–1),(x+1),(x2+1) in real mode.
Principal
If checked, the principal solutions
to trigonometric functions will be
displayed. If not checked, the gen-
eral solutions to trigonometric func-
tions will be displayed.
Increasing
If checked, polynomials will be
displayed with increasing powers
(for example, –4+x+3x2+x3). If not
checked, polynomials will be dis-
played with decreasing powers
(for example, x3+3x2+x–4).
Page 2
Setting
Purpose
Recursive
Evaluation
Specify the maximum number of
embedded variables allowed in
an interactive evaluation. See also
Recursive Replacement
below.
Computer algebra system (CAS)
57
Setting
Purpose (Cont.)
Recursive
Replacement
Specify the maximum number of
embedded variables allowed in a
single evaluation in a program.
See also Recursive Evalua-
tion above.
Recursive
Function
Specify the maximum number of
embedded function calls allowed.
Epsilon
Any number smaller than the
value specified for epsilon will be
shown as zero.
Probability
Specify the maximum probability
of an answer being wrong for
non-deterministic algorithms. Set
this to zero for deterministic algo-
rithms.
Newton
Specify the maximum number of
iterations when using the Newto-
nian method to find the roots of a
quadratic.
Setting the form
of menu items
One setting that affects the CAS is made outside the CAS
Settings screen. This setting determines whether the
commands on the CAS menu are presented descriptively or by
their command name. Here are some examples of identical
functions that are presented differently depending on what
presentation mode you select:
Descriptive name
Command name
Factor List
ifactors
cZeros
gbasis
factor_xn
proot
Complex Zeros
Groebner Basis
Factor by Degree
Find Roots
The default menu presentation mode is to provide the
descriptive names for the CAS functions. If you prefer the
58
Computer algebra system (CAS)
functions to be presented by their command name, deselect
the Menu Displayoption on the second page of the Home
Settings screen (see “Home settings” on page 30).
To use an
When your are working in CAS, you can retrieve an expres-
sion or result from Home view by tapping Z and selecting
expression or
result from
Home view
Get from Home. Home view opens. Press
or
until
=
\
the item you want to retrieve is highlighted and press E.
The highlighted item is copied to the cursor point in CAS.
To use a Home
variable in CAS
You can access Home variables from within the CAS. Home
variables are assigned uppercase letters; CAS variables are
assigned lowercase letters. Thus SIN(x) and SIN(X) will yield
different results.
To use a Home variable in the CAS, simply include its name
in a calculation. For example, suppose in Home view you
have assigned variable Q to 100. Suppose too that you have
assigned variable q to 1000 in the CAS. If you are in the CAS
and enter 5*q, the result is 5000. If you had entered 5*Q
instead, the result would have been 500.
In a similar way, CAS variables can be used in calculations
in Home view. Thus you can enter 5*q in Home view and get
5000, even though q is a CAS variable.
Computer algebra system (CAS)
59
60
Computer algebra system (CAS)
4
Exam Mode
The HP Prime can be precisely configured for an
examination, with any number of features or functions
disabled for a set period of time. Configuring a HP Prime
for an examination is called exam mode configuration.
You can create and save multiple exam mode
configurations, each with its own subset of functionality
disabled. You can set each configuration for its own time
period, with or without a password. An exam mode
configuration can be activated from an HP Prime, sent
from one HP Prime to another via USB cable, or sent to
one or more HP Primes via the Connectivity Kit.
Exam mode
configuration will
primarily be of interest to
teachers, proctors, and
invigilators who want to
ensure that the calculator
is used appropriately by
students sitting for an
examination. In the illustration to the right, user-customized
apps, the help system and the computer algebra system
have been selected for disabling.
As part of an exam mode configuration, you can choose
to activate 3 lights on the calculator that will flash
periodically during exam mode. The lights are on the top
edge of the calculator. The lights will help the supervisor
of the examination detect if any particular calculator has
dropped out of exam mode. The flashing of lights on all
calculators placed in exam mode will be synchronized so
that all will flash the same pattern at the same time.
Exam Mode
61
Modifying the default configuration
A configuration named Default Examappears when
you first access the Exam Mode screen. This
configuration has no functions disabled. If only one
configuration is needed, you can simply modify the
default exam configuration. If you envisage the need for a
number of configurations—different ones for different
examinations, for example—modify the default
configuration so that it matches the settings you will most
often need, and then create other configurations for the
settings you will need less often. There are two ways to
access the screen for configuring and activating exam
mode:
•
•
press O + A + c
choose the third page of the Home Settings screen.
The procedure below illustrates the second method.
1. Press SH. The Home Settings screen appears.
2. Tap
3. Tap
.
.
The Exam Mode
screen appears. You
use this screen to
activate a particular
configuration (just
before an
examination begins,
for example).
4. Tap
. The
Exam Mode
Configuration
screen appears.
5. Select those features
you want disabled,
and make sure that
those features you
don’t want disabled are not selected.
62
Exam Mode
An expand box at the left of a feature indicates that it
is a category with sub-items that you can individually
disable. (Notice that there is an expand box beside
System Apps in the example shown above.) Tap on
the expand box to see the sub-items. You can then
select the sub-items individually. If you want to disable
all the sub-item, just select the category.
You can select (or deselect) an option either by
tapping on the check box beside it, or by using the
cursor keys to scroll to it and tapping
6. When you have finished selecting the features to be
disabled, tap
.
.
If you want to activate exam mode now, continue with
“Activating Exam Mode” below.
Creating a new configuration
You can modify the default exam configuration when new
circumstances require a different set of disabled functions.
Alternatively, you can retain the default configuration and
create a new configuration. When you create a new
configuration, you choose an existing configuration on
which to base it.
1. Press SH. The Home Settings screen
appears.
2. Tap
3. Tap
.
.
The Exam Mode
screen appears.
4. Choose a base
configuration from
the Configuration
list. If you have not
created any exam
mode configurations
before, the only base configuration will be Default
Exam.
Exam Mode
63
5. Tap
name for the new configuration.
, select Copyfrom the menu and enter a
See “Adding text” on page 23 if you need help with
entering alphabetic characters.
6. Tap
twice.
7. Tap
. The Exam Mode Configuration
screen appears.
8. Select those features you want disabled, and make
sure that those features you don’t want disabled are
not selected.
9. When you have finished selecting the features to be
disabled, tap
.
Note that you can create exam mode configurations
using the Connectivity Kit in much the same way you
create them on an HP Prime. You can then activate
them on multiple HP Primes, either via USB or by
broadcasting them to a class using the wireless
modules. For more information, install and launch the
HP Connectivity Kit that came on your product CD.
From the Connectivity Kit menu, click Help and select
HP Connectivity Kit User Guide.
If you want to activate exam mode now, continue with
“Activating Exam Mode” below.
Activating Exam Mode
When you activate exam mode you prevent users of the
calculator from accessing those features you have
disabled. The features become accessible again at the
end of the specified time-out period or on entry of the
exam-mode password, whichever occurs sooner.
64
Exam Mode
To activate exam mode:
1. If the Exam Mode
screen is not
showing, press
SH, tap
and
tap
.
2. If a configuration
other than Default
Examis required, choose it from the Configuration
list.
3. Select a time-out period from the Timeout list.
Note that 8 hours is the maximum period. If you are
preparing to supervise a student examination, make
sure that the time-out period chosen is greater than
the duration of the examination.
4. Enter a password of between 1 and 10 characters.
The password must be entered if you—or another
user—wants to cancel exam mode before the time-out
period has elapsed.
5. If you want to erase the memory of the calculator,
select Erase memory. This will erase all user entries
and return the calculator to its factory default settings.
6. If you want the exam mode indicator to flash
periodically while the calculator is in exam mode,
select Blink LED.
7. Using the supplied USB cable, connect a student’s
calculator.
Insert the micro-A connector—the one with the
rectangular end—into the USB port on the sending
calculator, and the other connector into the USB port
on the receiving calculator.
8. To activate the configuration on an attached
calculator, tap
closes. The connected calculator is now in exam
The Exam Mode screen
.
Exam Mode
65
mode, with the specified disabled features not
accessible to the user of that calculator.
9. Repeat from step 7 for each calculator that needs to
have its functionality limited.
Cancelling exam mode
If you want to cancel exam mode before the set time
period has elapsed, you will need to enter the password
for the current exam mode activation.
1. If the Exam Mode screen is not showing, press
SH, tap
2. Enter the password for the current exam mode
activation and tap twice
and tap
.
.
You can also cancel exam mode using the Connectivity
Kit. See the HP Connectivity Kit User Guide for more
details.
Modifying configurations
Exam mode configurations can be changed. You can also
delete a configuration and restore the default
configuration.
To change a configuration
1. If the Exam Mode screen is not showing, press
SH, tap and tap
.
2. Select the configuration you want to change from the
Configuration list.
3. Tap
.
4. Make whatever changes are necessary and then tap
.
66
Exam Mode
To return to the default configuration
1. Press SH. The Home Settings screen
appears.
2. Tap
3. Tap
.
.
The Exam Mode screen appears.
4. Choose Default Examfrom the Configuration
list.
5. Tap
, select Resetfrom the menu and tap
to confirm your intention to return the
configuration to its default settings.
Deleting configurations
You cannot delete the default exam configuration (even if
you have modified it). You can only delete those that you
have created. To delete a configuration:
1. If the Exam Mode screen is not showing, press
SH, tap
and tap
.
2. Select the configuration you want to delete from the
Configuration list.
3. Tap
and choose Delete.
4. When asked to confirm the deletion, tap
or
press E.
Exam Mode
67
68
Exam Mode
5
An introduction to HP apps
Much of the functionality of the HP Prime is provided in packages
called HP apps. The HP Prime comes with 18 HP apps: 10
dedicated to mathematical topics or tasks, three specialized
Solvers, three function Explorers, a spreadsheet, and an app for
recording data streamed to the calculator from an external
sensing device. You launch an app by first pressing I (which
displays the Application Library screen) and tapping on the
icon for the app you want.
What each app enables you to do is outlined in the following,
where the apps are listed in alphabetical order.
App name
Use this app to:
Advanced
Graphing
Explore the graphs of symbolic open
sentences in x and y. Example:
x2 + y2 = 64
DataStreamer
Collect real-world data from scientific
sensors and export it to a statistics app for
analysis.
Finance
Function
Solve time-value-of-money (TVM) problems
and amortization problems.
Explore real-valued, rectangular functions
of y in terms of x. Example:
y = 2x2 + 3x + 5
Geometry
Inference
Explore geometric constructions and
perform geometric calculations.
Explore confidence intervals and
hypothesis tests based on the Normal and
Student’s t-distributions.
Linear Explorer Explore the properties of linear equations
and test your knowledge.
An introduction to HP apps
69
App name
Use this app to: (Cont.)
Linear Solver
Find solutions to sets of two or three linear
equations.
Parametric
Polar
Explore parametric functions of x and y in
terms of t. Example: x = cos (t) and
y = sin(t).
Explore polar functions of r in terms of an
angle . Example: r = 2cos4
Quadratic
Explorer
Explore the properties of quadratic
equations and test your knowledge.
Sequence
Explore sequence functions, where U is
defined in terms of n, or in terms of
previous terms in the same or another
sequence, such as Un – 1 and Un – 2
Example: U1 = 0 , U2 = 1 and
Un = Un – 2 + Un – 1
.
Solve
Explore equations in one or more real-
valued variables, and systems of equations.
Example: x + 1 = x2 – x – 2
Spreadsheet
To solve problems or represent data best
suited to a spreadsheet.
Statistics 1Var
Statistics 2Var
Calculate one-variable statistical data (x)
Calculate two-variable statistical data
(x and y)
Triangle Solver
Trig Explorer
Find the unknown values for the lengths
Explore the properties of sinusoidal
equations and test your knowledge.
As you use an app to explore a lesson or solve a problem, you
add data and definitions in one or more of the app’s views. All
this information is automatically saved in the app. You can come
back to the app at any time and all the information is still there.
You can also save a version of the app with a name you give it
and then use the original app for another problem or purpose.
See “Creating an app” on page 107 for more information about
customizing and saving apps.
70
An introduction to HP apps
With one exception, all the apps mentioned above are described
in detail in this user guide. The exception is the DataStreamer
app. A brief introduction to this app is given in the HP Prime
Quick Start Guide. Full details can be found in the HP
StreamSmart 410 User Guide.
Application Library
Apps are stored in the Application Library, displayed by pressing
I.
To open an
app
1. Open the Application
Library.
2. Find the app’s icon and tap
on it.
You can also use the cursor
keys to scroll to the app
and, when it is highlighted,
either tap
or press
E.
To reset an
app
You can leave an app at any time and all the data and settings
in it are retained. When you return to the app, you can continue
as you left off.
However, if you don’t want to use the previous data and settings,
you can return the app to its default state, that is, the state it was
in when you opened it for the first time. To do this:
1. Open the Application Library.
2. Use the cursor keys to highlight the app.
3. Tap
4. Tap
.
to confirm your intention.
You can also reset an app from within the app. From the main
view of the app—which is usually, but not always, the Symbolic
view—press SJ and tap
to confirm your intention.
To sort apps
By default, the built-in apps in the Application Library are sorted
chronologically, with the most recently used app shown first.
(Customized apps always appear after the built-in apps.)
An introduction to HP apps
71
You can change the sort order of the built-in apps to:
•
Alphabetically
The app icons are sorted alphabetically by name, and in
ascending order: A to Z.
•
Fixed
Apps are displayed in their default order: Function,
Advanced Graphing, Geometry … Polar, and Sequence.
Customized apps are placed at the end, after all the built-in
apps. They appear in chronological order: oldest to most
recent.
To change the sort order:
1. Open the Application Library.
2. Tap
.
3. From the Sort Apps list, choose the option you want.
To delete an
app
The apps that come with the HP Prime are built-in and cannot be
deleted, but you can delete an app you have created. To delete
an app:
1. Open the Application Library.
2. Use the cursor keys to highlight the app.
3. Tap
4. Tap
.
to confirm your intention.
Other
options
The other options available in the Application Library are:
•
Enables you to save a copy of an app under a new name.
See “Creating an app” on page 107.
•
Enables you to send an app to another HP Prime. See
“Sharing data” on page 44.
App views
Most apps have three major views: Symbolic, Plot, and Numeric.
These views are based on the symbolic, graphic, and numeric
representations of mathematical objects. They are accessed
through the Y, P, and M keys near the top left of the
keyboard. Typically these views enable you to define a
72
An introduction to HP apps
mathematical object—such as an expression or an open
sentence—plot it, and see the values generated by it.
Each of these views has an accompanying setup view, a view that
enables you to configure the appearance of the data in the
accompanying major view. These views are called Symbolic
Setup, Plot Setup, and Numeric Setup. They are accessed by
pressing JY, JP, and JM.
Not all apps have all the six views outlined above. The scope and
complexity of each app determines its particular set of views. For
example, the Spreadsheet app has no Plot view or Plot Setup
view, and the Quadratic Explorer has only a Plot view. What
views are available in each app is outlined in the next six
sections.
Note that the DataStreamer app is not covered in this chapter.
See HP StreamSmart 410 User Guide for information about this
app.
Symbolic view
The table below outlines what is done in the Symbolic view of
each app.
App
Use the Symbolic view to:
Advanced
Graphing
Specify up to 10 open sentences.
Finance
Function
Not used
Specify up to 10 real-valued, rectangular
functions of y in terms of x.
Geometry
Inference
View the symbolic definition of geometric
constructions.
Choose to conduct a hypothesis test or test
a confidence level, and select a type of
test.
Linear Explorer Not used
Linear Solver
Parametric
Not used
Specify up to 10 parametric functions of x
and y in terms of t.
An introduction to HP apps
73
App
Use the Symbolic view to: (Cont.)
Polar
Specify up to 10 polar functions of r in
terms of an angle .
Quadratics
Explorer
Not used
Sequence
Specify up to 10 sequence functions.
Specify up to 10 equations.
Not used
Solve
Spreadsheet
Statistics 1Var
Statistics 2Var
Triangle Solver
Trig Explorer
Specify up to 5 univariate analyses.
Specify up to 5 multivariate analyses.
Not used
Not used
Symbolic Setup view
The Symbolic Setup view is the
same for each app. It enables
you to override the system-wide
settings for angle measure,
number format, and complex-
number entry. The override
applies only to the current app.
To change the settings for all
apps, see “System-wide settings” on page 30.
Plot view
The table below outlines what is done in the Plot view of each
app.
App
Use the Plot view to:
Advanced
Graphing
Plot and explore the open sentences
selected in Symbolic view.
Finance
Function
Display an amortization graph.
Plot and explore the functions selected in
Symbolic view.
74
An introduction to HP apps
App
Use the Plot view to: (Cont.)
Geometry
Create and manipulate geometric
constructions.
Inference
View a plot of the test results.
Linear Explorer Explore linear equations and test your
knowledge of them.
Linear Solver
Parametric
Not used
Plot and explore the functions selected in
Symbolic view.
Polar
Plot and explore the functions selected in
Symbolic view.
Quadratics
Explorer
Explore quadratic equations and test your
knowledge of them.
Sequence
Plot and explore the sequences selected in
Symbolic view.
Solve
Plot and explore a single function selected
in Symbolic view.
Spreadsheet
Not used
Statistics 1Var
Plot and explore the analyses selected in
Symbolic view.
Statistics 2Var
Plot and explore the analyses selected in
Symbolic view.
Triangle Solver
Trig Explorer
Not used
Explore sinusoidal equations and test your
knowledge of them.
An introduction to HP apps
75
Plot Setup view
The table below outlines what is done in the Plot Setup view of
each app.
App
Use the Plot Setup view to:
Advanced
Graphing
Modify the appearance of plots and the
plot environment.
Finance
Function
Not used
Modify the appearance of plots and the
plot environment.
Geometry
Inference
Modify the appearance of the drawing
environment.
Not used
Linear Explorer Not used
Linear Solver
Parametric
Not used
Modify the appearance of plots and the
plot environment.
Polar
Modify the appearance of plots and the
plot environment.
Quadratics
Explorer
Not used
Sequence
Modify the appearance of plots and the
plot environment.
Solve
Modify the appearance of plots and the
plot environment.
Spreadsheet
Not used
Statistics 1Var
Modify the appearance of plots and the
plot environment.
Statistics 2Var
Modify the appearance of plots and the
plot environment.
Triangle Solver
Trig Explorer
Not used
Not used
76
An introduction to HP apps
Numeric view
The table below outlines what is done in the Numeric view of
each app.
App
Use the Numeric view to:
Advanced
Graphing
View a table of numbers generated by the
open sentences selected in Symbolic view.
Finance
Enter values for time-value-of-money
calculations.
Function
Geometry
Inference
View a table of numbers generated by the
functions selected in Symbolic view.
Perform calculations on the geometric
objects drawn in Plot view.
Specify the statistics needed to perform the
test selected in Symbolic view.
Linear Explorer Not used
Linear Solver
Parametric
Polar
Specify the coefficients of the linear
equations to be solved.
View a table of numbers generated by the
functions selected in Symbolic view.
View a table of numbers generated by the
functions selected in Symbolic view.
Quadratics
Explorer
Not used
Sequence
View a table of numbers generated by the
sequences selected in Symbolic view.
Solve
Enter the known values and solve for the
unknown value.
Spreadsheet
Enter numbers, text, formulas, etc. The
Numeric view is the primary view for this
app.
Statistics 1Var
Statistics 2Var
Enter data for analysis.
Enter data for analysis.
An introduction to HP apps
77
App
Use the Numeric view to: (Cont.)
Triangle Solver
Enter known data about a triangle and
solve for the unknown data.
Trig Explorer
Not used
Numeric Setup view
The table below outlines what is done in the Numeric Setup view
of each app.
App
Use the Numeric Setup view to:
Advanced
Graphing
Specify the numbers to be calculated
according to the open sentences specified
in Symbolic view, and set the zoom factor.
Finance
Function
Not used.
Specify the numbers to be calculated
according to the functions specified in
Symbolic view, and set the zoom factor.
Geometry
Inference
Not used
Not used
Linear Explorer Not used
Linear Solver
Parametric
Not used
Specify the numbers to be calculated
according to the functions specified in
Symbolic view, and set the zoom factor.
Polar
Specify the numbers to be calculated
according to the functions specified in
Symbolic view, and set the zoom factor.
Quadratics
Explorer
Not used.
Sequence
Specify the numbers to be calculated
according to the sequences specified in
Symbolic view, and set the zoom factor.
Solve
Not used
78
An introduction to HP apps
App
Use the Numeric Setup view to: (Cont.)
Spreadsheet
Statistics 1Var
Statistics 2Var
Triangle Solver
Trig Explorer
Not used
Not used
Not used
Not used
Not used
Quick example
The following example uses all six app views and should give you
an idea of the typical workflow involved in working with an app.
The Polar app is used as the sample app.
Open the app
Symbolic view
1. Open the Application Library by pressing I.
2. Tap once on the icon of the Polar app.
The Polar app opens in Symbolic View.
The Symbolic view of the Polar app is where you define or specify
the polar equation you want to plot and explore. In this example
we will plot and explore the equation r = 4cos 2cos2
3. Define the equationr = 4cos 2cos2 by entering:
4
Szf
2>>
n
f
>
jE
(If you are using algebraic
entry mode, you would
enter 4
Szf
2>
n
f
>
.)
jE
This equation will draw symmetrical petals provided that the
angle measure is set to radians. The angle measure for this
app is set in the Symbolic Setup view.
An introduction to HP apps
79
Symbolic Setup view
4. Press SY.
5. Select Radiansfrom the
Angle Measure menu.
Plot view
6. Press P.
A graph of the equation is
plotted. However, as the
illustration at the right
shows, only a part of the
petals is visible. To see the
rest you will need to change
the plot setup parameters.
Plot Setup View
7. Press SP.
8. Set the second RNG field to
4 by entering:
4
(
> Sz
9. Press P to return to Plot
view and see the complete
plot.
80
An introduction to HP apps
Numeric View
The values generated by the
equation can be seen in
Numeric view.
10. Press M.
Suppose you want to see just
whole numbers for ; in other
words, you want the increment
between consecutive values in
the column to be 1. You set this up in the Numeric Setup view.
Numeric Setup View
11. P r e s s SM.
12. Change the NUMSTEP field
to 1.
13. Press M to return to
Numeric view.
You will see that the
column now contains
consecutive integers starting from zero, and the
corresponding values calculated by the equation specified in
Symbolic view are listed in the R1 column.
Common operations in Symbolic view
[Scope: Advanced Graphing, Function, Parametric, Polar,
Sequence, Solve. See dedicated app chapters for information
about the other apps.]
Symbolic view is typically used to define a function or open
sentence that you want to explore (by plotting and/or
evaluating). In this section, the term definition will be used to
cover both functions and open sentences.
Press Y to open Symbolic view.
Add a definition
With the exception of the Parametric app, there are 10 fields for
entering definitions. In the Parametric app there are 20 fields, two
for each paired definition.
An introduction to HP apps
81
1. Highlight an empty field you want to use, either by tapping
on it or scrolling to it.
2. Enter your definition.
If you need help, see “Definitional building blocks” on
page 82.
3. Tap
or press E when you have finished.
Your new definition is added to the list of definitions.
Note that variables used in definitions must be in uppercase.
A variable entered in lowercase will cause an error message
to appear.
Modify a definition
1. Highlight the definition you want to modify, either by tapping
on it or scrolling to it.
2. Tap
.
The definition is copied to the entry line.
3. Modify the definition.
4. Tap
or press E when you have finished.
Definitional building blocks
The components that make up a symbolic definition can come
from a number of sources.
•
•
From the keyboard
You can enter components directly from the keyboard. To
enter 2X2 – 3, just press 2AXjw3.
From user variables
If, for example, you have created a variable called COST,
you could incorporate that into a definition either by typing
it or choosing it from the User menu (one of the sub-menus
of the Variables menu). Thus you could have a definition that
reads F1(X)=X2+COST.
To select a user variable, press a, tap
, select
User Variables, and then select the variable of interest.
•
From Home variables
Some Home variables can be incorporated into a symbolic
definition. To access a Home variable, press a, tap
, select a category of variable, and select the
variable of interest. Thus you could have a definition that
82
An introduction to HP apps
reads F1(X)=X2+Q. (Qis on the Real sub-menu of the
Home menu.)
Home variables are discussed in detail in chapter 28,
“Troubleshooting”, beginning on page 507.
•
From app variables
All settings, definitions, and results, for all apps, are stored
as variables. Many of these variables can be incorporated
into a symbolic definition. To access app variables, press
a, tap
, select the app, select the category of
variable, and then select the variable of interest. You could,
for instance, have a definition that reads
F2(X)=X2+X–Root. The value of the last root calculated in
the Function app is substituted for Rootwhen this definition
is evaluated.
App variables are discussed in detail in chapter 28,
“Troubleshooting”, beginning on page 507.
•
From math functions
Some of the functions on the Math menu can be incorporated
into a definition. The Math menu is one of the Toolbox menus
(D). The following definition combines a math function
(Size) with a Home variable (L1): F4(X)=X2–SIZE(L1). It
is equivalent to x2 – n where n is the number of elements in the
list named L1. (Sizeis an option on the List menu, which is a
sub-menu of the Math menu.)
•
From CAS functions
Some of the functions on the CAS menu can be incorporated
into a definition. The CAS menu is one of the Toolbox menus
(D). The following definition incorporates the CAS
function irem: F5(X)=X2+CAS.irem(45,7). (iremis
entered by choosing Remainder, an option on the
Division menu, which is a sub-menu of the Integer menu.
Note that any CAS command or function selected to operate
outside the CAS is given the CAS.prefix.)
•
From app functions
Some of the functions on the App menu can be
incorporated into a definition. The App menu is one of the
Toolbox menus (D). The following definition incorporates
the app function PredY:
F9(X)=X2+Statistics_2Var.PredY(6).
An introduction to HP apps
83
•
From the Catlg menu
Some of the functions on the Catlg menu can be
incorporated into a definition. The Catlg menu is one of the
Toolbox menus (D). The following definition incorporates
a command from that menu and an app variable:
F6(X)=X2+INT(Root). The integer value of the last root
calculated in the Function app is substituted for INT(Root)
when this definition is evaluated.
•
From other definitions
You could, for example, define F3(X)as F1(X)*F2(X).
Evaluate a dependent definition
If you have a dependent definition—that is, one defined in terms
of another definition—you can combine all the definitions into
one by evaluating the dependent definition.
1. Select the dependent expression.
2. Tap
.
Consider the example at the
right. Notice that F3(X)is
defined in terms of two other
functions. It is a dependent
definition and can be evaluated.
If you highlight F3(X)and tap
, F3(X)becomes
2*X2+X+ 2*(X2 –1).
Select or deselect a definition to explore
In the Advanced Graphing, Function, Parametric, Polar,
Sequence, and Solve apps you can enter up to 10 definitions.
However, only those definitions that are selected in Symbolic view
will be plotted in Plot view and evaluated in Numeric view.
You can tell if a definition is selected by the tick (or checkmark)
beside it. A checkmark is added by default as soon as you create
a definition. So if you don’t want to plot or evaluate a particular
definition, highlight it and tap
re-select a deselected function.)
. (Do likewise if you want to
84
An introduction to HP apps
Choose a color for plots
Each function and open
sentence can be plotted in a
different color. If you want to
change the default color of a
plot:
1. Tap the colored square to
the left of the function’s
definition.
You can also select the square by pressing E while
the definition is selected. Pressing E moves the
selection from the definition to the colored square and from
the colored square to the definition.
2. tap
3. Select the desired color from the color-picker.
Delete a definition
.
To delete a single definition:
1. Tap once on it (or highlight it using the cursor keys).
2. Press C.
To delete all the definitions:
1. Press SJ.
2. Tap
or press E to confirm your intention.
An introduction to HP apps
85
Symbolic view: Summary of menu buttons
Button
Purpose
Copies the highlighted definition to the
entry line for editing. Tap
done.
when
To add a new definition—even one that is
replacing an existing one—highlight the
field and just start entering your new
definition.
Selects (or deselects) a definition.
Enters the independent variable in the
Function app. You can also press d.
[Function only]
Enters an X in the Advanced Graphing
app. You can also press d.
[Advanced
Graphing only]
Enters an Y in the Advanced Graphing
app.
[Advanced
Graphing only]
Enters the independent variable in the
Parametric app. You can also press d.
[Parametric only]
[Polar only]
Enters the independent variable in the Polar
app. You can also press d.
Enters the independent variable in the
Sequence app. You can also press d.
[Sequence only]
[Solve only]
Enters the equals sign in the Solve app. A
shortcut equivalent to pressing S..
Displays the selected definition in full-
screen mode. See “Large results” on
page 40 for more information.
Evaluates dependent definitions. See
“Evaluate a dependent definition” on
page 84.
86
An introduction to HP apps
Common operations in Symbolic Setup view
[Scope: all apps]
The Symbolic Setup view is the
same for all apps. Its primary
purpose is to allow you to
override three of the system-wide
settings specified on the Home
Settings window.
Press SY to open Symbolic
Setup view.
Override system-wide settings
1. Tap once on the setting you want to change.
You can tap on the field name or the field.
2. Tap again on the setting.
A menu of options appears.
3. Select the new setting.
Note that selecting the Fixed, Scientific, or
Engineeringoption on the Number Format menu
displays a second field for you to enter the required number
of significant digits.
You could also select a field, tap
setting.
, and select the new
Restore default settings
To restore default settings is to return precedence to the settings
on the Home Settings screen.
To restore one field to its default setting:
1. Select the field.
2. Press C.
To restore all default settings, press SJ.
An introduction to HP apps
87
Common operations in Plot view
Plot view functionality that is common to many apps is described
in detail in this section. Functionality that is available only in a
particular app is described in the chapter dedicated to that app.
Press P to open Plot view.
Zoom
[Scope: Advanced Graphing, Function, Parametric, Polar,
Sequence, Solve, Statistics 1 Var, and Statistics 2Var. Also, to a
limited degree, Geometry.]
Zooming redraws the plot on a larger or smaller scale. It is a shortcut
for changing the range settings in Plot Setup view. The extent of most
zooms is determined by two zoom factors: a horizontal and a vertical
factor. By default, these factors are both 2. Zooming out multiplies the
scale by the factor, so that a greater scale distance appears on the
screen. Zooming in divides the scale by the factor, so that a shorter
scale distance appears on the screen.
Zoom factors
To change the default zoom factors:
1. Open the Plot view of the app (P).
2. Tap
3. Tap
to open the Plot view menu.
to open the Zoom menu.
4. Scroll and select Set
Factors.
The Zoom Factors screen
appears.
5. Change one or both zoom
factors.
6. If you want the plot to be
centered around the current position of the cursor in Plot
view, select Recenter.
7. Tap
or press E.
Zoom
options
Zoom options are available from three sources:
•
•
•
the keyboard
the
menu in Plot view
the Views menu (V).
88
An introduction to HP apps
Zoom keys
Zoom menu
w zooms out. The extent of the scaling is determined by the
ZOOM FACTOR settings (explained above).
In Plot view, tap
an option. (If
and tap
is not
.)
displayed, tap
The zoom options are explained
in the following table. Examples
are provided on “Zoom
examples” on page 91.
Option
Result
Center on
Cursor
Redraws the plot so that the cursor is in the
center of the screen. No scaling occurs.
Box
In
Explained in “Box zoom” on page 90.
Divides the horizontal and vertical scales
by X Zoom and Y Zoom (values set with
the Set Factors option explained on
page 88). For instance, if both zoom
factors are 4, then zooming in results in 1/
4 as many units depicted per pixel.
(Shortcut: press +.)
Out
Multiplies the horizontal and vertical scales
by the X Zoom and Y Zoom settings.
(Shortcut: press w.)
X In
Divides the horizontal scale only, using the
X Zoom setting.
X Out
Y In
Multiplies the horizontal scale only, using
the X Zoom setting.
Divides the vertical scale only, using the Y
Zoom setting.
Y Out
Multiplies the vertical scale only, using the
Y Zoom setting.
An introduction to HP apps
89
Option
Result (Cont.)
Square
Changes the vertical scale to match the
horizontal scale. This is useful after you
have done a box zoom, X zoom or Y
zoom.
Autoscale
Rescales the vertical axis so that the display
shows a representative piece of the plot
given the supplied x axis settings. (For
Sequence, Polar, parametric, and Statistics
apps, autoscaling rescales both axes.)
The autoscale process uses the first selected
function to determine the best scale to use.
Decimal
Rescales both axes so each pixel is 0.1
units. This is equivalent to resetting the
default values for XRNG and YRNG.
Rescales the horizontal axis only, making
each pixel equal to 1 unit.
Integer
Trig
Rescales the horizontal axis so that
1 pixel equals /24 radians or 7.5
degrees; rescales the vertical axis so that 1
pixel equals 0.1 units.
Returns the display to the previous zoom, or
if there has been only one zoom, displays
the graph with the original plot settings.
Undo Zoom
Box zoom
A box zoom enables you to zoom in on an area of the screen that
you specify.
1. With the Plot view menu open, tap
2. Tap one corner of the area you want to zoom in on and then
tap
3. Tap the diagonally opposite corner of the area you want to
zoom in on and then tap
The screen fills with the area you specified. To return to the
default view, tap and select Decimal.
and select Box.
.
.
You can also use the cursor keys to specify the area you want to
zoom in on.
90
An introduction to HP apps
Views menu
The most commonly used zoom
options are also available on the
Views menu. These are:
•
•
•
•
Autoscale
Decimal
Integer
Trig.
These options—which can be applied whatever view you are
currently working in—are explained in the table immediately
above.
Testing a
zoom with
split-screen
viewing
A useful way of testing a zoom is
to divide the screen into two
halves, with each half showing
the plot, and then to apply a
zoom only to one side of the
screen. The illustration at the
right is a plot of y = 3sinx. To
split the screen into two halves:
1. Open the Views menu.
Press V
2. Select Split Screen:
Plot Detail.
The result is shown at the
right. Any zoom operation
you undertake will be
applied only to the copy of the plot in the right-hand half of
the screen. This will help you test and then choose an
appropriate zoom.
Note that you can replace the original plot on the left with the
zoomed plot on the right by tapping
.
To un-split the screen, press P.
Zoom
examples
The following examples show the effects of the zooming options
on a plot of 3sinx using the default zoom factors (2×2). Split-
screen mode (described above) has been used to help you see the
effect of zooming.
An introduction to HP apps
91
Note that there is an Unzoomoption on the Zoom menu. Use
this to return a plot to its pre-zoom state. If the Zoom menu is not
shown, tap
Zoom In
In
.
Shortcut: press +
Zoom Out
Out
Shortcut: press w
X In
XIn
X Out
XOut
Y In
YIn
92
An introduction to HP apps
Y Out
YOut
Square
Square
Notice that in this example, the
plot on left has had a YInzoom
applied to it. The Squarezoom
has returned the plot to its
default state where the X and Y
scales are equal.
Autoscale
Autoscale
Decimal
Decimal
Notice that in this example, the
plot on left has had a XInzoom
applied to it. The Decimal
zoom has reset the default
values for the x-range and y-
range.
Integer
Integer
An introduction to HP apps
93
Trig
Trig
Trace
[Scope: Advanced Graphing, Function, Parametric, Polar,
Sequence, Solve, Statistics 1 Var, and Statistics 2Var.]
The tracing functionality enables
you to move a cursor (the trace
cursor) along the current graph.
You move the trace cursor by
pressing
or
. You can also
>
<
move the trace cursor by tapping
on or near the current plot. The
trace cursor jumps to the point
on the plot that is closest point to where you tapped.
The current coordinates of the cursor are shown at the bottom of
the screen. (If menu buttons are hiding the coordinates, tap
to hide the buttons.)
Trace mode and coordinate display are automatically turned on
when a plot is drawn.
To select a
plot
Except in the Advanced Graphing app, if there is more than one
plot displayed, press
you are interested in.
or
until the trace cursor is on the plot
=
\
In the Advanced Graphing app, tap-and-hold on the plot you are
interested in. Either the plot is selected, or a menu of plots
appears for you select one.
Toevaluatea
definition
One of the primary uses of the trace functionality is to evaluate a
plotted definition. Suppose in Symbolic view you have defined
F1(X)as (X–1)2 –3. Suppose further that you want to know
what the value of that function is when X is 25.
1. Open Plot view (P).
94
An introduction to HP apps
2. If the menu at the bottom of the screen is not open, tap
.
3. If more than one definition is plotted, ensure that the trace
cursor is on the plot of the definition you want to evaluate.
You can press
press = or \ to move the trace cursor from plot to plot.
4. If you pressed to see the definition of a plot, the menu
to see the definition of a plot, and
at the bottom of the screen will be closed. Tap
open it.
to re-
5. Tap
.
6. Enter 25 and tap
.
7. Tap
.
The value of F1(X) when X
is 25 as shown at the
bottom of the screen.
This is one of many ways the HP
Prime provides for you to
evaluate a function for a specific
independent variable. You can
also evaluate a function in
Numeric view (see page 102). Moreover, any expression you
define in Symbolic view can be evaluated in Home view. For
example, suppose F1(X)is defined as (x–1)2 –3. If you enter
F1(4)in Home view and press E you get 6, since
(4– 1)2 –3 = 6.
To turn
tracing on or
off
•
•
To turn off tracing, tap
To turn on tracing, tap
.
.
If these options are not displayed, tap
.
When tracing is off, pressing the cursor keys no longer
constrains the cursor to a plot.
An introduction to HP apps
95
Plot view: Summary of menu buttons
Button
Purpose
Displays a menu of zoom options. See
“Zoom options” on page 88.
on trace functionality. See “Trace” on
page 94.
/
Displays an input form for you to specify a
value you want the cursor to jump to. The
value you enter is the value of the
independent variable.
Displays a menu of options for analyzing a
plot. See “Analyzing functions” on
page 118.
[Function only]
Displays the definition responsible for
generating the selected plot.
A toggle button that shows and hides the
other buttons across the bottom of the
screen.
Common operations in Plot Setup view
This section covers only operations common to the apps
mentioned. See the chapter dedicated to an app for the app-
specific operations done in Plot Setup view.
Press SP to open Plot Setup view.
Configure Plot view
[Scope: Advanced Graphing,
Function, Parametric, Polar,
Sequence, Statistics 1 Var,
Statistics 2Var]
The Plot Setup view is used to
configure the appearance of Plot
view and to set the method by
which graphs are plotted. The
96
An introduction to HP apps
configuration options are spread across two pages. Tap
to move from the first to the second page, and
to return to the first page.
T i p
When you go to Plot view to see the graph of a definition
selected in Symbolic view, there may be no graph shown. The
likely cause of this is that the spread of plotted values is outside
the range settings in Plot Setup view. A quick way to bring the
graph into view is to press V and select Autoscale. This
also changes the range settings in Plot Setup view.
Page 1
Setup field
Purpose
TRNG
Sets the range of T-values to be plotted.
Note that here are two fields: one for the
minimum and one for the maximum value.
[Parametric
only]
TSTEP
Sets the increment between consecutive T-
values.
[Parametric only]
RNG
[Polar only]
Sets the range of angle values to be
plotted. Note that here are two fields: one
for the minimum and one for the maximum
value.
STEP
[Polar only]
Sets the increment between consecutive
angle values.
SEQPLOT
[Sequence
only]
Sets the type of plot: Stairstep or Cobweb.
NRNG
Sets the range of N-values to be plotted.
Note that here are two fields: one for the
minimum and one for the maximum value.
[Sequence
only]
HWIDTH
Sets the width of the bars in a histogram.
[Stats 1 Var
only]
HRNG
Sets the range of values to be included in a
histogram. Note that here are two fields:
one for the minimum and one for the
maximum value.
[Stats 1 Var
only]
An introduction to HP apps
97
Setup field
Purpose (Cont.)
S*MARK
[Stats 2 Var
only]
Sets the graphic that will be used to
represent a data point in a scatter plot. A
different graphic can be used for each of
the five analyses that can be plotted
together.
XRNG
Sets the initial range of the x-axis. Note
that here are two fields: one for the
minimum and one for the maximum value.
In Plot view the range can be changed by
panning and zooming.
YRNG
Sets the initial range of the y-axis. Note
that there are two fields: one for the
minimum and one for the maximum value.
In Plot view the range can be changed by
panning and zooming.
XTICK
YTICK
Sets the increment between tickmarks on
the x-axis.
Sets the increment between tickmarks on
the y-axis.
Page 2
Setup field
Purpose
AXES
Shows or hides the axes.
LABELS
Places values at the ends of each axis to
show the current range of values.
GRID DOTS
GRID LINES
CURSOR
Places a dot at the intersection of each
horizontal and vertical grid line.
Draws a horizontal and vertical grid line at
each integer x-value and y-value.
Sets the appearance of the trace cursor:
standard, inverting, or blinking.
CONNECT
Connects the data points with straight
segments.
[Stats 2 Var
only]
98
An introduction to HP apps
Setup field
Purpose (Cont.)
METHOD
Sets the graphing method to adaptive,
fixed-step segments, or fixed-step dots.
Explained below.
[Not in either
statistics app]
Graphing methods
The HP Prime gives you the option of choosing one of three
graphing methods. The methods are described below, with each
applied to the function f(x)=9*sin(ex).
•
adaptive: this gives very
accurate results and is used
by default. With this method
active, some complex
functions may take a while
to plot. In these cases,
appears on the
menu bar, enabling you to
stop the plotting process if you wish.
•
fixed-step segments: this
method samples x-values,
computes their
corresponding y-values, and
then plots and connects the
points.
•
fixed-step dots: this works
like fixed-step segments
method but does not
connect the points.
An introduction to HP apps
99
Restore default settings
[Scope: Advanced Graphing, Function, Parametric, Polar,
Sequence, Solve, Statistics 1 Var, Statistics 2Var, Geometry.]
To restore one field to its default setting:
1. Select the field.
2. Press C.
To restore all default settings, press SJ.
Common operations in Numeric view
[Scope: Advanced Graphing, Function, Parametric, Polar]
Numeric view functionality that is common to many apps is
described in detail in this section. Functionality that is available
only in a particular app is described in the chapter dedicated to
that app.
Numeric view provides a table
of evaluations. Each definition in
Symbolic view is evaluated for a
range of values for the
independent variable. You can
set the range and fineness of the
independent variable, or leave it
to the default settings.
Press M to open Numeric view.
Zoom
Unlike in Plot view, zooming in Numeric view does not affect the
size of what is displayed. Instead, it changes the increment
between consecutive values of the independent variable (that is,
the NUMSTEP setting in the Numeric Setup view: see page 105).
Zooming in decreases the increment; zooming out increases the
increment. The row that was highlighted before the zoom remains
unchanged.
For the ordinary zoom in and zoom out options, the degree of
zooming is determined by the zoom factor. In Numeric view this
is the NUMZOOM field in the Numeric Setup view. The default value
is 4. Thus if the current increment (that is, the NUMSTEP value) is
0.4, zooming in will further divide that interval by four smaller
intervals. So instead of x-values of 10, 10.4, 10,8, 11.2 etc., the
100
An introduction to HP apps
x-values will be 10, 10.1, 10.2, 10.3, 10.4, etc. (Zooming out
does the opposite: 10, 10.4, 10,8, 11.2 etc. becomes10, 11.6,
13.2, 14.8, 16.4, etc.).
Before zooming
After zooming
Zoom
options
In Numeric view, zoom options are available from two sources:
•
•
the keyboard
the menu in Numeric view.
Note that any zooming you do in Numeric view does not affect
Plot view, and vice versa. However, if you choose a zoom option
from the Views menu (V) while you are in Numeric view, Plot
view is displayed with the plots zoomed accordingly. In other
words, the zoom options on the Views menu apply only to Plot
view.
Zooming in Numeric view automatically changes the NUMSTEP
value in the Numeric Setup view.
Zoom keys
Zoom menu
There are two zoom keys: pressing + zooms in and pressing
w zooms out. The extent of the scaling is determined by the
NUMZOOM setting (explained above).
In Numeric view, tap
tap an option.
and
An introduction to HP apps
101
The zoom options are explained in the following table.
Option
Result
In
The increment between consecutive values
of the independent variable becomes the
current value divided by the NUMZOOM
setting. (Shortcut: press +.)
Out
The increment between consecutive values
of the independent variable becomes the
current value multiplied by the NUMZOOM
setting. (Shortcut: press w.)
Decimal
Integer
Trig
Restores the default NUMSTART and NUMSTEP
values: 0 and 0.1 respectively.
The increment between consecutive values
of the independent variable is set to 1.
• If the angle measure setting is radians,
sets the increment between consecutive
values of the independent variable
to /24 (approximately 0.1309).
• If the angle measure setting is degrees,
sets the increment between consecutive
values of the independent variable to
7.5.
Returns the display to the previous zoom, or
if there has been only one zoom, displays
the graph with the original plot settings.
Undo Zoom
Evaluating
You can step through the table of evaluations in Numeric view by
pressing = or \. You can also quickly jump to an evaluation
by entering the independent variable of interest in the
independent variable column and tapping
.
For example, suppose in the Symbolic view of the Function app,
you have defined F1(X)as (X–1)2 –3. Suppose further that
you want to know what the value of that function is when X is 625.
1. Open Numeric view (M).
2. Anywhere in the independent column—the left-most
column—enter 625.
102
An introduction to HP apps
3. Tap
.
Numeric view is refreshed,
with the value you entered
in the first row and the result
of the evaluation in a cell to
the result is 389373.
Custom tables
If you choose Automaticfor the NUMTYPE setting, the table of
evaluations in Numeric view will follow the settings in the
Numeric Setup view. That is, the independent variable will start
with the NUMSTART setting and increment by the NUMSTEP setting.
(These settings are explained in “Common operations in Numeric
Setup view” on page 105.) However, you can choose to build
your own table where just the values you enter appear as
independent variables.
1. Open Numeric Setup view.
SM
2. Choose BuildYourOwnfrom the NUMTYPE menu.
3. Open Numeric view.
Numeric view will be empty.
4. In the independent
column—the left-most
column—enter a value of
interest.
5. Tap
.
6. If you still have other values to
evaluate, repeat from step 4.
Deleting
data
To delete one row of data in your custom table, place the cursor
in that row and press C.
To delete all the data in your custom table:
1. Press SJ.
2. Tap
or press E to confirm your intention.
An introduction to HP apps
103
Numeric view: Summary of menu buttons
Button
Purpose
To modify the increment between
consecutive values of the independent
variable in the table of evaluations. See
page 100.
To edit the value in the selected cell.
[BuildYourOwn To overwrite the value in the selected cell,
only] you can just start entering a new value
without first tapping
Only visible if NUMTYPE is set to
BuildYourOwn. See “Custom tables” on
page 103.
To create a new row above the currently
[BuildYourOwn highlighted cell, with zero as the
only]
independent value. You can immediately
start typing a new value.
BuildYourOwn. See “Custom tables” on
page 103.
To sort the values in the selected column in
[BuildYourOwn ascending or descending order. Move the
only]
cursor to the column of interest, tap
,
select Ascendingor Descending, and
tap
.
Only visible if NUMTYPE is set to
BuildYourOwn. See “Custom tables” on
page 103.
Lets you choose between small, medium,
and large font.
Toggles between showing the value of the
cell and the definition that generated the
value.
104
An introduction to HP apps
Button
Purpose (Cont.)
Displays a menu for you to choose to
display the evaluations of 1, 2, 3, or 4
defintions. If you have more than four
definitions seelcted in Symbolic view, you
can press > to scroll rightwards and see
more columns. Pressing < scrolls the
columns leftwards.
Common operations in Numeric Setup view
[Scope: Advanced Graphing, Function, Parametric, Polar,
Sequence]
Press SM to open Numeric Setup view.
The Numeric Setup view is used
to:
•
set the starting number for
the independent variable in
automatic tables displayed
in Numeric view: the Num
Start field.
•
•
set the increment between
consecutive numbers in automatic tables displayed in
Numeric view: the Num Step field.
specify whether the table of data to be displayed in Numeric
view is to be based on the specified starting number and
increment (automatic table) or to based on particular
numbers for the independent variable that your specify
(build-your-own table): the Num Type field.
•
set the zoom factor for zooming in or out on the table
displayed in Numeric view: the Num Zoom field.
Modifying Numeric Setup
Select the field you want to change and either specify a new
value, or if you are choosing a type of table for Numeric
view—automatic or build-your-own—choose the appropriate
option from the Num Type menu.
An introduction to HP apps
105
To help you set a starting
number and increment that
matches the current Plot view,
tap
.
Restore default settings
To restore one field to its default setting:
1. Select the field.
2. Press C.
To restore all default settings, press SJ.
Combining Plot and Numeric Views
You can display Plot view and
Numeric view side-by-side.
Moving the tracing cursor
causes the table of values in
Numeric view to scroll. You can
also enter a value in the X
column. The table scrolls to that
value, and the tracing cursor
jumps to the corresponding point on the selected plot.
To combine Plot and Numeric view in a split screen, press V
and select Split Screen: Plot Table.
To return to Plot view, press
. To return to Numeric view by
M
pressing
.
M
Adding a note to an app
You can add a note to an app. Unlike general notes—those
created via the Note Catalog: see chapter 26—an app note is not
listed in the Note Catalog. It can only be accessed when the app
is open.
An app note remains with the app if the app is sent to another
calculator.
106
An introduction to HP apps
To add a note to an app:
1. Open the app.
2. Press SI (Info).
If a note has already been created for this app, its contents
are displayed.
3. Tap
and start writing (or editing) your note.
The format and bullet options available are the same as
those in the Note Editor (described in “The Note Editor” on
page 490).
4. To exit the note screen, press any key. Your note is
automatically saved.
Creating an app
The apps that come with the HP Prime are built in and cannot be
deleted. They are always available (simply by pressing I).
However, you can create any number of customized instances of
most apps. You can also create an instance of an app that is
based on a previously customized app. Customized apps are
opened from the application library in the same way that you
open a built-in app.
The advantage of creating a customized instance of an app is that
you can continue to use the built-in app for some other problem
and return to the customized app at any time with all its data still
in place. For example, you could create a customized version of
the Sequence app that enables you to generate and explore the
Fibonacci series. You could continue to use the built-in Sequence
app to build and explore other sequences and return, as needed,
to your special version of the Sequence app when you next want
to explore the Fibonacci series. Or you could create a customized
version of the Solve app—named, for example, Triangles—in
which you set up, just once, the equations for solving common
problems involving right-angled triangles (such as H=O/SIN(),
A=H*COS(), O=A*TAN(), etc.). You could continue to use the
Solve app to solve other types of problems but use your Triangle
app to solve problems involving right-angled triangles. Just open
Triangles, select which equation to use—you won’t need to re-
enter them—enter the variables you know, and then solve for the
unknown variable.
An introduction to HP apps
107
Like built-in apps, customized apps can be sent to another HP
Prime calculator. This is explained in “Sharing data” on page 44.
Customized apps can also be reset, deleted, and sorted just as
built-in apps can (as explained earlier in this chapter).
Note that the only apps that cannot be customized are the:
•
•
•
Linear Explorer
Quadratic Explorer and
Trig Explorer apps.
Example
Suppose you want to create a customized app that is based on
the built-in Sequence app. The app will enable you to generate
and explore the Fibonacci series.
1. Press I and use the
cursor keys to highlight the
Sequence app. Don’t open
the app.
2. Tap
. This enables
you to create a copy of the
built-in app and save it
under a new name. Any
data already in the built-in app is retained, and you can
return to it later by opening the Sequence app.
3. In the Name field, enter a name for your new app—say,
Fibonacci—and press E twice.
Your new app is added to
the Application Library.
Note that it has the same
icon as the parent
app—Sequence—but with
the name you gave it:
Fibonacciin this
example.
4. You are now ready to use this app just as you would the
built-in Sequence app. Tap on the icon of your new app to
open it. You will see in it all the same views and options as
in the parent app.
In this example we have used the Fibonacci series as a potential
topic for a customized app. To see how to create the Fibonacci
series once inside the Sequence app—or an app based on the
108
An introduction to HP apps
Sequence app—see chapter 17, “Sequence app”, beginning on
page 279.
As well as cloning a built-in app—as described above—you can
modify the internal workings of a customized app using the HP
Prime programming language. See “Customizing an app” on
page 521.
App functions and variables
Functions
App functions are used in HP apps to perform common
calculations. For example, in the Function app, the Plot view Fcn
menu has a function called SLOPEthat calculates the slope of a
given function at a given point. The SLOPEfunction can also be
used from the Home view or a program.
For example, suppose you want to find the derivative of x2 – 5 at
x = 2. One way, using an app function, is as follows:
1. Press D.
2. Tap
and select Function> SLOPE.
SLOPE()appears on the entry line, ready for you to specify
the function and the x-value.
3. Enter the function:
Asjw5
4. Enter the parameter
separator:
o
5. Enter the x-value and press
E.
The slope (that is the
derivative) at x = 2 is
calculated: 4.
All the app functions are described in “App menu”, beginning on
page 343.
Variables
All apps have variables, that is, placeholders for various values
that are unique to a particular app. These include symbolic
expressions and equations, settings for the Plot and Numeric
views, and the results of some calculations such as roots and
intersections.
An introduction to HP apps
109
Suppose you are in Home view and want to retrieve the meanof
a data set recently calculated in the Statistics 1Var app.
1. Press a.
This opens the Variables menu. From here you can access
Home variables, user-defined variables, and app variables.
2. Tap
.
This opens a menu of app
variables.
3. Select Statistics 1Var
> results > MeanX.
The current value of the
variable you chose now
appears on the entry line. You can press E to see its
value. Or you can include the variable in an expression that
you are building. For example, if you wanted to calculate the
square root of the mean computed in the Statistics 1Var app,
you would first press Sj, follow steps 1 to 3 above,
and then press E.
See appendix A, “Glossary”, beginning on page 581 for a
complete list of app variables.
Qualifying
variables
You can qualify the name of any app variable so that it can be
accessed from anywhere on the HP Prime. For example, both the
Function app and the Parametric app have an variable named
Xmin. If the app you last had open was the Parametric app and
enter Xminin Home view, you will get the value of Xminfrom the
Parametric app. To get the value of Xminin the Function app
instead, you could open the Function app and then return to
Home view. Alternatively, you could qualify the name of the
variable by preceding it with the app name and a period, as in
Function.Xmin.
110
An introduction to HP apps
6
Function app
The Function app enables you to explore up to 10 real-
valued, rectangular functions of y in terms of x; for
Once you have defined a function you can:
•
create graphs to find roots, intercepts, slope, signed
area, and extrema, and
•
create tables that show how functions are evaluated
at particular values.
This chapter demonstrates the basic functionality of the
Function app by stepping you through an example. More-
Plot and Numeric described in chapter 5.
For a description of the menu buttons available in this
app, see:
•
•
•
“Symbolic view: Summary of menu buttons” on
page 86
“Plot view: Summary of menu buttons” on page 96,
and
“Numeric view: Summary of menu buttons” on
page 104.
Throughout this chapter, we will explore the linear function
y = 1 – x and the quadratic function y = x – 12 – 3 .
Function app
111
Open the
Function app
1. Open the Function
app.
Select
I
Function
Recall that you can
open an app just by
tapping its icon.
You can also open
it by using the cursor keys to highlight it and then
pressing E.
The Function app starts in Symbolic view. This is the
defining view. It is where you symbolically define
(that is, specify) the functions you want to explore.
The graphical and numerical data you see in Plot
view and Numeric view are derived from the
symbolic expressions defined here.
Define the
expressions
There are 10 fields for defining functions. These are
labeled F1(X)through F9(X)and F0(X).
2. Highlight the field you want to use, either by tapping
on it or scrolling to it. If you are entering a new
expression, just start typing. If you are editing an
existing expression, tap
and make your
changes. When you have finished defining or
changing the expression, press E.
3. Enter the linear function in F1(X).
1wdE
4. Enter the quadratic
function in F2(X).
Rdw1>
jw 3E
N O T E
You can tap the
button to assist in the entry of
equations. In the Function app, it has the same effect as
pressing d. (In other apps, d enters a different
character.)
112
Function app
5. Decide if you want to:
–
give one or more function a custom color when it
is plotted
–
–
evaluate a dependent function
deselect a definition that you don’t want to
explore
–
incorporate variables, math commands and CAS
commands in a definition.
For the sake of simplicity we can ignore these
operations in this example. However, they can be
useful and are described in detail in “Common
operations in Symbolic view” on page 81.
Set up the
plot
You can change the
range of the x- and y-
axes and the spacing of
the tick marks along the
axes
6. Display Plot Setup
view.
SP(Setup)
For this example, you can leave the plot settings at their
default values. If your settings do not match those in the
illustration above, press SJ (Clear) to restore the
default values.
See “Common operations in Plot Setup view” on page 96
for more information about setting the appearance of
plots.
Plot the
functions
7. Plot the functions.
P
Function app
113
Trace a
graph
By default, the trace functionality is active. This enables
you to move a cursor along a graph. If more than two
graphs are shown, the graph that is the highest in the list
of functions in Symbolic view is the graph that will be
traced by default. Since the linear equation is higher than
the quadratic function in Symbolic view, it is the graph on
which the tracing cursor appears by default.
8. Trace the linear
function.
> or <
Note how a cursor
moves along the
plot as you press
the buttons. Note
too that the
coordinates of the cursor appear at the bottom of the
screen and change as you move the cursor.
9. Move the tracing cursor from the linear function to the
quadratic function.
= or \
10. Trace the quadratic
function.
> or <
Again notice how
the coordinates of
the cursor appear at
the bottom of the
screen and change as you move the cursor.
Tracing is explained in more detail in “Trace” on
page 94.
Change the
scale
You can change the scale to see more or less of your
graph. This can be done in four ways:
•
Press + to zoom in or
to zoom out on the
w
current cursor position. This method uses the zoom
factors set in the Zoom menu. The default for both x
and y is 2.
•
Use the Plot Setup view to specify the exact x-range
(XRNG) and y-range (YRNG) you want.
114
Function app
•
•
Use options on the Zoom menu to zoom in or out,
horizontally or vertically, or both, etc.
Use options on the View menu (V) to select a pre-
defined view. Note that the Autoscaleoption
attempts to provide a best fit, showing as many of the
critical features of each plot as possible.
N O T E
By dragging a finger horizontally or vertically across the
screen, you can quickly see parts of the plot that are
initially outside the set x and y ranges. This is easier than
resetting the range of an axis.
Zoom options—with numerous examples—are
explained in more detail in “Zoom” on page 88.
Display
Numeric
view
11. Display the Numeric
view:
M
The Numeric view
displays data
generated by the
expressions you
defined in Symbolic
view. For each expression selected in Symbolic view,
Numeric view displays the value that results when the
expression is evaluated for various x-values.
Set up
Numeric
view
12. Display the Numeric
Setup view:
M(Setup)
S
You can set the
starting value and
step value (that is,
the increment) for
the x-column, as
well as the zoom factor for zooming in or out on a
row of the table. Note that in Numeric view, zooming
does not affect the size of what is displayed. Instead,
it changes the Num Step setting (that is, the
increment between consecutive x-values). Zooming in
decreases the increment; zooming out increases the
increment. This is further explained in “Zoom” on
page 100.
Function app
115
You can also choose whether the table of data in
Numeric view is automatically populated or whether
it is populated by you typing in the particular x-values
you are interested in. These options—Automaticor
BuildYourOwn—are available from the Num
Type list. They are explained in detail in “Custom
tables” on page 103.
13. Press
(Clear) to reset all the settings to their
SJ
defaults.
14. Make the Numeric
view X-column
settings (Num
Start and Num
Step) match the
tracer x-values
(Xmin and pixel
width) in Plot view:
Tap
.
For example, if you have zoomed in on the plot in
Plot view so that the visible x-range is now –4 to 4,
this option will set Num Start to –4 and Num Step
to 0.025…
Explore
Numeric
view
15. Re -display Numeric
view:
M
To navigate around
a table
16. Using the cursor
keys, scroll through
the values in the
independentcolumn
(column X). Note
that the values in the
F1and F2columns
match what you
would get if you
substituted the values in the Xcolumn for x in the
116
Function app
expressions selected in Symbolic view: 1–xand
(x–1)2–3. You can also scroll through the columns
of the dependant variables (labeled F1and F2in the
illustration above).
You can also scroll the table vertically or horizontally
using tap and drag gestures.
To go directly to a
value
17. Place the cursor in the
Xcolumn and type
the desired value. For
example, to jump
straight to the row
where x = 10:
1 0
To access the zoom
options
Numerous zoom options are available by tapping
These are explained in “Zoom” on
.
page 100. A quick way to zoom in (or zoom out) is
to press + (or w). This zooms in (or out) by the
(see page 115). The default value is 4. Thus if the
current increment (that is, the Num Step value) is
0.4, zooming in on the row whose x-value is 10 will
further divide that interval into four smaller intervals.
So instead of x-values of 10, 10.4, 10,8, 11.2 etc.,
the x-values will be 10, 10.1, 10.2, 10.3, 10.4, etc.
(Zooming out does the opposite: 10, 10.4, 10,8,
Other options
As explained on page page 104, you can also:
•
•
change the size of the font: small, medium, or large
display the definition responsible for generating a
column of values
•
choose to show 1, 2, 3, or 4 columns of function
values.
You can also combine Plot and Numeric view. See
“Custom tables” on page 103.
Function app
117
Analyzing functions
The Function menu (
) in Plot view enables you to
find roots, intersections, slopes, signed areas, and
extrema for any function defined in the Function app. If
you have more than one function plotted, you may need
to choose the function of interest beforehand.
Display the
Plot view
menu
The Function menu is a sub-menu of the Plot view menu.
First, display the Plot view menu:
P
To find a root of the
quadratic function
Suppose you want to find the root of the quadratic
equation defined earlier. Since a quadratic equation can
have more than one root, you will need to move the cursor
closer to the root you are interested in than to any other
root. In this example, you will find the root of the quadratic
close to where x = 3.
1. If it is not already selected, select the quadratic
equation:
or
=
\
>
2. Press
3.
or
to move the cursor near to where x =
<
3. Tap
and
select Root
The root is
displayed at the
bottom of the
screen.
If you now move the
trace cursor close to
x = –1 (the other
place where the
quadratic crosses the x-axis) and select Rootagain,
the other root is displayed.
118
Function app
Note the
button. If you tap
this button, vertical
and horizontal
dotted lines are
drawn through the
current position of
the tracer to
highlight its
position. Use this feature to draw attention to the
cursor location. You can also choose a blinking
cursor in Plot Setup. Note that the functions in the Fcn
menu all use the current function being traced as the
function of interest and the current tracer x-
coordinate as an initial value. Finally, note that you
can tap anywhere in Plot view and the tracer will
move to the point on the current function that has the
same x-value as the location you tapped. This is a
faster way of choosing a point of interest than using
the trace cursor. (You can move this tracing cursor
using the cursor keys if you need finer precision.)
To find an
intersection of two
functions
Just as there are two roots of the quadratic equation, there
are two points at which both functions intersect. As with
roots, you need to position your cursor closer to the point
you are interested in. In this example, the intersection close
to x =–1 will be determined.
The Go To command is another way of moving the trace
cursor to a particular point.
1. Tap
Q1, and tap
, enter
to re-display the menu, tap
.
The tracing cursor will now be on one of the
functions at x = 1.
2. Tap
select
and
Intersection.
A list appears
giving you a choice
of functions and
axes.
Function app
119
3. Choose the function whose point of intersection with
The coordinates of
the intersection are
displayed at the
bottom of the
screen.
Tap
on the
screen near the
intersection, and
repeat from step 2. The coordinates of the
intersection nearest to where you tapped are
displayed at the bottom of the screen.
To find the slope of
the quadratic
function
We will now find the slope of the quadratic function at the
intersection point.
1.
and
Tap
to re-display the menu, tap
select Slope.
The slope (that is,
the gradient) of the
function at the
intersection point is
displayed at the
bottom of the
screen.
You can press <
or > to trace along the curve and see the slope at
other points. You can also press = or \ to jump to
another function and see the slope at points on it.
2. Press
to re-display the Plot menu.
To find the signed
area between the
two functions
We’ll now find the area between the two functions in the
range –1.3 x 2.3 .
1. Tap
and select Signed area.
120
Function app
2. Specify the start
value for x:
Tap
and
press Q1.3
E.
3. Tap
.
4. Select the other
function as the
boundary for the
integral. (If F1(X) is
the currently
selected function,
you would choose
F2(X) here, and vice
versa.)
5. Specify the end value for x:
Tap
and press 2.3E.
The cursor jumps to
x = 2.3 and the
area between the
two functions is
shaded.
6. To display the
numerical value of
the integral, tap
.
7. Tap
to return
to the Plot menu.
Note that the sign of
the area calculated
depends both on which function you are tracing and
whether you enter the endpoints from left to right or
right to left.
Shortcut: When the Goto option is available, you can
display the Go To screen simply by typing a number. The
Function app
121
number you type appears on the entry line. Just tap
to accept it.
To find the
extremum of the
quadratic
1. To calculate the
coordinates of the
extremum of the
quadratic equation,
move the tracing
cursor near the
extremum of interest
(if necessary), tap
and select
Extremum.
The coordinates of the extremum are displayed at the
bottom of the screen.
N O T E
The ROOT, INTERSECTION, and EXTREMUMoperations
return only one value even if the function in question has
more than one root, intersection, or extremum. The app
will only return values that are closest to the cursor. You
will need to move the cursor closer to other roots,
intersections, or extrema if you want the app to calculate
values for those.
The Function Variables
The result of each numerical analysis in the Function app
is assigned to a variable. These variables are named:
• Root
• Isect(for Intersection)
• Slope
• SignedArea
• Extremum
The result of each new analysis overwrites the previous
result. For example, if you find the second root of a
quadratic equation after finding the first, the value of
Rootchanges form the first to the second root.
122
Function app
To access Function
variables
The Function variables are available in Home view and in
the CAS, where they can be included as arguments in
calculations. They are also available in Symbolic view.
1. To access the
variables, press
, tap
a
and select
Function.
2. Select Results
and then the
variable of interest.
The variable’s name is copied to the insertion point
and its value is used in evaluating the expression that
contains it. You can also enter the value of the
variable instead of its name by tapping
.
For example, in
Home view or the
CAS you could
select SignedArea
from the Vars
menus, press
s3E and
get the current value
of SignedAreamultiplied by three.
Function variables can also be made part of a
function’s definition in Symbolic view. For example,
you could define a function as x2–x–Root.
The full range of variables, and their use in
calculations, is covered in detail in chapter 22,
“Variables”, beginning on page 427.
Function app
123
Summary of FCN operations
Operation
Description
Root
Select Rootto find the root of the
current function nearest to the tracing
cursor. If no root is found, but only an
extremum, then the result is labeled
Extremuminstead of Root. The cursor
is moved to the root value on the x-axis
and the resulting x-value is saved in a
variable named Root.
Extremum
Select Extremumto find the maximum
or minimum of the current function
nearest to the tracing cursor. The cursor
moves to the extremum and the
coordinate values are displayed. The
resulting x-value is saved in a variable
named Extremum.
Slope
Select Slopeto find the numeric
derivative of the current function at the
current position of the tracing cursor. The
result is saved in a variable named
Slope.
Signed area
Select Signed areato find the
numeric integral. (If there are two or
more expressions checkmarked, then
you will be asked to choose the second
expression from a list that includes the x-
axis.) Select a starting point and an
ending point. The result is saved in a
variable named SignedArea.
Intersec-
tion
Select Intersectionto find the
intersection of the graph you are
currently tracing and another graph.
You need to have at least two selected
expressions in Symbolic view. Finds the
intersection closest to the tracing cursor.
Displays the coordinate values and
moves the cursor to the intersection. The
resulting x-value is saved in a variable
named Isect.
124
Function app
7
Advanced Graphing app
The Advanced Graphing app enables you to define and
explore the graphs of symbolic open sentences in x, y, both
or neither. You can plot conic sections, polynomials in
standard or general form, inequalities, and functions. The
following are examples of the sorts of open sentences you can
plot:
1. x2/3 – y2/5 = 1
2. 2x – 3y ≤ 6
3. mod x = 3
2
y
---
x
2
2
4. sin x + y – 5 > sin 8 atan
5. x2 + 4x = –4
6. 1 > 0
The illustrations below show what these open sentences look
like when plotted:
Example 1
Example 2
Advanced Graphing app
125
Example 3
Example 4
Example 5
Example 6
app
The Advanced Graphing app uses the customary app views:
Symbolic, Plot, and Numeric described in chapter 5.
For a description of the menu buttons available in this app,
see:
•
•
•
“Symbolic view: Summary of menu buttons” on page 86
“Plot view: Summary of menu buttons” on page 96, and
“Numeric view: Summary of menu buttons” on
page 104.
The Trace option in the Advanced Graphing app works
differently than in other apps and is described in detail in this
chapter.
In this chapter, we will explore the rotated conic defined by:
x2 7xy 3y2
x
10
y
5
--- -------- ------- ----- --
– 10 0
–
+
–
+
2
10
4
126
Advanced Graphing app
Open the
app
1. Open the Advanced
Graphing app:
Select Advanced
I
Graphing
The app opens in the
Symbolic view.
Define the
open
sentence
2. Define the open sentence:
j n 2 >
w 7
n 10 > + 3
j n 4 >
w
n 10
n 5
< 0
> +
>w 10
E
Note that
displays the relations palette from
which relational operators can be easily selected. This is
the same palette that appears if you press Sv.
3. Decide if you want to:
–
plotted
–
–
–
evaluate a dependent function
deselect a definition that you don’t want to explore
incorporate variables, math commands and CAS
commands in a definition.
For the sake of simplicity we can ignore these operations
in this example. However, they can be useful and are
described in detail in “Common operations in Symbolic
view” on page 81.
Set up the
plot
You can change the range of the x- and y-axes and the
spacing of the interval marks along the axes.
Advanced Graphing app
127
4. Display Plot Setup view:
SP(Setup)
For this example, you can
leave the plot settings at their
default values. If your
settings do not match those
in the illustration at the right,
press SJ (Clear) to
restore the default values.
See “Common operations in Plot Setup view” on page 96 for
more information about setting the appearance of plots.
Plot the
selected
definitions
5. Plot the selected
definitions:
P
Explorethe
graph
6. Display the Plot view menu items:
Note that you have options to zoom, trace, go to a
specified point, and display the definition of the selected
graph.
You can use the zoom and split screen functionality
discussed in chapter 6. You can tap and drag to scroll
the Plot view, or use + and w to zoom in and out
on the cursor position, respectively.
7. Tap
and select
In.
A special feature of the
Advanced Graphing
app enables you to edit
the definition of a graph
from within the Plot
view.
128
Advanced Graphing app
8. Tap
. The
definition as you entered
it in Symbolic view
appears at the bottom of
the screen.
9. Tap
.
The definition is now
editable.
10.Change the < to = and
tap
.
Notice that the graph
changes to match the
new definition. The
definition in Symbolic
view also changes.
11.Tap
to drop the
definition to the bottom of the screen so that you can see
the full graph. The definition is converted from textbook
mode to algebraic mode to save screen space.
Trace in Plot
view
In most HP apps, the Plot view contains
turn tracing a function on and off. In the Advanced Graphing
app, the relations plotted in Plot view may or may not be
, a toggle to
functions. So, instead of a toggle,
becomes a menu for
selecting how the tracer will behave. The Trace menu contains
the following options:
•
•
•
Off
Inside
PoI (Points of Interest)
–
–
–
–
–
X-Intercepts
Y-intercepts
Horizontal Extrema
Vertical Extrema
Inflections
•
Selection
Advanced Graphing app
129
The tracer does not extend beyond the current Plot view
window. The table below contains brief descriptions of each
option.
Trace option
Description
Off
Turns tracing off so that you can move
the cursor freely in Plot view
Inside
Edge
Constrains the tracer to move within a
region where the current relation is true.
You can move in any direction within
the region. Use this option for
inequalities, for example.
Constrains the tracer to move along an
edge of the current relation, if one can
be found. Use this option for functions
as well as for inequalities, etc.
PoI >
X-Intercepts
Jumps from one x-intercept to another
on the current graph
PoI >
Y-Intercepts
Jumps from one y-intercept to another
on the current graph
PoI >
Horizontal
Extrema
Jumps between the horizontal extrema
on the current graph
PoI >
Vertical
Extrema
Jumps between the vertical extrema on
the current graph
PoI >
Inflections
Jumps from one inflection point to
another on the current graph
Selection
Opens a menu so you can select which
relation to trace. This option is needed
because = and \ no longer jump
from relation to relation for tracing. All
four cursor keys are needed for moving
the tracer in the Advanced Graphing
app.
130
Advanced Graphing app
Numeric
view
The Numeric view of most HP apps is designed to explore 2-
variable relations using numerical tables. Because the
Advanced Graphing app expands this design to relations that
are not necessarily functions, the Numeric view of this app
becomes significantly different, though its purpose is still the
same. The unique features of the Numeric view are illustrated
in the following sections.
12.Press Y to return to
Symbolic view and
define V1as
Y=SIN(X).
Note that you don’t
have to erase the
previous defintion first.
Just enter the new
defintion and tap
.
Displaythe
Numeric
view
13.Press M to display the
Numeric view.
By default, the Numeric
view displays rows of x-
and y-values. In each
row, the 2 values are
followed by a column
that tells whether or not
the x–y pair satisfies each open sentence (True or False).
Explore
Numeric
view
14. With the cursor in the X column, type a new value and
tap
The table scrolls to the value you entered.
.
. Press < and > to move between the columns
in Numeric view.
You can also zoom in or out on the X-variable or Y-
variable. Note that in Numeric view, zooming does not
affect the size of what is displayed. Instead, it decreases
or increases the increment between consecutive x- and y-
values. Zooming in decreases the increment; zooming out
increases the increment. This and other options are
explained in “Common operations in Numeric view” on
page 100.
Advanced Graphing app
131
Numeric
Setup
Although you can configure
the X- and Y-values shown in
Numeric view by entering
values and zooming in or
out, you can also directly set
the values shown using
Numeric setup.
15. Display the Numeric
Setup view:
M(Setup)
S
You can set the starting value and step value (that is, the
increment) for both the X-column and the Y-column, as well as
the zoom factor for zooming in or out on a row of the table.
You can also choose whether the table of data in Numeric
view is automatically populated or whether it is populated by
you typing in the particular x-values and y-values you are
interested in. These options—Automatic or
BuildYourOwn—are available from the Num Type list. They
are explained in detail in “Custom tables” on page 103.
Trace in
Numeric
view
Besides the default configuration of the table in Numeric view,
there are other options available in the Trace menu. The trace
options in Numeric view mirror the trace options in Plot view.
Both are designed to help you investigate the properties of
relations numerically using a tabular format. Specifically, the
table can be configured to show any of the following:
•
•
edge values (controlled by X or Y)
points of interest (PoI):
–
–
–
–
–
X-intercepts
Y-intercepts
horizontal extrema
vertical extrema
inflections
The values shown using the
Trace options depend on the Plot view window; that is, the
values shown in the table are restricted to points visible in Plot
view. Zoom in or out in Plot view to get the values you want to
see in the table in Numeric view.
132
Advanced Graphing app
Trace Edge
16.Tap
and select Edge.
Now the table shows (if
possible) pairs of values
that make the relation true.
By default, the first column is
the Y-column and there are
multiple X-columns in case
more than one X-value can
be paired with the Y-value
to make the relation true.
Tap
to make the first column an X-column followed by
a set of Y-columns. In the figure above, for Y=0, there are 10
values of X in the default Plot view that make the relation
Y=SIN(X)true. These are shown in the first row of the table.
It can be clearly seen that the sequence of X-values have a
common difference of .
Again, you can enter a value for Y that is of interest.
3
2
------
17.With 0 highlighted in the Y-column, enter
:
Sj3n2
E
18.Tap
and select
4.
The first row of the table
now illustrates that there are
two branches of solutions.
In each branch, the
consecutive solution values are 2 apart.
Trace PoI
19.Tap
, select PoIand select Vertical Extrema
to see the extrema listed in the table.
20.Tap
and select
Smallfor a small font
size.
21.Tap
and select 2
to see just two columns.
The table lists the 5 minima
visible in Plot view, followed
by the 5 maxima.
Advanced Graphing app
133
Plot Gallery
A gallery of interesting
graphs—and the equations
that generated them—is
provided with the calculator.
You open the gallery from
Plot view:
1. With Plot view open,
press the Menu key.
Note that you press the Menu key here, not the Menu
touch button on the screen.
2. From the menu, select Visit Plot Gallery. The first
graph in the Gallery appears, along with its equation.
3. Press > to display the next graph in the Gallery, and
continue likewise until you want to close the Gallery.
4. To close the Gallery and return to Plot view, press P.
Exploring a plot from the Plot Gallery
If a particular plot in the Plot Gallery interests you, you can
save a copy of it. The copy is saved as a new app—a
customized instance of the Advanced Graphing app. You can
modify and explore the app as you would with built-in version
of the Advanced Graphing app.
To save a plot from the Plot Gallery:
1. With the plot of interest displayed, tap
2. Enter a name for your new app and tap
.
.
3. Tap
again. Your new app opens, with the
equations that generated the plot displayed in Symbolic
view. The app is also added to the Application Library
so that you can return to it later.
134
Advanced Graphing app
8
Geometry
The Geometry app enables you to draw and explore
geometric constructions. A geometric construction can be
composed of any number of geometric objects, such as
points, lines, polygons, curves, tangents, and so on. You can
take measurements (such as areas and distances), manipulate
objects, and note how measurements change.
There are five app views:
•
•
•
•
•
Plot view: provides drawing tools for you to construct
geometric objects
Symbolic view: provides editable definitions of the
objects in Plot view
Numeric view: for making calculations about the objects
in Plot view
Plot Setup view: for customizing the appearance of Plot
view
Symbolic Setup view: for overriding certain system-wide
settings
There is no Numeric Setup view in this app.
To open the Geometry app, press I and select
Geometry. The app opens in Plot view.
Getting started with the Geometry app
The following example shows how you can graphically
represent the derivative of a curve, and have the value of the
derivative automatically update as you move a point of
tangency along the curve. The curve to be explored is y =
3sin(x).
Since the accuracy of our calculation in this example is not too
important, we will first change the number format to fixed at
3 decimal places. This will also help keep our geometry
workspace uncluttered.
Geometry
135
Preparation
1. Press SH.
2. On the Home Setting screen set the number format to
Fixedand the number of decimal places to 3.
Open the app
and plot the
graph
3. Press I and select Geometry.
If there are objects showing that you don’t need, press
SJ and confirm your intention by tapping
.
4. Select the type of graph you want to plot. In this example
we are plotting a simple sinusoidal function, so choose:
> Plot> Function
5. With plotfunc( on the entry line, enter 3*sin(x):
3seASsE
Note that x must be entered in lowercase in the
Geometry app.
If your graph doesn’t
resemble the illustration
at the right, adjust the X
Rng and Y Rng values
in Plot Setup view
(SP).
We’ll now add a point
to the curve, a point that
will be constrained always to follow the contour of the
curve.
Add a
6. Tap
and select Point On.
constrained
point
Choosing Point Onrather than Pointmeans that the
point will be constrained to whatever it is placed on.
7. Tap anywhere on the
graph, press E
and then press J.
Notice that a point is
added to the graph and
given a name (Bin this
example). Tap a blank
area of the screen to
deselect everything. (Objects colored cyan are selected.)
136
Geometry
Add a tangent
8. We will now add a tangent to the curve, making point B
the point of tangency:
> More> Tangent
9. Tap on point B, press E and then press J.
A tangent is drawn
through point B.
(Depending on where
you placed point B, your
illustration might be
different from the one at
the right.)
We’ll now make the
tangent stand out by giving it a bright color.
10.If the curve is selected, tap a blank area of the screen to
deselect, and then tap on the tangent to select it.
11. Press Z and select Change Color.
12. Pick a color from the color-picker, press E and then
tap on a blank area of the screen. Your tangent should
now be colored.
13. Press E to select point B.
If there is only one point on the screen, pressing E
automatically selects it. If there is more than one point, a
menu will appear asking you to choose a point.
14. With point Bselected, use the cursor keys to move it
about.
Note that whatever you do, point Bremains constrained
to the curve. Moreover, as you move point B, the tangent
moves as well. (If it moves off the screen, you can always
bring it back by dragging your finger across the screen
in the appropriate direction.)
15. Press E to deselect point B.
Note that there are two ways to move a point after it is
selected: (a) using the cursor keys, as described above, and
(b) using your finger. If you use the cursor keys, pressing J
will cancel the move and put the point back where it was,
while pressing E will accept the move and deselect the
point. If you use your finger to move the point, lifting your
Geometry
137
finger completes the move and deselects the point. In this case
there is no way to cancel the move unless you have activated
keyboard shortcuts, which provides you with an undo
function. (Shortcuts are described on page 147.)
Create a
derivative point
The derivative of a graph at any point is the slope of its
tangent at that point. We’ll now create a new point that will
be constrained to point Band whose ordinate value is the
derivative of the graph at point B. We’ll constrain it by forcing
its x coordinate (that is, its abscissa) to always match that of
point B, and its y coordinate (that is, its ordinate) to always
equal the slope of the tangent at that point.
16. To define a point in
terms of the attributes of
other geometric objects,
you need to go to
Symbolic view:
Y
Note that each object
you have so far created
is listed in Symbolic view. Note too that the name for an
object in Symbolic view is the name it was given in Plot
view but prefixed with a “G”. Thus the graph—labeled A
in Plot view—is labeled GAin Symbolic view.
17. Highlight GC and tap
.
When creating objects that are dependent on other
objects, the order in which they appear in Symbolic view
is important. Objects are drawn in Plot view in the order
in which they appear in Symbolic view. Since we are
about to create a new point that is dependent on the
attributes of GBand GC, it is important that we place its
definition after that of both GBand GC. That is why we
made sure we were at the bottom the list of definitions
before tapping
. If our new definition appeared
higher up in Symbolic view, the point we are about to
create wouldn’t be drawn in Plot view.
18. Tap
and choose Point> point
You now need to specify the x and y coordinates of the
new point. The former is to be constrained to abscissa of
138
Geometry
point B(referred to as GBin Symbolic view) and the later
is to constrained to the slope of C(referred to as GCin
Symbolic view).
19. You should have point() on the entry line. Between
the parentheses, add:
abscissa(GB),slope(GC)
You can enter the commands by hand, or choose them from
one of two Toolbox menus: App > Measure, or Catlg.
20.Tap
.
The definition of your
new point is added to
Symbolic view. When
you return to Plot view,
you will see a point
named Dand it will
have the same x-
coordinate as point B.
21. Press P.
If you can’t see point D,
pan until it comes into
view. The y coordinate
of D will be the
derivative of the curve at
point B.
Since its difficult to read
coordinates off the screen, we’ll add a calculation that
will give the exact derivative (to three decimal places)
and which we can display in Plot view.
Add some
calculations
22.Press M.
Numeric view is where you enter calculations.
23. Tap
24.Tap
25.Between parentheses, add the name of the tangent,
namely GC, and tap
.
and choose Measure> slope
.
Notice that the current slope is calculated and displayed.
The value here is dynamic, that is, if the slope of the
Geometry
139
tangent changes in Plot view, the value of the slope is
automatically updated in Numeric view.
26.With the new calculation highlighted in Numeric view,
tap
.
Selecting a calculation in Numeric view means that it will
also be displayed in Plot view.
27. Press P to return to
Plot view.
Notice the calculation
that you have just
created in Numeric view
is displayed at the top
left of the screen.
Let’s now add two more
calculations to Numeric view and have them displayed
in Plot view.
28.Press M to return to Numeric view.
29. Tap
, enter GB, and tap
.
Entering just the name of a point will show its
coordinates.
30.Tap
, enter GC, and tap
.
Entering just the name of a line will show its equation.
31. Make sure both of these new equations are selected (by
choosing each one and pressing
).
32. Press P to return to
Plot view.
Notice that your new
calculations are
displayed.
33.Press E and
choose point GB.
34.Use the cursor keys to move point Balong the graph.
Note that with each move, the results of the calculations
shown at the top left of the screen change.
Trace the
derivative
Point Dis the point whose ordinate value matches the
derivative of the curve at point B. It is easier to see how the
140
Geometry
derivative changes by looking at a plot of it rather than
comparing subsequent calculations. We can do that by
tracing point Das it moves in response to movements of point
B.
First we’ll hide the calculations so that we can better see the
trace curve.
35.Press M to return to Numeric view.
36.Select each calculation in turn and tap
calculations should now be deselected.
. All
37. Press P to return to Plot view.
38.Press E and select point GD.
39. Tap
and select More> Trace
40.Press E and select point GB.
41. Using the cursor keys,
move Balong the curve.
You will notice that a
shadow curve is traced
out as you move B. This
is the curve of the
derivative of 3sin(x).
Plot view in detail
In Plot view you can directly
draw objects on the screen
using various drawing tools.
For example, to draw a
circle, tap
and select
Circle. Now tap where
you want the center of the
circle to be and press
E. Next, tap a point that is to be on the circumference
and press E. A circle is drawn with a center at the
location of your first tap, and with a radius equal to the
distance between your first tap and second tap.
Creating or selecting an object always involves at least two
steps: tap and press E. Only by pressing E do
you confirm your intention to create the point or select an
Geometry
141
object. When creating a point, you can tap on the screen and
then use the cursor keys to accurately position the point before
pressing E.
Note that there are on-screen instructions to help you. For
example, Hit Centermeans tap where you want the center
of your object to be, and Hit Point 1means tap at the
location of the first point you want to add.
You can draw any number of geometric objects in Plot view.
See “Geometric objects” on page 153 for a list of the objects
hexagon, etc.—remains selected until you deselect it. This
enables you to quickly draw a number of objects of the same
drawing objects of a particular type, deselect the drawing tool
by press J. (You can tell if a drawing tool is still active by
the presence of on-screen help at the top left-side corner of the
screen, help such as Hit Point 1.)
An object in Plot view can be manipulated in numerous ways,
and its mathematical properties can be easily determined
(see page 150).
Object naming
Each geometric object you create is given a name. In the
example shown on page 141, note that the circle has been
named C. Each defining point is also been named: the center
point has been named A, and the point tapped to set the
radius of the circle has been named B.
It is not only the points that
define a geometric object
that are given a name. Every
component of the object that
has any geometric
significance is also named.
If, for example, you create a
hexagon, the hexagon is
given a name as is each point at each vertex. In the example
at the right, the pentagon is named C, the points used to
define the hexagon are named A and B, and the remaining
four vertices are named D, E, G, and H. Moreover, each of
the six segments is also given a name: I, J, K, L, M, and N.
These names are not displayed in Plot view, but you can see
142
Geometry
them if you go to Symbolic view (see “Symbolic view in detail”
on page 148).
Naming objects and parts of objects enables you to refer to
them in calculations. This is explained in “Numeric view in
detail” on page 150.
You can rename an object. See “Symbolic Setup view” on
page 150.
Selecting an
object
To select an object, just tap on it. The color of a selected item
changes to cyan.
To select a point in Plot view, just press E. A list of all
the points appears. Select the one you want.
Hiding names
You can choose to hide the name of an object in Plot view:
1. Select the object whose label (that is, caption) you want
to hide.
2. Press Z.
3. Select Toggle Caption.
4. Press J.
Redisplay a hidden name by repeating this procedure.
Moving objects
Points To move a point press E. A list of all the points
appears. Select the one you want to move, then tap on the
new location for it, and press E.
You can also select a point by tapping on it.
can press the arrow keys to move the point to a new location,
or use a finger to drag the point to a new location.
A point can also be selected directly by tapping on it. (If the
bottom-right of the screen shows the name of the point, you
have accurately tapped the point; otherwise the pointer
coordinates are shown, indicating that the point is not
selected.)
Composite objects To move a multi-point object, see
“Translation” on page 161.
Coloring objects
An object is colored black by default (and cyan when it is
selected). If you want to change the color of an object:
Geometry
143
1. Select the object whose color you want to change.
2. Press Z.
3. Select Change Color.
The Choose Color palette appears.
4. Select the color you want.
5. Press J.
Filling objects
An object with closed contours (such as a circle or polygon)
can be filled with color.
1. Press Z.
2. Select Fill with Color.
The Select Object menu appears.
3. Select the object you want to fill.
The object is highlighted.
1. Press Z.
2. Select Change Color.
The Choose Color
palette appears.
3. Select the color you
want.
4. Press J.
Removing fill
Undoing
To remove the fill from an object:
1. Press Z.
2. Select Fill with Color.
The Select Object menu appears.
3. Select the object.
You can undo your last addition or change to Plot view by
pressing t. However, you must have keyboard shortcuts
activated for this to work. See page 147.
Clearing an
object
To clear one object, select it and tap C. Note that an object
is distinct from the points you entered to create it. Thus
deleting the object does not delete the points that define it.
Those points remain in the app. For example, if you select a
144
Geometry
circle and press C, the circle is deleted but the center point
and radius point remain.
If you tap C when no
object is selected, a list of
objects appears. Tap on the
one you want to delete. (If
you don’t want to delete an
object, press J to close
the list.) If other objects are
dependent on the one you
have selected for deletion, you will be asked to confirm your
intention. Tap
to do so, otherwise tap
.
Note that points you add to an object once the object has
been defined are cleared when you clear the object. Thus if
you place a point (say D) on a circle and delete the circle, the
circle and D are deleted, but the defining points—the center
and radius points—remain.
Clearing all
objects
To clear the app of all geometric objects, press SJ. You
will be asked to confirm your intention to do so. Tap
to clear all objects defined in Symbolic view or
calculations in Numeric view in the same way.
to keep
Moving about
the Plot view
You can pan by dragging a finger across the screen: either
up, down, left, or right. You can also use the cursor keys to
pan once the cursor is at the edge of the screen.
Zooming
You can zoom by tapping
and choosing a zoom
option. The zoom options are the same as you find in the Plot
view of many apps in the calculator (see “Zoom” on
page 88).
Geometry
145
Plot view: buttons and keys
Button or key
Purpose
Various scaling options. See “Zoom” on
page 88.
Tools for creating various types of points.
See “Points” on page 153
Tools for creating various types of lines.
See “Line” on page 156
Tools for creating various types of poly-
gons. See “Polygon” on page 157
Tools for creating various types of curves
and plots. See “Curve” on page 158
Tools for geometric transformations of vari-
ous kinds. See “Geometric transforma-
tions” on page 161.
Deletes a selected object (or the character
to the left of the cursor if the entry line is
active).
C
De-activate the current drawing tool
J
Clears the Plot view of all geometric
objects or the Numeric view of all mea-
surements and calculations.
SJ
Shortcut keys
To quickly add an object, and undo what
you’ve done. See page 147.
Plot Setup view
The Plot Setup view enables
you to configure the
appearance of Plot view and
to take advantage of
keyboardshortcuts.The fields
and options are:
•
X Rng: Two fields for
entering the minimum
and maximum x-values, thereby giving the default
horizontal range. As well as changing this range on the
146
Geometry
Geometry Plot Setup screen, you can change it by
panning and zooming.
•
•
Y Rng: Two fields for entering the minimum and
maximum y-values, thereby giving the default vertical
range. As well as changing this range on the Geometry
Plot Setup screen, you can change it by panning and
zooming.
Axes: A toggle option to hide (or reshow) the axes in
Plot view.
Keyboard shortcut: a
•
•
Labels: A toggle option to hide (or reshow) the names of
the geometric objects (A, B, C, etc.) in Plot view.
Function Labels: A
toggle option to hide (or
reshow) the expression
that generated a plot
with the plot. These
should not be confused
with calculation labels.
You can show function
labels without also showing calculation labels and vice
versa).
•
keyboard shortcuts (that is, hot keys) in Plot view. With
this option enabled, the following shortcuts become
available:
Key
Result in Plot view
Hide (or reshow) the axes.
a
Selects the circle drawing tool. Follow the
instructions on the screen (or see page
158).
F
Erases all trace lines (see page 154)
c
g
Selects the intersection drawing tool. Fol-
low the instructions on the screen (or see
page 154).
Geometry
147
Key
Result in Plot view (Continued)
Selects the line drawing tool. Follow the
instructions on the screen (or see page
156).
j
B
r
n
t
Selects the point drawing tool. Follow the
instructions on the screen (or see page
153).
Selects the segment drawing tool. Follow
the instructions on the screen (or see
page 156).
Selects the triangle drawing tool. Follow
the instructions on the screen (or see
page 157).
Undo.
Symbolic view in detail
Every object—whether a
point, segment, line,
polygon, or curve—is given
a name, and its definition is
displayed in Symbolic view
(Y). The name is the
name for it you see in Plot
view, but prefixed by “G”.
Thus a point labeled A in Plot view is given the name GA in
Symbolic view.
The G-prefixed name is a variable that can be read by the
computer algebra system (CAS). Thus in the CAS you can
include such variables in calculations. Note in the illustration
above that GC is the name of the variable that represents a
circle drawn in Plot view. If you are working in the CAS and
wanted to know what the area of that circle is, you could enter
area(GC) and press E. (The CAS is explained in
chapter 3.)
N O T E
Calculations referencing geometry variables can be made in
the CAS or in the Numeric view of the Geometry app
(explained below on page 150).
148
Geometry
You can change the definition of an object by selecting it,
tapping , and altering one or more of its defining
parameters. The object is modified accordingly in Plot view.
For example, if you selected point GBin the illustration above,
tapped
coordinates, and tapped
, changed one or both of the point’s
, you would find, on returning
to Plot view, a circle of a different size.
Creating objects
You can also create an object in Symbolic view. Tap
define the object—for example, point(4,6)—and press
,
E. The object is created and can be seen in Plot view.
Another example: to draw aline through points P and Q, enter
you return to Plot view, you will see a line passing through
points P and Q.
The object-creation
commands available in
Symbolic view can be seen
by tapping
. The
syntax for each command is
given in “Geometry
functions and commands”
on page 165.
Re-ordering
entries
You can re-order the entries in Symbolic view. Objects are
drawn in Plot view in the order in which they are defined in
Symbolic view. To change the position of an entry, highlight it
and tap either
move it up).
(to move it down the list) or
(to
Hiding an object To prevent an object displaying in Plot view, deselect it in
Symbolic view:
1. Highlight the item to be hidden.
2. Tap
.
Repeat the procedure to make the object visible again.
Geometry
149
Deleting an
object
As well as deleting an object in Plot view (see page 144) you
can delete an object in Symbolic view.
1. Highlight the definition of the object you want to delete.
2. Tap
or press C.
To delete all objects, press SJ.
Symbolic Setup view
The Symbolic view of the Geometry app is common with
many apps. It is used to override certain system-wide settings.
For details, see “Symbolic Setup view” on page 74.
Numeric view in detail
Numeric view (M) enables you to do calculations in the
Geometry app. The results displayed are dynamic—if you
manipulate an object in Plot view or Symbolic view, any
calculations in Numeric view that refer to that object are
automatically updated to reflect the new properties of that
object.
Consider circle Cin the
illustration at the right. To
calculate the area and
radius of C:
1. Press M to open
Numeric view.
2. Tap
3. Tap
.
and choose
Measure> Area.
Note that area()
appears on the entry
line, ready for you to
specify the object whose
area you are interested
in.
4. Tap
, choose Curvesand then the curve whose
area you are interested in.
The name of the object is placed between the
parentheses.
150
Geometry
You could have entered the command and object name
manually, that is, without choosing them from menus. If
you enter object names manually, remember that the
name of the object in Plot view must be given a “G”
prefix if it is used in any calculation. Thus the circle
named C in Plot view must be referred to as GC in
Numeric view and Symbolic view.
5. Press
6. Tap
E
.
or tap
. The area is displayed.
7. Enter radius(GC)and
tap
. The radius is
displayed.
Note that the syntax
used here is the same as
you use in the CAS to
calculate the properties
of geometric objects.
The Geometry functions and their syntax are described
in “Geometry functions and commands” on page 165.
8. Press P to go back to Plot view. Now manipulate the
circle is some way that changes its area and radius. For
example, select the center point (A) and use the cursor
keys to move it to a new location. (Remember to press
E when you have finished.)
9. Press M to go back to Numeric view. Notice that the
area and radius calculations have been automatically
updated.
N O T E
If an entry in Numeric view is too long for the screen, you can
press > to scroll the rest of the entry into view. Press < to
scroll back to the original view.
Listing all
objects
When you are creating a
new calculation in Numeric
view, the
menu item
appears. Tapping
gives you a list of all the
objects in your Geometry
workspace. These are also
Geometry
151
grouped according to their type, with each group given its
own menu.
If you are building a calculation, you can select an object from
one of these variables menus. The name of the selected object
is placed at the insertion point on the entry line.
Getting object
properties
As well as employing functions to make calculations in
Numeric view, you can also get various parameters of objects
just by tapping
and specifying the object’s name. For
example, you can get the coordinates of a point by entering
the point and pressing E. Another example: you can
get the formula for a line just by entering its name, or the
center point and radius of a circle just by entering the name
of the circle.
Displaying
calculations in
Plot view
To have a calculation made
in Numeric view appear in
Plot view, just highlight it in
Numeric view and tap
. A checkmark
appears beside the
calculation.
Repeat the procedure to
prevent the calculation being displayed in Plot view. The
checkmark is cleared.
Editing a
calculation
1. Highlight the calculation you want to delete.
2. Tap
.
3. Make your change and tap
.
Deleting a
calculation
1. Highlight the calculation you want to delete.
2. Tap
.
To delete all calculations, press SJ. Note that deleting
a calculation does not delete any geometric objects from Plot
or Symbolic view.
152
Geometry
Geometric objects
The geometric objects discussed in this section are those that
can be created in Plot view. Objects can also be created in
Symbolic view—more, in fact, than in Plot view—but these are
discussed in “Geometry functions and commands” on
page 165.
In Plot view, you choose a drawing tool to draw an object. The
tools are listed in this section. Note that once you select a
drawing tool, it remains selected until you deselect it. This
enables you to quickly draw a number of objects of the same
type (such as a number of circles). To deselect the current
drawing tool, press J. (You can tell if a drawing tool is still
active by the presence of on-screen help in the top left-side
corner of the screen, help such as Hit Point 1.)
The steps provided in this section are based on touch entry.
For example, to add a point, the steps will tell you to tap on
However, you can also use the cursor keys to position the
cursor where you want the point to be and then press
E.
The drawing tools for the geometric objects listed in this
section can be selected from the menu buttons at the bottom
of the screen. Some objects can also be entered using a
keyboard shortcut. For example, you can select the triangle
drawing tool by pressing n. (Keyboard shortcuts are only
available if they have been turned on in Plot Setup view. See
page 146.)
Points
Tap
to display a menu and submenus of options for
entering various types of points. The menus and submenus
are:
Point
Tap where you want the point to be and press E.
Keyboard shortcut: B
Point On
Tap the object where you want the new point to be and press
E. If you select a point that has been placed on an
object and then move that point, the point will be constrained
to the object on which it was placed. For example, a point
Geometry
153
placed on a circle will remain on that circle regardless of how
you move the point.
If there is no object where you tap, a point is created if you
then press E.
Midpoint
Tap where you want one point to be and press E. Tap
where you want the other point to be and press E. A
point is automatically created midway between those two
points.
If you choose an object first—such as a segment—choosing
the Midpoint tool and pressing E adds a point midway
between the ends of that object. (In the case of a circle, the
midpoint is created at the circle’s center.)
Intersection
Tap the desired intersection and press E. A point is
created at one of the points of intersection.
Keyboard shortcut: g
More
Trace
Displays a list of points for
you to choose the one you
want to trace. If you
subsequently move that
point, a trace line is drawn
on the screen to show its
path. In the example at the
right, point B was chosen to
be traced. When that point was moved—up and to the left—a
path of its movement was created.
Trace creates an entry in Symbolic view. In the example
above, the entry is Trace(GB).
Stop Trace
Turns off tracing and deletes the definition of the trace point
from Symbolic view. If more than one point is being traced, a
menu of trace points appears so that you can choose which
one to untrace.
Stop Tracedoes not erase any existing trace lines. It merely
prevents any further tracing should the point be moved again.
154
Geometry
Erase Trace
Erases all trace lines, but leaves the definition of the trace
points in Symbolic view. While a Trace definition is still in
Symbolic view, if you move the point again, a new trace line
is created.
Center
Tap a circle and press E. A point is created at the
center of the circle.
Element 0 .. 1
Element 0..1has a number of uses. You can use it to
place a constrained point on a object (whether previously
created or not). For example, if in Symbolic view you define
GA as element(circle(),2)), go to Plot view, turn on
tracing, select GA and move it, you will see that GA is
constrained to move in a circle centered on the origin and of
radius 2.
You can also use Element
0..1to generate values
that can then be used as
coefficients in functions you
subsequently plot. For
example, in Plot view select
Element 0..1. Notice
that a label is added to the
screen—GA, for example—and given a value of 0.5. You can
now use that label as a coefficient in a function to be plotted.
For example, you could choose Curve> Plot> Function
and define a function as GA*x2–7. A plot of 0.5x2–7 appears
in Plot view. Now select the label (GA, in this example) and
press E. An interval bar appears on the screen. Tap
anywhere along the interval bar (or press < or >). The
value of GA—and the shape of the graph—change to match
the value along the at which you tapped.
Intersections
Tap one object other than a point and press E. Tap
another object and press E. The point(s) where the two
objects intersect are created and named. Note that an
intersections object is created in Symbolic view even if the two
objects selected do not intersect.
Random pts
Displays a palette for you to choose to add 1, 2, 3, or 4
points. The points are placed randomly.
Geometry
155
Line
Segment
Tap where you want one endpoint to be and press E.
Tap where you want the other endpoint to be and press
E. A segment is drawn between the two end points.
Keyboard shortcut: r
Ray
Line
Tap where you want the endpoint to be and press E.
Tap a point that you want the ray to pass through and press
E. A ray is drawn from the first point and through the
second point.
Tap at a point you want the line to pass through and press
E. Tap at another point you want the line to pass
through and press E. A line is drawn through the two
points.
Keyboard shortcut: j
Vector
Tap where you want one endpoint to be and press E.
Tap where you want the other endpoint to be and press
E. A vector is drawn between the two end points.
Angle bisector
Tap the point that is the vertex of the angle to be bisected (A)
and press E. Tap another point (B) and press E.
Tap a third point (C) and press E. A line is drawn
through A bisecting the angle formed by AB and AC.
Perpendicular
bisector
Tap one point and press E. Tap another point and
press E. These two points define a segment. A line is
drawn perpendicular to the segment through its midpoint. It
does not matter if the segment is actually defined in the
Symbolic view or not. Alternately, tap to select a segment and
press E.
If you are drawing a perpendicular bisector to a segment,
choose the segment first and then select Perp. Bisector from
the Line menu. The bisector is drawn immediately without you
having to select any points. Just press E to save the
bisector.
156
Geometry
Parallel
Tap on a point (P) and press E. Tap on a line (L) and
press E. A new line is draw parallel to L and passing
through P.
Perpendicular
Tangent
Tap on a point (P) and press E. Tap on a line (L) and
press E. A new line is draw perpendicular to L and
passing through P.
Tap on a curve (C) and press E. Tap on a point (P) and
press E. If the point (P) is on the curve (C), then a single
tangent is drawn. If the point (P) is not on the curve (C), then
zero or more tangents may be drawn.
Median
Altitude
Tap on a point (A) and press E. Tap on a segment and
press E. A line is drawn through the point (A) and the
midpoint of the segment.
Tap on a point (A) and press E. Tap on a segment and
press E. A line is drawn through the point (A)
perpendicular to the segment (or its extension).
Polygon
The Polygon menu provides tools for drawing various
polygons.
Triangle
Tap at each vertex, pressing E after each tap.
Keyboard shortcut: n
Quadrilateral
Ngon
Tap at each vertex, pressing E after each tap.
Polygon5
Produces a pentagon. Tap at each vertex, pressing E
after each tap.
Polygon6
Hexagon
Produces a hexagon. Tap at each vertex, pressing E
after each tap.
Produces a regular hexagon (that is, one with sides of equal
length and angles of equal measure). Tap on a point and
press E. Tap on a second point to define the length of
one side of the regular hexagon and press E. The other
Geometry
157
four vertices are automatically calculated and the regular
hexagon is drawn.
Special
Eq. triangle
Produces an equilateral triangle. Tap at one vertex and press
E. Tap at another vertex and press E. The
location of the third vertex is automatically calculated and the
triangle is drawn.
Square
Tap at one vertex and press E. Tap at another vertex
and press E. The location of the third and fourth
vertices are automatically calculated and the square is drawn.
Parallelogram
Tap at one vertex and press E. Tap at another vertex
and press E. Tap at a third vertex and press E.
The location of the fourth vertex is automatically calculated
and the parallelogram is drawn.
Curve
Circle
Tap at the center of the circle and press E. Tap at a
point on the circumference and press E. A circle is
drawn about the center point with a radius equal to the
distance between the two tapped points.
Keyboard shortcut: F
You can also create a circle by first defining it in Symbolic
view. The syntax is circle(GA,GB)where Aand B are two
points. A circle is drawn in Plot view such that Aand B define
the diameter of the circle.
Ellipse
Tap at one focus point and press E. Tap at the second
focus point and press E. Tap at point on the
circumference and press E.
Hyperbola
Tap at one focus point and press E. Tap at the second
focus point and press E. Tap at point on one branch of
the hyperbola and press E.
Parabola
Tap at the focus point and press E. Tap either on a line
(the directrix) or a ray or segment nd press E.
158
Geometry
Special
Circumcircle
A circumcircle is the circle
that passes through each of
the triangle’s three vertices,
thus enclosing the triangle.
Tap at each vertex of the
triangle, pressing E
after each tap.
Incircle
An incircle is a circle that is
tangent to each of a
polygon’s sides. The HP
Prime can draw an incircle
that is tangent to the sides of
a triangle.
Tap at each vertex of the
triangle, pressing E
after each tap.
Excircle
An excircle is a circle that is tangent to one segment of a
triangle and also tangent to the rays through the segment’s
endpoints from the vertex of the triangle opposite the segment.
Tap at each vertex of the
triangle, pressing E
after each tap.
The excircle is drawn tangent
to the side defined by the last
two vertices tapped. In the
example at the right, the last
two vertices tapped were A
and C (or C and A). Thus the excircle is drawn tangent to the
segment AC.
Geometry
159
Locus
Takes two points as its arguments: the first is the point whose
possible locations form the locus; the second is a point on an
object. This second point drives the first through its locus as the
second moves on its object.
In the example at the right,
circle C has been drawn and
point D is a point placed on
C (using the Point On
function described above).
Point I is a translation of
point D. Choosing Curve>
Special> Locusplaces
locus( on the entry line. Complete the command as
locus(GI,GD)and point I traces a path (its locus) that
parallels point D as it moves around the circle to which it is
constrained.
Plot
You can plot expressions of the following types in Plot view:
•
Function
Parametric
Polar
•
•
•
Sequence
Tap
, select Plot, and
then the type of expression
you want to plot. The entry
line is enabled for you to
define the expression.
Note that the variables you
specify for an expression
must be in lowercase.
In this example, Function
has been selected as the plot
type and the graph of y = 1/
x is plotted.
160
Geometry
Geometric transformations
The Transform menu—displayed by tapping
—provides numerous tools for you to perform
transformations on geometric objects in Plot view. You can
also define transformations in Symbolic view
Translation
A translation is a transformation of a set of points that moves
each point the same distance in the same direction. T: (x,y) →
(x+a, y+b). You must create a vector to indicate the distance
and direction of the translation. You then choose the vector
and the object to be translated.
Suppose you want to
translate circle B at the right
down a little and to the right:
1. Tap
Vector.
and select
2. Draw a vector in the
direction you want to
translate the circle and
of the same length as move you intend. (If you need help,
see “Vector” on page 156.)
3. Tap
and select Translation.
4. Tap the vector and press E.
5. Tap the object to be
moved and press
E.
The object is moved the
same length as the
vector and in the same
direction. The original
object is left in place.
Geometry
161
Reflection
A reflection is a
transformation which maps
an object or set of points
onto its mirror image, where
the mirror is either a point or
a line. A reflection through a
point is sometimes called a
half-turn. In either case, each
point on the mirror image is the same distance from the mirror
as the corresponding point on the original. In the example at
the right, the original triangle D is reflected through point I.
1. Tap
and select Reflection.
2. Tap the point or straight object (segment, ray, or line) that
will be the symmetry axis (that is, the mirror) and press
E.
3. Tap the object that is to be reflected across the symmetry
axis and press E. The object is reflected across the
symmetry axis defined in step 2.
Dilation
A dilation (also called a homothety or uniform scaling) is a
transformation where an object is enlarged or reduced by a
given scale factor around a given point as center.
In the illustration at the right,
the scale factor is 2 and the
center of dilation is
indicated by a point near the
top right of the screen
(named I). Each point on the
new triangle is collinear with
its corresponding point on
the original triangle and point I. Further, the distance from
point I to each new point will be twice the distance to the
original point (since the scale factor is 2).
1. Tap
and select Dilation.
2. Tap the point that is to be the center of dilation and press
E.
3. Enter the scale factor and press E.
4. Tap the object that is to be dilated and press E.
162
Geometry
Rotation
A rotation is a mapping that
rotates each point by a fixed
angle around a center point.
The angle is defined using
the angle()command,
with the vertex of the angle
as the first argument.
Suppose you wish to rotate
the square (GC) around point K (GK) through ∡ LKM in the
figure to the right.
1. Press Y and tap
2. Tap and select Transform> Rotation.
rotation()appears on the entry line.
3. Between the
.
parentheses, enter:
GK,angle(GK,GL,GM
),GC
4. Press E or tap
.
5. Press P to return to
Plot view to see the rotated square.
More
Projection
A projection is a mapping of one or more points onto an
object such that the line passing through the point and its
image is perpendicular to the object at the image point.
1. Tap
and select Projection.
2. Tap the object onto which points are to be projected and
press E.
3. Tap the point that is to be projected and press E.
Note the new point added to the target object.
Inversion
An inversion is a mapping involving a center point and a
scale factor. Specifically, the inversion of point A through
center C, with scale factor k, maps A onto A’, such that A’ is
on line CA and CA*CA’=k, where CA and CA’ denote the
Geometry
163
lengths of the corresponding segments. If k=1, then the
lengths CA and CA’ are reciprocals.
Suppose you wish to find the inversion of a circle (GC) with a
point on the circle (GD) as center.
1. Tap
and select More> Inversion.
2. Tap the point that is to be the center (GD) of the inversion
circle and press E.
3. Enter the inversion
ratio—use the default
value of 1—and press
E.
4. Tap on the circle( GC)
and press E.
You will see that the
inversion is a line.
Reciprocation
A reciprocation is a special case of inversion involving circles.
A reciprocation with respect to a circle transforms each point
in the plane into its polar line. Conversely, the reciprocation
with respect to a circle maps each line in the plane into its
pole.
1. Tap
and select More> Reciprocation.
2. Tap the circle and press E.
3. Tap a point and press
E to see its polar
line.
4. Tap a line and press
E to see its pole.
In the illustration to the
right, point K is the
reciprocation of line DE
(G) and Line I (at the bottom of the display) is the
reciprocation of point H.
164
Geometry
Geometry functions and commands
The list of geometry-specific functions and commands in this
section covers those that can be found by tapping
both Symbolic and Numeric view and those that are only
available from the Catlg menu.
in
The sample syntax provided has been simplified. Geometric
objects are referred to by a single uppercase character (such
as A, B,C and so on). However, calculations referring to
geometric objects—in the Numeric view of the Geometry app
and in the CAS—must use the G-prefixed name given for it in
Symbolic view. For example:
altitude(A,B,C)is the simplified form given in this
section
altitude(GA,GB,GC)is the form you need to use in
calculations
Further, in many cases the specified parameters in the syntax
below—A, B, C etc.—can be the name of a point (such as
GA) or a complex number representing a point. Thus
angle(A,B,C)could be:
• angle(GP,GR,GB)
• angle(3+2i,1–2i,5+i)or
•
a combination of named points and points defined by a
complex number, as in angle(GP,i1–2i,i).
Symbolic view: Cmds menu
Point
barycenter
Calculates the hypothetical center of mass of a set of points,
each with a given weight (a real number). Each point, weight
pair is enclosed in square brackets as a vector.
barycenter([point1, weight1], [point2,
weight2],…,[pointn, weightn])
Example: barycenter([–3 1],[3 1],[3√3·i 1])
3 3 i
gives point ------------ , which is equivalent to (0,√3)
3
Geometry
165
center
Returns the center of a circle.
center(circle)
Example: center(circle(x2+y2–x–y)) gives
point(1/2,1/2)
division_point
For two points A and B, and a numerical factor k, returns a
point C such that C-B=k*(C-A).
division_point(point1, point2, realk)
Example: division_point(0,6+6*i,4)returns point
(8,8)
element
Creates a point on a geometric object whose abscissa is a
given value or creates a real value on a given interval.
element(object, real) or element(real1..real2)
Examples:
element(plotfunc(x2),–2) creates a point on the
graph of y = x2. Initially, this point will appear at (–2,4). You
can move the point, but it will always remain on the graph of
its function.
element(0..5)creates a value of 2.5 initially. Tapping on
this value and pressing E enables you to press > and
< to increase or decrease the value in a manner similar to a
slider bar. Press E again to close the slider bar. The
value you set can be used as a coefficient in a function you
subsequently plot.
inter
Returns the intersections of two curves as a vector.
inter(curve1, curve2)
6
2
x2
6
x
2
---- --
Example: inter 8 –
– 1 returns
. This indicates
–11
--------
–9
2
that there are two intersections:
•
(6,2)
•
(–9,–5.5)
166
Geometry
isobarycenter
Returns the hypothetical center of mass of a set of points.
Works like barycenter but assumes that all points have equal
weight.
isobarycenter(point1, point2, …,pointn)
Example: isobarycenter(–3,3,3*√3*i) returns
point(3*√3*i/3), which is equivalent to (0,√3).
midpoint
Returns the midpoint of a segment. The argument can be
either the name of a segment or two points that define a
segment. In the latter case, the segment need not actually be
drawn.
midpoint(segment) or midpoint(point1, point2)
Example: midpoint(0,6+6i)returns point(3,3)
orthocenter
Returns the orthocenter of a triangle; that is, the intersection of
the three altitudes of a triangle. The argument can be either
the name of a triangle or three non-collinear points that define
a triangle. In the latter case, the triangle does not need to be
drawn.
orthocenter(triangle) or orthocenter(point1,
point2, point3)
Example: orthocenter(0,4i,4) returns (0,0)
point
Creates a point, given the coordinates of the point. Each
coordinate may be a value or an expression involving
variables or measurements on other objects in the geometric
construction.
point(real1, real2) or point(expr1, expr2)
Examples:
point(3,4) creates a point whose coordinates are (3,4).
This point may be selected and moved later.
point(abscissa(A), ordinate(B)) creates a point
whose x-coordinate is the same as that of a point A and
whose y-coordinate is the same as that of a point B. This point
will change to reflect the movements of point A or point B.
Geometry
167
point2d
Randomly re-distributes a set of points such that, for each
point, x ∈ [–5,5] and y ∈ [–5,5]. Any further movement of
one of the points will randomly re-distribute all of the points
with each tap or direction key press.
point2d(point1, point2, …, pointn)
trace
Begins tracing of a specified point.
trace(point)
stop trace
Stops tracing of a specified point, but does not erase the
current trace. This command is only available in Plot view. In
Symbolic view, uncheck the trace object to erase the trace and
stop further tracing
erase trace
Erases the trace of a point, but does not stop tracing. Any
further movement of the point will be traced. In Symbolic view,
uncheck the trace object to erase the trace and stop further
tracing.
Line
DrawSlp
Given three real numbers m, a, b, draws a line with slope m
that passes through the point (a, b).
DrawSlp(a,b,m)
Example: DrawSlp(2,1,3)draws the line given by
y=3x–5
altitude
Given three non-collinear points, draws the altitude of the
triangle defined by the three points that passes through the
first point. The triangle does not have to be drawn.
altitude(point1, point2, point3)
Example: altitude(A, B, C)draws a line passing
through point A that is perpendicular to BC.
168
Geometry
bisector
Given three points, creates the bisector of the angle defined
by the three points whose vertex is at the first point. The angle
does not have to be drawn in the Plot view.
bisector(point1, point2, point3)
Examples:
bisector(A,B,C)draws the bisector of ∡ BAC.
bisector(0,-4i,4)draws the line given by y=–x
exbisector
Given three points that define a triangle, creates the bisector
of the exterior angles of the triangle whose common vertex is
at the first point. The triangle does not have to be drawn in the
Plot view.
exbisector(point1, point2, point3)
Examples:
exbisector(A,B,C) draws the bisector of the exterior
angles of ΔABC whose common vertex is at point A.
exbisector(0,–4i,4)draws the line given by y=x
half_line
line
Given 2 points, draws a ray from the first point through the
second point.
half_line((point1, point2)
Draws a line. The arguments can be two points, a linear
expression of the form a*x+b*y+c, or a point and a slope as
shown in the examples.
line(point1, point2)or line(a*x+b*y+c)or
line(point1, slope=realm)
Examples:
line(2+i, 3+2i) draws the line whose equation is
y=x–1; that is, the line through the points (2,1) and (3,2).
Geometry
169
line(2x–3y–8) draws the line whose equation is
2x–3y=8
line(3–2i,slope=1/2) draws the line whose equation
is x–2y=7; that is, the line through (3, –2) with slope m=1/2.
median_line
Given three points that define a triangle, creates the median
of the triangle that passes through the first point and contains
the midpoint of the segment defined by the other two points.
median_line(point1, point2, point3)
Example: median_line(0, 8i, 4) draws the line whose
equation is y=2x; that is, the line through (0,0) and (2,4), the
midpoint of the segment whose endpoints are (0, 8) and (4,
0).
parallel
Draws a line through a given point that is parallel to a given
line.
parallel(point,line)
Examples:
parallel(A, B)draws the line through point A that is
parallel to line B.
parallel(3–2i, x+y–5)draws the line through the point
(3, –2) that is parallel to the line whose equation is x+y=5;
that is, the line whose equation is y=–x+1.
perpen_bisector
Draws the perpendicular bisector of a segment. The segment
is defined either by its name or by its two endpoints.
perpen_bisector(segment) or
perpen_bisector(point1, point2)
Examples:
perpen_bisector(GC)draws the perpendicular bisector
of segment C.
perpen_bisector(GA, GB)draws the perpendicular
bisector of segment AB.
perpen_bisector(3+2i, i)draws the perpendicular
bisector of a segment whose endpoints have coordinates (3,
2) and (0, 1); that is, the line whose equation is y=x/3+1.
170
Geometry
perpendicular
Draws a line through a given point that is perpendicular to a
given line. The line may be defined by its name, two points,
or an expression in x and y.
perpendicular(point, line) or
perpendicular(point1, point2, point3)
Examples:
perpendicular(GA, GD) draws a line perpendicular to
line D through point A.
perpendicular(3+2i, GB, GC) draws a line through
the point whose coordinates are (3, 2) that is perpendicular
to line BC.
perpendicular(3+2i,line(x–y=1))draws a line
through the point whose coordinates are (3, 2) that is
perpendicular to the line whose equation is x – y = 1; that is,
the line whose equation is y=–x+5.
segment
tangent
Draws a segment defined by its endpoints.
segment(point1, point2)
Examples:
segment(1+2i, 4) draws the segment defined by the
points whose coordinates are (1, 2) and (4, 0).
segment(GA, GB) draws segment AB.
Draws the tangent(s) to a given curve through a given point.
The point does not have to be a point on the curve.
tangent(curve, point)
Examples:
tangent(plotfunc(x^2), GA) draws the tangent to the
graph of y=x^2 through point A.
tangent(circle(GB, GC–GB), GA) draws one or more
tangent lines through point A to the circle whose center is at
point B and whose radius is defined by segment BC.
Geometry
171
Polygon
equilateral_triangle
Draws an equilateral triangle defined by one of its sides; that
is, by two consecutive vertices. The third point is calculated
automatically, but is not defined symbolically. If a lowercase
variable is added as a third argument, then the coordinates
of the third point are stored in that variable. The orientation of
the triangle is counterclockwise from the first point.
equilateral_triangle(point1, point2) or
equilateral_triangle(point1, point2, var)
Examples:
equilateral triangle(0,6)draws an equilateral
triangle whose first two vertices are at (0, 0) and (6,0); the
third vertex is calculated to be at (3,3*√3).
equilateral triangle(0,6, v) draws an equilateral
triangle whose first two vertices are at (0, 0) and (6,0); the
third vertex is calculated to be at (3,3*√3) and these
coordinates are stored in the CAS variable v. In CAS view,
entering v returns point(3*(√3*i+1)), which is equal to
(3,3*√3).
hexagon
Draws a regular hexagon defined by one of its sides; that is,
by two consecutive vertices. The remaining points are
calculated automatically, but are not defined symbolically.
The orientation of the hexagon is counterclockwise from the
first point.
hexagon(point1, point2) or hexagon(point1,
point2, var1, var2, var3, var4)
Examples:
hexagon(0,6) draws a regular hexagon whose first two
vertices are at (0, 0) and (6, 0).
hexagon(0,6, a, b, c, d)draws a regular hexagon
whose first two vertices are at (0, 0) and (6, 0) and stores the
other four points into the CAS variables a, b, c, and d. You do
not have to define variables for all four remaining points, but
the coordinates are stored in order. For example,
hexagon(0,6, a)stores just the third point into the CAS
variable a.
172
Geometry
isosceles_triangle
Draws an isosceles triangle defined by two of its vertices and
an angle. The vertices define one of the two sides equal in
length and the angle defines the angle between the two sides
of equal length. Like equilateral_triangle, you have
the option of storing the coordinates of the third point into a
CAS variable.
isosceles_triangle(point1, point2, angle)
Example:
isosceles_triangle(GA, GB, angle(GC, GA, GB)
defines an isosceles triangle such that one of the two sides of
equal length is AB, and the angle between the two sides of
equal length has a measure equal to that of ∡ ACB.
isopolygon
Draws a regular polygon given the first two vertices and the
number of sides, where the number of sides is greater than 1.
If the number of sides is 2, then the segment is drawn. You can
provide CAS variable names for storing the coordinates of the
calculated points in the order they were created. The
orientation of the polygon is counterclockwise.
isopolygon(point1, point2, realn), where realn
is an integer greater than 1.
Example
isopolygon(GA, GB, 6)draws a regular hexagon
whose first two vertices are the points A and B.
parallelogram
Draws a parallelogram given three of its vertices. The fourth
point is calculated automatically but is not defined
symbolically. As with most of the other polygon commands,
you can store the fourth point’s coordinates into a CAS
variable. The orientation of the parallelogram is
counterclockwise from the first point.
parallelogram(point1, point2, point3)
Example:
parallelogram(0,6,9+5i)draws a parallelogram
whose vertices are at (0, 0), (6, 0), (9, 5), and (3,5). The
coordinates of the last point are calculated automatically.
Geometry
173
polygon
Draws a polygon from a set of vertices.
polygon(point1, point2, …, pointn)
Example:
polygon(GA, GB, GD)draws ΔABD
quadrilateral
Draws a quadrilateral from a set of four points.
quadrilateral(point1, point2, point3, point4)
Example:
quadrilateral(GA, GB, GC, GD) draws quadrilateral
ABCD.
rectangle
Draws a rectangle given two consecutive vertices and a point
on the side opposite the side defined by the first two vertices
or a scale factor for the sides perpendicular to the first side.
As with many of the other polygon commands, you can
specify optional CAS variable names for storing the
coordinates of the other two vertices as points.
rectangle(point1, point2, point3) or
rectangle(point1, point2, realk)
Examples:
rectangle(GA, GB, GE)draws a rectangle whose first
two vertices are points A and B (one side is segment AB).
Point E is on the line that contains the side of the rectangle
opposite segment AB.
rectangle(GA, GB, 3, p, q) draws a rectangle whose
first two vertices are points A and B (one side is segment AB).
The sides perpendicular to segment AB have length 3*AB.
The third and fourth points are stored into the CAS variables
p and q, respectively.
rhombus
Draws a rhombus, given two points and an angle. As with
many of the other polygon commands, you can specify
optional CAS variable names for storing the coordinates of
the other two vertices as points.
rhombus(point1, point2, angle)
174
Geometry
Example
rhombus(GA, GB, angle(GC, GD, GE))draws a
rhombus on segment AB such that the angle at vertex A has
the same measure as ∡ DCE.
right_triangle
Draws a right triangle given two points and a scale factor.
One leg of the right triangle is defined by the two points, the
vertex of the right angle is at the first point, and the scale
factor multiplies the length of the first leg to determine the
length of the second leg.
right_triangle(point1, point2, realk)
Example:
right_triangle(GA, GB, 1)draws an isosceles right
triangles with its right angle at point A, and with both legs
equal in length to segment AB.
square
Draws a square, given two consecutive vertices as points.
square(point1, point2)
Example:
Example: square(0, 3+2i, p, q) draws a square with vertices
at (0, 0), (3, 2), (1, 5), and (-2, 3). The last two vertices are
computed automatically and are saved into the CAS variables
p and q.
triangle
Draws a triangle, given its three vertices.
triangle(point1, point2, point3)
Example:
triangle(GA, GB, GC) draws ΔABC.
Geometry
175
Curve
function
Draws the plot of a function, given an expression in the
independent variable x. Note the use of lowercase x.
plotfunc(Expr)
Example:
Example: plotfunc(3*sin(x)) draws the graph of y=3*sin(x).
circle
Draws a circle, given the endpoints of the diameter, or a
center and radius, or an equation in x and y.
circle(point1, point2) or circle(point1, point 2-point1) or
circle(equation)
Examples:
circle(GA, GB)draws the circle with diameter AB.
circle(GA, GB-GA)draws the circle with center at point
A and radius AB.
circle(x^2+y^2=1) draws the unit circle.
This command can also be used to draw an arc.
circle(GA, GB, 0, π/2) draws a quarter-circle with
diameter AB.
circumcircle
Draws the circumcircle of a triangle; that is, the circle
circumscribed about a triangle.
circumcircle(point1, point2, point3)
Example:
circumcircle(GA, GB, GC) draws the circle
circumscribed about ΔABC
conic
Plots the graph of a conic section defined by an expression in
x and y.
conic(expr)
Example:
conic(x^2+y^2-81)draws a circle with center at (0,0)
and radius of 9
176
Geometry
ellipse
Draws an ellipse, given the foci and either a point on the
ellipse or a scalar that is one half the constant sum of the
distances from a point on the ellipse to each of the foci.
ellipse(point1, point2, point3) or
ellipse(point1, point2, realk)
Examples:
ellipse(GA, GB, GC) draws the ellipse whose foci are
points A and B and which passes through point C.
ellipse(GA, GB, 3)draws an ellipse whose foci are
points A and B. For any point P on the ellipse, AP+BP=6.
excircle
Draws one of the excircles of a triangle, a circle tangent to one
side of the triangle and also tangent to the extensions of the
other two sides.
excircle(point1, point2, point3)
Example:
excircle(GA, GB, GC) draws the circle tangent to BC
and to the rays AB and AC.
hyperbola
Draws a hyperbola, given the foci and either a point on the
hyperbola or a scalar that is one half the constant difference
of the distances from a point on the hyperbola to each of the
foci.
hyperbola(point1, point2, point3) or
hyperbola(point1, point2, realk)
Examples:
hyperbola(GA, GB, GC)draws the hyperbola whose foci
are points A and B and which passes through point C.
hyperbola(GA, GB, 3)draws a hyperbola whose foci
are points A and B. For any point P on the hyperbola, |AP-
BP|=6.
incircle
Draws the incircle of a triangle, the circle tangent to all three
sides of the triangle.
incircle(point1, point2, point3)
Geometry
177
Example:
incircle(GA, GB, GC)draws the incircle of ΔABC.
locus
Given a first point and a second point that is an element of (a
point on) a geometric object, draws the locus of the first point
as the second point traverses its object.
locus(point,element)
parabola
Draws a parabola, given a focus point and a directrix line, or
the vertex of the parabola and a real number that represents
the focal length.
parabola(point,line) or parabola(vertex,real)
Examples:
parabola(GA, GB)draws a parabola whose focus is point
A and whose directrix is line B.
parabola(GA, 1)draws a parabola whose vertex is point
A and whose focal length is 1.
Transform
dilation
Dilates a geometric object, with respect to a center point, by
a scale factor.
homothety(point, realk, object)
Example:
homothety(GA, 2, GB)creates a dilation centered at
point A that has a scale factor of 2. Each point P on geometric
object B has its image P’ on ray AP such that AP’=2AP.
inversion
Draws the inversion of a point, with respect to another point,
by a scale factor.
inversion(point1, realk, point2)
Example:
inversion(GA, 3, GB)draws point C on line AB such
that AB*AC=3. In this case, point A is the center of the
178
Geometry
inversion and the scale factor is 3. Point B is the point whose
inversion is created.
In general, the inversion of point A through center C, with
scale factor k, maps A onto A’, such that A’ is on line CA and
CA*CA’=k, where CA and CA’ denote the lengths of the
corresponding segments. If k=1, then the lengths CA and CA’
are reciprocals.
projection
reflection
Draws the orthogonal projection of a point onto a curve.
projection(curve, point)
Reflects a geometric object over a line or through a point. The
latter is sometimes referred to as a half-turn.
reflection(line, object) or reflection(point,
object)
Examples:
reflection(line(x=3),point(1,1))reflects the
point at (1, 1) over the vertical line x=3 to create a point at
(5,1).
reflection(1+i, 3-2i)reflects the point at (3,–2)
through the point at (1, 1) to create a point at (–1, 4).
rotation
Rotates a geometric object, about a given center point,
through a given angle.
rotate(point, angle, object)
Example:
rotate(GA, angle(GB, GC, GD),GK)rotates the
geometric object labeled K, about point A, through an angle
equal to ∡ CBD.
similarity
Dilates and rotates a geometric object about the same center
point.
similarity(point, realk, angle, object)
Geometry
179
Example:
similarity(0, 3, angle(0,1,i),point(2,0))
dilates the point at (2,0) by a scale factor of 3 (a point at
(6,0)), then rotates the result 90° counterclockwise to create a
point at (0, 6).
translation
Translates a geometric object along a given vector. The vector
is given as the difference of two points (head-tail).
translation(vector, object)
Examples:
translation(0-i, GA)translates object A down one
unit.
translation(GB-GA, GC)translates object C along the
vector AB.
Measure Plot
angleat
Used in Symbolic view. Given the three points of an angle and
a fourth point as a location, displays the measure of the angle
defined by the first three points. The measure is displayed,
with a label, at the location in the Plot view given by the fourth
point. The first point is the vertex of the angle.
angleat(point1, point2, point3, point4)
Example:
In degree mode, angleat(point(0, 0), point(2√3,
0), point(2√3, 3), point(-6, 6))displays
“appoint(0,0)=30.0”at point (–6,6)
angleatraw
areaat
Works the same as angleat, but without the label.
Used in Symbolic view. Displays the algebraic area of a
polygon or circle. The measure is displayed, with a label, at
the given point in Plot view.
areaat(polygon, point) or areaat(circle,
point)
180
Geometry
Example:
areaat(circle(x^2+y^2=1), point(-4,4))
displays “acircle(x^2+y^2=1)= π” at point (-4, 4))
areaatraw
distanceat
Works the same as areaat, but without the label.
Used in Symbolic view. Displays the distance between 2
geometrical objects. The measure is displayed, with a label,
at the given point in Plot view.
distanceat(object1, object2, point)
Example:
distanceat(1+i, 3+3*i, 4+4*i) returns “1+i
3+3*i=2√2” at point (4,4)
distanceatraw
perimeterat
Works the same as distanceat, but without the label.
Used in Symbolic view. Displays the perimeter of a polygon
or circle. The measure is displayed, with a label, at the given
point in Plot view.
perimeterat(polygon, point) or
perimeterat(circle, point)
Example:
perimeterat(circle(x^2+y^2=1), point(-4,4))
displays “pcircle(x^2+y^2=1)= 2*π”at point (-4, 4)
perimeteratraw
slopeat
Works the same as perimeterat, but without the label.
Used in Symbolic view. Displays the slope of a straight object
(segment, line, etc.). The measure is displayed, with a label,
at the given point in Plot view.
slopeat(object, point)
Geometry
181
Example:
slopeat(line(point(0,0), point(2,3)),
point(-8,8)) displays “sline(point(0,0),
point(2,3))=3/2” at point (–8, 8)
slopeatraw
Works the same as slopeat, but without the label.
Numeric view: Cmds menu
Measure
abscissa
Returns the x coordinate of a point or the x length of a vector.
abscissa(point)or abscissa(vector)
Example:
abscissa(GA)returns the x-coordinate of the point A.
affix
Returns the coordinates of a point or both the x- and y-lengths
of a vector as a complex number.
affix(point) or affix(vector)
Example:
if GA is a point at (1, –2), then affix(GA)returns 1–2i.
angle
Returns the measure of a directed angle. The first point is
taken as the vertex of the angle as the next two points in order
give the measure and sign.
angle(vertex, point2, point3)
Example:
angle(GA, GB, GC)returns the measure of ∡ BAC.
182
Geometry
arcLen
Returns the length of the arc of a curve between two points on
the curve. The curve is an expression, the independent
variable is declared, and the two points are defined by values
of the independent variable.
This command can also accept a parametric definition of a
curve. In this case, the expression is a list of 2 expressions (the
first for x and the second for y) in terms of a third independent
variable.
arcLen(expr, real1, real2)
Examples:
arcLen(x^2, x, –2, 2)returns 9.29….
arcLen({sin(t), cos(t)}, t, 0, π/2)returns
1.57…
area
Returns the area of a circle or polygon.
area(circle) or area(polygon)
This command can also return the area under a curve
between two points.
area(expr, x=value1..value2)
Examples:
If GA is defined to be the unit circle, then area(GA)returns
.
area(4-x^2/4, x=-4..4) returns 14.666…
coordinates
distance
Given a vector of points, returns a matrix containing the x- and
y-coordinates of those points. Each row of the matrix defines
one point; the first column gives the x-coordinates and the
second column contains the y-coordinates.
coordinates([point1, point2, …, pointn]))
Returns the distance between two points or between a point
and a curve.
distance(point1, point2)or distance(point,
curve)
Geometry
183
Examples:
distance(1+i, 3+3i)returns 2.828… or 2√2.
if GA is the point at (0, 0) and GB is defined as
plotfunc(4–x^2/4), then distance (GA, GB) returns 3.464…
or 2√3.
distance2
Returns the square of the distance between two points or
between a point and a curve.
distance2(point1, point2)or distance2(point,
curve)
Examples:
distance2(1+i, 3+3i)returns 8.
If GA is the point at (0, 0) and GB is defined as plotfunc(4-
x^2/4), then distance2(GA, GB)returns 12.
equation
Returns the Cartesian equation of a curve in x and y, or the
Cartesian coordinates of a point.
equation(curve) or equation(point)
Example:
If GA is the point at (0, 0), GB is the point at (1, 0), and GC
is defined as circle(GA, GB-GA), then equation(GC)
returns x2 + y2 = 1.
extract_measure
ordinate
Returns the definition of a geometric object. For a point, that
definition consists of the coordinates of the point. For other
objects, the definition mirrors their definition in Symbolic view,
with the coordinates of their defining points supplied.
extract_measure(Var)
Returns the y coordinate of a point or the y length of a vector.
ordinate(point) or ordinate(vector)
Example:
Example: ordinate(GA)returns the y-coordinate of the
point A.
184
Geometry
parameq
perimeter
Works like the equation command, but returns parametric
results in complex form.
parameq(GeoObj )
Returns the perimeter of a polygon or the circumference of a
circle.
perimeter(polygon)or perimeter(circle)
Examples:
If GA is the point at (0, 0), GB is the point at (1, 0), and GC
is defined as circle(GA, GB-GA), then perimeter(GC)
returns 2.
If GA is the point at (0, 0), GB is the point at (1, 0), and GC
is defined as square(GA, GB-GA), then perimeter(GC)
returns 4.
radius
Returns the radius of a circle.
radius(circle)
Example:
If GA is the point at (0, 0), GB is the point at (1, 0), and GC
is defined as circle(GA, GB-GA), then radius(GC)returns 1.
Test
is_collinear
Takes a set of points as argument and tests whether or not they
are collinear. Returns 1 if the points are collinear and 0
otherwise.
is_collinear(point1, point2, …, pointn)
Example:
is_collinear(point(0,0), point(5,0),
point(6,1))returns 0
Geometry
185
is_concyclic
Takes a set of points as argument and tests if they are all on
the same circle. Returns 1 if the points are all on the same
circle and 0 otherwise.
is_concyclic(point1, point2, …, pointn)
Example:
is_concyclic(point(-4,-2), point(-4,2),
point(4,-2), point(4,2))returns 1
is_conjugate
is_element
Tests whether or not two points or two lines are conjugates for
the given circle. Returns 1 if they are and 0 otherwise.
is_conjugate(circle, point1, point2) or
is_conjugate(circle, line1, line2)
Tests if a point is on a geometric object. Returns 1 if it is and
0 otherwise
is_element(point, object)
Example:
2 2
is_element(point(----,----) , circle(0,1))returns 1.
2 2
is_equilateral
is_isoceles
186
Takes three points and tests whether or not they are vertices of
a single equilateral triangle. Returns 1 if they are and 0
otherwise.
is_equilateral(point1, point2, point3)
Example:
is_equilateral(point(0,0), point(4,0),
point(2,4))returns 0.
Takes three points and tests whether or not they are vertices of
a single isosceles triangle. Returns 0 if they are not. If they are,
returns the number order of the common point of the two sides
of equal length (1, 2, or 3). Returns 4 if the three points form
an equilateral triangle.
is_isosceles(point1, point2, point3)
Geometry
Example:
is_isoscelesl(point(0,0), point(4,0),
point(2,4)) returns 3.
is_orthogonal
Tests whether or not two lines or two circles are orthogonal
(perpendicular). In the case of two circles, tests whether or not
the tangent lines at a point of intersection are orthogonal.
Returns 1 if they are and 0 otherwise.
is_orthogonal(line1, line2) or
is_orthogonal(circle1, circle2)
Example:
is_orthogonal(line(y=x),line(y=-x))returns 1.
is_parallel
Tests whether or not two lines are parallel. Returns 1 if they
are and 0 otherwise.
is_parallel(line1, line2)
Example:
is_parallel(line(2x+3y=7),line(2x+3y=9)
returns 1.
is_parallelogram
Tests whether or not a set of four points are vertices of a
parallelogram. Returns 0 if they are not. If they are, then
returns 1 if they form only a parallelogram, 2 if they form a
rhombus, 3 if they form a rectangle, and 4 if they form a
square.
is_parallelogram(point1, point2, point3,
point4)
Example:
is_parallelogram(point(0,0), point(2,4),
point(0,8), point(-2,4))returns 2.
is_perpendicular
Similar to is_orthogonal. Tests whether or not two lines are
perpendicular.
is_perpendicular(line1, line2)
Geometry
187
is_rectangle
Tests whether or not a set of four points are vertices of a
rectangle. Returns 0 if they are not, 1 if they are, and 2 if they
are vertices of a square.
is_rectangle(point1, point2, point3, point4)
Examples:
is_rectangle(point(0,0), point(4,2),
point(2,6), point(-2,4))returns 2.
With a set of only three points as argument, tests whether or
not they are vertices of a right triangle. Returns 0 if they are
not. If they are, returns the number order of the common point
of the two perpendicular sides (1, 2, or 3).
is_rectangle(point(0,0), point(4,2),
point(2,6)) returns 2.
is_square
Tests whether or not a set of four points are vertices of a
square. Returns 1 if they are and 0 otherwise.
is_square(point1, point2, point3, point4)
Example:
is_square(point(0,0), point(4,2),
point(2,6), point(-2,4))returns 1.
Other Geometry functions
The following functions are not available from a menu in the
Geometry app, but are available from the Catlg menu.
convexhull
Returns a vector containing the points that serve as the convex
hull for a given set of points.
convexhull(point1, point2, …, pointn)
harmonic_conjugate
Returns the harmonic conjugate of 3 points. Specifically,
returns the harmonic conjugate of point3 with respect to
point1 and point2. Also accepts three parallel or concurrent
188
Geometry
lines; in this case, it returns the equation of the harmonic
conjugate line.
harmonic_conjugate(point1, point2, point3)or
harmonic_conjugate(line1, line2, line3)
Example:
harmonic_conjugate(point(0, 0), point(3, 0),
point(4, 0))returns point(12/5, 0)
harmonic_division
Returns the harmonic conjugate of 3 points. Specifically,
returns the harmonic conjugate of point3 with respect to
point1 and point2 and stores the result in the variable var.
Also accepts three parallel or concurrent lines; in this case, it
returns the equation of the harmonic conjugate line.
harmonic_division(point1, point2, point3, var)
or harmonic_division(line1, line2, line3, var)
Example:
harmonic_division(point(0, 0), point(3, 0),
point(4, 0), p)returns point(12/5, 0)and stores it
in the variable p
is_harmonic
Tests whether or not 4 points are in a harmonic division or
range. Returns 1 if they are or 0 otherwise.
is_harmonic(point1, point2, point3, point4)
is_harmonic(point1, point2, point3, point4)
Example:
is_harmonic(point(0, 0), point(3, 0),
point(4, 0), point(12/5, 0)) returns 1
is_harmonic_circle_bundle
Returns 1 if the circles build a beam, 2 if they have the same
center, 3 if they are the same circle and 0 otherwise.
is_harmonic_circle_bundle({circle1, circle2,
…, circlen})
Geometry
189
is_harmonic_line_bundle
Returns 1 if the lines are concurrent, 2 if they are all parallel,
3 if they are the same line and 0 otherwise.
is_harmonic_line_bundle({line1, line2, …,
linen}))
is_rhombus
Tests whether or not a set of four points are vertices of a
rhombus. Returns 0 if they are not, 1 if they are, and 2 if they
are vertices of a square.
is_rhombus(point1, point2, point3, point4)
Example:
is_rhombus(point(0,0), point(-2,2),
point(0,4), point(2,2))returns 2
LineHorz
Draws the horizontal line y=a.
LineHorz(a)
Example:
LineHorz(-2)draws the horizontal line whose equation is
y = –2
LineVert
Draws the vertical line x=a.
LineVert(a)
Example:
LineVert(–3) draws the vertical line whose equation is x
= –3
open_polygon
Connects a set of points with line segments, in the given order,
to produce a polygon. If the last point is the same as the first
point, then the polygon is closed; otherwise, it is open.
open_polygon(point1, point2, …, point1) or
open_polygon(point1, point2, …, pointn)
190
Geometry
polar
Returns the polar line of the given point as pole with respect
to the given circle.
polar(circle, point)
Example:
polar(circle(x^2+y^2=1),point(1/3,0)) returns
x=3
polar_coordinates
Returns a vector containing the polar coordinates of a point
or a complex number.
polar_coordinates(point)or
polar_coordinates(complex)
Example:
polar_coordinates(√2, √2)returns [2, π/4])
pole
Returns the pole of the given line with respect to the given
circle.
pole(circle, line)
Example:
pole(circle(x^2+y^2=1), line(x=3)) returns
point(1/3, 0)
powerpc
Given a circle and a point, returns the difference between the
square of the distance from the point to the circle’’s center and
the square of the circle’s radius.
powerpc(circle, point)
Example
powerpc(circle(point(0,0), point(1,1)-
point(0,0)), point(3,1))returns 8
radical_axis
Returns the line whose points all have the same powerpc
values for the two given circles.
radical_axis(circle1, circle2)
Geometry
191
Example:
radical_axis(circle(((x+2)²+y²) =
8),circle(((x-2)²+y²) = 8))returns line(x=0)
reciprocation
Given a circle, returns the poles (points) of given polar lines
or the polar lines of given poles (points).
reciprocation(circle, point)or
reciprocation(circle, line)or
reciprocation(circle, list)
Example:
reciprocation(circle(x^2+y^2=1),{point(1/
3,0), line(x=2)})returns [line(x=3), point(1/
2, 0)]
single_inter
Returns the intersection of curve1and curve2 that is
closest to point.
single_inter(curve1, curve2, point)
Example:
single_inter(line(y=x),circle(x^2+y^2=1),
point(1,1)) returns point(((1+i)* √2)/2)
vector
Creates a vector from point1 to point2. With one point as
argument, the origin is used as the tail of the vector.
vector(point1, point2) or vector(point)
Example:
vector(point(1,1), point(3,0)) creates a vector
from (1, 1) to (3, 0).
vertices
Returns a list of the vertices of a polygon.
vertices(polygon)
vertices_abca
Returns the closed list of the vertices of a polygon.
vertices_abca(polygon)
192
Geometry
9
Spreadsheet
The Spreadsheet app provides
a grid of cells for you to enter
content (such as numbers, text,
expressions, and so on) and to
perform certain operations on
what you enter.
To open the Spreadsheet app,
press
Spreadsheet.
I
and select
You can create any number of customized spreadsheets, each
with its own name (see “Creating an app” on page 107). You
open a customized spreadsheet in the same way: by pressing
I
The maximum size of any one spreadsheet is 10,000 rows by
676 columns.
and selecting the particular spreadsheet.
The app opens in Numeric view. There is no Plot or Symbolic
view. There is a Symbolic Setup view (SY) that enables
you to override certain system-wide settings. (See “Common
operations in Symbolic Setup view” on page 87.)
Getting started with the Spreadsheet app
Suppose you have a stall at a weekend market. You sell furniture
on consignment for their owners, taking a 10% commission for
yourself. You have to pay the landowner $100 a day to set up
your stall and you will keep the stall open until you have made
$250 for yourself.
1. Open the Spreadsheet app: Press
Press I and select Spreadsheet.
2. Select column A. Either tap on Aor use the cursor keys to
highlight the Acell (that is, the heading of the Acolumn).
Spreadsheet
193
3. Enter PRICEand tap
. You have named the entire
first column PRICE.
4. Select column B. Either tap on Bor use the cursor keys to
highlight the Bcell.
5. Enter a formula for your commission (being 10% of the
price of each item sold):
S.PRICEs0.1E
Because you entered the
formula in the heading of
a column, it is
automatically copied to
every cell in that column.
At the moment only 0 is
shown, since there are no
values in the PRICE
column yet.
6. Once again select the header of column B.
7. Tap
and select Name.
8. Type COMMISand tap
.
Note that the heading of column Bis now COMMIS.
9. It is always a good idea to check your formulas by entering
some dummy values and noting if the result is as expected.
Select cell A1and make sure that
and not
is
showing in the menu. (If not, tap the button.) This option
means that your cursor automatically selects the cell
immediately below the one you have just entered content
into.
10.Add some values in the
PRICEcolumn and note
the result in the COMMIS
column. If the results do
not look right, you can tap
the COMMISheading, tap
and fix the
formula.
194
Spreadsheet
11. To delete the dummy values, select cell A1, tap
,
press \ until all the dummy values are selected, and then
press C.
12. Select cell C1.
13. Enter a label for your takings:
S.ANTAKINGSE
Notice that text strings, but not names, need to be enclosed
within quotation marks.
14. Select cell D1.
15. Enter a formula to add up your takings:
S.SUM R PRICE E
You could have specified a range—such as A1:A100—but
by specifying the name of the column, you can be sure that
the sum will include all the entries in the column.
16. Select cell C3.
17. Enter a label for your total commission:
S.ANTOTAL COMMISE
Note that the column is not wide enough for you to see the
entire label in C3. We need to widen column C.
18. Select the heading cell for column C, tap
Column
and select
.
An input form appears for you to specify the required width
of the column.
19. Enter 100 and tap
.
You may have to experiment until you get the column width
exactly as you want it. The value you enter will be the width
of the column in pixels.
20.Select cell D3.
21. Enter a formula to add up your commission:
S.SUM R COMMIS E
Note that instead of entering SUMby hand, you could have
chosen it from the Apps menu (one of the Toolbox menus).
22.Select cell C5.
Spreadsheet
195
23.Enter a label for your fixed costs:
S.ANCOSTSE
24.In cell D5, enter 100. This
is what you have to pay
the landowner for renting
the space for your stall.
25.Enter the label PROFITin
cell C7.
26.In cell D7, enter a formula
to calculate your profit:
S.D3 w D5E
You could also have named D3and D5—say, TOTCOMand
COSTSrespectively. Then the formula in D7could have
been =TOTCOM–COSTS.
27. Enter the label GOALin cell E1.
You can swipe the screen with a finger, or repeatedly press
the cursor keys, to bring E1into view.
28.Enter 250 in cell F1.
This is the minimum profit you want to make on the day.
29. In cell C9, enter the label GO HOME.
30.In cell D9, enter:
S.D7 ≥ F1E
You can select ≥ from the relations palette (Sv).
What this formula does is
place 0 in D9if you have
not reached your goal
profit, and 1 if you have.
It provides a quick way for
you to see when you have
made enough profit and
can go home.
31. Select C9and D9.
You can select both cells with a finger drag, or by
highlighting C9, selecting
and pressing >.
196
Spreadsheet
32.Tap
33.Choose a color for the contents of the selected cells.
34.Tap and select Fill.
and select Color.
35.Choose a color for the background of the selected cells.
The most important cells in the spreadsheet will now stand
out from the rest.
The spreadsheet is complete,
but you may want to check all
the formulas by adding some
dummy data to the PRICE
column. When the profit
reaches 250, you should see
the value in D9change from 0
to 1.
Basic operations
Navigation, selection and gestures
You can move about a spreadsheet by using the cursor keys, by
swiping, or by tapping
to move to.
and specifying the cell you want
You select a cell simply by moving to it. You can also select an
entire column—by tapping the column letter—and select an
entire row (by tapping the row number). You can also select the
entire spreadsheet: just tap on the unnumbered cell at the top-
left corner of the spreadsheet. (It has the HP logo in it.)
A block of cells can be selected by pressing down on a cell that
will be a corner cell of the selection and, after a second,
dragging your finger to the diagonally opposite cell. You can
also select a block of cells by moving to a corner cell, tapping
and using the cursor keys to move to the diagonally
opposite cell. Tapping on
selection.
or another cell deselects the
Spreadsheet
197
Cell references
You can refer to the value of a cell in formulas as if it were a
variable. A cell is referenced by its column and row coordinates,
and references can be absolute or relative. An absolute
reference is written as $C$R (where C is the column number and
R the row number). Thus $B$7 is an absolute reference. In a
formula it will always refer to the data in cell B7 wherever that
formula, or a copy of it, is placed. On the other hand, B7 is a
relative reference. It is based on the relative position of cells.
Thus a formula in, say, B8 that references B7 will reference C7
instead of B7 if it is copied to C8.
Ranges of cells can also be specified, as in C6:E12, as can
entire columns (E:E) or entire rows ($3:$5). Note that the
alphabetic component of column names can be uppercase or
lowercase except for columns g, l, m, and z. These must be in
lowercase if not preceded by $. Thus cell B1 can be referred to
as B1,b1,$B$1or $b$1whereas M1 can only be referred to
as m1, $m$1, or $M$1. (G, L, M, and Z are names reserved for
graphic objects, lists, matrices, and complex numbers.)
Cell naming
Cells, rows, and columns can be named. The name can then be
used in a formula. A named cell is given a blue border.
Method 1
Method 2
To name an empty cell, row, or column, go the cell, row header,
or column header, enter a name and tap
.
To name a cell, row, or column—whether it is empty or not:
1. Select the cell, row, or column.
2. Tap
and select Name.
3. Enter a name and tap
.
Using names
in calculations
The name you give a cell, row, or column can be used in a
formula. For example, if you name a cell TOTAL, you could
enter in another cell the formula =TOTAL*1.1.
The following is a more complex example involving the naming
of an entire column.
198
Spreadsheet
1. Select cell A (that is the
header cell for column A).
2. Enter COSTand tap
.
3. Select cell B (that is the
header cell for column B).
4. Enter
S.COST*0.33and tap
.
5. Enter some values in column A and observe the calculated
results in column B.
Entering content
You can enter content directly in the spreadsheet or import data
from a statistics app.
Direct entry
A cell can contain any valid calculator object: a real number
(3.14), a complex number (a+ib), an integer (#1Ah), a list ({1,
2}), a matrix or vector([1, 2]), a string ("text"), a unit (2_m) or
an expression (that is, a formula). Move to the cell you want to
add content to and start entering the content as you would in
Home view. Press E when you have finished. You can
also enter content into a number of cells with a single entry. Just
select the cells, enter the content—for example, =Row*3—and
press E.
What you enter on the entry line is evaluated as soon as you
press E, with the result placed in the cell or cells.
However, if you want to retain the underlying formula, precede
it with S.. For example, suppose that want to add cell
A1 (which contains 7) to cell B2 (which contains 12). Entering
A1+ B2E in, say, A4 yields19, as does entering
S.A1+ B2 in A5. However, if the value in A1 (or B2)
changes, the value in A5 changes but not the value in A4. This
is because the expression (or formula) was retained in A5. To
see if a cell contains just the value shown in it or also an
underlying formula that generates the value, move your cursor to
the cell. The entry line shows a formula if there is one.
Spreadsheet
199
A single formula can add content to every cell in a column or
row. For example, move to C(the heading cell for column C),
enter S.SIN(Row)and press E. Each cell in the
column is populated with the sine of the cell’s row number. A
similar process enables you to populate every cell in a row with
the same formula. You can also add a formula once and have
it apply to every cell in the spreadsheet. You do this by placing
the formula in the cell at the top left (the cell with the HP logo in
it). To see how this works, suppose you want to generate a table
of powers (squares, cubes, and so on) starting with the squares:
1. Tap on the cell with the
HP logo in it (at the top
left corner). Alternatively,
you can use the cursor
keys to move to that cell
(just as you can to select a
column or row heading).
2. On the entry line type
S.Rowk Col+1
Note that Rowand Colare built-in variables. They are
placeholders for the row number and column number of the
cell that has a formula containing them.
3. Tap
or Press E.
Note that each column gives the nth power of the row
number starting with the squares. Thus 95 is 59,049.
Import data
You can import data from the Statistics 1Var and Statistics 2Var
apps (and from any app customized from a statistics app). In the
procedure immediately below, dataset D1from the Statistics
1Var app is being imported.
1. Select a cell.
2. Enter Statistics_1Var.D1.
3. Press E.
The column is filled with the data from the statistics app,
starting with the cell selected at step 1. Any data in that
column will be overwritten by the data being imported.
200
Spreadsheet
You can also export data from the Spreadsheet app to a
statistics app. See “Entering and editing statistical data” on
page 213 for the general procedure. It can be used in both
the Statistics 1Var and Statistics 2Var apps.
External
functions
You can use in a formula any
function available on the Math,
CAS, App, User or Catlg
menus (see chapter 21,
“Functions and commands” on
page 305). For example, to
find the root of 3 – x2 closest to
x = 2, you could enter in a cell
S.AAROOTAR3wAs
jo2E. The answer displayed is 1.732…
You could also have selected a function from a menu. For
example:
1. Press S..
2. Press D and tap
.
3. Select Polynomial> Find Roots.
Your entry line will now look like this: =CAS.proot().
4. Enter the coefficients of the polynomial, in descending
order, separating each with a comma:
Q1o0o3
5. Press E to see the result. Select the cell and tap
to see a vector containing both roots: [1.732…
–1.732…].
6. Tap
to return to the spreadsheet.
Note that the CAS prefix added to your function is to remind you
that the calculation will be carried out by the CAS (and thus a
symbolic result will be returned, if possible). You can also force
a calculation to be handled by the CAS by tapping
the spreadsheet.
in
There are additional spreadsheet functions that you can use
(mostly related to finance and statistics calculations). See
“Spreadsheet functions” on page 345.
Spreadsheet
201
Copy and paste
To copy one or more cells,
select them and press
SV (Copy).
Move to the desired location
and press SZ (Paste).
You can choose to paste
either the value, formula,
format, both value and format, or both formula and format.
External references
You can refer to data in a
spreadsheet from outside the
Spreadsheet app by using the
reference
SpreadsheetName.CR. For
example, in Home view you
can refer to cell A6 in the built-
in spreadsheet by entering
Spreadsheet.A6. Thus the formula 6*Spreadsheet.A6
would multiply whatever value is currently in cell A6 in the built-
in app by 6.
If you have created a customized spreadsheet called, say,
Savings, you simply refer to it by its name, as in
5*Savings.A6.
An external reference can also be to a named cell, as in
5*Savings.TOTAL.
In the same way, you can also enter references to spreadsheet
cells in the CAS.
If you are working outside a spreadsheet, you cannot refer to a
cell by its absolute reference. Thus Spreadsheet.$A$6
produces an error message.
Note that a reference to a spreadsheet name is case-sensitive.
202
Spreadsheet
Referencing variables
Any variable can be inserted in a cell. This includes Home
variables, App variables, CAS variables and user variables.
Variables can be referenced or entered. For example, if you
a spreadsheet cell, press E and get 50. If you
subsequently changed the value of P, the value in that cell
automatically changes to reflect the new value. This is an
example of a referenced variable.
If you just wanted the current value of P and not have the value
change if Pchanges, just enter Pand press E. This is an
example of an entered variable.
Variables given values in other apps can also be referenced in
a spreadsheet. In chapter 13 we see how the Solve app can be
2
2
used to solve equations. An example used is V = U + 2AD.
You could have four cells in a spreadsheet with =V, =U, =A, and
=Das formulas. As you experiment with different values for these
variables in the Solve app, the entered and the calculated values
are copied to the spreadsheet (where further manipulation could
be done).
The variables from other apps includes the results of certain
calculations. For example, if you have plotted a function in the
Function app and calculated the signed area between two x-
values, you can reference that value in a spreadsheet by
pressing a, tapping
, and then selecting Function>
Results> SignedArea.
Numerous system variables are also available. For example, you
in Home view. You could also enter S.S+E
to get the last answer calculated in Home view and have the
value automatically updated as new calculations are made in
Home view. (Note that this works only with the Ansfrom Home
view, not the Ansfrom CAS view.)
All the variables available to you are listed on the variables
menus, displayed by pressing a. A comprehensive list of
these variables is provided in chapter 22, “Variables”,
beginning on page 427.
Spreadsheet
203
Using the CAS in spreadsheet calculations
You can force a spreadsheet calculation to be performed by the
CAS, thereby ensuring that results are symbolic (and thus exact).
For example, the formula =√Rowin row 5 gives
2.2360679775if not calculated by the CAS, and √5if it is.
You choose the calculation engine when you are entering the
formula. As soon as you begin entering a formula, the
key changes to
or
(depending on the last
selection). This is a toggle key. Tap on it to change it from one
to the other.
When
the number of significant digits limited by the precsion of the
calculator). When is showing, the calculation will be
is showing, the calculation will be numeric (with
performed by CAS and be exact.
In the example at the right, the
formula in cell A is exaclty the
same as the formula in cell B:
= Row2–√(Row–1). The only
difference is that
was
showing (or selected) while the
formula was being entered in
B, thereby forcing the
calculation to be performed by the CAS. Note that CAS
appears in red on the entry line if the cell selected contains a
formula that is being calculated by the CAS.
204
Spreadsheet
Buttons and keys
Button or key
Purpose
Activates the entry line for you to edit the object in
the selected cell. (Only visible if the selected cell
has content.)
Converts the text you have entered on the entry line
to a name. (Only visible when the entry line is
active.)
/
A toggle button that is only visible when the entry
line is active. Both options force the expression to be
handled by the CAS, but only
evaluates it.
Tap to enter the $ symbol. A shortcut when entering
absolute references. (Only visible when the entry
line is active.)
Displays formatting options for the selected cell,
block, column, row, or the entire spreadsheet. See
“Formatting options” on page 206.
Displays an input form for you to specify the cell
you want to jump to.
Sets the calculator to select mode so that you can
easily select a block of cells using the cursor keys. It
changes to
to enable you to deselect cells.
(You can also press, hold and drag to select a
block of cells.)
or
A toggle button that sets the direction the cursor
moves after content has been entered in a cell.
Displays the result in the selected cell in full-screen
mode, with horizontal and vertical scrolling
enabled. (Only visible if the selected cell has con-
tent.)
Enables you to select a column to sort by, and to
sort it in ascending or descending order. (Only visi-
ble if cells are selected.)
Cancel the input and clear the entry line.
Accept and evaluate the input.
Clears the spreadsheet.
SJ
Spreadsheet
205
Formatting options
The formatting options appear
when you tap . They
apply to whatever is currently
selected: a cell, block, column,
row, or the entire spreadsheet.
The options are:
•
Name: displays an input
form for you to give a name to whatever is selected
•
Number Format: Auto, Standard, Fixed, Scientific, or
Engineering. See “Home settings” on page 30 for more details.
•
•
Font Size: Auto or from 10 to 22 point
Color: color for the content (text, number, etc.) in the
selected cells; the gray-dotted option represents Auto
•
Fill: background color that fills the selected cells; the gray-
dotted option represents Auto
•
•
•
Align
Align : vertical alignment—Auto, Top, Center, Bottom
Column : displays an input form for you to specify the
: horizontal alignment—Auto, Left, Center, Right
required width of the selected columns; only available if
you have selected the entire spreadsheet or one or more
entire columns.
You can also change the width of a selected column with
an open or closed horizontal pinch gesture.
•
•
Row : displays an input form for you to specify the required
height of the selected rows; only available if you have selected the
entire spreadsheet or one or more entire rows.
You can also change the height of a selected row with an
open or closed vertical pinch gesture.
show “: show quote marks around strings in the body of
the spreadsheet—Auto, Yes, No
•
•
Textbook: display formulas in textbook format—Auto, Yes, No
Caching: turn this option on to speed up calculations in
spreadsheets with many formulas; only available if you
have selected the entire spreadsheet
206
Spreadsheet
Format
Parameters
Each format attribute is represented by a parameter that can be
referenced in a formula. For example, =D1(1) returns the
formula in cell D1 (or nothing if D1 has no formula). The
attributes that can be retrieved in a formulas by referencing its
associated parameter are listed below.
Parameter
Attribute
Result
0
1
2
3
content
contents (or empty)
formula
formula
name
name (or empty)
number format
Standard = 0
Fixed = 1
Scientific = 2
Engineering = 3
4
5
number of deci- 1 to 11, or unspeci-
mal places
fied = –1
font
0 to 6, unspecified
= –1 (with 0 = 10 pt
and 6 = 22pt).
6
7
background
color
cell fill color, or
32786 if unspecified
foreground color cell contents color,
or 32786 if unspeci-
fied
8
9
horizontal align- Left = 0, Center = 1,
ment
Right = 2, unspeci-
fied = –1
vertical align-
ment
Top = 0, Center = 1,
Bottom = 2, unspeci-
fied = –1
10
11
show strings in
quotes
Yes = 0, No = 1,
unspecified = –1
textbook mode
(as opposed to unspecified = –1
algebraic mode)
Yes = 0, No = 1,
As well as retrieving format attributes, you can set a format
attribute (or cell content) by specifying it in a formula in the
Spreadsheet
207
relevant cell. For example, wherever it is placed g5(1):=6543
enters 6543in cell g5. Any previous content in g5 is replaced.
Similarly, B3(5):=2forces the contents of B3 to be displayed in
medium font size.
Spreadsheet functions
As well as the functions on the Math, CAS and Catlg menus,
you can use special spreadsheet functions. These can be found
on the App menu, one of the Toolbox menus. Press D, tap
and select Spreadsheet. The functions are described
on “Spreadsheet functions” on page 345.
Remember to precede a function by an equals sign (S.)
if you want the result to automatically update as the values it is
dependent on change. Without an equals sign you will be
entering just the current value.
208
Spreadsheet
10
Statistics 1Var app
The Statistics 1Var app can store up to ten data sets at one
time. It can perform one-variable statistical analysis of one
or more sets of data.
The Statistics 1Var app starts with the Numeric view which
is used to enter data. The Symbolic view is used to specify
which columns contain data and which column contains
frequencies.
You can also compute statistics in Home and recall the
values of specific statistics variables.
The values computed in the Statistics 1Var app are saved
in variables, and can be re-used in Home view and in
other apps.
Getting started with the Statistics 1Var app
Suppose that you are measuring the heights of students in
a classroom to find the mean height. The first five students
have the following measurements: 160 cm, 165 cm,
170 cm, 175 cm and180 cm.
1. Open the Statistics
1Var app:
Select
I
Statistics 1Var
2. Enter the
measurement data in
column D1:
Statistics 1Var app
209
160 E
165 E
170 E
175 E
180 E
3. Find the mean of the
sample.
Tap
to see
the statistics
calculated from the
sample data in D1.
_
The mean (x) is 170.
There are more
statistics than can be
displayed on one
screen. Thus you may need to scroll to see the statistic
you are after.
Note that the title of the column of statistics is H1.
There are 5 data-set definitions available for one-
variable statistics: H1–H5. If data is entered in D1, H1
is automatically set to use D1for data, and the
frequency of each data point is set to 1. You can
select other columns of data from the Symbolic view
of the app.
4. Tap
to close the statistics window.
5. Press Y to see the
data-set definitions.
The first field in each
set of definitions is
where you specify
the column of data
that is to be
analyzed, the
second field is where you specify the column that has
the frequencies of each data point, and the third field
(Plotn) is where you choose the type of plot that will
represent the data in Plot view: Histogram, Box and
Whisker, Normal Probability, Line, Bar, or Pareto.
210
Statistics 1Var app
Symbolic view: menu items
The menu items you can tap on in Symbolic view are:
Menu item
Purpose
Copies the column variable (or vari-
able expression) to the entry line for
editing. Tap
when done.
Selects (or deselects) a statistical
analysis (H1–H5) for exploration.
Enters Ddirectly (to save you having
to press two keys).
Displays the current expression in
textbook format in full-screen view.
Tap
when done.
Evaluates the highlighted expres-
sion, resolving any references to
other definitions.
To continue our example, suppose that the heights of the
rest of the students in the class are measured and that
each one is rounded to the nearest of the five values first
recorded. Instead of entering all the new data in D1, we
simply add another column, D2, that holds the frequencies
of our five data points in D1.
Height (cm)
Frequency
160
165
170
175
180
5
3
8
2
1
6. Tap on Freq to the right of H1(or press > to
highlight the second H1field).
Statistics 1Var app
211
7. Enter the name of the
column that you will
contain the
frequencies (in this
example, D2):
2
8. If you want to choose
a color for the graph of the data in Plot view, see
“Choose a color for plots” on page 85.
9. If you have more than one analysis defined in
Symbolic view, deselect any analysis you are not
currently interested in.
10.Return to Numeric view:
M
11. In column D2, enter
the frequency data
shown in the table
above:
> 5 E
3E
8E
2E
1E
12. Recalculate the
statistics:
The mean height
now is
approximately
167.631 cm.
13. Configure a histogram plot for the data.
212
Statistics 1Var app
P
S
((Setup)
Enter parameters
appropriate to your
data. Those shown at
the right will ensure
that all the data in
this particular
example are displayed in Plot view.
14. Plot a histogram of
the data.
P
Press > and < to
move the tracer and
see the interval and
frequency of each
bin. You can also tap to select a bin. Tap and drag to
scroll the Plot view. You can also zoom in or out on
Entering and editing statistical data
Each column in Numeric view is a dataset and is
represented by a variable named D0to D9. There are
three ways to get data into a column:
•
•
Go to Numeric view and enter the data directly. See
“Getting started with the Statistics 1Var app” on
page 209 for an example.
Go to Home view and copy the data from a list. For
example, if you enter L1
D1in Home view,
the items in list L1are copied into column D1in the
Statistics 1Var app.
•
Go to Home view and copy the data from the
Spreadsheet app. For example, suppose the data of
interest is in A1:A10 in the Spreadsheet app and you
want to copy it into column D7. With the Statistics
1Var app open, return to Home view and enter
Spreadsheet.A1:A10
D7E.
Statistics 1Var app
213
Whichever method you use, the data you enter is
automatically saved. You can leave this app and come
back to it later. You will find that the data you last entered
is still available.
After entering the data, you must define data sets—and
the way they are to be plotted—in Symbolic view.
Numeric view: menu items
The menu items you can tap on in Numeric view are:
Item
Purpose
Copies the highlighted item into
the entry line.
Inserts a zero value above the
highlighted cell.
Sorts the data in various ways.
See “Sort data values” on
page 215.
Displays a menu from which you
can choose small, medium, or
large font.
Displays an input form for you to
enter a formula that will generate
a list of values for a specified col-
umn. See “Generating data” on
page 215.
Calculates statistics for each data
set selected in Symbolic view. See
“Computed statistics” on
page 216.
Edit a data
set
In Numeric view, highlight the data to change, type a new
value, and press E. You can also highlight the data,
tap
to copy it to the entry line, make your change,
and press
.
E
214
Statistics 1Var app
Delete data
Insert data
•
•
To delete a data item, highlight it and press C. The
values below the deleted cell will scroll up one row.
To delete a column of data, highlight an entry in that
column and press SJ(Clear). Select the column
and tap
To delete all data in every column, press SJ
(Clear), select All columns, and tap
.
•
.
1. Highlight the cell below where you want to insert a
value.
2. Tap
and enter the value.
If you just want to add more data to the data set and it is
not important where it goes, select the last cell in the data
set and start entering the new data.
Generating data You can enter a formula
to generate a list of data
points for a specified
column. In the example
at the right, 5 data-points
will be placed in column
D2. They will be
generated by the
expression X 2– F where X comes from the set {1, 3, 5, 7,
9}. These are the values between 1 and 10 that differ by
2. F is whatever value has been assigned to it elsewhere
(such as in Home view). If F happened to be 5, column
D2 is populated with {–4, 4, 20, 44, 76}.
Sort data values You can sort up to three columns of data at a time, based
on a selected independent column.
1. In Numeric view, place the highlight in the column
you want to sort, and tap
.
2. Specify the sort order: Ascendingor Descending.
3. Specify the independent and dependent data
columns. Sorting is by the independent column. For
instance, if ages are in C1and incomes in C2and
Statistics 1Var app
215
you want to sort by income, then you make C2the
independent column and C1the dependent column.
4. Specify any frequency data column.
5. Tap
.
The independent column is sorted as specified and
any other columns are sorted to match the
independent column. To sort just one column, choose
Nonefor the Dependentand Frequencycolumns.
Computed statistics
Tapping
displays the following results for each
dataset selected in Symbolic view.
Statistic
Definition
n
Number of data points
Minimum value
Min
Q1
First quartile: median of values to
left of median
Med
Q3
Median value
Third quartile: median of values to
right of median
Max
Maximum value
X
Sum of data values (with their
frequencies)
X2
Sum of the squares of the data
values
x
Mean
sX
Sample standard deviation
Population standard deviation
Standard error
X
serrX
When the data set contains an odd number of values, the
median value is not used when calculating Q1and Q3. For
example, for the data set {3,5,7,8,15,16,17}only
the first three items—3, 5, and 7—are used to calculate
Q1, and only the last three terms—15, 16, and 17—are
used to calculate Q3.
216
Statistics 1Var app
Plotting
You can plot:
•
•
•
•
•
•
Histograms
Box-and-Whisker plots
Normal Probability plots
Line plots
Bar graphs
Pareto charts
Once you have entered your data and defined your data
set, you can plot your data. You can plot up to five box-
and-whisker plots at a time; however, with the other types,
you can only plot one at a time.
To plot statistical
data
1. In the Symbolic view, select the data sets you want to
plot.
2. From the Plotn menu, select the plot type.
3. For any plot, but especially for a histogram, adjust the
plotting scale and range in the Plot Setup view. If you
find histogram bars too fat or too thin, you can adjust
them by changing the HWIDTHsetting. (See “Setting
up the plot (Plot Setup view)” on page 219.)
4. Press P. If the scaling is not to your liking, press
V and select Autoscale.
Autoscalecan be relied upon to give a good
starting scale which can then be adjusted, either
directly in the Plot view or in the Plot Setup view.
Plot types
Histogram
The first set of numbers
below the plot indicate
where the cursor is. In the
example at the right, the
cursor is in the bin for
data between 5 and 6
(but not including 6),
and the frequency for
Statistics 1Var app
217
that bin is 6. The data set is defined by H3 in Symbolic
view. You can see information about other bins by
pressing > or <.
Box-and-Whisker
plot
The left whisker marks
the minimum data value.
The box marks the first
quartile, the median,
and the third quartile.
The right whisker marks
themaximumdatavalue.
The numbers below the
plot give the statistic at the cursor. You can see other
statistics by pressing >or <.
Normal probability
plot
The normal probability
plot is used to determine
whether or not sample
data is more or less
normally distributed. The
more linear the data
appear, the more likely
that the data are
normally distributed.
Line plot
The line plot connects
points of the form (x, y),
where x is the row
number of the data point
and y is its value.
Bar graph
The bar graph shows the
value of a data point as
a vertical bar placed
along the x-axis at the
row number of the data
point.
218
Statistics 1Var app
Pareto chart
A pareto chart places the
data in descending
order and displays each
with its percentage of the
whole.
Setting up the plot (Plot Setup view)
The Plot Setup view (SP) enables you to specify
many of the same plotting parameters as other apps (such
as X Rng and Y Rng). There are two settings unique to
the Statistics 1Var app:
Histogram width
Histogram range
H Width enables you to specify the width of a histogram
bin. This determines how many bins will fit in the display,
as well as how the data is distributed (that is, how many
data points each bin contains).
H Rng enables you to specify the range of values for a set
of histogram bins. The range runs from the left edge of the
leftmost bin to the right edge of the rightmost bin.
Exploring the graph
The Plot view (P) has zooming and tracing options, as
well as coordinate display. The Autoscaleoption is
available from the View menu (V) as well as the
menu.The View menu also enables you to view graphs in
split-screen mode (as explained on page 91).
For all plot types, you can tap and drag to scroll the Plot
view. You can also zoom in or out on the cursor by
pressing + and w respectively.
Statistics 1Var app
219
11
Statistics 2Var app
The Statistics 2Var app can store up to ten data sets at one
time. It can perform two-variable statistical analysis of one
or more sets of data.
The Statistics 2Var app starts with the Numeric view which
is used to enter data. The Symbolic view is used to specify
which columns contain data and which column contains
frequencies.
You can also compute statistics in Home and in the
Spreadsheet app.
The values computed in the Statistics 2Var app are saved
in variables. These can be referenced in Home view and
in other apps.
Getting started with the Statistics 2Var app
The following example uses the advertising and sales data
in the table below. In the example, you will enter the data,
compute summary statistics, fit a curve to the data, and
predict the effect of more advertising on sales.
Advertising minutes
(independent, x)
Resulting sales ($)
(dependent, y)
2
1
3
5
5
4
1400
920
1100
2265
2890
2200
Statistics 2Var app
221
Open the
Statistics 2Var
app
1. Open the Statistics
2Var app:
Select
I
Statistics
2Var.
Enter data
2. Enter the advertising minutes data in column C1:
2
1
3
5
5
4
E E E E E
E
3. Enter the resulting
sales data in
column C2:
1400
E
920
110 0
E
E
2265
2890
2200
E
E
E
Choose data
columns and fit
In Symbolic view, you can define up to five analyses of
two-variable data, named S1to S5. In this example, we
will define just one: S1. The process involves choosing
data sets and a fit type.
4. Specify the columns that contain the data you want to
analyze:
Y
In this case, C1
and C2 appear
by default. But you
could have
entered your data
into columns other
than C1 and C2.
222
Statistics 2Var app
5. Select a fit:
From the Type 1
field select a fit. In
this example,
select Linear.
6. If you want to
choose a color for
the graph of the
data in Plot view,
see “Choose a color for plots” on page 85.
7. If you have more than one analysis defined in
Symbolic view, deselect any analysis you are not
currently interested in.
Explore statistics 8. Find the correlation, r, between advertising time and
sales:
M
The correlation is
r=0.8995…
9. Find the mean
advertising time
(x ).
The mean
advertising time,
x , is 3.33333…
minutes.
Statistics 2Var app
223
10.Find the mean sales
(y ).
The mean sales, y ,
is approximately
$1,796.
Press
to
return to Numeric view.
Setup plot
11. Change the plotting range to ensure that all the data
points are plotted (and to select a different data-point
indicator, if you wish).
(Setup)
SP
1
6
Q
E
100
E Q
3200
0
E
500
E \
E
Plot the graph
12. Plot the graph.
P
Notice that the
regression curve (that
is, a curve to best fit
the data points) is
plotted by default.
224
Statistics 2Var app
Display the
equation
13. Return to the Symbolic view.
Y
Note the expression
in the Fit1 field. It
shows that the slope
(m) of the regression
line is 425.875 and
the y-intercept (b) is
376.25.
Predict values
Let’s now predict the sales figure if advertising were to go
up to 6 minutes.
14. Return to the Plot
view:
P
The trace option is
active by default.
This option will move
the cursor from data
point to data point as you press > or <. As you
move from data point to data point, the
corresponding x- and y-values appear at the bottom
of the screen. In this example, the x-axis represents
minutes of advertising and the y-axis represents sales.
However, there is no data point for 6 minutes. Thus
we cannot move the cursor to x = 6. Instead, we need
to predict what y will be when x = 6, based on the
data we do have. To do that, we need to trace the
regression curve, not the data points we have.
15. Press \ or = to set
the cursor to trace
the regression line
rather than the data
points.
Statistics 2Var app
225
The cursor jumps from whatever data point it was on
to the regression curve.
16. Tap on the regression line near x = 6 (near the right
edge of the display). Then press > until x = 6. If the
x-value is not shown at the bottom left of the screen,
tap
. When you reach x = 6, you will see that
sales would rise to $2,931.50 if advertising were
increased to 6 minutes.
T i p
You could use the same tracing technique to
predict—although roughly—how many minutes of
advertising you would need to gain sales of a specified
amount. However, a more accurate method is available:
return to Home view and enter Predx(s)where s is the
sales figure. Predyand Predxare app functions. They
on page 363.
Entering and editing statistical data
Each column in Numeric view is a dataset and is
represented by a variable named C0to C9. There are
three ways to get data into a column:
•
•
Go to Numeric view and enter the data directly. See
“Getting started with the Statistics 2Var app” on
page 221 for an example.
Go to Home view and copy the data from a list. For
example, if you enter L1
C1in Home view,
the items in list L1are copied into column C1in the
Statistics 1Var app.
•
Go to Home view and copy the data from a the
Spreadsheet app. For example, suppose the data of
interest is in A1:A10 in the Spreadsheet app and you
want to copy it into column C7. With the Statistics
2Var app open, return to Home view and enter
Spreadsheet.A1:A10
C7E.
N o t e
A data column must have at least four data points to
provide valid two-variable statistics.
226
Statistics 2Var app
Whichever method you use, the data you enter is
automatically saved. You can leave this app and come
back to it later. You will find that the data you last entered
is still available.
After entering the data, you must define data sets—and
the way they are to be plotted—in Symbolic view.
Numeric view menu items
The buttons you can tap on in Numeric view are:
Button
Purpose
Copies the highlighted item to the
entry line.
Inserts a new cell above the
highlighted cell (and gives it a value
of 0).
Opens an input form for you to
choose to sort the data in various
ways.
Displays a menu for you to choose
the small, medium, or large font.
Opens an input form for you to
create a sequence based on an
expression, and to store the result in
a specified data column. See
“Generating data” on page 215.
Calculates statistics for each data set
selected in Symbolic view. See
“Computed statistics” on page 231.
Edit a data set
In Numeric view, highlight the data to change, type a new
value, and press E. You can also highlight the data,
tap
, make your change, and tap
.
Statistics 2Var app
227
Delete data
Insert data
•
•
To delete a data item, highlight it and press C. The
values below the deleted cell will scroll up one row.
To delete a column of data, highlight an entry in that
column and press SJ(Clear). Select the column
and tap
To delete all data in every column, press SJ
(Clear), select All columns, and tap
.
•
.
Highlight the cell below where you want to insert a value.
Tap and enter the value.
If you just want to add more data to the data set and it is
not important where it goes, select the last cell in the data
set and start entering the new data.
Sort data values You can sort up to three columns of data at a time, based
on a selected independent column.
1. In Numeric view, place the highlight in the column
you want to sort, and tap
.
2. Specify the Sort Order: Ascendingor
Descending.
3. Specify the independent and dependent data
columns. Sorting is by the independent column. For
instance, if ages are in C1and incomes in C2and
you want to sort by Income, then you make C2the
independent column and C1the dependent column.
4. Specify any Frequency data column.
5. Tap
.
The independent column is sorted as specified and
any other columns are sorted to match the
independent column. To sort just one column, choose
Nonefor the Dependentand Frequencycolumns.
228
Statistics 2Var app
Defining a regression model
You define a regression model in Symbolic view. There are
three ways to do so:
•
•
•
Accept the default option to fit the data to a straight
line.
Choose a pre-defined fit type (logarithmic,
exponential, and so on).
Enter your own mathematical expression. The
expression will be plotted so that you can see how
closely it fits the data points.
Choose a fit
1. Press
to display the Symbolic view.
Y
2. For the analysis you are interested in (S1 through S5),
select the Type field.
3. Tap the field again to see the menu of fit types.
4. Select your preferred fit type from the menu. (See “Fit
types” on page 229.)
Fit types
Twelve fit types are available:
Fit type
Meaning
Linear
(Default.) Fits the data to a
straight line: y = mx+b. Uses a
least-squares fit.
Logarithmic
Exponential
Power
Fits the data to a logarithmic
curve: y = m lnx + b.
Fits the data to the natural
exponential curve: y = b emx
.
Fits the data to a power curve:
.y = b xm .
Exponent
Inverse
Fits the data to an exponential
curve: y = b mx .
Fits the data to an inverse
m
x
---
variation: y =
+ b
Statistics 2Var app
229
Fit type
Meaning (Continued)
Logistic
Fits the data to a logistic curve:
L
--------------------------
y =
1 + ae–bx
where L is the saturation value
for growth. You can store a
positive real value in L, or—if
L=0—let L be computed
automatically.
Quadratic
Cubic
Fits the data to a quadratic
2
curve: y = ax +bx+c. Needs at
least three points.
Fits the data to a cubic
polynomial:
y = ax3 + b2x + cx + d
Quartic
Fits to a quartic polynomial,
y = ax4 + bx3 + cx2 + dx + e
Trigonometric Fits the data to a trigonometric
curve: y = a sinbx + c + d .
Needs at least three points.
User Defined
Define your own fit (see below).
To define your
own fit
1. Press to display the Symbolic view.
Y
2. For the analysis you are interested in (S1 through S5),
select the Type field.
3. Tap the field again to see a menu of fit types.
4. Select User Definedfrom the menu.
5. Select the corresponding Fitn field.
6. Enter an expression and press
. The
E
independent variable must be X, and the expression
must not contain any unknown variables. Example:
1.5 cosx + 0.3 sinx . Note that in this app,
variables must be entered in uppercase.
230
Statistics 2Var app
Computed statistics
When you tap
, three sets of statistics become
available. By default, the statistics involving both the
independent and dependent columns are shown. Tap
to see the statistics involving just the independent
column or
dependent column. Tap
to display the statistics derived from the
to return to the default
view. The tables below describe the statistics displayed in
each view.
The statistics computed when you tap
are:
Statistic
Definition
n
r
The number of data points.
Correlation coefficient of the
independent and dependent data
columns, based only on the linear
fit (regardless of the fit type
chosen). Returns a value between
–1 and 1, where 1 and –1 indicate
best fits.
2
R
The coefficient of determination,
that is, the square of the correlation
coefficient. The value of this
statistics is dependent on the Fit
type chosen. A measure of 1
indicates a perfect fit.
sCOV
Sample covariance of independent
and dependent data columns.
COV
Population covariance of
independent and dependent data
columns.
XY
Sum of all the individual products of
of x and y.
Statistics 2Var app
231
The statistics displayed when you tap
are:
Statistic
Definition
x
Mean of x- (independent) values.
X
Sum of x-values.
2
2
X
Sum of x -values.
sX
The sample standard deviation of
the independent column.
X
The population standard deviation
of the independent column.
serrX
the standard error of the
independent column
The statistics displayed when you tap
are:
Statistic
Definition
y
Mean of y- (dependent) values.
Y
Sum of y-values.
2
2
Y
Sum of y -values.
sY
The sample standard deviation of
the dependent column.
Y
The population standard deviation
of the dependent column.
serrY
The standard error of the
dependent column.
Plotting statistical data
Once you have entered your data, selected the data set to
analyze and specified your fit model, you can plot your
data. You can plot up to five scatter plots at a time.
1. In Symbolic view, select the data sets you want to
plot.
2. Make sure that the full range of your data will be
plotted. You do this by reviewing (and adjusting, if
232
Statistics 2Var app
necessary), the X Rng and Y Rng fields in Plot Setup
view. (SP).
3. Press
.
P
If the data set and regression line are not ideally
positioned, Press V and select Autoscale.
Autoscale can be relied upon to give a good starting
scale which can then be adjusted later in the Plot
Setup view.
Tracing a scatter
plot
The figures below the plot
indicate that the cursor is
at the second data point of
S1, at ((1, 920). Press to
>
move to the next data
point and display
information about it.
Tracing a curve
If the regression line is not showing, tap
. The
coordinates of the tracer cursor are shown at the bottom
of the screen. (If they are not visible, tap
.)
PressYto see the
equation of the
regression line in
Symbolic view.
If the equation is too wide
for the screen, select it
and press
.
The example above shows that the slope of the regression
line (m) is 425.875 and the y-intercept (b) is 376.25.
Tracing order
While > and < move the cursor along a fit or from
point to point in a scatter plot, use = and \ to choose
the scatter plot or fit you wish to trace. For each active
analysis (S1–S5), the tracing order is the scatter plot first
and the fit second. So if both S1 and S2 are active, the
tracer is by default on the S1 scatter plot when you press
P . Press \ to trace the S1 fit. At this point, press =
to return to the S1 scatter plot or \ again to trace the S2
scatter plot. Press \ a third time to trace the S2 fit. If you
Statistics 2Var app
233
press \ a fourth time, you will return to the S1 scatter
plot. If you are confused as to what you are tracing, just
tap
to see the definition of the object (scatter plot
or fit) currently being traced.
Plot view: menu items
The menu items in Plot view are:
Button
Purpose
Displays the Zoom menu.
Turns trace mode on or off.
Shows or hides a curve that best fits
the data points according to the
selected regression model.
Enables you to specify a value on the
regression line to jump to (or a data
point to jump to if your cursor is on a
data point rather than on the
regression line). You might need to
line or the data points.
Shows or hides the menu buttons.
Plot setup
As with all the apps that provide a plotting feature, he Plot
Setup view—SP (Setup)—enables you to set the
range and appearance of Plot view. The common settings
available are discussed in “Common operations in Plot
Setup view” on page 96. The Plot Setup view in the
Statistics 2Var app has two additional settings:
Plotting mark
Page 1 of the Plot Setup view has fields namedS1MARK
through S5MARK. These fields enable you to specify one
of five symbols to use to represent the data points in each
data set. This will help you distinguish data sets in Plot
view if you have chosen to plot more than one.
Connect
Page 2 of the Plot Setup view has a Connect field. If you
choose this option, straight lines join the data points in Plot
view.
234
Statistics 2Var app
Predicting values
PredXis a function that predicts a value for Xgiven a
value for Y. Likewise, PredYis a function that predicts a
value for Ygiven a value for X. In both cases, the
prediction is based on the equation that best fits the data
according to the specified fit type.
You can predict values in the Plot view of the Statistics
2Var app and also in Home view.
In Plot view
1. In the Plot view, tap
to display the regression
curve for the data set (if it is not already displayed).
2. Make sure the trace cursor is on the regression curve.
(Press = or \ if it is not.)
3. Press > or <. The cursor moves along the
regression curve and the corresponding Xand Y
values are displayed across the bottom of the screen.
(If these values are not visible, tap
.)
You can force the cursor to a specific Xvalue by tapping
, entering the value and tapping
. The cursor
jumps to the specified point on the curve.
In Home
view
If the Statistics 2Var app is the active app, you can also
predict Xand Yvalues in the Home view.
•
•
Enter PredX(Y)
specified Yvalue.
to predict the Xvalue for the
E
Enter PredY(X)
to predict the Yvalue for the
E
specified Xvalue.
You can type PredXand
PredYdirectly on the
entry line, or select them
from the App functions
menu (under the
Statistics 2Var
category). The App
functions menu is one of
the Toolbox menus (D).
Statistics 2Var app
235
H I N T
In cases where more than one fit curve is displayed, the
PredXand PredYfunctions use the first active fit defined
in Symbolic view.
Troubleshooting a plot
If you have problems plotting, check the following:
•
•
•
The fit (that is, regression model) that you intended to
select is the one selected.
Only those data sets you want to analyze or plot are
selected in Symbolic view.
The plotting range is suitable. Try pressing
and
V
selecting Autoscale, or adjust the plotting
parameters in Plot Setup view.
•
Ensure that both paired columns contain data, and
are of the same length.
236
Statistics 2Var app
12
Inference app
The Inference app enables you to calculate confidence
intervals and undertake hypothesis tests based on the
Normal Z-distribution or Student’s t-distribution. In
addition to the Inference app, the Math menu has a full set
of probability functions based on various distributions
(Chi-Square, F, Binomial, Poisson, etc.).
Based on statistics from one or two samples, you can test
hypotheses and find confidence intervals for the following
quantities:
•
•
•
•
mean
proportion
difference between two means
difference between two proportions
Sample data
The Inference app comes with sample data (which you
can always restore by resetting the app). This sample data
is useful in helping you gain an understanding of the app.
Getting started with the Inference app
Let’s conduct a Z-Test on one mean using the sample data.
Open the
Inference
app
1. Open the Inference app:
Select
I
Inference
The Inference app
opens in Symbolic
view.
Inference app
237
Symbolic view options
The table below summarizes the options available in
Symbolic view for the two inference methods: hypothesis
test and confidence interval.
Hypothesis Test Confidence Interval
Z-Test: 1 , the Z-
Test on one mean
Z-Int: 1 , the confidence
interval for one mean, based
on the Normal distribution
Z-Test: – , the
Z-Int: – , the confidence
1
2
1
2
Z-Test on the
interval for the difference
differencebetween between two means, based on
two means
the Normal distribution
Z-Test: 1 , the Z-
Test on one
proportion
Z-Int: 1 , the confidence
interval for one proportion,
based on the Normal
distribution
Z-Test: – , the
Z-Int: – , the confidence
1
2
1
2
Z-Test on the
interval for the difference
differencebetween between two proportions,
two proportions
based on the Normal
distribution
T-Test: 1 , the T-
T-Int: 1 , the confidence
Test on one mean
interval for one mean, based
on the Student’s t-distribution
T-Test: – , the
T-Int: – , the confidence
1
2
1
2
T-Test on the
interval for the difference
differencebetween between two means, based on
two means the Student’s t-distribution
If you choose one of the hypothesis tests, you can choose
an alternative hypothesis to test against the null
hypothesis. For each test, there are three possible choices
for an alternative hypothesis based on a quantitative
comparison of two quantities. The null hypothesis is
always that the two quantities are equal. Thus, the
alternative hypotheses cover the various cases for the two
quantities being unequal: <, >, and .
In this section, we will conduct a Z-Test on one mean on
the example data to illustrate how the app works.
238
Inference app
Select the
inference
method
2. Hypothesis Test
is the default inference
method. If it is not
selected, tap on the
Method field and
select it.
3. Choose the type of
test. In this case, select
Z–Test:1 from the
Type menu.
4. Select an alternative
hypothesis. In this
case, select 0
from the Alt Hypoth
menu.
Enter data
5. Go to Numeric view to
see the sample data.
M
The table below describes the fields in this view for
the sample data.
Field name
Definition
x
n
Sample mean
Sample size
0
Assumed population mean
Population standard deviation
Alpha level for the test
Inference app
239
The Numeric view is where you enter the sample statistics
and population parameters for the situation you are
examining. The sample data supplied here belong to the
case in which a student has generated 50 pseudo-random
numbers on his graphing calculator. If the algorithm is
working properly, the mean would be near 0.5 and the
population standard deviation is known to be
approximately 0.2887. The student is concerned that the
sample mean (0.461368) seems a bit low and it testing
the less than alternative hypothesis against the null
hypothesis.
Display the
test results
6. Display the test
results:
The test distribution
value and its
associated
probability are
displayed, along with the critical value(s) of the test
and the associated critical value(s) of the statistic. In
this case, the test indicates that one should not reject
the null hypothesis.
Tap
to return to Numeric view.
Plot the test
results
7. Display a graphical
view of the test
results:
P
The graph of the
distribution is
displayed, with the
test Z-value marked. The corresponding X-value is also
shown.
Tap
to see the critical Z-value. With the alpha
level showing, you can press \ or = to decrease or
increase the -level.
240
Inference app
Importing statistics
The Inference app can calculate confidence intervals and
test hypotheses based on data in the Statistics 1Var and
Statistics 2Var apps. The following example illustrates the
process.
A series of six experiments gives the following values as
the boiling point of a liquid:
82.5, 83.1, 82.6, 83.7, 82.4, and 83.0
Based on this sample, we want to estimate the true boiling
point at the 90% confidence level.
Open the
Statistics
1Var app
1. Open the Statistics
1Var app:
Select
I
Statistics 1Var
Clear
unwanted
data
2. If there is unwanted data in the app, clear it:
SJ All columns
Enter data
3. In column D1, enter
the boiling points
found during the
experiments.
82.5
83.1
82.6
83.7
82.4
E
E
E
E
E
83
E
Inference app
241
Calculate
statistics
4. Calculate statistics:
The statistics
calculated will now
be imported into the
Inference app.
5. Tap
to close
the statistics window.
Open the
Inference
app
6. Open the Inference
app and clear the
current settings.
Select
I
Inference
SJ
Select
7. Tap on the Method
field and select
Confidence
inference
method and
type
Interval.
8. Tap on Type and
select T-Int:1
Import the
data
9. Open Numeric view:
M
10.Specify the data you want to import:
Tap
.
242
Inference app
11. From the App field
select the statistics app
that has the data you
want to import.
12. In the Column field
specify the column in
that app where the
data is stored. (D1 is
the default.)
13. Tap
.
14. Specify a 90%
confidence interval in
the C field.
Display
15. Display the confidence
interval in Numeric
view:
results
numerically
16. Return to Numeric
view:
Display
17. Display the confidence
interval in Plot view.
results
P
graphically
The 90% confidence
interval is [82.48…,
83.28…].
Hypothesis tests
You use hypothesis tests to test the validity of hypotheses
about the statistical parameters of one or two populations.
The tests are based on statistics of samples of the
populations.
Inference app
243
The HP Prime hypothesis tests use the Normal Z-
distribution or the Student’s t-distribution to calculate
probabilities. If you wish to use other distributions, please
use the Home view and the distributions found within the
Probability category of the Math menu.
One-Sample Z-Test
Menu name
Z-Test: 1
On the basis of statistics from a single sample, this test
measures the strength of the evidence for a selected
hypothesis against the null hypothesis. The null hypothesis
is that the population mean equals a specified value,
.
You select one of the following alternative hypotheses
against which to test the null hypothesis:
H : <
0
0
H : >
0
0
H : ≠
0
0
Inputs
The inputs are:
Field name
Definition
x
n
Sample mean
Sample size
Hypothetical population mean
Population standard deviation
Significance level
0
244
Inference app
Results
The results are:
Result
Test Z
Description
Z-test statistic
Test x
Value of x associated with the
test Z-value
P
Probability associated with the
Z-Test statistic
Critical Z
Boundary value(s) of Z
associated with the level that
you supplied
Critical x
Boundary value(s) of x required
by the value that you supplied
Two-Sample Z-Test
Menu name
Z-Test: –
2
1
On the basis of two samples, each from a separate
population, this test measures the strength of the evidence
for a selected hypothesis against the null hypothesis. The
null hypothesis is that the means of the two populations
are equal, : = .
0
1
2
You select one of the following alternative hypotheses to
test against the null hypothesis:
H : <
0
1
2
H : >
0
1
2
H : ≠
0
1
2
Inputs
The inputs are:
Field name
Definition
x1
x2
Sample 1 mean
Sample 2 mean
n
Sample 1 size
1
n
Sample 2 size
2
Population 1 standard deviation
Population 2 standard deviation
Significance level
1
2
Inference app
245
Results
The results are:
Result
Test Z
Description
Z-Test statistic
Test x
Difference in the means associ-
ated with the test Z-value
P
Probability associated with the
Z-Test statistic
Critical Z
Critical x
Boundary value(s) of Z associated
with the level that you supplied
Difference in the means associ-
ated with the level you supplied
One-Proportion Z-Test
Menu name
Z-Test:
On the basis of statistics from a single sample, this test
measures the strength of the evidence for a selected
hypothesis against the null hypothesis. The null hypothesis
is that the proportion of successes is an assumed value,
:= .
0
0
You select one of the following alternative hypotheses
against which to test the null hypothesis:
H : <
0
0
H : >
0
0
H : ≠
0
0
Inputs
The inputs are:
Field name
Definition
x
Number of successes in the sample
Sample size
n
Population proportion of successes
Significance level
0
246
Inference app
Results
The results are:
Result
Description
Test Z
Z-Test statistic
ˆ
p
Test
P
Proportion of successes in the sample
Probability associated with the Z-Test
statistic
Critical Z
Boundary value(s) of Z associated
with the level that you supplied
ˆ
p
Critical
Proportion of successes associated
with the level you supplied
Two-Proportion Z-Test
Menu name
Z-Test: –
2
1
On the basis of statistics from two samples, each from a
different population, this test measures the strength of the
evidence for a selected hypothesis against the null
hypothesis. The null hypothesis is that the proportions of
successes in the two populations are equal, : = .
0
1
2
You select one of the following alternative hypotheses
against which to test the null hypothesis:
H : <
0
1
2
H : >
0
1
2
H : ≠
0
1
2
Inputs
The inputs are:
Field name
Definition
x
Sample 1 success count
Sample 2 success count
Sample 1 size
1
x
2
n
1
n
Sample 2 size
2
Significance level
Inference app
247
Results
The results are:
Result
Description
Test Z
Z-Test statistic
ˆ
p
Test
Difference between the
proportions of successes in the
two samples that is associated
with the test Z-value
P
Probability associated with the
Z-Test statistic
Critical Z
Boundary value(s) of Z
associated with the level that
you supplied
ˆ
p
Critical
Difference in the proportion of
successes in the two samples
associated with the level you
supplied
One-Sample T-Test
Menu name
T-Test: 1
This test is used when the population standard deviation is
not known. On the basis of statistics from a single sample,
this test measures the strength of the evidence for a
selected hypothesis against the null hypothesis. The null
hypothesis is that the sample mean has some assumed
value, .
0
You select one of the following alternative hypotheses
against which to test the null hypothesis:
H : <
0
0
H : >
0
0
H : ≠
0
0
248
Inference app
Inputs
The inputs are:
Field name
Definition
x
s
n
Sample mean
Sample standard deviation
Sample size
Hypotheticalpopulation mean
Significance level
0
Results
The results are:
Result
Test T
Description
T-Test statistic
Test x
Value of x associated with the
test t-value
P
Probability associated with the
T-Test statistic
DF
Degrees of freedom
Critical T
Boundary value(s) of T
associated with the level that
you supplied
Critical x
Boundary value(s) of x required
by the value that you supplied
Two-Sample T-Test
Menu name
T-Test: –
2
1
This test is used when the population standard deviation is
not known. On the basis of statistics from two samples,
each sample from a different population, this test
measures the strength of the evidence for a selected
hypothesis against the null hypothesis. The null hypothesis
is that the two populations means are equal, : = .
0
You select one of the following alternative hypotheses
against which to test the null hypothesis:
H : <
0
1
2
H : >
0
1
2
H : ≠
0
1
2
Inference app
249
Inputs
The inputs are:
Field
name
Definition
x1
x2
Sample 1 mean
Sample 2 mean
s
Sample 1 standard deviation
Sample 2 standard deviation
Sample 1 size
1
s
2
n
1
n
Sample 2 size
2
Significance level
Pooled
Check this option to pool samples
based on their standard deviations
Results
The results are:
Result
Test T
Description
T-Test statistic
Test x
Difference in the means associated
with the test t-value
P
Probability associated with the T-Test
statistic
DF
Degrees of freedom
Critical T
Boundary values of T associated with
the level that you supplied
Critical
x
Difference in the means associated
with the level you supplied
250
Inference app
Confidence intervals
The confidence interval calculations that the HP Prime can
perform are based on the Normal Z-distribution or
Student’s t-distribution.
One-Sample Z-Interval
Menu name
Z-Int:
This option uses the Normal Z-distribution to calculate a
confidence interval for , the true mean of a population,
when the true population standard deviation, , is known.
Inputs
The inputs are:
Field
Definition
name
x
n
C
Sample mean
Sample size
Population standard deviation
Confidence level
Results
The results are:
Result
C
Description
Confidence level
Critical values for Z
Lower bound for
Upper bound for
Critical Z
Lower
Upper
Two-Sample Z-Interval
Menu name
Z-Int: –
2
1
This option uses the Normal Z-distribution to calculate a
confidence interval for the difference between the means
of two populations, – , when the population standard
deviations, and , are known.
1
2
Inference app
251
Inputs
The inputs are:
Field
Definition
name
x1
x2
Sample 1 mean
Sample 2 mean
n
Sample 1 size
1
n
Sample 2 size
2
Population 1 standard deviation
Population 2 standard deviation
Confidence level
1
2
C
Results
The results are:
Result
C
Description
Confidence level
Critical values for Z
Lower bound for
Upper bound for
Critical Z
Lower
Upper
One-Proportion Z-Interval
Menu name
Z-Int: 1
This option uses the Normal Z-distribution to calculate a
confidence interval for the proportion of successes in a
population for the case in which a sample of size n has a
number of successes x.
Inputs
The inputs are:
Field
Definition
name
x
n
C
Sample success count
Sample size
Confidence level
252
Inference app
Results
The results are:
Result
C
Description
Confidence level
Critical values for Z
Lower bound for
Upper bound for
Critical Z
Lower
Upper
Two-Proportion Z-Interval
Menu name
Z-Int: –
2
1
This option uses the Normal Z-distribution to calculate a
confidence interval for the difference between the
proportions of successes in two populations.
Inputs
The inputs are:
Field
Definition
name
x1
x2
Sample 1 success count
Sample 2 success count
Sample 1 size
n
1
n
Sample 2 size
2
C
Confidence level
Results
The results are:
Result
C
Description
Confidence level
Critical values for Z
Lower bound for
Upper bound for
Critical Z
Lower
Upper
Inference app
253
One-Sample T-Interval
Menu name
T-Int: 1
This option uses the Student’s t-distribution to calculate a
confidence interval for , the true mean of a population,
for the case in which the true population standard
deviation, , is unknown.
Inputs
The inputs are:
Field
Definition
name
x
s
n
C
Sample mean
Sample standard deviation
Sample size
Confidence level
Results
The results are:
Result
C
Description
Confidence level
Degrees of freedom
Critical values for T
Lower bound for
Upper bound for
DF
Critical T
Lower
Upper
Two-Sample T-Interval
Menu name
T-Int: –
2
1
This option uses the Student’s t-distribution to calculate a
confidence interval for the difference between the means
of two populations, – , when the population
1
2
standard deviations, and , are unknown.
1
2
254
Inference app
Inputs
The inputs are:
Result
x1
Definition
Sample 1 mean
x2
Sample 2 mean
s
Sample 1 standard deviation
Sample 2 standard deviation
Sample 1 size
1
s
2
n
1
n
Sample 2 size
2
C
Confidence level
Pooled
Whether or not to pool the samples
based on their standard deviations
Results
The results are:
Result
C
Description
Confidence level
DF
Degrees of freedom
Critical values for T
Lower bound for
Upper bound for
Critical T
Lower
Upper
Inference app
255
256
Inference app
13
Solve app
The Solve app enables you to define up to ten equations or
expressions each with as many variables as you like. You can
solve a single equation or expression for one of its variables,
based on a seed value. You can also solve a system of equations
(linear or non-linear), again using seed values.
Note the differences between an equation and an expression:
•
An equation contains an equals sign. Its solution is a value
for the unknown variable that makes both sides of the
equation have the same value.
•
An expression does not contain an equals sign. Its solution is
a root, a value for the unknown variable that makes the
expression have a value of zero.
For brevity, the term equation in this chapter will cover both
equations and expressions.
Solve works only with real numbers.
The Solve app uses the customary app views: Symbolic, Plot and
Numeric described in chapter 5, though the Numeric view is
significantly different from the other apps as it is dedicated to
numerical solving rather than to displaying a table of values.
For a description of the menu buttons common to the other apps
that are also available in this app, see:
•
•
“Symbolic view: Summary of menu buttons” on page 86
“Plot view: Summary of menu buttons” on page 96
Solve app
257
One equation
Suppose you want to find the acceleration needed to increase the
speed of a car from 16.67 m/s (60 kph) to 27.78 m/s (100 kph)
over a distance of 100 m.
The equation to solve is:
V2 = U2 +2AD.
where V = final speed, U = initial speed, A = acceleration
needed, and D = distance.
Open the
Solve app
1. Open the Solve app.
Select Solve
I
The Solve app starts in
Symbolic view, where you
specify the equation to
solve.
N O T E
In addition to the built-in variables, you can use one or more
variables you created yourself (either in Home view or in the
CAS). For example, if you’ve created a variable called ME, you
could include it in an equation such as this: Y2 = G2 + ME.
Functions defined in other apps can also be referenced in the
Solve app. For example, if you have defined F1(X) to be X2 +10
in the Function app, you can enter F1(X)=50in the Solve app
to solve the equation X2 + 10 = 50.
Clear the
app and
define the
equation
2. If you have no need for any equations or expressions already
defined, press SJ (Clear). Tap
to confirm your
intention to clear the app.
3. Define the equation.
V
U
A jS.A
2
A
D
j+ A A
E
258
Solve app
Enter known
variables
4. Display the Numeric view.
M
Here you specify the values
of the known variables,
highlight the variable that
you want to solve for, and
tap
.
5. Enter the values for the
known variables.
2 7
7 8
1 6
6 7 1 0 0
E\
.
E
.
E
N O T E
Some variables may already have values against them when you
display the Numeric view. This occurs if the variables have been
assigned values elsewhere. For example, in Home view you
might have assigned 10 to variable U: 10
U. Then when
you open the Numeric view to solve an equation with U as a
variable, 10 will be the default value for U. This also occurs if a
variable has been given a value in some previous calculation (in
an app or program).
To reset all pre-populated variables to zero, press SJ.
Solve the
unknown
variable
6. Solve for the unknown variable (A).
Move the cursor to the A
field and tap
.
Therefore, the acceleration
needed to increase the
speed of a car from 16.67
m/s (60 kph) to 27.78 m/s
(100 kph) over a distance of
2
100 m is approximately 2.4692 m/s .
The equation is linear with respect to the variable A. Hence
we can conclude that there are no further solutions for A. We
can also see this if we plot the equation.
Solve app
259
Plot the
equation
The Plot view shows one graph for each side of the solved
equation. You can choose any of the variables to be the
independent variable by selecting it in Numeric view. So in
this example make sure that A is highlighted.
The current equation is V2 = U2 +2AD. The plot view will plot
two equations, one for each side of the equation. One of
these is Y = V2, with V = 27.78, making Y = 771.7284. This
graph will be a horizontal line. The other graph will be Y =
U2 +2AD with U =16.67and D =100, making, Y = 200A +
277.8889. This graph is also a line. The desired solution is
the value of A where these two lines intersect.
7. Plot the equation for variable A.
V
Select Auto Scale.
Select Both sides of En
(where nis the number of
the selected equation)
8. By default, the tracer is
active. Using the cursor
keys, move the trace cursor
along either graph until it
nears the intersection.Note
that the value of Adisplayed
near the bottom left corner
of the screen closely
matches the value of A you calculated above.
The Plot view provides a convenient way to find an
approximation to a solution when you suspect that there are
a number of solutions. Move the trace cursor close to the
solution (that is, the intersection) of interest to you and then
open Numeric view. The solution given in Numeric view will
be will be for the solution nearest the trace cursor.
260
Solve app
N O T E
By dragging a finger horizontally or vertically across the screen,
you can quickly see parts of the plot that are initially outside the
x and y ranges you set.
Several equations
You can define up to ten equations and expressions in Symbolic
view and select those you want to solve together as a system. For
example, suppose you want to solve the system of equations
consisting of:
•
•
X2 + Y2 = 16 and
X – Y = –1
Open the
Solve app
1. Open the Solve app.
Select Solve
I
2. If you have no need for any equations or expressions already
defined, press SJ (Clear). Tap
to confirm your
intention to clear the app.
Define the
equations
3. Define the equations.
X
Y
A j+A j
16
S. E
X
Y
A wA S.
1
Q E
Make sure that both
equations are selected, as
we are looking for values of X and Y that satisfy both
equations.
Enter a seed
value
4. Display Numeric view.
M
Unlike the example above,
in this example we have no
values for any variable. You
can either enter a seed
value for one of the
Solve app
261
variables, or let the calculator provide a solution. (Typically a
seed value is a value that directs the calculator to provide, if
possible, a solution that is closest to it rather than some other
value.) In this example, let’s look for a solution in the vicinity
of X = 2.
5. Enter the seed value in the X field:
2
The calculator will provide one solution (if there is one) and
you will not be alerted if there are multiple solutions. Vary the
seed values to find other potential solutions.
6. Select the variables you want solutions for. In this example
we want to find values for both X and Y, so make sure that
both variables are selected.
Note too that if you have more than two variables, you can
enter seed values for more than one of them.
Solve the
unknown
variables
7. Tap
to find a solution
near X = 2 that satisfies
each selected equation.
Solutions, if found, are
displayed beside each
selected variable.
Limitations
You cannot plot equations if more than one is selected in
Symbolic view.
The HP Prime will not alert you to the existence of multiple
solutions. If you suspect that another solution exists close to a
particular value, repeat the exercise using that value as a seed.
(In the example just discussed, you will find another solution if you
enter –4 as the seed value for X.)
In some situations, the Solve app will use a random number seed
in its search for a solution. This means that it is not always
predictable which seed will lead to which solution when there are
multiple solutions.
262
Solve app
Solution information
When you are solving a single equation, the
appears on the menu after you tap . Tapping
displays a message giving you some information about the
solutions found (if any). Tap to clear the message.
button
Message
Meaning
Zero
The Solve app found a point where both
sides of the equation were equal, or where
the expression was zero (a root), within the
calculator's 12-digit accuracy.
Sign
Reversal
Solve found two points where the two sides
of the equation have opposite signs, but it
cannot find a point in between where the
value is zero. Similarly, for an expression,
where the value of the expression has
different signs but is not precisely zero.
Either the two values are neighbors (they
differ by one in the twelfth digit) or the
equation is not real-valued between the two
points. Solve returns the point where the
value or difference is closer to zero. If the
equation or expression is continuously real,
this point is Solve’s best approximation of
an actual solution.
Extremum
Solve found a point where the value of the
expression approximates a local minimum
(for positive values) or maximum (for
negative values). This point may or may not
be a solution.
Or:
Solve stopped searching at
9.99999999999E499, the largest number
the calculator can represent.
Note that the Extremummessage indicates
that it is highly likely that there is no
solution. Use Numeric view to verify this
(and note that any values shown are
suspect).
Solve app
263
Message
Meaning (Continued)
Cannotfind
solution
No values satisfy the selected equation or
expression.
Bad
Guess(es)
The initial guess lies outside the domain of
the equation. Therefore, the solution was
not a real number or it caused an error.
Constant?
The value of the equation is the same at
every point sampled.
264
Solve app
14
Linear Solver app
The Linear Solver app enables you to solve a set of linear
equations. The set can contain two or three linear
equations.
In a two-equation set, each equation must be in the form
ax + by = k . In a three-equation set, each equation must
be in the form ax + by + cz = k .
You provide values for a, b, and k (and c in three-equation
sets) for each equation, and the app will attempt to solve
for x and y (and z in three-equation sets).
The HP Prime will alert you if no solution can be found, or
if there is an infinite number of solutions.
Getting started with the Linear Solver app
The following example defines the following set of
equations and then solves for the unknown variables:
6x + 9y + 6z = 5
7x + 10y + 8z = 10
6x + 4y = 6
Open the Linear
Solver app
1. Open the Linear
Solver app.
I Select
Linear
Solver
The app opens in
Numeric view.
Linear Solver app
265
N o t e
If the last time you used the Linear Solver app you solved
for two equations, the two-equation input form is
displayed. To solve a three-equation set, tap
the input form displays three equations.
; now
Defineandsolve
the equations
2. You define the equations you want to solve by
entering the coefficients of each variable in each
equation and the constant term. Notice that the cursor
is positioned immediately to the left of x in the first
equation, ready for you to insert the coefficient of x
(6). Enter the coefficient and either tap
or
press E.
3. The cursor moves to the next coefficient. Enter that co-
efficient and either tap or press E.
Continue doing likewise until you have defined all the
equations.
Once you have
entered enough
values for the
solver to be able
to generate
solutions, those
solutions appear
near the bottom
of the display. In
this example, the solver was able to find solutions for
x, y, and z as soon as the first coefficient of the last
equation was entered.
As you enter
each of the
remaining known
values, the
solution changes.
The graphic at
the right shows
the final solution
once all the
coefficients and constants had been entered.
266
Linear Solver app
Solve a two-by-
two system
If the three-equation
input form is
displayed and you
want to solve a two-
equation set, tap
.
N o t e
You can enter any expression that resolves to a numerical
result, including variables. Just enter the name of a
variable. For more information on assigning values to
variables, see “Storing a value in a variable” on
page 42.
Menu items
The menu items are:
•
: moves the cursor to the entry line where you
can add or change a value. You can also highlight a
field, enter a value, and press E. The cursor
automatically moves to the next field, where you can
enter the next value and press E.
•
•
: displays the page for solving a system of 2
linear equations in 2 variables; changes to
when active
: displays the page for solving a system of 3
linear equations in 3 variables; changes to
when active.
Linear Solver app
267
268
Linear Solver app
15
Parametric app
The Parametric app enables you to explore parametric
equations. These are equations in which both x and y are
y = gt .
Symbolic, Plot and Numeric described in chapter 5.
For a description of the menu buttons available in this
app, see:
•
•
•
“Symbolic view: Summary of menu buttons” on
page 86
“Plot view: Summary of menu buttons” on page 96,
and
“Numeric view: Summary of menu buttons” on
page 104
Throughout this chapter, we will explore the parametric
equations x(T) = 8sin(T) and y(T) = 8cos(T). These
equations produce a circle.
Open the
Parametric
app
1. Open the
Parametric app.
Select
I
Parametric
The Parametric
app starts in
Symbolic view.
This is the defining
view. It is where you symbolically define (that is,
specify) the parametric expressions you want to
explore.
Parametric app
269
The graphical and numerical data you see in Plot
view and Numeric view are derived from the
symbolic functions defined here.
Define the
functions
There are 20 fields for defining functions. These are
labelled X1(T)through X9(T)and X0(T), and Y1(T)
through Y9(T)and Y0(T). Each X function is paired
with a Y function.
2. Highlight which pair of functions you want to use,
either by tapping on, or scrolling to, one of the pair. If
you are entering a new function, just start typing. If
you are editing an existing function, tap
and
make your changes. When you have finished
defining or changing the function, press E.
3. Define the two expressions.
8
ed?
E
8
fd?
E
Notice how the
key enters
d
whatever variable
is relevant to the
current app. In the Function app,
enters an X. In
d
the Parametric app it enters a T. In the Polar app,
discussed in chapter16, it enters .
4. Decide if you want to:
–
give one or more function a custom color when it
is plotted
–
–
evaluate a dependent function
deselect a definition that you don’t want to
explore
–
incorporate variables, math commands and CAS
commands in a definition.
For the sake of simplicity we can ignore these
operations in this example. However, they can be
useful and are described in detail in “Common
operations in Symbolic view” on page 81.
270
Parametric app
Set the angle
measure
Set the angle measure to degrees:
5. Y (Settings)
S
6. Tap the Angle
Measure field
and select
Degrees.
You could also
have set the angle
measure on the
Home Settings screen. However, Home settings
are system-wide. By setting the angle measure in an
app rather than Home view, you are limiting the
setting just to that app.
Set up the
plot
7. Open the Plot Setup view:
P (Setup)
S
8. Set up the plot by
specifying
appropriate
graphing options.
In this example, set
the T Rng and T
Step fields so that
T steps from 0to
360 in 5 steps:
Select the 2nd T Rng field
and enter:
360
5
Plot the
functions
9. Plot the functions:
P
Parametric app
271
Explore the
graph
The menu button gives you access to common tools for
exploring plots:
: displays a range of zoom options. (The +
and w keys can also be used to zoom in and out.)
: when active, enables a tracing cursor to be
moved along the contour of the plot (with the
coordinates of the cursor displayed at the bottom of
the screen).
: specify a Tvalue and the cursor moves to the
corresponding x and y coordinates.
: display the functions responsible for the plot.
Detailed information about these tools is provided in
“Common operations in Plot view” on page 88.
Typically you would modify a plot by changing its
definition in Symbolic view. However, you can modify
some plots by changing the Plot Setup parameters. For
example, you can plot a triangle instead of a circle simply
by changing two plot setup parameters. The definitions in
Symbolic view remain unchanged. Here is how it is done:
10. Press
P (Setup).
S
11. Change T Step to 120.
12. Tap
.
13. From the Method menu, select Fixed-Step
Segments.
14. Press
.
P
A triangle is
displayed instead
of a circle. This is
because the new
value of T Step
makes the points
being plotted 120
apart instead of the
nearly continuous 5. And by selecting Fixed-Step
Segments the points 120° apart are connected with
line segments.
272
Parametric app
Display the
numeric view
15. Display the
Numeric view:
M
16. With the cursor in
the Tcolumn, type
a new value and
tap
The
.
table scrolls to the
value you entered.
You can also zoom in or out on the independent variable
(thereby decreasing or increasing the increment between
consecutive values). This and other options are explained
in “Common operations in Numeric view” on page 100.
You can see the Plot and Numeric views side by side. See
“Combining Plot and Numeric Views” on page 106.
Parametric app
273
274
Parametric app
16
Polar app
Polar equations are equations in which r—the distance a
point is from the origin: (0,0)—is defined in terms of , the
angle a segment from the point to the origin makes with
the polar axis. Such equations take the form r = f .
Getting started with the Polar app
The Polar app uses the six standard app views described
in chapter 5, “An introduction to HP apps”, beginning on
page 69. That chapter also describes the menu buttons
used in the Polar app.
Throughout this chapter, we will explore the expression
5cos(/2)cos()2.
Open the
Polar app
1. Open the Polar
app:
Select Polar
I
The app opens in
Symbolic view.
Define the
function
There are 10 fields for defining polar functions. These are
labelled R1()through R9()and R0().
2. Highlight the field you want to use, either by tapping
on it or scrolling to it. If you are entering a new
function, just start typing. If you are editing an
existing function, tap
and make your changes.
When you have finished defining or changing the
function, press E.
Polar app
275
3. Define the expression 5cos(/2)cos()2.
5
Szf
2>>
dn
fd
E
>
j
Notice how the
key enters
d
whatever variable
variable is .
4. If you wish, choose a color for the plot other than its
default. You do this by selecting the colored square to
the left of the function set, tapping
, and
selecting a color from the color-picker.
For more information about adding definitions, modifying
definitions, and evaluating dependent definitions in
Symbolic view, see “Common operations in Symbolic
view” on page 81.
Set angle
measure
Set the angle measure to radians:
5.
Y (Settings)
S
6. Tap the Angle
Measure field and
select Radians.
For more information on
the Symbolic Setup view,
see “Common
operations in Symbolic
Setup view” on page 87.
Set up the
plot
7. Open the Plot Setup view:
P (Setup)
S
276
Polar app
8. Set up the plot by
specifying
appropriate
graphing options. In
this example, set the
upper limit of the
range of the
independent
variable to 4:
Select the 2nd Rng field and enter 4
(
Sz
There are numerous ways of configuring the
appearance of Plot view. For more information, see
“Common operations in Plot Setup view” on
page 96.
Plot the
expression
9. Plot the expression:
P
Explore the
graph
10.Display the Plot view menu.
A number of
options appear to
help you can
explore the graph,
such as zoom and
trace options. using
the trace and zoom
options. You can also jump directly to a particular
value by entering that value. The Go To screen
appears with the number you typed on the entry line.
Just tap
to accept it. (You could also tap the
button and spwecify the target value.)
Polar app
277
If only one polar equation is plotted, you can see the
equation that generated the plot by tapping
If there are several equations plotted, move the
tracing cursor to the plot you are interested—by
.
pressing = or \—and then tap
.
For more information on exploring plots in Plot view,
see “Common operations in Plot view” on page 88.
Display the
Numeric
view
11. O p e n th e N u m e r i c
view:
M
The Numeric view
displays a table of
values for and
R1. If you had
specified, and
selected, more than one polar function in Symbolic
view, a column of evaluations would appear for each
12. With the cursor in the column, type a new value
and tap
entered.
The table scrolls to the value you
.
You can also zoom in or out on the independent variable
(thereby decreasing or increasing the increment between
consecutive values). This and other options are explained
in “Common operations in Numeric view” on page 100.
You can see the Plot and Numeric views side by side. See
“Combining Plot and Numeric Views” on page 106.
278
Polar app
17
Sequence app
The Sequence app provides you with various ways to
explore sequences.
You can define a sequence named, for example, U1:
•
•
•
•
•
in terms of n
in terms of U1(n–1)
in terms of U1(n–2)
in terms of another sequence, for example, U2(n) or
in any combination of the above.
You can define a sequence by specifying just the first term
and the rule for generating all subsequent terms. However,
you will have to enter the second term if the HP Prime is
unable to calculate it automatically. Typically if the nth
term in the sequence depends on n –2, then you must
enter the second term.
The app enables you to create two types of graphs:
•
•
a Stairsteps graph, which plots points of the form (n,
Un)
a Cobweb graph, which plots points of the form
(Un–1, Un).
Getting started with the Sequence app
The following example explores the well-known Fibonacci
sequence, where each term, from the third term on, is the
sum of the preceding two terms. In this example, we
specify three sequence fields: the first term, the second
term and a rule for generating all subsequent terms.
Sequence app
279
Open the
Sequence app
1. Open the Sequence
app:
Select
I
Sequence
The app opens in
Symbolic view.
Define the
expression
2. Define the Fibonacci sequence:
U1 = 1 , U2 = 1 , Un = Un – 1 + Un – 2 for n 2 .
In the U1(1) field, specify the first term of the
sequence:
1E
In the U1(2) field, specify the second term of the
sequence:
1E
In the U1(N) field,
specify the formula
for finding the nth
term of the sequence
from the previous
two terms (using the
buttons at the bottom
of the screen to help
with some entries):
E
+
3. Optionally choose a color for your graph (see
“Choose a color for plots” on page 85).
Set up the plot
4. Open the Plot Setup view:
P (Setup)
S
5. Reset all settings to their default values:
SJ (Clear)
280
Sequence app
6. Select Stairstep
from the Seq Plot
menu.
7. Set the X Rng
maximum, and the
Y Rng maximum, to
8 (as shown at the
right).
Plot the
sequence
8. Plot the Fibonacci
sequence:
P
9. Return to Plot Setup
view (
P) and
S
select Cobweb, from
the Seq Plot menu.
10.Plot the sequence:
P
Explore the
graph
The
button gives you access to common plot-
exploration tools, such as:
•
•
•
•
: Zoom in or out on the plot
: Trace along a graph
: Go to a specified N value
: Display the sequence definition
These tools are explained in “Common operations in Plot
view” on page 88.
Split screen and autoscaling options are also available by
pressing V.
Sequence app
281
Display
Numeric
view
11. Display Numeric
view:
M
12. With the cursor
anywhere in the N
column, type a new
value and tap
.
The table of values
scrolls to the value
you entered. You can
then see the
corresponding value
in the sequence. The
example at the right
shows that the 25th
value in the Fibonacci sequence is 75,025.
Explore the
table of
values
The Numeric view gives you access to common table-
exploration tools, such as:
•
: Change the increment between consecutive
values
•
•
•
: Change the size of the font
: Display the sequence definition
: Choose the number of sequences to display
These tools are explained in “Common operations in
Numeric view” on page 100.
Split screen and autoscaling options are also available by
pressing V.
282
Sequence app
Set up the
table of
values
The Numeric Setup view
provides options
common to most of the
graphingapps, although
there is no zoom factor
as the domain for the
sequences is the set of
counting numbers. See
“Common operations in Numeric Setup view” on
page 105 for more information.
Another example: Explicitly-defined sequences
In the following example, we define the nth term of a
sequence simply in terms of n itself. In this case, there is
no need to enter either of the first two terms numerically.
Define the
expression
1. Define
U1N =
N
2
--
–
3
Select U1(N)
RQF and
select
2\3
>>k
E
Setup the plot 2. Open the Plot Setup
view:
SP (Setup)
3. Reset all settings to
their default values:
SJ (Clear)
4. Tap Seq Plot and
select Cobweb.
5. Set both X Rng and Y Rng to [–1, 1] as shown
above.
Sequence app
283
18
Finance app
The Finance app enables you to solve time-value-of-money
(TVM) and amortization problems. You can use the app to
do compound interest calculations and to create
amortization tables.
Compound interest is accumulative interest, that is, interest
on interest already earned. The interest earned on a given
principal is added to the principal at specified
compounding periods, and then the combined amount
earns interest at a certain rate. Financial calculations
involving compound interest include savings accounts,
mortgages, pension funds, leases, and annuities.
Getting Started with the Finance app
Suppose you finance the purchase of a car with a 5-year
loan at 5.5% annual interest, compounded monthly. The
purchase price of the car is $19,500, and the down
payment is $3,000. First, what are the required monthly
payments? Second, what is the largest loan you can
afford if your maximum monthly payment is $300?
Assume that the payments start at the end of the first
period.
1. Start the Finance app.
Select Finance
I
The app opens in the Numeric view.
2. In the N field, enter
5s12 and press
.
E
Notice that the result
of the calculation
(60) appears in the
field. This is the
number of months over a five-year period.
Finance app
285
3. In the I%/YRfield, type 5.5—the interest rate—and
press
.
E
4. In PVfield, type 19500w 3000 and press
. This is the present value of the loan, being
E
the purchase price less the deposit.
5. Leave P/YR and
C/YR both at 12
(their default values).
Leave Endas the
payment option. Also,
leave future value, FV,
as 0(as your goal is
to end up with a
future value of the loan of 0).
6. Move the cursor to
the PMTfield and tap
. The PMT
value is calculated as
–315.17. In other
words, your monthly
payment will be
$315.17.
The PMT value is negative to indicate that it is money
owed by you.
Note that the PMT value is greater than 300, that is,
greater than the amount you can afford to pay each
month. So you ned to re-run the calculations, this time
setting the PMT value to –300 and calculating a new
PV value.
7. In the PMTfield, enter Q 300 move the cursor to
the PVfield, and tap
.
286
Finance app
The PV value is
calculated as
15,705.85, this
being the maximum
you can borrow.
Thus, with your
$3,000 deposit, you
can afford a car with
a price tag of up to $18,705.85.
Cash flow diagrams
TVM transactions can be represented in cash flow
diagrams. A cash flow diagram is a time line divided into
equal segments representing the compounding periods.
Arrows represent the cash flows. These could be positive
(upward arrows) or negative (downward arrows),
depending on the point of view of the lender or borrower.
The following cash flow diagram shows a loan from a
borrower’s point of view:
Finance app
287
The following cash flow diagram shows a loan from the
lender's point of view:
Cash flow diagrams
also specify when
payments occur rela-
tive to the compound-
ing periods.The
diagram to the right
shows lease pay-
ments at the begin-
ning of the period.
This diagram shows
deposits (PMT) into an
account at the end of
each period.
Time value of money (TVM)
Time-value-of-money (TVM) calculations make use of the
notion that a dollar today will be worth more than a dollar
sometime in the future. A dollar today can be invested at
a certain interest rate and generate a return that the same
dollar in the future cannot. This TVM principle underlies
the notion of interest rates, compound interest, and rates
of return.
288
Finance app
lThere are seven TVM variables:
Variable
Description
N
The total number of compounding periods
or payments.
I%YR
The nominal annual interest rate (or
investment rate). This rate is divided by the
number of payments per year (P/YR) to
compute the nominal interest rate per
compounding period. This is the interest
rate actually used in TVM calculations.
PV
The present value of the initial cash flow.
To a lender or borrower, PV is the amount
of the loan; to an investor, PV is the initial
investment. PV always occurs at the
beginning of the first period.
P/YR
PMT
The number of payments made in a year.
The periodic payment amount. The
payments are the same amount each
period and the TVM calculation assumes
that no payments are skipped. Payments
can occur at the beginning or the end of
each compounding period—an option
you control by un-checking or checking
the Endoption.
C/YR
FV
The number of compounding periods in a
year.
The future value of the transaction: the
amount of the final cash flow or the
compounded value of the series of
previous cash flows. For a loan, this is the
size of the final balloon payment (beyond
any regular payment due). For an
investment, this is its value at the end of the
investment period.
TVM calculations: Another example
Suppose you have taken out a 30-year, $150,000 house
mortgage at 6.5% annual interest. You expect to sell the
house in 10 years, repaying the loan in a balloon
Finance app
289
payment. Find the size of the balloon payment—that is,
the value of the mortgage after 10 years of payment.
The following cash flow diagram illustrates the case of a
mortgage with balloon payment:
1. Start the Finance app:
Select Finance
I
2. Return all fields to their default values:
SJ
3. Enter the known TVM
variables, as shown
in the figure.
4. Highlight PMTand
tap
. The PMTfield shows –984.10. In other
words, the monthly payments are $948.10.
5. To determine the balloon payment or future value (FV)
for the mortgage after 10 years, enter 120 for N,
highlight FV, and tap
.
The FVfield shows –127,164.19, indicating that the
future value of the loan (that is, how much is still
owing) as $127,164.19.
290
Finance app
Calculating amortizations
Amortization calculations determine the amounts applied
towards the principal and interest in a payment, or series
of payments. They also use TVM variables.
To calculate amortizations:
1. Start the Finance app.
2. Specify the number of payments per year (P/YR).
3. Specify whether payments are made at the beginning
or end of periods.
4. Enter values for I%YR, PV, PMT, and FV.
5. Enter the number of payments per amortization
period in the Group Sizefield. By default, the
group size is 12 to reflect annual amortization.
6. Tap
. The calculator displays an amortization
table. For each amortization period, the table shows
the amounts applied to interest and principal, as well
as the remaining balance of the loan.
Example:
Amortization for a
home mortgage
Using the data from the previous example of a home
mortgage with balloon payment (see page 289),
calculate how much has been applied to the principal,
how much has been paid in interest, and the balance
remaining after the first 10 years (that is, after 12 × 10 =
120 payments).
1. Make your data
match that shown in
the figure to the right.
Finance app
291
2. Tap
.
3. Scroll down the table
to payment group 10.
Note that after 10
years, $22,835.53
has been paid off the
principal and
$90,936.47 paid in
interest, leaving a balloon payment due of
$127,164 . 47.
Amortization graph
Press P to see the
amortization schedule
presented graphically.
The balance owing at the
end of each payment
group is indicated by the
height of a bar. The
amount by which the
principal has been reduced, and interest paid, during a
payment group is shown at the bottom of the bottom of the
screen. The example at the right shows the first payment
group selected. This represents the first group of 12
payments (or the state of the loan at the end of the first
year). By the end of that year, the principal had been
reduced by $1,676.57 and $9,700.63 had been paid in
interest.
Tap > or < to see the amount by which the principal
has been reduced, and interest paid, during other
payment groups.
292
Finance app
19
Triangle Solver app
The Triangle Solver app enables you to calculate the
length of a side of a triangle, or the size of an angle in a
triangle, from information you supply about the other
lengths, angles, or both.
You need to specify at least three of the six possible
values—the lengths of the three sides and the size of the
three angles—before the app can calculate the other
values. Moreover, at least one value you specify must be
a length. For example, you could specify the lengths of
two sides and one of the angles; or you could specify two
angles and one length; or all three lengths. In each case,
the app will calculate the remaining values.
The HP Prime will alert you if no solution can be found, or
if you have provided insufficient data.
If you are determining the lengths and angles of a right-
angled triangle, a simpler input form is available by
tapping
.
Getting started with the Triangle Solver app
The following example calculates the unknown length of
the side of a triangle whose two known sides—of lengths
4 and 6—meet at an angle of 30 degrees.
Open the
Triangle Solver
app
1. Open the Triangle
Solver app.
I Select
Triangle Solver
The app opens in
Numeric view.
Triangle Solver app
293
2. If there is unwanted data from a previous calculation,
you can clear it all by pressing SJ (Clear).
Set angle
measure
Make sure that your angle measure mode is appropriate.
By default, the app starts in degree mode. If the angle
information you have is in radians and your current angle
measure mode is degrees, change the mode to degrees
before running the solver. Tap
or
depending on the mode you want. (The button is a toggle
button.)
N o t e
The lengths of the sides are labeled a, b, and c, and the
angles are labeled A, B, and, C. It is important that you
enter the known values in the appropriate fields. In our
example, we know the length of two sides and the angle
at which those sides meet. Hence if we specify the lengths
of sides a and b, we must enter the angle as C (since C is
the angle where A and B meet). If instead we entered the
lengths as b and c, we would need to specify the angle
as A. The illustration on the screen will help you determine
where to enter the known values.
Specify the
known values
3. Go to a field whose value you know, enter the value
and either tap
or press E. Repeat for
each known value.
(a). In a type 4
and press
E.
(b). In b type 6
and press
E.
(c). In C type 30
and press E.
294
Triangle Solver app
Solve for the
unknown values
4. Tap
. The
app displays the
values of the
unknown
variables. As the
illustration at the
right shows, the
length of the
unknown side in
our example is 3.22967… The other two angles have
also been calculated.
Choosing triangle types
The Triangle Solver
app has two input
forms: a general
input form and a
simpler, specialized
form for right-angled
triangles. If the
general input form is
displayed, and you
are investigating a right-angled triangle, tap
display the simpler input form. To return to the general
input form, tap . If the triangle you are investigating
to
is not a right-angled triangle, or you are not sure what
type it is, you should use the general input form.
Triangle Solver app
295
Special cases
The indeterminate
case
If two sides and an adjacent acute angle are entered and
there are two solutions, only one will be displayed initially.
In this case, the
button is displayed (as in
this example). You can
tap
to display the
second solution and tap
again to return to
the first solution.
No solution with
given data
If you are using the
general input form
and you enter more
than 3 values, the
values might not be
consistent, that is, no
triangle could
possibly have all the
values you specified.
In these cases, No sol with given dataappears on
the screen.
The situation is similar if you are using the simpler input
form (for a right-angled triangle) and you enter more than
two values.
Not enough data
If you are using the
general input form,
youneed to specifyat
least three values for
the Triangle Solver to
be able to calculate
the remaining
attributes of the
triangle. If you
specify less than three, Not enough dataappears on
the screen.
If you are using the simplified input form (for a right-
angled triangle), you must specify at least two values.
296
Triangle Solver app
20
The Explorer apps
There are three explorer apps. These are designed for you
to explore the relationships between the parameters of a
function and the shape of the graph of that function. The
explorer apps are:
•
•
•
Linear Explorer
For exploring linear functions
Quadratic Explorer
For exploring quadratic functions
Trig Explorer
For exploring sinusoidal functions
There are two modes of exploration: graph mode and
equation mode. In graph mode you manipulate a graph
and note the corresponding changes in its equation. In
equation mode you manipulate an equation and note the
corresponding changes in its graphical representation.
Each explorer app has a number of equations and graphs
for to explore, and app has a test mode. In test mode, you
test you skills at matching equations to graphs.
Linear Explorer app
The Linear Explorer app can be used to explore the
behavior of the graphs of y = ax and y = ax + b as the
values of a and b change.
Open the app Press I and select
Linear Explorer.
The left half of the display
shows the graph of a
linear function. The right
half shows the general
The Explorer apps
297
form of the equation being explored at the top and, below
it, the current equation of that form. The keys you can use
to manipulate the graph or equation appear below the
equation. The x- and y-intercepts are given at the bottom.
There are two types (or levels) of linear equation available
for you to explore: y = ax and y = ax + b. You choose
between them by tapping
or
.
The keys available to you to manipulate the graph or
equation depend on the level you have chosen. For
example, the screen for a level 1 equation shows this:
This means that you can press <, >, +, w and
Q. If you choose a level 2 equation, the screen shows
this:
This means that you can press <, >, =, \, +,
w and Q.
Graph mode
The app opens in graph
mode (indicated by the
dot on the Graphbutton
at the bottom of the
screen). In graph mode,
the =and \ keys
translate the graph
vertically, effectively
changing the y-intercept of the line. Tap
the magnitude of the increment for vertical translations.
The and keys (as well as w and+) decrease
to change
<
>
and increase the slope. Press
the slope.
to change the sign of
Q
The form of the linear function is shown at the top right of
the display, with the current equation that matches the
graph just below it. As you manipulate the graph, the
equation updates to reflect the changes.
298
The Explorer apps
Equation mode
Tap
to enter
equation mode. A dot
will appear on the Eq
button at the bottom of
the screen.
In equation mode, you
use the cursor keys to
move between parameters in the equation and change
their values, observing the effect on the graph displayed.
Press \ or = to decrease or increase the value of the
selected parameter. Press > or < to select another
parameter. Press
to change the sign of a.
Q
Test mode
Tap
to enter test
mode. In Test mode you
test your skill at matching
an equation to the graph
shown. Test mode is like
equation mode in that you
use the cursor keys to
select and change the value of each parameter in the
equation. The goal is to try to match the graph that is
shown.
The app displays the graph of a randomly chosen linear
function of the form dictated by your choice of level. (Tap
or
cursor keys to select a parameter and set its value. When
you are ready, tap to see if you have correctly
matched your equation to the given graph.
Tap to see the correct answer and tap
exit Test mode.
to change the level.) Now press the
to
The Explorer apps
299
Quadratic Explorer app
The Quadratic Explorer app can be used to investigate the
behavior of y = ax + h2 + v as the values of a, h and v
change.
Open the app PressI and select
Quadratic
Explorer.
The left half of the display
shows the graph of a
quadratic function. The
right half shows the
general form of the equation being explored at the top
and, below it, the current equation of that form. The keys
you can use to manipulate the graph or equation appear
below the equation. (These will change depending on the
level of equation you choose.) Displayed beneath they
keys is the equation, the discriminant (that is, b2 – 4ac ),
and the roots of the quadratic.
Graph mode
The app opens in graph
mode. In graph mode,
you manipulate a copy of
the graph using whatever
keys are available. The
original
graph—converted to
dotted lines—remains in
place for you to easily see the result of your
manipulations.
Four general forms of quadratic equations are available
for you to explore:
y = ax2 [Level 1]
y = x + h2 [Level 2]
y = x2 + v [Level 3]
y = ax + h2 + v [Level 4]
300
The Explorer apps
Choose a general form by tapping the Level
button— and so on—until the form you
,
want is displayed. The keys available to you to manipulate
the graph vary from level to level.
Equation mode
Tap
to move to
equation mode. In
equation mode, you use
the cursor keys to move
between parameters in
the equation and change
their values, observing
the effect on the graph
displayed. Press \ or = to decrease or increase the
value of the selected parameter. Press > or < to select
another parameter. Press
to change the sign. You
Q
have four forms (or levels) of graph, and the keys available
for manipulating the equation depend on the level chosen.
Test mode
Tap
to enter test
mode. In Test mode you
test your skill at matching
an equation to the graph
shown. Test mode is like
equation mode in that you
use the cursor keys to
select and change the value of each parameter in the
equation. The goal is to try to match the graph that is
shown.
The app displays the graph of a randomly chosen
quadratic function. Tap the Level button to choose
between one of four forms of quadratic equation. You can
also choose graphs that are relatively easy to match or
graphs that are harder match (by tapping
respectively).
or
Now press the cursor keys to select a parameter and set
its value. When you are ready, tap to see if you
have correctly matched your equation to the given graph.
The Explorer apps
301
Tap
to see the correct answer and tap
to
exit Test mode.
Trig Explorer app
The Trig Explorer app can be used to investigate the
behavior of the graphs y = a sinbx + c + d and
y = a cosbx + c + d as the values of a, b, c and d
change.
The menu items available in this app are:
•
•
•
•
or
: toggles between graph mode and
: toggles between sine and cosine
: toggles between radians and
equation mode
or
graphs
or
degrees as the angle measure for x
or : toggles between translating the
graph (
amplitude (
the cursor keys.
: enters test mode
or : toggles the increment by which
), and changing its frequency or
). You make these changes using
•
•
parameter values change: /9, /6, /4, or 20°,
30°, 45° (depending on angle measure setting)
Open the app Press I and select
Trig Explorer.
An equation is shown at
the top of the display,
with its graph shown
below it.
Choose the type of
function you want to explore by tapping either
or
.
302
The Explorer apps
Graph mode
The app opens in graph
mode. In graph mode,
you manipulate a copy of
the graph by pressing the
cursor keys. All four keys
are available. The
original
graph—converted to
dotted lines—remains in place for you to easily see the
result of your manipulations.
When
is chosen,
the cursor keys simply
translate the graph
horizontally and
vertically. When
is chosen, pressing = or
\ changes the
amplitude of the graph
(that is, it is stretched or shrunk vertically); and pressing
< or > changes the frequency of the graph (that is, it is
stretched or shrunk horizontally).
The
or
button at the far right of the menu
determines the increment by which the graph moves with
each press of a cursor key. By default, the increment is set
at 9 or 20°.
Equation mode
Tap
to switch to
equation mode. In
equation mode, you use
the cursor keys to move
between parameters in
the equation and change
their values. You can then
observe the effect on the
graph displayed. Press \ or = to decrease or increase
the value of the selected parameter. Press > or < to
select another parameter.
You can switch back to graph mode by tapping
.
The Explorer apps
303
Test mode
Tap
to enter test mode. In test mode you test your
skill at matching an equation to the graph shown. Test
mode is like equation mode in that you use the cursor keys
to select and change the value of one or more parameters
in the equation. The goal is to try to match the graph that
is shown.
The app displays the
graph of a randomly
chosen sinusoidal
function. Tap a Level
button—
,
and so on—to choose
between one of five types
of sinusoidal equations.
Now press the cursor keys to select each parameter and
set its value. When you are ready, tap
to see if you
have correctly matched your equation to the given graph.
Tap
to see the correct answer and tap
to
exit Test mode.
304
The Explorer apps
21
Many mathematical functions are available from the
functions” on page 307. Other functions and commands are
collected together in the Toolbox menus (D). There are five
Toolbox menus:
•
•
•
Math
“Keyboard functions” on page 307)
CAS
A collection of symbolic mathematical functions (see
“CAS menu” on page 322)
App
A collection of app functions that can be called from
elsewhere in the calculator, such as Home view, CAS
view, the Spreadsheet app, and in a program (see “App
menu” on page 343)
Note that the Geometry app functions can be called
from elsewhere in the calculator, but they are not
available from the App menu. For that reason, the
Geometry functions are not described in this chapter.
They are described in the Geometry chapter.
•
•
User
The functions that you have created (see “Creating your
own functions” on page 425) and the programs you
have created that contain global variables.
Catlg
All the functions and commands:
–
–
–
–
on the Math menu
on the CAS menu
used in the Geometry app
used in programming
Functions and commands
305
–
–
–
used in the Matrix Editor
used in the List Editor
and some additional functions and commands
See “Ctlg menu” on page 372.
Some functions can be chosen
from the math template (displayed by
pressing F). See “Math template”
on page 24.
You can also create your own
functions. See “Creating your own functions” on page 425.
Setting the form
of menu items
You can choose to have entries on the Math and CAS menus
presented either by their descriptive name or their command
name. (The entries on the Catlg menu are always presented
by their command name.)
Descriptive name
Command name
Factor List
ifactors
cZeros
gbasis
factor_xn
proot
Complex Zeros
Groebner Basis
Factor by Degree
Find Roots
The default menu presentation mode is to provide the
descriptive names for the Math and CAS functions. If you
prefer the functions to be presented by their command name,
deselect the Menu Display option on the second page of
the Home Settings screen (see “Home settings” on
page 30).
Abbreviations used in this chapter
In describing the syntax of functions and commands, the
following abbreviations and conventions are used:
Expr: a mathematical expression
Poly: a polynomial
LstPoly: a list of polynomials
Frac: a fraction
306
Functions and commands
RatFrac: a rational fraction
Fnc: a function
Var: a variable
LstVar: a list of variables
Parameters that are optional are given in square brackets, as
in NORMAL_ICDF([,,]p).
For ease of reading, commas are used to separate
parameters, but these are only necessary to separate
parameters. Thus a single-parameter command needs no
comma after the parameter even if, in the syntax shown
below, there is a comma between it and an optional
parameter. An example is the syntax zeros(Expr,[Var]).
The comma is needed only if you are specifying the optional
parameter Var.
|| is used to indicate or. For example, in
DotDiv(Lst||Mtrx,Lst||Mtrx), the parameters can
be lists or matrices.
Keyboard functions
The most frequently used functions are available directly from
the keyboard. Many of the keyboard functions also accept
complex numbers as arguments. Enter the keys and inputs
shown below and press E to evaluate the expression.
In the examples below, shifted functions are represented
by the actual keys to be pressed, with the function name
shown in parentheses. For example,
(ASIN) means
Se
that to make an arc sine calculation (ASIN), you press
.
Se
The examples below show the results you would get in Home
view. If you are in the CAS, the results are given in simplified
symbolic format. For example:
320 returns 17.88854382in Home view, and
Sj
8*√5 in the CAS.
,
Add, subtract, multiply, divide. Also accepts complex
numbers, lists, and matrices.
+ w,s,
n
value1 + value2, etc.
Functions and commands
307
Natural logarithm. Also accepts complex numbers.
h
LN(value)
Example:
LN(1)returns 0
x
(e )
Natural exponential. Also accepts complex numbers.
Sh
value
e
Example:
5
e returns 148.413159103
Common logarithm. Also accepts complex numbers.
i
LOG(value)
Example:
LOG(100) returns 2
x
(10 )
Common exponential (antilogarithm). Also accepts complex
numbers.
Si
value
1
10
Example:
103
1
returns 1000
Sine, cosine, tangent. Inputs and outputs depend on the
current angle format: degrees or radians.
efg
SIN(value)
COS(value)
TAN(value)
Example:
TAN(45) returns 1 (degrees mode)
–1
(ASIN)
Arc sine: sin x. Output range is from –90° to 90° or –/2
Se
to /2. Inputs and outputs depend on the current angle
format. Also accepts complex numbers.
ASIN(value)
Example:
ASIN(1) returns 90 (degrees mode)
308
Functions and commands
–1
(ACOS)
Arc cosine: cos x. Output range is from 0° to 180° or 0 to
Sf
. Inputs and outputs depend on the current angle format.
Also accepts complex numbers. Output will be complex for
values outside the normal cosine domain of –1 x 1 .
ACOS(value)
Example:
ACOS(1)returns 0(degrees mode)
–1
(ATAN)
Arc tangent: tan x. Output range is from –90° to 90° or –/
Sg
2 to /2. Inputs and outputs depend on the current angle
format. Also accepts complex numbers.
ATAN(value)
Example:
ATAN(1)returns 45(degrees mode)
Square. Also accepts complex numbers.
j
2
value
Example:
2
18 returns 324
Square root. Also accepts complex numbers.
Sj
√value
)
Example:
√320 returns 17.88854382
x raised to the power of y. Also accepts complex numbers.
k
power
value
Example:
8
2
returns 256
The nth root of x.
root√value
Sk
Example:
3√8 returns 2
Functions and commands
309
n
Reciprocal.
S
-1
value
Example:
-1
3
returns .333333333333
Negation. Also accepts complex numbers.
Q-
-value
Example:
-(1+2*i) returns -1-2*i
(|x|)
Absolute value.
SQ
|value|
|x+y*i|
|matrix|
For a complex number, |x+y*i| returns x2 + y2 . For a
matrix, |matrix| returns the Frobenius norm of the matrix.
Example:
|–1| returns 1
|(1,2)|returns 2.2360679775
Math menu
Press D to open the
Toolbox menus (one of which
is the Math menu). The
functions and commands
available on the Math menu
are listed as they are
categorized on the menu.
310
Functions and commands
Numbers
Ceiling
Smallest integer greater than or equal to value.
CEILING(value)
Examples:
CEILING(3.2)returns 4
CEILING(-3.2)returns -3
Floor
Greatest integer less than or equal to value.
FLOOR(value)
Example:
FLOOR(3.2)returns 3
FLOOR(-3.2)returns -4
IP
FP
Integer part.
IP(value)
Example:
IP(23.2)returns 23
Fractional part.
FP(value)
Example:
FP (23.2)returns .2
Round
Rounds value to decimal places. Also accepts complex
numbers.
ROUND(value,places)
ROUNDcan also round to a number of significant digits if
places is a negative integer (as shown in the second example
below).
Examples:
ROUND(7.8676,2)returns 7.87
ROUND(0.0036757,-3)returns 0.00368
Truncate
Truncates value to decimal places. Also accepts complex
numbers.
TRUNCATE(value,places)
Functions and commands
311
TRUNCATEcan also round to a number of significant digits if
places is a negative integer (as shown in the second example
below).
Examples:
TRUNCATE(2.3678,2)returns 2.36
TRUNCATE(0.0036757,–3)returns 0.00367
Mantissa
Exponent
Mantissa—that is, the significant digits—of value, where
value is a floating-point number.
MANT(value)
Example:
MANT(21.2E34)returns 2.12
Exponent of value. That is, the integer component of the
power of 10 that generates value.
XPON(value)
Example:
XPON(123456)returns 5 (since 105.0915... equals 123456)
Arithmetic
Maximum
Maximum. The greater of two values.
MAX(value1,value2)
Example:
MAX(8/3,11/4)returns 2.75
Note that in Home view a non-integer result is given as a
decimal fraction. If you want to see the result as a common
fraction, press K. This opens the computer algebra system.
If you want to return to Home view to make further
calculations, press H.
Minimum
Minimum. The lesser of two values.
MIN(value1,value2)
Example:
MIN(210,25)returns 25
312
Functions and commands
Modulus
Modulo. The remainder of value1/value2.
value1 MOD value2
Example:
74 MOD 5returns 4
Find Root
Function root-finder (like the Solve app). Finds the value for the
given variable at which expression most nearly evaluates to
zero. Uses guess as initial estimate.
FNROOT(expression,variable,guess)
Example:
FNROOT((A*9.8/600)-1,A,1)returns 61.2244897959.
Percentage
x percent of y; that is, x/100 y.
*
%(x,y)
Example:
%(20,50)returns 10
Complex
Argument
Argument. Finds the angle defined by a complex number.
Inputs and outputs use the current angle format set in Home
modes.
ARG(x+y*i)
Example:
ARG(3+3*i)returns 45 (degrees mode)
Conjugate
Real Part
Complex conjugate. Conjugation is the negation (sign
reversal) of the imaginary part of a complex number.
CONJ(x+y*i)
Example:
CONJ(3+4*i)returns (3-4*i)
Real part x, of a complex number, (x+y*i).
RE(x+y*i)
Example:
RE(3+4*i)returns 3
Functions and commands
313
Imaginary Part
Unit Vector
Imaginary part, y, of a complex number, (x+y*i).
IM(x+y*i)
Example:
IM(3+4*i) returns 4
Sign of value. If positive, the result is 1. If negative, –1. If zero,
result is zero. For a complex number, this is the unit vector in
the direction of the number.
SIGN(value)
SIGN((x,y))
Examples:
SIGN(POLYEVAL([1,2,–25,–26,2],–2)) returns –1
SIGN((3,4))returns (.6+.8i)
Exponential
ALOG
Antilogarithm (exponential).
ALOG(value)
EXPM1
LNP1
Exponential minus 1: ex – 1 .
EXPM1(value)
Natural log plus 1: ln(x+1).
LNP1(value)
Trigonometry
The trigonometry functions can also take complex numbers as
arguments. For SIN, COS, TAN, ASIN, ACOS, and ATAN,
see “Keyboard functions” on page 307.
CSC
ACSC
SEC
Cosecant: 1/sinx.
CSC(value)
Arc cosecant.
ACSC(value)
Secant: 1/cosx.
SEC(value)
ASEC
Arc secant.
ASEC(value)
314
Functions and commands
COT
Cotangent: cosx/sinx.
COT(value)
ACOT
Arc cotangent.
ACOT(value)
Hyperbolic
The hyperbolic trigonometry functions can also take complex
numbers as arguments.
SINH
ASINH
COSH
Hyperbolic sine.
SINH(value)
–1
Inverse hyperbolic sine: sinh x.
ASINH(value)
Hyperbolic cosine
COSH(value)
–1
ACOSH
TANH
Inverse hyperbolic cosine: cosh x.
ACOSH(value)
Hyperbolic tangent.
TANH(value)
–1
ATANH
Inverse hyperbolic tangent: tanh x.
ATANH(value)
Probability
Factorial
Factorial of a positive integer. For non-integers, x! = (x + 1).
This calculates the gamma function.
value!
Example:
5!returns 120
Functions and commands
315
Combination
Permutation
The number of combinations (without regard to order) of n
things taken r at a time.
COMB(n,r)
Example: Suppose you want to know how many ways five
things can be combined two at a time.
COMB(5,2)returns 10.
Number of permutations (with regard to order) of n things
taken r at a time.
PERM (n,r)
Example: Suppose you want to know how many permutations
there are for five things taken two at a time.
PERM(5,2)returns 20.
Random
Number
Integer
Normal
Random number. With no argument, this function returns a
random number between zero and one. With one argument
a, it returns a random number between 0 and a. With two
arguments, a, and b, returns a random number between a
and b. With three arguments, n, a, and b, returns n random
number between a and b.
RANDOM
RANDOM(a)
RANDOM(a,b
RANDOM(n,a,b)
Random integer. With no argument, this function returns either
0 or 1 randomly. With one integer argument a, it returns a
random integer between 0 and a. With two arguments, a,
and b, returns a random integer between a and b. With three
integer arguments, n, a, and b, returns n random integers
between a and b.
RANDINT
RANDINT(a)
RANDINT(a,b)
RANDINT(n,a,b)
Random real number with normal distribution N(,).
RANDNORM(,)
316
Functions and commands
Seed
Sets the seed value on which the random functions operate.
By specifying the same seed value on two or more calculators,
you ensure that the same random numbers appear on each
calculator when the random functions are executed.
RANDSEED(value)
Density
Normal
Normal probability density function. Computes the
probability density at value x, given the mean, and
standard deviation, of a normal distribution. If only one
argument is supplied, it is taken as x, and the assumption is
that =0 and =1.
NORMALD([,,]x)
Example:
NORMALD(0.5)and NORMALD(0,1,0.5)both return
0.352065326764.
T
Student’s t probability density function. Computes the
probability density of the Student's t-distribution at x, given n
degrees of freedom.
STUDENT(n,x)
Example:
student(3,5.2)returns 0.00366574413491.
2
2 probability density function. Computes the probability
density of the 2 distribution at x, given n degrees of freedom.
CHISQUARE(n,x)
Example:
CHISQUARE(2,3.2)returns 0.100948258997.
F
Fisher (or Fisher–Snedecor) probability density function.
Computes the probability density at the value x, given
numerator n and denominator d degrees of freedom.
FISHER(n,d,x)
Example:
FISHER(5,5,2)returns 0.158080231095.
Functions and commands
317
Binomial
Binomial probability density function. Computes the
probability of k successes out of n trials, each with a
probability of success of p. Returns Comb(n,k) if there is no
third argument. Note that n and k are integers with k n .
BINOMIAL(n,k,p)
Example: Suppose you want to know the probability that just
6 heads would appear during 20 tosses of a fair coin.
BINOMIAL(20,6,0.5)returns 0.03696441652002.
Poisson
Poisson probability mass function. Computes the probability
of k occurrences of an event during a future interval given ,
the mean of the occurrences of that event during that interval
in the past. For this function, k is a non-negative integer and
is a real number.
POISSON(,k)
Example: Suppose that on average you get 20 emails a day.
What is the probability that tomorrow you will get 15?
POISSON(20,15)returns 0.0516488535318.
Cumulative
Normal
Cumulative normal distribution function. Returns the lower-tail
probability of the normal probability density function for the
value x, given the mean, and standard deviation, of a
normal distribution. If only one argument is supplied, it is
taken as x, and the assumption is that =0 and =1.
NORMALD_CDF([,,]x)
Example:
NORMALD_CDF(0,1,2)returns 0.977249868052.
T
Cumulative Student's t distribution function. Returns the lower-
tail probability of the Student's t-probability density function
at x, given n degrees of freedom.
STUDENT_CDF(n,x)
Example:
STUDENT_CDF(3,–3.2)returns 0.0246659214814.
2
Cumulative 2 distribution function. Returns the lower-tail
probability of the 2 probability density function for the value
x, given n degrees of freedom.
CHISQUARE_CDF(n,k)
318
Functions and commands
Example:
CHISQUARE_CDF(2,6.1)returns 0.952641075609.
F
Cumulative Fisher distribution function. Returns the lower-tail
probability of the Fisher probability density function for the
value x, given numerator n and denominator d degrees of
freedom.
FISHER_CDF(n,d,x)
Example:
FISHER_CDF(5,5,2)returns 0.76748868087.
Binomial
Cumulative binomial distribution function. Returns the
probability of k or fewer successes out of n trials, with a
probability of success, p for each trial. Note that n and k are
integers withk n .
BINOMIAL_CDF(n,p,k)
Example: Suppose you want to know the probability that
during 20 tosses of a fair coin you will get either 0, 1, 2, 3,
4, 5, or 6 heads.
BINOMIAL_CDF(20,0.5,6)returns 0.05765914917.
Poisson
Cumulative Poisson distribution function. Returns the
probability x or fewer occurrences of an event in a given time
interval, given expected occurrences.
POISSON_CDF( ,x)
Example:
POISSON_CDF(4,2)returns 0.238103305554.
Inverse
Normal
Inverse cumulative normal distribution function. Returns the
cumulative normal distribution value associated with the
lower-tail probability, p, given the mean, and standard
deviation, of a normal distribution. If only one argument is
supplied, it is taken as p, and the assumption is that =0 and
=1.
NORMALD_ICDF([,,]p)
Example:
NORMALD_ICDF(0,1,0.841344746069)returns 1.
Functions and commands
319
T
Inverse cumulative Student's t distribution function. Returns the
value x such that the Student's-t lower-tail probability of x, with
n degrees of freedom, is p.
STUDENT_ICDF(n,p)
Example:
STUDENT_ICDF(3,0.0246659214814)returns –3.2.
2
Inverse cumulative 2 distribution function. Returns the value x
such that the 2 lower-tail probability of x, with n degrees of
freedom, is p.
CHISQUARE_ICDF(n,p)
Example:
CHISQUARE_ICDF(2,0.957147873133)returns 6.3.
F
Binomial
Poisson
Inverse cumulative Fisher distribution function. Returns the
value x such that the Fisher lower-tail probability of x, with
numerator n and denominator d degrees of freedom, is p.
FISHER_ICDF(n,d,p)
Example:
FISHER_ICDF(5,5,0.76748868087)returns 2.
Inverse cumulative binomial distribution function. Returns the
number of successes, k, out of n trials, each with a probability
of p, such that the probability of k or fewer successes is q.
BINOMIAL_ICDF(n,p,q)
Example:
BINOMIAL_ICDF(20,0.5,0.6)returns 11.
Inverse cumulative Poisson distribution function. Returns the
value x such that the probability of x or fewer occurrences of
in the interval, is p.
POISSON_ICDF( ,p)
Example:
POISSON_ICDF(4,0.238103305554)returns 3.
List
These functions work on data in a list. They are explained in
detail in chapter 24, “Lists”, beginning on page 453.
320
Functions and commands
Matrix
Special
These functions work on matrix data stored in matrix
variables. They are explained in detail in chapter 25,
“Matrices”, beginning on page 465.
Beta
Returns the value of the beta function ( for two numbers a
and b.
Beta(a,b)
Gamma
Psi
Returns the value of the gamma function ( for a number a.
Gamma(a)
Returns the value of the nth derivative of the digamma function
at x=a, where the digamma function is the first derivative of
ln((x)).
Psi(a,n)
Zeta
erf
erfc
Ei
Returns the value of the zeta function (Z) for a real x.
Zeta(x)
Returns the floating point value of the error function at x=a.
erf(a)
Returns the value of the complementary error function at x=a.
erfc(a)
Returns the exponential integral of an expression.
Ei(Expr)
Si
Returns the sine integral of an expression.
Si(Expr)
Ci
Returns the cosine integral of an expression.
Ci(Expr)
Functions and commands
321
CAS menu
Press D to open the
Toolbox menus (one of which
is the CAS menu). The
functions on the CAS menu
are those most commonly
used. Many more functions
are available. See “Ctlg
menu”, beginning on page
372.
Note that the Geometry functions appear on the CAS menu
when the Geometry app is currently active or was the last-
used app. They are described in “Geometry functions and
commands”, beginning on page 165.
Algebra
Simplify
Returns an expression simplified.
simplify(Expr)
Example:
simplify(4*atan(1/5)-atan(1/239))yields (1/
4)*pi
Collect
Returns a polynomial or list of polynomials factorized over the
field of the coefficients.
collect(Poly or LstPoly)
Example:
collect(x^2-4)gives (x-2)*(x+2)
Expand
Factor
Returns an expression expanded.
expand(Expr)
Example:
expand((x+y)*(z+1))gives y*z+x*z+y+x
Returns a polynomial factorized.
factor(Poly)
Example:
factor(x^4-1)gives (x-1)*(x+1)*(x^2+1)
322
Functions and commands
Substitute
Returns the solution when a value is substituted for a variable
in an expression.
subst(Expr,Var(v)=value(a))
Example:
subst(1/(4+x^2),x=2)gives 1/8
Partial Fraction
Returns the partial fraction expansion of a rational fraction.
partfrac(RatFrac)
Example:
partfrac(x/(4-x^2))gives (1/(x-2)*-2))+(1/
((x+2)*-2))
Extract
Numerator
Returns the numerator of a fraction (after simplifying the
fraction if necessary).
numer(Frac(a/b) or RatFrac)
Example:
numer(10,12)returns 5
Denominator
Returns the denominator of a fraction (after simplifying the
fraction if necessary).
denom(Frac(a/b) or RatFrac)
Example:
denom(10,12)returns 6
Left Side
Returns the left side of an equation or the left bound of an
interval.
lhs(Equal(a=b) or Interval(a...b))
Right Side
Returns the right side of an equation or the left bound of an
interval.
rhs(Equal(a=b) or Interval(a...b))
Calculus
Differentiate
With one expression as argument, returns derivative of the
expression with respect to x. With one expression and one
variable as arguments, returns the derivative or partial
derivative of the expression with respect to the variable. With
Functions and commands
323
one expression and more than one variable as arguments,
returns the derivative of the expression with respect to the
variables in the second argument. These arguments can be
followed by $k (k is an integer) to indicate the number of times
the expression should be derived with respect to the variable.
For example, diff(exp(x*y),x$3,y$2,z) is the same as
diff(exp(x*y),x,x,x,y,y,z).
diff(Expr,[var])
or
diff(Expr,var1$k1,var2$k2,...)
Example:
diff(x^3-x)gives 3*x^2-1
Integrate
Returns the indefinite integral of an expression. With one
expression as argument, returns the indefinite integral with
respect to x. With the optional second, third and fourth
arguments you can specify the variable of integration and the
bounds of the integrate.
int(Expr,[Var(x)],[Real(a)],[Real(b)])
Example:
int(1/x)gives ln(abs(x))
Limit
Returns the limit of an expression when the variable
approaches a limit point a or +/– infinity. With the optional
fourth argument you can specify whether it is the limit from
below, above or bidirectional (d=–1 for limit from below and
d=+1 for limit from above, d=0 for bidirectional limit). If the
fourth argument is not provided, the limit returned is
bidirectional.
limit(Expr,Var,Val,[Dir(d)])
Example:
limit((n*tan(x)-tan(n*x))/(sin(n*x)-
n*sin(x)),x,0)gives 2
324
Functions and commands
Series
Returns the series expansion of an expression in the vicinity of
a given equality variable. With the optional third and fourth
arguments you can specify the order and direction of the
series expansion. If no order is specified the series returned is
fifth order. If no direction is specified, the series is
bidirectional.
series(Expr,Equal(var=limit_point),[Orde
r],[Dir(1,0,-1)])
Example:
series((x^4+x+2)/(x^2+1),x=0,5)gives 2+x-2x^2-
x^3+3x^4+x^5+x^6*order_size(x)
Summation
With two arguments, returns the discrete antiderivative of the
expression with respect to the variable.
sum(Expr,Var)
With four arguments, returns the discrete sum of the
expression with respect to the variable from a to b.
sum(Expr,Var,VarMin(a),VarMax(b))
Example:
sum(n^2,n,1,5)gives 55
Differential
Curl
Returns the rotational curl of a vector field, defined by:
curl([A,B,C],[x,y,z])=[dC/dy-dB/dz,dA/dz-dC/dx,dB/dx-
dA/dy].
curl(Lst(A,B,C),Lst(x,y,z))
Example:
curl([2*x*y,x*z,y*z],[x,y,z])gives [z-x,0,z-
2*x]
Divergence
Returns the divergence of a vector field, defined by:
divergence([A,B,C],[x,y,z])=dA/dx+dB/dy+dC/dz.
divergence(Lst(A,B,C),Lst(x,y,z))
Example:
divergence([x^2+y,x+z+y,z^3+x^2],[x,y,z])
gives 2*x+3*z^2+1
Functions and commands
325
Gradient
Hessian
Returns the gradient of an expression. With a list of variables
as second argument, returns the vector of partial derivatives.
grad(Expr,LstVar)
Example:
grad(2*x^2*y-x*z^3,[x,y,z])gives [2*2*x*y-
z^3,2*x^2,-x*3*z^2]
Returns the Hessian matrix of an expression.
hessian(Expr,LstVar)
Example:
hessian(2*x^2*y-x*z,[x,y,z])gives [[4*y,4*x,-
1],[2*2*x,0,0],[-1,0,0]]
Integral
By Parts v(x)
Performs integration by parts of the expression f(x)=u(x)*v'(x)
with f(x) as the first argument and v(x) (or 0) as the second
argument. With the optional third, fourth and fifth arguments
you can specify a variable of integration and bounds of the
integration. If no variable of integration is provided, it is taken
as x.
ibpdv(Expr(f(x)),Expr(v(x)),[Var(x)],[Re
al(a)],[Real(b)])
Example:
ibpdv(ln(x),x) gives [x*ln(x),-1]
By Parts u(v)
Performs integration by parts of the expression f(x)=u(x)*v'(x)
with f(x) as the first argument and u(x) (or 0) as the second
argument. With the optional third, fourth and fifth arguments
you can specify a variable of integration and bounds of the
integration. If no variable of integration is provided, it is taken
as x.
ibpu(Expr(f(x)),Expr(u(x))[,Var(x)[,[Rea
l(a),[Real(b)]])
Example:
ibpu(Expr(f(x)),Expr(u(x)),[Var(x)],[Real(a)]
,[Real(b)])
326
Functions and commands
F(b)–F(a)
Returns F(b)–F(a).
preval(Expr(F(var)),Real(a),Real(b),[Var])
Example:
preval(x^2-2,2,3)gives 5
Limits
Riemann Sum
Returns in the neighborhood of n=+∞ an equivalent of the
sum of Xpr(var1,var2) for var2 from var2=1 to var2=var1
when the sum is looked at as a Riemann sum associated with
a continuous function defined on [0,1].
sum_riemann(Expr(Xpr),Lst(var1,var2))
Example:
sum_riemann(1/(n+k),[n,k])gives ln(2)
Taylor
Returns the Taylor series expansion of an expression. With the
optional second and third arguments you can specify the limit
point and the order of the expansion. If no limit point is
provided, it is taken as x=0. If no order is provided, the series
returned is fifth order.
taylor(Expr,[Var=limit_point],[Order])
Example:
taylor(sin(x)/x,x,0) gives 1+x^2/-6+x^4/
120+x^6*order_size(x)
Taylor of Quotient
Returns the quotient Q of the division of polynomial A by
polynomial B by increasing power order, with degree(Q)≤ n
or Q=0. In other words, Q is the Taylor expansion at order n
of A/B in the vicinity of x=0.
divpc(A,B,Intg(n))
Example:
divpc(x^4+x+2,x^2+1,5)gives x^5+3*x^4-x^3-
2*x^2+x+2
Transform
Laplace
Returns the Laplace transform of an expression.
laplace(Expr,[Var],[LapVar])
Example:
laplace(exp(x)*sin(x))gives 1/(x^2-2*x+2)
Functions and commands
327
Inverse Laplace
Returns the inverse Laplace transform of an expression.
invlaplace(Expr,[Var],[IlapVar])
Example:
ilaplace(1/(x^2+1)^2)returns ((-x)*cos(x))/
2+sin(x)/2
FFT
With one argument, returns the discrete Fourier transform in R.
fft(Vect)
With three arguments, returns the discrete Fourier transform in
the field Z/pZ, with a as primitive nth root of 1 (n=size(L)).
fft((Vect(L),Intg(a),Intg(p))
Example:
fft([1,2,3,4,0,0,0,0])gives [10.0,-
0.414213562373-7.24264068712*(i),-
2.0+2.0*i,2.41421356237-1.24264068712*i,-
2.0,2.41421356237+1.24264068712*i,-2.0-2.0*i]
Inverse FFT
Returns the inverse discrete Fourier transform.
ifft(Vect)
Example:
ifft([100.0,-52.2842712475+6*i,-
8.0*i,4.28427124746-
6*i,4.0,4.28427124746+6*i,8*i,-52.2842712475-
6*i])gives
[0.99999999999,3.99999999999,10.0,20.0,25.0,2
4.0,16.0,-6.39843733552e-12]
Solve
Solve
Returns the solutions to a polynomial equation or a set of
polynomial equations.
solve(Expr,[Var])
Example:
solve(x^2-3=1)gives list[-2,2]
328
Functions and commands
Zeros
With an expression as argument, returns the zeros (real or
complex according to the mode) of the expression. With a list
of expressions as argument, returns the matrix where the rows
are the solutions of the system (i.e. expression1=0,
expression2=0,...,).
zeros(Expr,[Var])
or
zeros([LstExpr],[LStVar])
Example:
zeros(x^2+4) gives [] in real mode and [-2*i,2*i]
in complex mode
Complex Solve
Complex Zeros
Returns a list where the elements are complex solutions of the
system of polynomial equations.
csolve(LstEq,LstVar)
Example:
csolve(x^4-1,x)gives list[1,-1,-i,i]
With an expression as argument, returns the complex zeros of
the expression. With a list of expressions as argument, returns
the matrix where the rows are the solutions of the system (i.e.
expression1=0, expression2=0,...,).
Czeros(Expr,[Var])
or
Czeros([LstExpr],[LStVar])
Example:
cZeros(x^2-1)gives [1,-1]
Numerical Solve
Returns the numerical solution of an equation or a system of
equations.
nSolve(Expr,Var||Var=Guess)
Examples:
nSolve(cos(x)=x,x)gives 0.999847741531
nSolve(cos(x)=x,x=1.3)gives 0.999847741531
Functions and commands
329
Differential
Equation
Returns the solution to a differential equation.
deSolve(Eq,[TimeVar],FncVar)
Example:
desolve(y''+y=0,y)gives c_0*cos(x)+c_1*sin(x)
ODE Solve
Returns an approximate value of y at a final value (t1) of a
given variable, where y(t) is the solution of: y’(t)=f(t,y(t)),
y(t0)=y0.
odesolve(Expr(f(t,y)),VectVar([t,y]),Vec
tInitCond([t0,y0]),FinalVal(t1),[tstep=V
al,curve])
Example:
odesolve(sin(t*y),[t,y],[0,1],2)gives
[1.8224125572]
Linear System
Returns the solution to a system of linear equations.
linsolve(LstLinEq,LstVar)
Example:
linsolve([x+y+z=1,x-y=2,2*x-z=3],[x,y,z])
gives [3/2,-1/2,0]
Rewrite
lncollect
Returns an expression rewritten with the logarithms collected.
(applies ln(a)+n*ln(b)->ln(a*b^n) for integers n).
lncollect(Expr)
Example:
lncollect(ln(x)+2*ln(y))gives ln(x*y^2)
powexpand
Returns an expression with a power of sum rewritten as a
product of powers.
powexpand(Expr)
Example:
powexpand(2^(x+y))yields (2^x)*(2^y)
330
Functions and commands
tExpand
Returns a transcendental expression in expanded form.
tExpand(Expr)
Example:
tExpand(sin(2*x)+exp(x+y))gives
2*cos(x)*sin(x)+exp(x)*exp(y)
Exp & Ln
ey*lnx → xy
xy → ey*lnx
exp2trig
Returns an expression of the form exp(n*ln(x)) rewritten as a
power of x.
exp2pow(Expr)
Example:
exp2pow(exp(3*ln(x)))gives x^3
Returns an expression with powers rewritten as an
exponential.
pow2exp(Expr)
Example:
pow2exp(a^b)gives exp(b*ln(a))
Returns an expression with complex exponentials rewritten in
terms of sin and cos.
exp2trig(Expr)
Example:
exp2trig(exp(i*x))gives cos(x)+(i)*sin(x)
expexpand
Returns an expression with exponentials in expanded form.
expexpand(Expr)
Example:
expexpand(exp(3*x)) gives exp(x)^3
Sine
asinx → acosx
Returns an expression with arcsin(x) rewritten as pi/2-
arccos(x).
asin2acos(Expr)
Example:
asin2acos(acos(x)+asin(x))gives -
acos(x)+acos(x)
Functions and commands
331
asinx → atanx
Returns an expression with arcsin(x) rewritten as arctan(x/
sqrt(1-x^2)).
asin2atan(Expr)
Example:
asin2atan(2*asin(x))gives 2*atan(x/(sqrt(1-
x^2)))
sinx → cosx/tanx
Returns an expression with sin(x) rewritten as cos(x)*tan(x).
sin2costan(Expr)
Example:
sin2costan(sin(x))gives tan(x)*cos(x)
Cosine
acosx → asinx
Returns an expression with arccos(x) rewritten as pi/2-
arcsin(x).
acos2asin(Expr)
Example:
acos2asin(acos(x)+asin(x))gives pi/2-
asin(x)+asin(x)
acosx → atanx
Returns an expression with arccos(x) rewritten as pi/2-
arctan(x/sqrt(1-x^2)).
acos2atan(Expr)
Example:
acos2atan(2*acos(x))gives 2*(pi/2-atan(x/
(sqrt(1-x^2))))
cosx → sinx/tanx
Returns an expression with cos(x) rewritten as sin(x)/tan(x).
cos2sintan(Expr)
Example:
cos2sintan(cos(x))gives sin(x)/tan(x)
Tangent
atanx → asinx
Returns an expression with arctan(x) rewritten as arcsin(x/
sqrt(1+x^2)).
atan2asin(Expr)
332
Functions and commands
atanx → acosx
Returns an expression with arctan(x) rewritten as pi/2-
arccos(x/sqrt(1+x^2)).
atan2acos(Expr)
tanx → sinx/cosx
Returns an expression with tan(x) rewritten as sin(x)/cos(x).
tan2sincos(Expr)
Example:
tan2sincos(tan(x))gives sin(x)/cos(x)
halftan
Returns an expression with sin(x), cos(x) or tan(x) rewritten as
tan(x/2).
halftan(Expr)
Example:
halftan(sin(x))gives 2*tan(x/2)/(tan(x/2)^2+
Trig
trigx → sinx
Returns an expression simplified using the formulas
sin(x)^2+cos(x)^2=1 and tan(x)=sin(x)/cos(x) (privileging
sine).
trigsin(Expr)
Example:
trigsin(cos(x)^4+sin(x)^2)gives sin(x)^4-
sin(x)^2+
trigx → cosx
Returns an expression simplified using the formulas
sin(x)^2+cos(x)^2=1 and tan(x)=sin(x)/cos(x) (privileging
cosine).
trigcos(Expr)
Example:
trigcos(sin(x)^4+sin(x)^2)gives cos(x)^4-
3*cos(x)^2+2
trigx → tanx
Returns an expression simplified using the formulas
sin(x)^2+cos(x)^2=1 and tan(x)=sin(x)/cos(x) (privileging
tangent).
trigtan(Expr)
Example:
trigtan(cos(x)^4+sin(x)^2)gives
(tan(x)^4+tan(x)^2+1)/(tan(x)^4+2*tan(x)^2+1)
Functions and commands
333
atrig2ln
Returns an expression with inverse trigonometric functions
rewritten as logarithmic functions.
atrig2ln(Expr)
Example:
atrig2ln(atan(x))gives ((i)*ln((i+x)/(i-x)))/2
tlin
Returns a trigonometric expression with the products and
integer powers linearized.
tlin(ExprTrig)
Example:
tlin(sin(x)^3)gives 3*sin(x)/4+sin(3*x)/-4
tCollect
Returns a trigonometric expression linearized and with any
sine and cosine of the same angle put together.
tCollect(Expr)
Example:
tcollect(sin(x)+cos(x))gives sqrt(2)*cos(x-1/
4*pi)
trigexpand
trig2exp
Returns a trigonometric expression in expanded form.
trigexpand(Expr)
Example:
trigexpand(sin(3*x))gives (4*cos(x)^2-
1)*sin(x)
Returns an expression with trigonometric functions rewritten as
complex exponentials (without linearization).
trig2exp(Expr)
Example:
trig2exp(sin(x))gives (exp((i)*x)-1/
exp((i)*x))/(2*i)
Integer
Divisors
Returns the list of divisors of an integer or a list of integers.
idivis(Intg(a) or (LstIntg))
Example:
idivis(12) returns [1, 2, 3, 4, 6, 12]
334
Functions and commands
Factors
Returns the prime factor decomposition of an integer.
ifactor(Intg(a))
Example:
ifactor(150)returns [2*3*5
Factor List
Returns the list of prime factors of an integer or a list of
integers, with each factor is followed by its multiplicity.
ifactors(Intg(a) or (LstIntg))
Example:
ifactors(150)returns [2, 1, 3, 1, 5, 2]
GCD
LCM
Returns the greatest common divisor of two or more integers.
gcd((Intg(a),Intg(b)...Intg(n))
Example:
gcd(32,120,636)gives 4
Returns the lowest common multiple of two or integers.
lcm((Intg(a),Intg(b)...Int(n))
Example:
lcm(6,4)gives 12
Prime
Test if Prime
Tests whether or not a given integer is a prime number.
isPrime(Intg(a))
Example:
isPrime(1999)returns 1
Nth Prime
Returns the nth prime number less than 10000.
ithprime(Intg(n)) where n is between 1 and 1229
Example:
ithprime(5)returns 11
Next Prime
Returns the next prime or pseudo-prime after an integer.
nextprime(Intg(a))
Example:
nextprime(11)returns 13
Functions and commands
335
Previous Prime
Returns the prime or pseudo-prime number closest to but
smaller than an integer.
prevprime(Intg(a))
Example:
prevprime(11)returns 7
Euler
Compute’s Euler's totient for an integer.
euler(Intg(n))
Example:
euler(6)returns 2
Division
Quotient
Returns the integer quotient of the Euclidean division of two
integers.
iquo(Intg(a),Intg(b))
Example:
iquo(46, 23)returns 2
Remainder
Returns the integer remainder from the Euclidean division of
two integers.
irem(Intg(a),Intg(b))
Example:
irem(46, 23)returns 17
n
n
a MOD p
Returns a modulo p in [0;p−1].
powmod(Intg(a),Intg(n),Intg(p),[Expr(P(x
))],[Var])
Example:
powmod(5,2,13)returns 12
Chinese
Remainder
Returns the Chinese remainder of two lists of integers.
ichinrem(LstIntg(a,p),LstIntg(b,q))
Example:
ichinrem([2, 7], [3, 5])returns [-12, 35]
336
Functions and commands
Polynomial
Find Roots
Returns all computed roots of a polynomial given by its
coefficients. (It may not work if roots are not simple.)
proot(Vect||Poly)
Example:
proot([1,0,-2]) gives
[-1.41421356237,1.41421356237]
Coefficients
With an integer as third argument, returns the coefficient of a
polynomial of degree given in the third argument. With no
third argument, returns the list of coefficients of the
polynomial.
coeff(Expr,[Var],degree)
Example:
coeff(x*3+2)gives poly1[3,2]
Divisors
Returns the list of divisors of a polynomial or a list of
polynomials.
divis(Poly or LstPoly)
Example:
divis(x^2-1) gives [1,x-1,x+1,(x-1)*(x+1)]
Factor List
Returns the list of prime factors of a polynomial or a list of
polynomials. Each factor is followed by its multiplicity.
factors(Poly or LstPoly)
Example:
factors(x^4-1)gives [x-1,1,x+1,1,x^2+1,1]
GCD
LCM
Returns the greatest common divisor of two or more
polynomials.
gcd(Poly1,Poly2...Polyn)
Returns the lowest common multiple of two or more
polynomials.
lcm(Poly1,Poly2...Polyn)
Example:
lcm(x^2-2*x+1,x^3-1)gives (x-1)*(x^3-1)
Functions and commands
337
Create
Poly to Coef
With a variable as second argument, returns the coefficients
of a polynomial with respect to the variable. With a list of
variables as the second argument, returns the internal format
of the polynomial.
symb2poly(Expr,[Var])
or
symb2poly(Expr,ListVar)
Example:
symb2poly(x*3+2.1)gives poly1[3,2.1]
Coef to Poly
With one list as argument, returns a polynomial in x with
coefficients (in decreasing order) obtained from the list. With
a variable as second argument, returns a polynomial in the
variable as for one argument but the polynomial is in the
variable specified in the second argument.
poly2symb(Lst,Var)
Example:
poly2symb([1,2,3],x) gives (x+2)*x+3
Roots to Coef
Roots to Poly
Random
Returns the coefficients (in decreasing order) of the univariate
polynomial of roots specified in the argument.
pcoef(Vect)
Example:
pcoeff([1,0,0,0,1])gives poly1[1,-2,1,0,0,0]
Returns the rational function that has the roots and poles
specified in the argument.
fcoeff(Lst(root||pole,order))
Example:
fcoeff([1,2,0,1,3,-1])gives (x-1)^2*x*(x-3)^-1
Returns a vector of coefficients of a polynomial of variable Var
(or x), of degree Intgr and where the coefficients are random
integers in the range –99 through 99 with uniform distribution
or in an interval specified by Intrvl.
randpoly([Var],Intgr,[Dist])
338
Functions and commands
Example:
randpoly(t, 8, -1..1) returns a vector of 9 random
integers, all of them between –1 and 1.
Minimum
With only a matrix as argument, returns the minimal
polynomial in x of a matrix written as a list of its coefficients.
With a matrix and a variable as arguments, returns the
minimum polynomial of the matrix written in symbolic form
with respect to the variable.
pmin(Mtrx,[Var])
Example:
pmin([[1,0],[0,1]],x)gives x-1
Algebra
Quotient
Remainder
Degree
Returns the Euclidean quotient of two polynomials written as
vectors or in symbolic form.
quo((Vect),(Vect),[Var])
or
quo((Poly),(Poly),[Var])
Example:
quo([1,2,3,4],[-1,2])gives poly1[-1,-4,-11]
Returns the Euclidean remainder of two polynomials written as
vectors or in symbolic form.
rem((Vect),(Vect),[Var])
or
rem((Poly),(Poly),[Var])
Example:
rem([1,2,3,4],[-1,2])gives poly1[26]
Returns the degree of a polynomial.
degree(Poly)
Example:
degree(x^3+x)gives 3
Functions and commands
339
Factor by Degree
Returns a polynomial factorized in x^n, where n is the degree
of polynomial.
factor_xn(Poly)
Example:
factor_xn(x^4-1)gives x^4*(1-x^-4)
Coef. GCD
Returns the greatest common divisor (GCD) of the coefficients
of a polynomial.
content(Poly(P),[Var])
Example:
content(2*x^2+10*x+6)gives 2
Zero Count
If a and b are real, this returns the number of sign changes in
the specified polynomial in the interval [a,b]. If a or b are non-
real, it returns the number of complex roots in the rectangle
bounded by a and b. If Var is omitted, it is assumed to be x.
sturmab(Poly[,Var],a,b)
Examples:
sturmab(x^2*(x^3+2),-2,0)returns 1
sturmab(n^3-1,n,-2-i,5+3i)returns 3
Chinese
Remainder
Returns the Chinese remainder of the polynomials written as
lists of coefficients or in symbolic form.
chinrem([Lst||Expr,Lst||Expr],[Lst||Expr
,Lst||Expr])
Example:
chinrem([[1,2],[1,0,1]],[[1,1],[1,1,1]])gives
[poly1[-1,-1,0,1],poly1[1,1,2,1,1]]
Special
Cyclotomic
Returns the list of coefficients of the cyclotomic polynomial of
an integer.
cyclotomic(Int)
Example:
cyclotomic(20)gives [1,0,-1,0,1,0,-1,0,1]
340
Functions and commands
Groebner Basis
Returns the Groebner basis of the ideal spanned by a list of
polynomials.
gbasis(LstPoly,LstVar)
Example:
gbasis([x^2-y^3,x+y^2],[x,y])gives [y^4-
y^3,x+y^2]
Groebner
Remainder
Returns the remainder of the division of a polynomial by the
Groebner basis of a list of polynomials.
greduce(Poly,LstPoly,LstVar)
Example:
greduce(x*y-1,[x^2-y^2,2*x*y-y^2,y^3],[x,y])
gives 1/2*y^2-1
Hermite
Returns the Hermite polynomial of degree n.
hermite(Intg(n))where n ≤ 1556
Example:
hermite(3)gives 8*x^3-12*x
Lagrange
Returns the Lagrange polynomial for two lists. The list in the
first argument corresponds to the abscissa values, and the list
in the second argument corresponds to the ordinate values.
lagrange((Lst_xk,Lst_yk)
or
lagrange(Mtrx_2*n)
Example:
lagrange([1,3],[0,1])gives (x-1)/2
Laguerre
Returns the Laguerre polynomial of degree n.
laguerre(Intg(n))
Example:
laguerre(4)gives 1/24*a^4+(-1/6)*a^3*x+5/
12*a^3+1/4*a^2*x^2+(-3/2)*a^2*x+35/24*a^2+(-
1/6)*a*x^3+7/4*a*x^2+(-13/3)*a*x+25/12*a+1/
24*x^4+(-2/3)*x^3+3*x^2-4*x+1
Functions and commands
341
Legendre
Chebyshev Tn
Chebyshev Un
Returns the Legendre polynomial of degree n.
legendre(Intg(n))
Example:
legendre(4)gives 35*x^4/8+-15*x^2/4+3/8
Returns the Tchebyshev polynomial of first kind of degree n.
tchebyshev1(Intg(n))
Example:
tchebyshev1(3)gives 4*x^3-3*x
Returns the Tchebyshev polynomial of second kind of degree
n.
tchebyshev2(Intg(n))
Example:
tchebyshev2(3)gives 8*x^3-4*x
Plot
Function
Plots the graph of an expression of one or two variables with
superposition.
plotfunc(Expr,[Var(x)],[Intg(color)])
or
plotfunc(Expr,[VectVar],[Intg(color)])
Example:
plotfunc(3*sin(x)) draws the graph of y=3*sin(x)
Density
Plots the graph of the function z=f(x,y) in the plane where the
values of z are represented by different colors.
plotdensity(Expr,[x=xrange,y=yrange],[z],[x
step],[ystep])
Slopefield
Draws the tangent of the differential equation y'=f(t,y), where
the first argument is the expression f(t,y) (y is the real variable
and t is the abscissa), the second argument is the vector of
variables (abscissa must be listed first), and the third argument
is the optional range.
plotfield(Expr,VectVar,[Opt])
342
Functions and commands
ODE
Draws the solution of the differential equation y'=f(t,y) that
crosses the point (t0,y0), where the first argument is the
expression f(t,y), the second argument is the vector of
variables (abscissa must be listed first), and the third argument
is (t0,y0).
plotode(Expr,VectVar,VectInitCond)
App menu
Press D to open the
Toolbox menus (one of which
is the App menu). App
functions are used in HP
apps to perform common
calculations. For example, in
the Function app, the Plot
view Fcn menu has a
function called SLOPEthat calculates the slope of a given
function at a given point. The SLOPEfunction can also be
used from the Home view or a program to give the same
results. The app functions described in this section are
grouped by app.
Function app functions
The Function app functions provide the same functionality
found in the Function app's Plot view under the FCN menu. All
these operations work on functions. The functions may be
expressions in X or the names of the Function app variable F0
through F9.
AREA
Area under a curve or between curves. Finds the signed area
under a function or between two functions. Finds the area
under the function Fn or below Fn and above the function Fm,
from lower X-value to upper X-value.
AREA(Fn,[Fm,]lower,upper)
Example:
AREA(-X,X2-2,-2,1) returns 4.5
Functions and commands
343
EXTREMUM
ISECT
Extremum of a function. Finds the extremum (if one exists) of
the function Fn that is closest to the X-value guess.
EXTREMUM(Fn, guess)
Example:
EXTREMUM(X2-X-2,0) returns 0.5
Intersection of two functions. Finds the intersection (if one
exists) of the two functions Fn and Fm that is closest to the X-
value guess.
ISECT(Fn,Fm,guess)
Example:
ISECT(X,3-X,2) returns 1.5
ROOT
SLOPE
Root of a function. Finds the root of the function Fn (if one
exists) that is closest to the X-value guess.
ROOT(Fn,guess)
Example:
ROOT(3-X2,2) returns 1.732…
Slope of a function. Returns the slope of the function Fn at the
X-value (if value exists).
SLOPE(Fn,value)
Example:
SLOPE(3-X2,2)returns -4
Solve app functions
The Solve app has a single function that solves a given
equation or expression for one of its variables. En may be an
equation or expression, or it may be the name of one of the
Solve Symbolic variables E0–E9.
SOLVE
Solve. Solves an equation for one of its variables. Solves the
equation En for the variable var, using the value of guess as
the initial value for the value of the variable var. If En is an
expression, then the value of the variable var that makes the
expression equal to zero is returned.
SOLVE(En,var,guess)
344
Functions and commands
Example:
SOLVE(X2-X-2,X,3)returns 2
type of solution found, as follows:
0—an exact solution was found
1—an approximate solution was found
2—an extremum was found that is as close to a solution
as possible
3—neither a solution, an approximation, nor an
extremum was found
See chapter 13, “Solve app”, beginning on page 257, for
more information about the types of solutions returned by this
function.
Spreadsheet functions
The spreadsheet functions can be selected from the App
Toolbox menu (D > > Spreadsheet). They can
also be selected from the View menu (V) when the
Spreadsheet app is open.
The syntax for many, but not all, the spreadsheet functions
follows this pattern:
functionName(input,[optional
parameters])
Inputis the input list for the function. This can be a cell range
reference, a simple list or anything that results in a list of
values.
One useful optional parameter is Configuration. This is a
string that controls which values are output. Leaving the
parameter out produces the default output. The order of the
values can also be controlled by the order that they appear in
the string.
Functions and commands
345
For example:
=STAT1(A25:A37)
produces the following
default output.
However, if you just wanted
to see the number of data-
points, the mean, and the
standard deviation, you
would enter
=STAT1(A25:A37,”h n
x ”). What the
configuration string is
indicating here is that row headings are required (h), and just
the number of data-points (n), the mean (x), and the standard
deviation ().
SUM
Calculates the sum of a range of numbers.
SUM([input])
For example, SUM)B7:B23)returns the sum of the numbers
in the range B7 to B23. You can also specify a block of cells,
as in SUM(B7:C23).
An error is returned if a cell in the specified range contains a
non-numeric object.
AVERAGE
Calculates the arithmetic mean of a range of numbers.
AVERAGE([input])
For example, AVERAGE(B7:B23)returns the arithmetic
mean of the numbers in the range B7 to B23. You can also
specify a block of cells, as in AVERAG(B7:C23).
An error is returned if a cell in the specified range contains a
non-numeric object.
346
Functions and commands
AMORT
Calculates the principal, interest, and balance of a loan over
a specified period.
AMORT(Range, n, i, pv, pmt[, ppyr=12,
cpyr=ppyr, Grouping=ppyr, beg=false,
fix=current], "configuration"])
Range is the cell range where the results are to be placed. If
only one cell is specified, then the range is automatically
calculated.
Configuration is a string that defines if a header row needs to
be created (starts with H) and what result to place in which
column.
h – show row headers
S – show the start of the period
E – show the end of the period
P – show the principal paid this period
B – show the balance at the end of the period
I – show the interest paid this period
n, i, pv, and pmt are the number of periods for the loan, the
interest rate, the present value, the per-period payment. ppyr
and cpyr are the number of payments per year and the
number of compounding periods per year. Grouping is the
number of periods that need to be grouped together in the
amortization table. beg is 1 when payments are made at the
beginning of each period; otherwise it is 0. fix is the number
of decimal places to used in the results the calculations.
STAT1
The STAT1 function provides a range of one-variable statistics.
It can calculate all or any of x , Σ, Σ², s, s², σ, σ², serr, sqd,
n, min, q1, med, q3, and max.
STAT1(Input range, [mode], [outlier
removal Factor], ["configuration"])
Input range is the data source (such as A1:D8).
Mode defines how to treat the input. The valid values are:
1 = Single data. Each column is treated as an
independent dataset.
Functions and commands
347
2 = Frequency data. Columns are used in pairs and the
second column is treated as the frequency of appearance
of the first column.
3 = Weight data. Columns are used in pairs and the
second column is treated as the weight of the first
column.
4 = One–Two data. Columns are used in pairs and the 2
columns are multiplied to generate a data point.
If more than one column is specified, they are each treated as
a different input data set. If only one row is selected, it is
treated as 1 data set. If two columns are selected, the mode
defaults to frequency.
Outlier Removal Factor: This allows for the removal of any
datapoint that is more than n times the standard deviation
(where n is the outlier removal factor). By default this factor is
set to 2.
Configuration: indicates which values you want to place in
which row and if you want row or columns headers. Place the
symbol for each value in the order that you want to see the
values appear in the spreadsheet. The valid symbols are:
H (Place column headers)
h (Place row headers)
x
Σ
Σ²
s
s²
σ
σ²
serr
q3
sqd
max
n
min
q1
med
For example if you specifiy "h n Σ x", the first column will
contain row headers, the first row will be the number of items
in the input data, the second the sum of the items and the third
the mean of the data. If you do not specify a configuration
string, a default string will be used.
Notes:
The STAT1 f function only updates the content of the
destination cells when the cell that contains the formula is
calculated. This means that if the spreadsheet view contains
at the same time results and inputs, but not the cell that
348
Functions and commands
contains the call to the STAT1 function, updating the data will
not update the results as the cell that contains STAT1 is not
recalculated (since it is not visible).
The format of cells that receive headers is changed to have
Show " " set to false.
The STAT1 function will overwrite the content of destination
cells, potentially erasing data.
Examples:
STAT1(A25:A37)
STAT1(A25:A37,”h n x ”).
REGRS
Attempts to fit the input data to a specified function (default is
linear).
REGRS(Input range, [ mode],
["configuration"])
•
•
Input range: specifies the data source; for example
A1:D8. It must contain an even number of columns. Each
pair will be treated as a distinct set of datapoints.
Mode: specifies the mode to be used for the regression:
1 y= sl*x+int
2 y= sl*ln(x)+int
3 y= int*exp(sl*x)
4 y= int*x^sl
5 y= int*sl^x
6 y= sl/x+int
7 y= L/(1 + a*exp(b*x))
8 y= a*sin(b*x+c)+d
9 y= cx^2+bx+a
10 y= dx^3+cx^2+bx+a
11 y= ex^4+dx^3+cx^2+bx+a
Functions and commands
349
•
Configuration: a string which indicates which values you
want to place in which row and if you want row and
columns headers. Place each parameter in the order that
you want to see them appear in the spreadsheet. (If you
do not provide a configuration string, a default one will
be provided.) The valid parameters are:
–
–
–
–
–
–
H (Place column headers)
h (Place row headers)
sl (slope, only valid for modes 1–6)
int (intercept, only valid for modes 1–6)
cor (correlation, only valid for modes 1–6)
cd (Coefficient of determination, only valid for modes
1–6, 8–10)
–
–
sCov (Sample covariance, only valid for modes 1–6)
pCov (Population covariance, only valid for modes
1–6)
–
–
–
–
–
–
–
L (L parameter for mode 7)
a (a parameter for modes 7-–11)
b (b parameter for modes 7-–11)
c (c parameter for modes 8–11)
d (d parameter for modes 8, 10–11)
e (e parameter for mode 11)
py (place 2 cells, one for user input and the other to
display the predicted y for the input)
–
px (place 2 cells, one for user input and the other to
display the predicted x for the input)
Example: REGRS(A25:B37,2)
PredY
Returns the predicted Y for a given x.
PredY(mode, x, parameters)
• Modegoverns the regression model used:
1 y= sl*x+int
2 y= sl*ln(x)+int
3 y= int*exp(sl*x)
4 y= int*x^sl
350
Functions and commands
5 y= int*sl^x
6 y= sl/x+int
7 y= L/(1 + a*exp(b*x))
8 y= a*sin(b*x+c)+d
9 y= cx^2+bx+a
10 y= dx^3+cx^2+bx+a
11 y= ex^4+dx^3+cx^2+bx+a
• Parametersis either one argument (a list of the
coefficients of the regression line), or the n coefficients
one after another.
PredX
Returns the predicted x for a given y.
PredX(mode, y, parameters)
• Modegoverns the regression model used:
1 y= sl*x+int
2 y= sl*ln(x)+int
3 y= int*exp(sl*x)
4 y= int*x^sl
5 y= int*sl^x
6 y= sl/x+int
7 y= L/(1 + a*exp(b*x))
8 y= a*sin(b*x+c)+d
9 y= cx^2+bx+a
10 y= dx^3+cx^2+bx+a
11 y= ex^4+dx^3+cx^2+bx+a
• Parametersis either one argument (a list of the
coefficients of the regression line), or the n coefficients
one after another.
HypZ1mean
The hypothesis test HypZ1mean is a one-sample Z-test for
comparing means.:
HypZ1mean( input list, ["configuration"])
HypZ1mean(SampMean, SampSize,
NullPopMean, PopStdDev, SigLevel, Mode,
["configuration"])
Functions and commands
351
•
•
Input List: A list of input variables (see Input Parameters
below). This can be a range reference, a list of cell
references, or a simple list of values.
Input Parameters:
–
–
–
–
–
SampMean
SampSize
NullPopMean
PopStdDev
SigLevel
•
•
Mode: Specifies how to calculate the statistic:
1 = Less than
2 = Greater than
3 = Not equal
Configuration: A string that controls what results are
shown and the order in which they appear. An empty
string "" displays the default: all results (including
headers).
–
–
–
–
–
–
–
–
–
h = header cells will be created
acc = Accept/Reject
tZ = Test Z
tM = Test Mean
prob = Probability
cZ = Critical Z
cx1 = Critical xbar 1
cx2 = Critical xbar 2
std = Standard deviation
HYPZ2mean
The hypothesis test HypZ2mean is a two-sample Z-test for
comparing means.
HypZ2mean( input list, ["configuration"])
HypZ2mean(SampMean, SampMean2,
SampSize,SampSize2, PopStdDev,
PopStdDev2,SigLevel, Mode,
["configuration"])
352
Functions and commands
•
•
Input List: A list of input variables (see Input Parameters
below). This can be a range reference, a list of cell
references, or a simple list of values.
Input Parameters:
–
–
–
–
–
–
–
SampMean
SampMean2
SampSize
SampSize2
PopStdDev
PopStdDev2
SigLevel
•
•
Mode: Specifies how to calculate the statistic:
–
–
–
1 = Less than
2 = Greater than
3 = Not equal
Configuration: A string that controls what results are
shown and the order in which they appear. An empty
string "" displays the default: all results (including
headers).
–
–
–
–
–
–
–
–
–
h = header cells will be created
acc = Accept/Reject
tZ = Test Z
tM = Test Mean
prob = Probability
cZ = Critical Z
cx1 = Critical xbar 1
cx2 = Critical xbar 2
std = Standard deviation
Functions and commands
353
HypZ1prop
The hypothesis test HypZ1prop is a one-proportion Z-test.
HypZ1prop(input list, ["configuration"])
HypZ1prop(SuccCount, SampSize,
NullPopProp, SigLevel, Mode,
["configuration"])
•
•
Input List: A list of input variables (see Input Parameters
below). This can be a range reference, a list of cell
references, or a simple list of values.
Input Parameters:
–
–
–
–
SuccCount
SampSize
NullPopMean
SigLevel
•
•
Mode: Specifies how to calculate the statistic:
–
–
–
1 = Less than
2 = Greater than
3 = Not equal
Configuration: A string that controls what results are
shown and the order in which they appear. An empty
string "" displays the default: all results (including
headers).
–
–
–
–
–
–
–
–
–
h = header cells will be created
acc = Accept/Reject
tZ = Test Z
tP
prob
cZ
cp1
cp2
std
354
Functions and commands
HypZ2prop
The hypothesis test HypZ2prop is a two-proportion Z-test for
comparing means.
HypZ2prop(input list, ["configuration"])
HypZ2prop(SuccCount1, SuccCount2,
SampSize1, SampSize2, SigLevel, Mode,
["configuration"])
•
•
Input List: A list of input variables (see Input Parameters
below). This can be a range reference, a list of cell
references, or a simple list of values.
Input Parameters:
–
–
–
–
–
SuccCount1
SuccCount2
SampSize1
SampSize2
SigLevel
•
•
Mode: Specifies how to calculate the statistic:
–
–
–
1 = Less than
2 = Greater than
3 = Not equal
Configuration: A string that controls what results are
shown and the order in which they appear. An empty
string "" displays the default: all results (including
headers).
–
–
–
–
–
–
–
–
h = header cells will be created
acc = Accept/Reject
tZ = Test Z
tP
prob
cZ
cp1
cp2
Functions and commands
355
HypT1mean
The hypothesis test HypT1mean is a one-sample T-test for
comparing means.
HypT1mean(input list, ["configuration"])
HypT1mean(SampMean, SampStdDev, SampSize,
NullPopProp, SigLevel, Mode,
["configuration"])
•
•
Input List: A list of input variables (see Input Parameters
below). This can be a range reference, a list of cell
references, or a simple list of values.
Input Parameters:
–
–
–
–
–
SampMean
SampStdDev
SampSize
NullPopMean
SigLevel
•
•
Mode: Specifies how to calculate the statistic:
–
–
–
1 = Less than
2 = Greater than
3 = Not equal
Configuration: A string that controls what results are
shown and the order in which they appear. An empty
string "" displays the default: all results (including
headers).
–
–
–
–
–
–
–
–
h = header cells will be created
acc = Accept/Reject
tT
prob
df
ct
cX1
cX2
356
Functions and commands
HypT2mean
The hypothesis test HypT2mean is a two-sample T-test for
comparing means.
HypT2mean(input list, ["configuration"])
HypT2mean(SampMean1,
SampMean2,SampStdDev1,
SampStdDev2,SampSize1,SampSize2,pooled,
SigLevel, Mode, ["configuration"])
•
•
Input List: A list of input variables (see Input Parameters
below). This can be a range reference, a list of cell
references, or a simple list of values.
Input Parameters:
–
–
–
–
–
–
–
–
SampMean1
SampMean2
SampStdDev1
SampStdDev2
SampSize1
SampSize2
pooled = 0 == false or 1 == true
SigLevel
•
•
Mode: Specifies how to calculate the statistic:
–
–
–
1 = Less than
2 = Greater than
3 = Not equal
Configuration: A string that controls what results are
shown and the order in which they appear. An empty
string "" displays the default: all results (including
headers).
–
–
–
–
–
–
h = header cells will be created
acc = Accept/Reject
tT
tM
prob
df
Functions and commands
357
–
–
–
–
ct
cX1
cX2
stD
ConfZ1mean
The ConfZ1mean calculates the confidence interval for a one-
sample Z-test.
ConfZ1mean(input list, ["configuration"])
ConfZ1mean(SampMean, SampSize, PopStdDevm
ConfLevel, ["configuration"])
•
•
Input List: A list of input variables (see Input Parameters
below). This can be a range reference, a list of cell
references, or a simple list of values.
Input Parameters:
–
–
–
–
SampMean
SampSize
PopStdDevm
ConfLevel
•
Configuration: A string that controls what results are
shown and the order in which they appear. An empty
string "" displays the default: all results (including
headers).
–
–
–
–
–
h = header cells will be created
Z
zXl
zXh
std
ConfZ2mean
The ConfZ2mean calculates the confidence interval for a two-
sample Z-test.
ConfZ2mean(input list, ["configuration"])
ConfZ2mean(SampMean1, SampMean2,
SampSize1, SampSize2,
PopStdDev1,PopStdDev2 ConfLevel,
["configuration"])
358
Functions and commands
•
•
Input List: A list of input variables (see Input Parameters
below). This can be a range reference, a list of cell
references, or a simple list of values.
Input Parameters:
–
–
–
–
–
–
–
SampMean1
SampMean2
SampSize1
SampSize2
PopStdDev1
PopStdDev2
ConfLevel
•
Configuration: A string that controls what results are
shown and the order in which they appear. An empty
string "" displays the default: all results (including
headers).
–
–
–
–
–
–
h = header cells will be created
Z
zXl
zXh
zXm
std
ConfZ1prop
The ConfZ1prop calculates the confidence interval for a one-
proportion Z-test.
ConfZ1prop(input list, ["configuration"])
ConfZ1prop(SuccCount, SampSize,
ConfLevel, ["configuration"])
•
•
Input List: A list of input variables (see Input Parameters
below). This can be a range reference, a list of cell
references, or a simple list of values.
Input Parameters:
–
–
–
SuccCount
SampSize
ConfLevel
Functions and commands
359
•
Configuration: A string that controls what results are
shown and the order in which they appear. An empty
string "" displays the default: all results (including
headers).
–
–
–
–
–
–
h = header cells will be created
Z
zXl
zXh
zXm
std
ConfZ2prop
The ConfZ1mean calculates the confidence interval for a two-
proportion Z-test.
ConfZ2prop(input list, ["configuration"])
ConfZ2prop(SuccCount1, SuccCount2,
SampSize1, SampSize2,ConfLevel,
["configuration"])
•
•
Input List: A list of input variables (see Input Parameters
below). This can be a range reference, a list of cell
references, or a simple list of values.
Input Parameters:
–
–
–
–
–
SuccCount1
SuccCount2
SampSize1
SampSize2
ConfLevel
•
Configuration: A string that controls what results are
shown and the order in which they appear. An empty
string "" displays the default: all results (including
headers).
–
–
–
–
h = header cells will be created
Z
zXl
zXh
360
Functions and commands
–
–
zXm
std
ConfT1mean
The ConfT1mean calculates the confidence interval for a one-
sample T-test.
ConfT1mean(input list, ["configuration"])
ConfT1mean(SampMean, SampStdDev,
SampSize, ConfLevel, ["configuration"])
•
•
Input List: A list of input variables (see Input Parameters
below). This can be a range reference, a list of cell
references, or a simple list of values.
Input Parameters:
–
–
–
–
SampMean
SampStd
SampSize
ConfLevel
•
Configuration: A string that controls what results are
shown and the order in which they appear. An empty
string "" displays the default: all results (including
headers).
–
–
–
–
–
–
h = header cells will be created
DF
T
tX1
tXh
std
ConfT2mean
The ConfT2mean calculates the confidence interval for a two-
sample T-test.
ConfT2mean(input list, ["configuration"])
ConfT2mean(SampMean, SampMean2,
SampStdDev, SampStdDev2, SampSize,
SampSize2, pooled, ConfLevel,
["configuration"])
Functions and commands
361
•
•
Input List: A list of input variables (see Input Parameters
below). This can be a range reference, a list of cell
references, or a simple list of values.
Input Parameters:
–
–
–
–
–
–
–
–
SampMean
SampMean2
SampStdDev
SampStdDev2
SampSize
SampSize2
pooled
ConfLevel
•
Configuration: A string that controls what results are
shown and the order in which they appear. An empty
string "" displays the default: all results (including
headers).
–
–
–
–
–
–
–
h = header cells will be created
DF
T
zX
zXh
zXm
std
362
Functions and commands
Statistics 1Var app functions
The Statistics 1Var app has three functions designed to work
together to calculate summary statistics based on one of the
statistical analyses (H1-H5) defined in the Symbolic view of
the Statistics 1Var app.
Do1VStats
SetFreq
Do1:variable statistics. Performs the same calculations as
tapping
in the Numeric view of the Statistics 1Var app
and stores the results in the appropriate Statistics 1Var app
results variables. Hn must be one of the Statistics 1Var app
Symbolic view variables H1-H5.
Do1VStats(Hn)
Set frequency. Sets the frequency for one of the statistical
analyses (H1-H5) defined in the Symbolic view of the
Statistics 1Var app. The frequency can be either one of the
columns D0-D9, or any positive integer. Hn must be one of the
Statistics 1Var app Symbolic view variables H1-H5. If used,
Dn must be one of the column variables D0-D9; otherwise,
value must be a positive integer.
SetFreq(Hn,Dn)
or
SetFreq(Hn,value)
SetSample
Set sample data. Sets the sample data for one of the statistical
analyses (H1-H5) defined in the Symbolic view of the
Statistics 1Var app. Sets the data column to one of the column
variables D0-D9for one of the statistical analyses H1-H5.
SetSample(Hn,Dn)
Statistics 2Var app functions
The Statistics 2Var app has a number of functions. Some are
designed to calculate summary statistics based on one of the
statistical analyses (S1-S5) defined in the Symbolic view of
the Statistics 2Var app. Others predict X- and Y-values based
on the fit specified in one of the analyses.
PredX
Predict X. Uses the fit from the first active analysis (S1-S5)
found to predict an x-value given the y-value.
PredX(value)
Functions and commands
363
PredY
Resid
Predict Y. Uses the fit from the first active analysis (S1-S5)
found to predict a y-value given the x-value.
PredY(value)
Residuals. Calculates a list of residuals, based on column data
and a fit defined in the Symbolic view via S1-S5.
Resid(Sn) or Resid()
Resid() looks for the first defined analysis in the Symbolic view
(S1-S5).
Do2VStats
Do 2:variable statistics. Performs the same calculations as
tapping
in the Numeric view of the Statistics 2Var app
and stores the results in the appropriate Statistics 2Var app
results variables. Sn must be one of the Statistics 2Var app
Symbolic view variables S1-S5.
Do2VStats(Sn)
SetDepend
SetIndep
Set dependent column. Sets the dependent column for one of
the statistical analyses S1-S5to one of the column variables
C0-C9.
SetDepend(Sn,Cn)
Set independent column. Sets the independent column for one
of the statistical analyses S1-S5to one of the column
variablesC0-C9.
SetIndep(Sn,Cn)
Inference app functions
The Inference app has a single function that returns the same
results as tapping in the Numeric view of the Inference
app. The results depend on the contents of the Inference app
variables Method, Type, and AltHyp.
DoInference
Calculate confidence interval or test hypothesis. Performs the
same calculations as tapping
in the Numeric view of
the Inference app and stores the results in the appropriate
Inference app results variables.
DoInference()
364
Functions and commands
HypZ1mean
The hypothesis test HypZ1mean is a one-sample Z-test for
comparing means.:
HypZ1mean(SampMean, SampSize,
NullPopMean, PopStdDev, SigLevel, Mode)
•
Mode: Specifies how to calculate the statistic:
1 = Less than
2 = Greater than
3 = Not equal
HYPZ2mean
The hypothesis test HypZ2mean is a two-sample Z-test for
comparing means.
HypZ2mean(SampMean, SampMean2,
SampSize,SampSize2, PopStdDev,
PopStdDev2,SigLevel, Mode)
•
Mode: Specifies how to calculate the statistic:
–
–
–
1 = Less than
2 = Greater than
3 = Not equal
HypZ1prop
The hypothesis test HypZ1prop is a one-proportion Z-test.
HypZ1prop(SuccCount, SampSize,
NullPopProp, SigLevel, Mode)
•
Mode: Specifies how to calculate the statistic:
–
–
–
1 = Less than
2 = Greater than
3 = Not equal
HypZ2prop
The hypothesis test HypZ2prop is a two-proportion Z-test for
comparing means.
HypZ2prop(SuccCount1, SuccCount2,
SampSize1, SampSize2, SigLevel, Mode)
Functions and commands
365
•
Mode: Specifies how to calculate the statistic:
–
–
–
1 = Less than
2 = Greater than
3 = Not equal
HypT1mean
The hypothesis test HypT1mean is a one-sample T-test for
comparing means.
HypT1mean(SampMean, SampStdDev, SampSize,
NullPopProp, SigLevel, Mode)
•
Mode: Specifies how to calculate the statistic:
–
–
–
1 = Less than
2 = Greater than
3 = Not equal
HypT2mean
The hypothesis test HypT2mean is a two-sample T-test for
comparing means.
HypT2mean(SampMean1,
SampMean2,SampStdDev1,
SampStdDev2,SampSize1,SampSize2,pooled,
SigLevel, Mode)
–
•
Mode: Specifies how to calculate the statistic:
–
–
–
1 = Less than
2 = Greater than
3 = Not equal
ConfZ1mean
ConfZ2mean
The ConfZ1mean calculates the confidence interval for a one-
sample Z-test.
ConfZ1mean(SampMean, SampSize, PopStdDevm
ConfLevel)
The ConfZ2mean calculates the confidence interval for a two-
sample Z-test.
ConfZ2mean(SampMean1, SampMean2,
SampSize1, SampSize2,
PopStdDev1,PopStdDev2 ConfLevel)
366
Functions and commands
ConfZ1prop
ConfZ2prop
ConfT1mean
ConfT2mean
The ConfZ1prop calculates the confidence interval for a one-
proportion Z-test.
ConfZ1prop(SuccCount, SampSize,
ConfLevel, ["configuration"])
The ConfZ1mean calculates the confidence interval for a two-
proportion Z-test.
ConfZ2prop(SuccCount1, SuccCount2,
SampSize1, SampSize2,ConfLevel)
The ConfT1mean calculates the confidence interval for a one-
sample T-test.
ConfT1mean(SampMean, SampStdDev,
SampSize, ConfLevel)
The ConfT2mean calculates the confidence interval for a two-
sample T-test.
ConfT2mean(SampMean, SampMean2,
SampStdDev, SampStdDev2, SampSize,
SampSize2, pooled, ConfLevel])
Finance app functions
The Finance App uses a set of functions that all reference the
same set of Finance app variables. There are 5 main TVM
variables, 4 of which are mandatory for each of these
functions (except DoFinance). There are 3 other variables
that are optional and have default values. These variables
occur as arguments to the Finance app functions in the
following set order:
– NbPmt—the number of payments
– IPYR—the annual interest rate
– PV—the present value of the investment or loan
– PMTV—the payment value
– FV—the future value of the investment or loan
– PPYR—the number of payments per year (12 by
default)
Functions and commands
367
– CPYR—the number of compounding periods per year
(12 by default)
– END—payments made at the end of the period
The arguments PPYR, CPYR, and ENDare optional; if not
supplied, PPYR=12, CPYR=PPYR, and END=1.
CalcFV
Solves for the future value of an investment or loan.
CalcFV(NbPmt,IPYR,PV,PMTV[,PPYR,CPYR,END]
CalcIPYR
Solves for the interest rate per year of an investment or loan.
CalcIPYR(NbPmt,PV,PMTV,FV[,PPYR,CPYR,
END])
CalcNbPmt
CalcPMTV
CalcPV
Solves for the number of payments in an investment or loan.
CalcNbPmt(IPYR,PV,PMTV,FV[,PPYR,CPYR,END])
Solves for the value of a payment for an investment or loan.
CalcPMTV(NbPmt,IPYR,PV,FV[,PPYR,CPYR,END])
Solves for the present value of an investment or loan.
CalcPV(NbPmt,IPYR,PMTV,FV[,PPYR,CPYR,END])
DoFinance
Calculate TVM results. Solves a TVM problem for the variable
TVMVar. The variable must be one of the Finance app's
Numeric view variables. Performs the same calculation as
tapping
in the Numeric view of the Finance app with
TVMVar highlighted.
DoFinance(TVMVar)
Example:
DoFinance(FV) returns the future value of an investment in
the same way as tapping
in the Numeric view of the
Finance app with FVhighlighted.
368
Functions and commands
Linear Solver app functions
The Linear Solver app has 3 functions that offer the user
flexibility in solving 2x2 or 3x3 linear systems of equations.
Solve2x2
Solves a 2x2 linear system of equations.
Solve2x2(a, b, c, d, e, f)
Solves the linear system represented by:
ax+by=c
dx+ey=f
Solve3x3
Solves a 3x3 linear system of equations.
Solve3x3(a, b, c, d, e, f, g, h, i, j, k, l)
Solves the linear system represented by:
ax+by+cz=d
ex+fy+gz=h
ix+jy+kz=l
LinSolve
Solve linear system. Solves the 2x2 or 3x3 linear system
represented by matrix.
LinSolve(matrix)
Example:
LinSolve([[A, B, C], [D, E,F]]) solves the linear system:
ax+by=c
dx+ey=f
Triangle Solver app functions
The Triangle Solver app has a group of functions which allow
solving a complete triangle from the input of three consecutive
parts of the triangle. The names of these commands use A to
signify an angle, and S to signify a side length. To use these
commands, enter three inputs in the specified order given by
the command name. These commands all return a list of the
three unknown values (lengths of sides and/or measures of
angles).
Functions and commands
369
AAS
ASA
SAS
SSA
AAS Uses the measure of two angles and the length of the
non-included side to calculate the measure of the third angle
and the lengths of the other two sides.
AAS(angle,angle,side)
ASA Uses the measure of two angles and the length of the
included side to calculate the measure of the third angle and
the lengths of the other two sides.
ASA(angle,side,angle)
SAS Uses the length of two sides and the measure of the
included angle to calculate the length of the third side and the
measures of the other two angles.
SAS(side,angle,side)
SSA Uses the lengths of two sides and the measure of a non-
included angle to calculate the length of the third side and the
measures of the other two angles.
SSA(side,side,angle)
SSS
SSS Uses the lengths of the three sides of a triangle to
calculate the measures of the three angles.
SSS(side,side,side)
DoSolve
Solves the current problem in the Triangle Solver app. The
Triangle Solver app must have enough data entered to
successfully solve that is, there must be at least three values
entered, one of which must be a side length.
DoSolve()
Example:
In Degree mode, SAS(2,90,2) returns {2.82… 45,45}.
In the indeterminate case AASwhere two solutions may be
possible, AASmay return a list of two such lists containing
both results.
370
Functions and commands
Linear Explorer functions
SolveForSlope
•
•
•
Input: enter two coordinates of the line: x2, x1, y2, y1
Output: Slope of the line: m = (y2–y1)/(x2–x1)
Example: SolveForSlope(3,2,4,2)yields 2
SolveForYIntercept
•
•
•
Input: x, y, m (that is, slope)
Output: y-intercept of the line: c = y–mx
Example: SolveForYIntercept(2,3,–1)yields 5
Quadratic Explorer functions
SOLVE
Input: a, b, c where a, b, c are the constants in ax2+bx+c=0
Output: Solves the equation to determine the value of x:
(–b+-d)/2a where d = √(b2 –4ac)
Example: SOLVE(1,0,–4) yields {–2,2}
DELTA
Input: a, b, c where a, b, c are the constants in ax2+bx+c=0
Output: Discriminant/Delta of the equation: D = b 2–4ac
Example: DELTA(1,0,–4) yields 16
Common app functions
In addition to the app functions specific to each app, there are
two functions common to the following apps:
•
•
•
•
•
•
Function
Solve
Parametric
Polar
Sequence
Advanced Graphing
Functions and commands
371
CHECK
Checks—that is, selects—the Symbolic view variable Symbn.
Symbncan be any of the following:
• F0-F9—for the Function app
• E0-E9—for the Solve app
• H1-H5—for the Statistics 1Var app
• S1-S5—for the Statistics 2Var app
• X0/Y0-X9/Y9—for the parametric app
• R0-R9—for the Polar app
• U0-U9—for the Sequence app
CHECK(Symbn)
Example:
CHECK(F1) checks the Function app Symbolic view variable
F1. The result is that F1(X) is drawn in the Plot view and has a
column of function values in the Numeric view of the Function
app.
UNCHECK
Unchecks the Symbolic view variable Symbn.
UNCHECK(Symbn)
Example:
UNCHECK(R1) unchecks the Polar app Symbolic view
variable R1. The result is that R1() is not drawn in the Plot
view and does not appear in the Numeric view of the Polar
app.
Ctlg menu
The Catlg menu brings
together all the functions and
commands available on the
HP Prime. However, this
section describes the
functions and commands
that can only be found on
the Catlg menu. The
functions and commands that are also on the Math menu are
described in “Keyboard functions” on page 307. Those that
are also on the CAS menu are described in “CAS menu” on
372
Functions and commands
page 322. The functions and commands specific to the
Geometry app are described in “Geometry functions and
commands” on page 165, and those specific to programming
are described in “Program commands” on page 525.
Some of the options on the Catlg menu can
also be chosen from the relations palette
(Sr)
(
Inserts opening parenthesis.
*
Multiplication symbol. Returns the product of numbers or the
scalar product of two vectors.
+
−
Addition symbol. Returns the term-by-term sum of two lists or
two matrices, or adds two strings together.
Subtraction symbol. Returns the term-by-term subtraction of
two lists or two matrices.
.*
List or matrix multiplication symbol. Returns the term-by-term
multiplication of two lists or two matrices.
.*(Lst||Mtrx,Lst||Mtrx)
Example:
[[1,2],[3,4]].*[[3,4],[5,6]] gives
[[3,8],[15,24]]
./
.^
List or matrix division symbol. Returns the term-by-term division
of two lists or two matrices.
Returns the list or matrix where each term is the corresponding
term of the list or matrix given as argument, raised to the
power n.
(Lst or Mtrx).^Intg(n)
:=
Stores the evaluated expression in the variable. Note that:=
cannot be used with the graphics variables G0–G9. See the
command BLIT.
var:=expression
Example:
A:=3 stores the value 3 in the variable A
Functions and commands
373
<
Strict inequality test. Returns 1 if the inequality is true, and 0
if the inequality is false. Note that more than two objects can
be compared. Thus 6 < 8 < 11 returns 1 (because it is true)
whereas 6 < 8 < 3 returns 0 (as it is false).
<=
<>
Inequality test. Returns 1 if the inequality is true, and 0 if the
inequality is false. Note that more than two objects can be
compared. See comment above regarding <.
Inequality test. Returns 1 if the inequality is true, and 0 if the
inequality is false.
=
Equality symbol. Connects two members of an equation.
==
Equality test. Returns 1 if the equality is true, and 0 if the
equality is false.
>
Strict inequality test. Returns 1 if the inequality is true, and 0
if the inequality is false. Note that more than two objects can
be compared. See comment above regarding <.
>=
Inequality test. Returns 1 if the inequality is true, and 0 if the
inequality is false. Note that more than two objects can be
compared. See comment above regarding <.
^
Inserts the power symbol.
a2q
Returns the symbolic expression in quadratic form in the
variables given in VectVar of the symmetric matrix A.
a2q(MtrxA,VectVar)
Example:
a2q([[1,2],[4,4]],[x,y])gives x^2+6*x*y+4*y^2
abcuv
ACOS
Returns the polynomials U and V such that for polynomials A,
B and C, PU+QV=R. With only polynomials as arguments, the
variable used is x. With a variable as the final argument, the
polynomials are expressions of it.
abcuv(Poly(A),Poly(B),Poly(C),[Var])
Example:
abcuv(x^2+2*x+1,x^2-1,x+1)gives [1/2,(-1)/2]
–1
Arc cosine: cos x.
ACOS(value)
374
Functions and commands
additionally
algvar
Used in programming with assumeto state an additional
assumption about a variable.
Example:
assume(n,integer);
additionally(n>5);
Returns the list of the symbolic variable names used in an
expression. The list is ordered by the algebraic extensions
required to build the original expression.
algvar(Expr)
Example:
algvar(sqrt(x)+y)gives [[y],[x]]
alog10
altitude
Returns the solution when 10 is taken to the power of an
expression.
alog10(Expr)
Example:
alog10(3)gives 1000
Draws the altitude through A of the triangle ABC.
altitude(Pnt or Cplx(A),Pnt or Cplx(B),Pnt or
Cplx(C))
Example:
altitude(A,B,C)draws a line passing through point A
that is perpendicular to BC.
AND
Logical And.
expr1 AND expr2
Example:
3+1==4 AND 4 < 5returns 1.
angleatraw
Ans
Displays the value of the measure of the angle AB-AC at point
z0.
angleatraw(Pnt(A),Pnt(B),Pnt(C),(Pnt or
Cplx(z0)))
Returns the previous answer.
Ans
Functions and commands
375
append
apply
Appends an element to a list, sequence or set.
append((Lst||Seq||Set,Elem)
Example:
append([1,2,3],4)gives [1,2,3,4]
Returns the result of applying a function to the elements in a
list.
apply(Fnc,Lst)
Example:
apply(x->x^3,[1,2,3])gives [1,8,27]
approx
With one argument, returns the numerical evaluation of it.
With a second argument, returns the numerical evaluation of
the first argument with the number of significant figures taken
from the second argument.
approx(Expr,[Int])
areaat
Displays the algebraic area at point z0 of a circle or a
polygon. A legend is provided.
areaat(Polygon,Pnt||Cplx(z0))
areaatraw
Displays the algebraic area at point z0 of a circle or a
polygon.
areaatraw(Polygone,Pnt||Cplx(z0))
–1
ASIN
Arc sine: sine x.
ASIN(value)
assume
Used in programming to state an assumption about a
variable.
assume(Expr)
–1
ATAN
Arc tan: tan x.
ATAN(value)
barycenter
Draws the barycenter of the system consisting of point 1 with
weight coefficient 1, point 2 with weight coefficient 2, point 3
with weight coefficient 3, etc.
barycenter([Pnt1,Coeff1],[Pnt2,Coeff2],[Pnt3,
Coeff3])
Example:
barycenter([–3,1],[3,1],[4,2]) gives point(2,0)
376
Functions and commands
basis
Returns the basis of the linear subspace defined by the set of
vectors consisting of vector 1, vector 2,..., and vector n.
basis(Lst(vector1,...,vectorn))
Example:
basis([[1,2,3],[4,5,6],[7,8,9],[10,11,12]])
gives [[-3,0,3],[0,-3,-6]]
BEGIN
Used in programming to begin a set of statements that should
be taken as a single statement.
bisector
Draws the bisector of the angle AB-AC.
bisector((Pnt(A) or Cplx),(Pnt(B) or
Cplx),Pnt(C) or Cplx))
Example:
bisector(0,-4i,4)draws the line given by y=–x
black
blue
Used with displayto specify the color of the geometrical
object to be displayed.
Used with displayto specify the color of the geometrical
object to be displayed.
bounded_function
Returns the argument returned by a limit function thereby
indicating that the function is bounded.
BREAK
Used in programming to interrupt a loop.
breakpoint
Used in programming to insert an intentional stopping or
pausing point.
canonical_form
Returns a second degree trinomial in canonical form.
canonical_form(Trinom(a*x^2+b*x+c),[Var])
Example:
canonical_form(2*x^2-12*x+1) gives 2*(x-3)^2-17
cat
Evaluates the objects in a sequence, then returns them
concatenated as a string.
cat(SeqObj)
Example:
cat("aaa",c,12*3)gives "aaac3"
Functions and commands
377
center
Displays a circle with its center indicated.
center(Crcle)
Example:
center(circle(x^2+y2–x–y)) gives point(1/2,1/2)
cFactor
Returns an expression factorized over the complex field (on
Gaussian integers if there are more than two ).
cfactor(Expr)
Example:
cFactor(x^2*y+y)gives (x+i)*(x-i)*y
charpoly
chrem
circle
Returns the coefficients of the characteristic polynomial of a
matrix. With only one argument, the variable used in the
polynomial is x. With a variable as second argument, the
polynomial is an expression of it.
charpoly(Mtrx,[Var])
Returns the Chinese remainders for two lists of integers.
chrem(LstIntg(a,b,c....),LstIntg(p,q,r,....))
Example:
chrem([2,3],[7,5])gives [-12,35]
With two arguments, draws a circle. If the second argument
is a point, then the distance between it and the point given as
the first argument is equal to the diameter the circle. If the
second argument is a complex, then the center of the circle is
at the point given in the first argument and the absolute value
of the second argument is the radius of the circle.
circle((Pnt or Cplx(A)),(Pnt or
Cplx(B)),[Real(a)],[Real(b)],[Var(A)],[Var(B)
])
Example:
circle(GA,GB) draws the circle with diameter AB
circumcircle
Returns the circumcircle of the triangle ABC.
circumcircle((Pnt or Cplx(A)),(Pnt or
Cplx(B)),((Pnt or Cplx(C)))
Example:
circumcircle(GA,GB,GC) draws the circle
circumscribed about ΔABC
378
Functions and commands
col
colDim
Returns the column of index n of a matrix.
col(Mtrx,n)
Example:
col([[1,2,3],[4,5,6],[7,8,9]],1)gives [2,5,8]
Returns the number of columns of a matrix.
colDim(Mtrx)
Example:
coldim([[1,2,3],[4,5,6]])gives 3
comDenom
Rewrites a sum of rational fractions as a one rational fraction.
The denominator of the one rational fraction is the common
denominator of the rational fractions in the original
expression. With a variable as second argument, the
numerator and denominator are developed according to it.
comDenom(Expr,[Var])
Example:
comDenom(1/x+1/y^2+1)gives (x*y^2+x+y^2)/
(x*y^2)
common_perpend
icular
Draws the common perpendicular of the lines D1 and D2.
common_perpendicular(Line(D1),Line(D2))
companion
Returns the companion matrix of a polynomial.
companion(Poly,Var)
Example:
companion(x^2+5x-7,x)gives [[0,7],[1,-5]]
compare
Compares objects, and returns 1 if type(arg1)<type(arg2) or
if type(arg1)=type(arg2) and arg1<arg2, and returns 0
otherwise.
compare(Obj(arg1),Obj(arg2))
Example:
compare(1,2)gives 1
complexroot
With two arguments, returns vectors, each of which is either a
complex root of the polynomial P with its multiplicity or an
interval the boundaries of which are the opposite vertices of
a rectangle with sides parallel to the axis and containing a
complex root of the polynomial with the multiplicity of this
root. With four arguments, returns vectors described as for
Functions and commands
379
two arguments, but only for those roots lying in the rectangle
with sides parallel to the axis having complex a and complex
b as opposite vertices
complexroot(Poly(P),Real(l),[Cplx(a)],[Cplx(b
)])
Example:
complexroot(x^5-2*x^4+x^3+i,0.1)gives [[[(-21-
12*i)/32,(-18-9*i)/32],1],[[(6-15*i)/16,(-6-
21*i)/(16-16*i)],1],[[(27+18*i)/
(16+16*i),(24-3*i)/16],1],[[(6+27*i)/
(16+16*i),(9+6*i)/8],1],[[(-15+6*i)/
(16+16*i),(-3+12*i)/16],1]]
cone
conic
Draws a cone with vertex at A, direction given by v, half angle
t, and, if provided, height h and –h.
cone(Pnt(A),Vect(v),Real(t),[Real(h)])
Defines a conic from an expression and draws it. Without a
second argument, x and y are taken as the default variable.
conic(Expr,[LstVar])
Example:
conic(x^2+y^2-81) draws a circle with center at (0,0)
and radius of 9
contains
If the list or set l contains the element e, returns 1+ the index
of the first occurrence of e in l. If the list or set l does not
contain e, returns 0.
contains((Lst(l) or Set(l)),Elem(e))
Example:
contains(%{0,1,2,3%},2)gives 3
CONTINUE
CONVERT
Used in programming to bypass remaining statements in the
current iteration and begin the next iteration in a loop.
Returns the value of an expression subjected to a command.
convert(Expr,Cmd)
Example:
convert(20_m, 1_ft) returns 65.6167979003_ft
380
Functions and commands
convexhull
Returns the convex hull of a list of two-dimensional points.
convexhull(Lst)
Example:
convexhull(0,1,1+i,1+2i,-1-i,1-3i,-2+i)gives
1-3*i,1+2*i,-2+i,-1-i
CopyVar
Copies the first variable into the second variable without
evaluation.
CopyVar(Var1,Var2)
correlation
Returns the correlation of the elements of a list or matrix.
correlation(Lst||Mtrx)
Example:
correlation([[1,2],[1,1],[4,7]])gives 33/
(6*sqrt(31))
COS
Cosine: cosx.
COS(value)
count
Applies a function to the elements in a list or matrix and
returns their sum.
count(Fnc,(Lst||Mtrx))
Example:
count((x)->x,[2,12,45,3,7,78])gives 147
covariance
Returns the covariance of the elements in a list or matrix.
covariance(Lst||Mtrx)
Example:
covariance([[1,2],[1,1],[4,7]])gives 11/3
covariance_correl
atio
Returns the list of the covariance and the correlation of the
elements of a list or matrix.
covariance_correlation(Lst||Mtrx)
Example:
covariance_correlation([[1,2],[1,1],[4,7]])
gives [11/3,33/(6*sqrt(31))]
Functions and commands
381
cpartfrac
Returns the result of partial fraction decomposition of a
rational fraction in the complex field.
cpartfrac(RatFrac)
Example:
cpartfrac((x)/(4-x^2))gives 1/((x-2)*-2)+1/
((x+2)*-2)
crationalroot
Returns the list of complex rational roots of a polynomial
without indicating the multiplicity.
crationalroot(Poly)
Example:
crationalroot(2*x^3+(-5-7*i)*x^2+(-
4+14*i)*x+8-4*i)gives [(3+i)/2,2*i,1+i]
cube
Draws a cube with a vertex at the line AB and a face in the
plane containing A,B, and C.
cube(Pnt(A),Pnt(B),Pnt(C))
cumSum
Returns the list, sequence or string whose elements are the
cumulative sum of the original list, sequence or string.
cumSum(Lst||Seq||Str)
Example:
cumSum([0,1,2,3,4])gives [0,1,3,6,10]
cyan
Used with displayto specify the color of the geometrical
object to be displayed.
cylinder
Draws a cylinder with axis from A in the direction of vector v,
with radius r, and, if provided, with height h.
cylinder(Pnt(A),Vect(v),Real(r),[Real(h)])
DEBUG
Starts the debugger for the program name you specify. In a
program, DEBUG( )will act as a breakpoint and launch the
debugger at that location. This allows you to start debugging
at a specific location, rather than starting at the beginning of
the program.
debug(program_name)
382
Functions and commands
delcols
delrows
deltalist
Returns the matrix that is matrix A with the columns n1...nk
deleted.
delcols(Mtrx(A),Interval(n1...nk)||n1)
Example:
delcols([[1,2,3],[4,5,6],[7,8,9]],1..1)gives
[[1,3],[4,6],[7,9]]
Returns the matrix that is matrix A with the rows n1...nk
deleted.
delrows(Mtrx(A),Interval(n1..n2)||n1)
Example:
delrows([[1,2,3],[4,5,6],[7,8,9]],1..1)gives
[[1,2,3],[7,8,9]]
Returns the list of the differences between consecutive terms in
the original list.
deltalist(Lst)
Example:
deltalist([1,4,8,9])gives [3,4,1]
Dirac
Returns the value of the Dirac delta function for a real number.
Dirac(Real)
Example:
Dirac(1)gives 0
division_point
Returns a point M such that for the given a and b,
(z–a)=k*(z–b) and z=MA=k*MB.
division_point(Pnt or Cplx(a),Pnt or
Cplx(b),Cplx(k))
Example:
division_point(0,6+6*i,4) returns point (8,8)
DO
Used in programming to initiate a step or sequence of steps.
DrawSlp
Draws the line with slope m that goes through the point (a,b)
(i.e. y–b=m(x–a)).
DrawSlp(Real(a),Real(b),Real(m))
Example:
DrawSlp(2,1,3) draws the line given by y=3x–5
Functions and commands
383
e
Enters the mathematical constant e (Euler’s number).
egcd
Returns three polynomials U, V and D such that for two
polynomials A and B:
U(x)*A(x)+V(x)*B(x)=D(x)=GCD(A(x),B(x))
(where GCD(A(x),B(x) is the greatest common divisor of
polynomials A and B).
The polynomials can be provided in symbolic form or as lists.
Without a third argument, it is assumed that the polynomials
are expressions of x. With a variable as third argument, the
polynomials are expressions of it.
egcd((Poly or Lst(A)),(Poly or Lst(B)),[Var])
Example:
egcd((x-1)^2,x^3-1)gives [-x-2,1,3*x-3]
eigenvals
Returns the sequence of eigenvalues of a matrix.
eigenvals(Mtrx)
Example:
eigenvals([[-2,-2,1],[-2,1,-2],[1,-2,-2]])
gives 3,-3,-3
eigenvects
eigVc
Returns the eigenvectors of a diagonalizable matrix.
eigenvects(Mtrx)
Returns the eigenvectors of a diagonalizable matrix.
eigVc(Mtrx)
eigVl
Returns the Jordan matrix associated with a matrix when the
eigenvalues are calculable.
eigVl(Mtrx)
element
Shows a point on a curve or a real in an interval.
element((Curve or Real_interval),(Pnt or
Real))
Example:
element(0..5) creates a value of 2.5 initially. Tapping
on this value and pressing Enter enables you to press a
cursor key to increase or decrease the value in a manner
similar to a slider bar. Press Enter again to close the
slider bar. The value you set can be used as a coefficient
in a function you subsequently plot.
384
Functions and commands
ellipse
With three points (F1, F2, and M) as arguments, draws an
ellipse with foci at F1 and F2 that passes though M. With two
points and a real (F1, F2, and a) as arguments, draws an
ellipse with foci at F1 and F2 that passes through point M such
that MF1+MF2=2a. With one second degree polynomial
p(x,y) as argument, draws the ellipse defined when the
polynomial is set to equal 0.
ellipse(Pnt(F1),Pnt(F2),(Pnt(M) or Real(a))
or
ellipse(p(x,y))
Example:
ellipse(GA,GB,3) draws an ellipse whose foci are
points A and B. For any point P on the ellipse, AP+BP=6.
ELSE
END
Used in programming to introduce the false clause in a
conditional statement.
Used in programming to end a set of statements that should
be taken as a single statement.
equilateral_
triangle
With three arguments, draws the equilateral triangle ABC of
side AB. With four arguments, draws the equilateral triangle
ABC in the plane ABP.
equilateral_triangle((Pnt(A) or Cplx),(Pnt(B)
or Cplx),[Pnt(P)],[Var(C)])
EVAL
evalc
Evaluates an expression.
eval(Expr)
Returns an complex expression written in the form
real+i*imag.
evalc(Expr)
Example:
evalc(1/(x+y*i))returns x/(x^2+y^2)+(i)*(-y)/
(x^2+y^2)
evalf
With one argument, returns the numerical evaluation of it.
With a second argument, returns the numerical evaluation of
the first argument with the number of significant figures taken
from the second argument.
evalf(Expr,[Int])
Example:
evalf(2/3)gives 0.666666666667
Functions and commands
385
exact
Converts an irrational expression to a rational or real
expression.
exact(Expr)
Example:
exact(1.4141)gives 14141/10000
exbisector
Draws the exterior bisector of the angle AB-AC given by A,B,
and C.
exbisector((Pnt or Cplx(A)),(Pnt or
Cplx(B)),(Pnt or Cplx(C)))
Example:
exbisector(0,–4i,4) draws the line given by y=x
excircle
Draws the excircle of the triangle ABC.
excircle((Pnt or Cplx(A)),(Pnt or
Cplx(B)),(Pnt or Cplx(C)))
Example:
excircle(GA,GB,GC) draws the circle tangent to BC
and to the rays AB and AC
EXP
Returns the solution to the mathematical constant e to the
power of an expression.
exp(Expr)
Example:
exp(0)gives 1
exponential_
regression
Returns the coefficients (a,b) of y=b*a^x, where y is the
exponential which best approximates the points whose
coordinates are the elements in two lists or the rows of a
matrix.
exponential_regression(Lst||Mtrx(A),[Lst])
Example:
exponential_regression([[1.0,2.0],[0.0,1.0],[
4.0,7.0]]) gives 1.60092225473,1.10008339351
EXPORT
Export. Exports the function FunctionNameso that it is
globally available and appears on the User menu
(D
).
EXPORT(FunctionName)
386
Functions and commands
EXPR
Parses the string str into a number or expression.
expr(str)
Examples:
expr("2+3") returns 5.
expr("X+10") returns 100.
(If the variable X has the value 90)
ezgcd
f2nd
Uses the EZ GCD algorithm to return the greatest common
divisor of two polynomials with at least two variables.
ezgcd(Poly,Poly)
Example:
ezgcd(x^2-2*xy+y^2-1,x-y)gives 1
Returns a list consisting of the numerator and denominator of
an irreducible form of a rational fraction.
f2nd(RatFrac)
Example:
f2nd(42/12)returns [7,2]
faces
Returns the list of the faces of a polygon or polyhedron. Each
face is a matrix of n rows and three columns (where n is the
number of vertices of the polygon or polyhedron).
faces(Polygon or Polyedr)
Example:
faces(polyhedron([0,0,0],[0,5,0],[0,0,5],[1,2
,6])) gives
polyhedron[[[0,0,0],[0,5,0],[0,0,5]],[[0,0,0]
,[0,5,0],[1,2,6]],[[0,0,0],[0,0,5],[1,2,6]],[
[0,5,0],[0,0,5],[1,2,6]]]
factorial
Returns the factorial of an integer or the solution to the gamma
function for a non-integer.
factorial(Intg(n)||Real(a))
Example:
factorial(4)gives 24
Functions and commands
387
fMax
Returns the value of the abscissa at the maximum value of an
expression. Without a second argument, it is assumed that it
the abscissa is x. With a variable as second argument, it is
taken as the abscissa.
fMax(Expr,[Var])
Example:
fMax(-x^2+2*x+1,x)gives 1
fMin
Returns the value of the abscissa at the minimum value of an
expression. Without a second argument, it is assumed that it
the abscissa is x. With a variable as second argument, it is
taken as the abscissa.
fMin(Expr,[Var])
Example:
fMin(x^2-2*x+1,x)gives 1
FOR
Used in programming in loops for which the number of
iterations is known.
format
Returns a real number as a string with the indicated format
(f=float, s=scientific, e=engineering).
format(Real,Str("f4"||"s5"||"e6"))
Example:
format(9.3456,"s3")gives 9.35
fracmod
For a given integer n (representing a fraction) and an integer
p (the modulus), returns the fraction a/b such that n=a/b(mod
p).
fracmod(Intg(n),Intg(p))
Example:
fracmod(41,121)gives 2/3
froot
Returns the list of roots and poles of a rational polynomial.
Each root or pole is followed by its multiplicity.
froot(RatPoly)
Example:
froot((x^5-2*x^4+x^3)/(x-3)) gives [0,3,1,2,3,-
1]
388
Functions and commands
fsolve
Returns the numerical solution of an equation or a system of
equations. With the optional third argument you can specify
a guess for the solution or an interval within which it is
expected that the solution will occur. With the optional fourth
argument you can name the iterative algorithm to be used by
the solver.
fsolve(Expr,Var,[Guess or Interval],[Method])
Example:
fsolve(cos(x)=x,x,-1..1,bisection_solver)
gives [0.739085133215]
function_diff
gauss
Returns the derivative function of a function.
function_diff(Fnc)
Example:
function_diff(sin)gives (`x`)->cos(`x`)
Using the Gauss algorithm, returns the quadratic form of an
expression written as a sum or difference of squares of the
variables given in VectVar.
gauss(Expr,VectVar)
Example:
gauss(x^2+2*a*x*y,[x,y])gives (a*y+x)^2+(-
y^2)*a^2
GETPIX_C
GF
Returns the color of the pixel G with coordinates x,y.
GETPIX_P([G], xposition, yposition)
G can be any of the graphics variables and is optional. The
default is G0, the current graphic.
Creates a Galois Field of characteristic p with p^n elements.
GF(Intg(p),Intg(n))
Example:
GF(5,9)gives GF(5,k^9-k^8+2*k^7+2*k^5-k^2+2*k-
2,[k,K,g],undef)
Functions and commands
389
gramschmidt
For a basis B of a vector subspace, and a function Sp that
defines a scalar product on this vector subspace, returns an
orthonormal basis for Sp.
gramschmidt(Basis(B),ScalarProd(Sp))
Example:
gramschmidt([1,1+x],(p,q)->integrate(p*q,x,-
1,1))gives [1/(sqrt(2)),(1+x-1)/(sqrt(6))/3]
green
Used with displayto specify the color of the geometrical
object to be displayed.
half_cone
Draws a half-cone with vertex A, direction v, half angle t and,
if applicable, height h.
half_cone(Pnt(A),Vect(v),Real(t),[Real(h)])
half_line
Draws the half-line AB with A as the origin.
half_line((Pnt or Cplx(A)),(Pnt or Cplx(B)))
halftan2hypexp
Returns an expression with sin(x), cos(x), tan(x) rewritten in
terms of tan(x/2) and sinh(x), cosh(x), tanh(x) rewritten in
terms of exp(x).
halftan_hyp2exp(ExprTrig)
Example:
halftan_hyp2exp(sin(x)+sinh(x)) gives 2*tan(x/
2)/(tan(x/2)^2+1)+(exp(x)-1/exp(x))/2
halt
Used in programming to go into step-by-step debugging
mode.
hamdist
Returns the Hamming distance between two integers.
hamdist(Intg,Intg)
Example:
hamdist(0x12,0x38)gives 3
harmonic_
conjugate
Returns the harmonic conjugate of three points or of three
parallel or concurrent lines, or returns the line of conjugates
of a point with respect to two lines.
harmonic_conjugate(Line or Pnt,Line or
Pnt,Line or Pnt)
390
Functions and commands
harmonic_division
With three points and a variable as arguments, returns four
points that are in a harmonic division. With three lines and a
variable as arguments, returns four lines that are in a
harmonic division.
harmonic_division(Pnt or Line,Pnt or Line,Pnt
or Line,Var)
has
Returns 1 if a variable is in an expression, and returns 0
otherwise.
has(Expr,Var)
Example:
has(x+y,x) gives 1
head
Returns the first element of a given vector, sequence or string.
head(Vect or Seq or Str)
Example:
head(1,2,3)gives 1
Heaviside
Returns the value of the Heaviside function for a given real
(i.e. 1 if x>=0, and 0 if x<0).
Heaviside(Real)
Example:
Heaviside(1)gives 1
hexagon
Draws a hexagon of side AB in the plane ABP. The other four
corners of the hexagon are named according to the variables
given in the third, fourth, fifth and sixth arguments.
hexagon(Pnt or Cplx(A),Pnt or
Cplx(B),[Pnt(P)],[Var(C)],[Var(D)],[Var(E)],[
Var(F)])
Example:
hexagon(0,6)draws a regular hexagon whose first two
vertices are at (0, 0) and (6, 0)
homothety
Returns a point A1 such that vect(C,A1)=k*vect(C,A).
homothety(Pnt(C),Real(k),Pnt(A))
Example:
homothety(GA,2,GB) creates a dilation centered at
point A that has a scale factor of 2. Each point P on
geometric object B has its image P’ on ray AP such that
AP’=2AP.
Functions and commands
391
hyp2exp
Returns an expression with hyperbolic terms rewritten as
exponentials.
hyp2exp(ExprHyperb)
Example:
hyp2exp(cosh(x))gives (exp(x)+1/exp(x))/2
hyperbola
With three points (F1, F2, and M) as arguments, draws an
hyperbola with foci at F1 and F2 that passes though M. With
two points and a real (F1, F2, and a) as arguments, draws an
hyperbola with foci at F1 and F2 that passes through point M
such that |MF1–MF2|=2a. With one second degree
polynomial p(x,y) as argument, draws the hyperbola defined
when the polynomial is set to equal 0.
hyperbola(Focus(F1),Focus(F2),(Pnt(M) or
Real(a)))
Example:
hyperbola(GA,GB,GC) draws the hyperbola whose foci
are points A and B and which passes through point C
iabcuv
Returns [u,v] such as au+bv=c for three integers a,b, and c.
Note that c must be a multiple of the greatest common divisor
of a and b for there to be a solution.
iabcuv(Intg(a),Intg(b),Intg(c))
Example:
iabcuv(21,28,7)gives [-1,1]
ibasis
Returns the basis of the intersection of two vector spaces.
ibasis(Lst(Vect,..,Vect),Lst(Vect,..,Vect))
Example:
ibasis([[1,0,0],[0,1,0]],[[1,1,1],[0,0,1]])
gives [[-1,-1,0]]
icontent
Returns the greatest common divisor of the integer coefficients
of a polynomial.
icontent(Poly,[Var])
Example:
icontent(24x^3+6x^2-12x+18)gives 6
392
Functions and commands
icosahedron
id
Draws an icosahedron with center A, vertex B and such that
the plane ABC contains one vertex among the five nearest
vertices from B.
icosahedron(Pnt(A),Pnt(B),Pnt(C))
Returns the solution to the identity function for an expression.
id(Seq)
Example:
id(1,2,3)gives 1,2,3
identity
iegcd
Returns the identity matrix of dimension n.
identity(Intg(n))
Example:
identity(3)gives [[1,0,0],[0,1,0],[0,0,1]]
Returns the extended greatest common divisor of two integers.
iegcd(Intg,Intg)
Example:
iegcd(14, 21)returns [-1, 1, 7]
IF
Used in programming to begin a conditional statement.
IFERR
Executes sequence of commands1. If an error occurs during
execution of commands1, execute sequence of commands2.
Otherwise, execute sequence of commands3.
IFERR commands1 THEN commands2 [ELSE
commands3] END;
IFTE
igcd
If a condition is satisfied, returns Expr1, otherwise returns
Expr2.
IFTE(Cond,Expr1,Expr2)
Example:
IFTE(2<3, 5-1, 2+7) returns 4
Returns the greatest common divisor of two integers or two
rationals or two polynomials of several variables.
igcd((Intg(a) or Poly),(Intg(b) or Poly))
Example:
igcd(24, 36)returns 12
Functions and commands
393
ilaplace
incircle
Returns the inverse Laplace transform of a rational fraction.
ilaplace(Expr,[Var],[IlapVar])
Example:
ilaplace(1/(x^2+1)^2)gives (-x)*cos(x)/
2+sin(x)/2
Draws the incircle of triangle ABC.
incircle((Pnt or Cplx(A)),(Pnt or
Cplx(B)),(Pnt or Cplx(C)))
Example:
incircle(GA,GB,GC) draws the incircle of ΔABC
inter
interval2center
inv
With two curves or surfaces as arguments, returns the
intersection of the curves or surfaces as a vector. With a point
as the third argument, returns the intersection of the curves or
surfaces close to the point.
inter(Curve,Curve,[Pnt])
Returns the center of an interval or object.
interval2center(Interval or Real)
Example:
interval2center(2..5)gives 7/2
Returns the inverse of an expression or matrix.
inv(Expr||Mtrx)
Example:
inv(9/5)gives 5/9
inversion
Returns point A1 such that A1 is on line CA and
mes_alg(CA1*CA)=k.
inversion(Pnt(C),Real(k),Pnt(A))
Example:
inversion(GA,3,GB) draws point C on line AB such
that AB*AC=3. In this case, point A is the center of the
inversion and the scale factor is 3. Point B is the point
whose inversion is created.
394
Functions and commands
iPart
Returns a real number without its fractional part or a list of real
numbers each without its fractional part.
iPart(Real||LstReal)
Example:
iPart(4.3)gives 4.0
iquorem
Returns the Euclidean quotient and remainder of two integers.
iquorem(Intg(a),Intg(b))
Example:
iquorem(46, 23)returns [2, 17]
isobarycenter
Draws the isobarycenter of the given points.
isobarycenter((Pnt or Cplx),(Pnt or Cplx),(Pnt
or Cplx))
Example:
isobarycenter(–3,3,3*√3*i) returns
point(3*√3*i/3), which is equivalent to (0,√3)
isopolygon
With two points and n>0, draws a regular polygon with
vertices at the two points and abs(n) vertices in total. With
three points and n>0, draws a regular polygon with vertices
at the first two points and the third point is in the plane of the
polygon. With two points and n<0, draws a regular polygon
with center at the first point and a vertex at the second point.
With three points and n<0, draws a regular polygon with
center at the first point, vertex at the second point and the third
point is a point in the plane of the polygon.
isopolygon(Pnt,Pnt,[Pnt],Intg(n))
Example:
isopolygon(GA,GB,6)draws a regular hexagon whose
first two vertices are the points A and B
isosceles_triangle
Draws the isosceles triangle ABC. With an angle (t) as the
third argument, it is equal to angle AB-AC. With a point (P)
as the third argument, the triangle is in the plane formed by
A, B and P, and angle AB-AC is equal to angle AB-AP. With
a list consisting of a point and an angle as the third argument
(t,P), the triangle is in the plane formed by A, B and P, and the
angle AB-AC is equal to t.
isosceles_triangle((Pnt or Cplx(A)),(Pnt or
Cplx(B)),(Angle(t) or Pnt(P) or
Lst(P,t)),[Var(C)])
Functions and commands
395
Example:
isosceles_triangle(GA,GB,angle(GC,GA,GB)
defines an isosceles triangle such that one of the two
sides of equal length is AB, and the angle between the
two sides of equal length has a measure equal to that of
angle ACB.
jacobi_symbol
Returns the Jacobi symbol of the given integers.
jacobi_symbol(Intg,Intg)
Example:
jacobi_symbol(132,5)gives -1
KILL
Used in programming to stop a step-by-step execution with
debugging.
laplacian
Returns the Laplacian of an expression with respect to a list of
variables.
laplacian(Expr,LstVar)
Example:
laplacian(exp(z)*cos(x*y),[x,y,z]) gives -
x^2*cos(x*y)*exp(z)-
y^2*cos(x*y)*exp(z)+cos(x*y)*exp(z)
lcoeff
Returns the coefficient of the term of highest degree of a
polynomial. The polynomial can be expressed in symbolic
form or as a list.
lcoeff(Poly||Lst)
Example:
lcoeff(-2*x^3+x^2+7*x)gives -2
legendre_symbol
length
Returns the Legendre symbol of the given integers.
legendre_symbol(Intg,Intg)
Example:
legendre(4)gives 35*x^4/8+-15*x^2/4+3/8
Returns the length of a list, string or sequence.
length(Lst or Str or Seq)
Example:
length([1,2,3])gives 3
396
Functions and commands
lgcd
lin
Returns the greatest common divisor of a list of integers or
polynomials.
lgcd(Seq or Lst)
Example:
lgcd([45,75,20,15])gives 5
Returns an expression with the exponentials linearized.
lin(Expr)
Example:
lin((exp(x)^3+exp(x))^2) gives
exp(6*x)+2*exp(4*x)+exp(2*x)
line_segments
linear_interpolate
linear_regression
Returns the list of the line segments (one line=one segment) of
a polyhedron.
line_segments(Polygon or Polyedr(P))
Takes a regular sample from a polygonal line defined by a
matrix of two rows.
linear_interpolate(Mtrx,xmin,xmax,xstep)
Returns the coefficients a and b of y=a*x+b, where y is the
line that best approximates the points whose coordinates are
the elements in two lists or the rows of a matrix.
linear_regression(Lst||Mtrx(A),[Lst])
Example:
linear_regression([[0.0,0.0],[1.0,1.0],[2.0,4
.0],[3.0,9.0],[4.0,16.0]])gives 4.0,-2.0
LineHorz
LineTan
LineVert
Draws the horizontal line y=a.
LineHorz(Expr(a))
Draws the tangent to y=f(x) at x=a.
LineTan(Expr(f(x)),[Var],Expr(a))
Draws the vertical line x=a.
LineVert(Expr(a))
Functions and commands
397
list2mat
Returns a matrix of n columns made by splitting a list into rows
each containing n terms. If the number of elements in the list
is not divisible by n, then the matrix is completed with zeros.
list2mat(Lst(l),Intg(n))
Example:
list2mat([1,8,4,9],1)gives [[1],[8],[4],[9]]
LN
Returns the natural logarithm of an expression.
ln(Expr)
lname
Returns a list of the variables in an expression.
lname(Expr)
Example:
lname(exp(x)*2*sin(y))gives [x,y]
lnexpand
Returns the expanded form of a logarithmic expression.
lnexpand(Expr)
Example:
lnexpand(ln(3*x)) gives ln(3)+ln(x)
LOCAL
locus
Used in programming to define local variables.
LOCALvar1,var2,…varn
locus(M,A) draws the locus of M.
locus(d,A) draws the envelope of d.
A:=element(C) (C is a curve).
locus(Pnt,Elem)
LOG
Returns the natural logarithm of an expression.
LOG(Expr)
log10
Returns the log base 10 of an expression.
log10(Expr)
Example:
log10(10) gives 1
398
Functions and commands
logarithmic_
regression
Returns the coefficients a and b of y=a*ln(x)+b, where y is the
natural logarithm that best approximates the points whose
coordinates are the elements in two lists or the rows of a
matrix.
logarithmic_regression(Lst||Mtrx(A),[Lst])
Example:
logarithmic_regression([[1.0,1.0],[2.0,4.0],[
3.0,9.0],[4.0,16.0]]) gives 10.1506450002,-
0.564824055818
logb
Returns the logarithm of base b of a.
logb(a,b)
Example:
logb(5,2) gives ln(5)/ln(2) which is approximately
2.32192809489
logistic_
regression
Returns y, y', C, y'max, xmax, and R, where y is a logistic
function (the solution of y'/y=a*y+b), such that y(x0)=y0 and
where [y'(x0),y'(x0+1)...] is the best approximation of the line
formed by the elements in the list L.
logistic_regression(Lst(L),Real(x0),Real(y0))
Example:
logistic_regression([0.0,1.0,2.0,3.0,4.0],0.0
,1.0)gives [-17.77/(1+exp(-
0.496893925384*x+2.82232341488+3.14159265359*
i)),-2.48542227469/(1+cosh(-
0.496893925384*x+2.82232341488+3.14159265359*
i))]
lvar
Returns a list of variables used in an expression.
lvar(Expr)
Example:
lvar(exp(x)*2*sin(y))gives [exp(x),sin(y)]
magenta
map
Used with displayto specify the color of the geometrical
object to be displayed.
Applies a function to the elements of the list.
map(Lst,Fnc)
Example:
map([1,2,3],x->x^3)gives [1,8,27]
Functions and commands
399
mat2list
matpow
Returns the list of the terms of a matrix.
mat2list(Mtrx)
Example:
mat2list([[1,8],[4,9]])gives [1,8,4,9]
Calculates the nth power of a matrix by jordanization
matpow(Mtrx,Intg(n))
Example:
matpow([[1,2],[3,4]],n)gives [[(sqrt(33)-
3)*((sqrt(33)+5)/2)^n*-6/(-12*sqrt(33))+(-
(sqrt(33))-3)*((-(sqrt(33))+5)/2)^n*6/(-
12*sqrt(33)),(sqrt(33)-3)*((sqrt(33)+5)/
2)^n*(-(sqrt(33))-3)/(-12*sqrt(33))+(-
(sqrt(33))-3)*((-(sqrt(33))+5)/2)^n*(-
(sqrt(33))+3)/(-
12*sqrt(33))],[6*((sqrt(33)+5)/2)^n*-6/(-
12*sqrt(33))+6*((-(sqrt(33))+5)/2)^n*6/(-
12*sqrt(33)),6*((sqrt(33)+5)/2)^n*(-
(sqrt(33))-3)/(-12*sqrt(33))+6*((-
(sqrt(33))+5)/2)^n*(-(sqrt(33))+3)/(-
12*sqrt(33))]]
MAXREAL
mean
Returns the maximum real number that the HP Prime is
capable of representing: 9.99999999999E499.
Returns the arithmetic mean of a list or of the columns of a
matrix (with the optional list a list of weights).
mean(Lst||Mtrx,[Lst])
Example:
mean([1,2,3],[1,2,3])gives 7/3
median
Returns the median of a list or of the columns of a matrix (with
the optional list a list of weights).
median(Lst||Mtrx,[Lst])
Example:
median([1,2,3,5,10,4])gives 3.0
400
Functions and commands
median_line
Draws the median line through A of the triangle ABC.
median_line((Pnt or Cplx(A)),(Pnt or
Cplx(B)),(Pnt or Cplx(C)))
Example:
median_line(0,8i,4) draws the line whose equation
is y=2x; that is, the line through (0,0) and (2,4), the
midpoint of the segment whose endpoints are (0, 8) and
(4, 0).
member
midpoint
Tests if an element is in a list or set. If the element is in the list
or set, returns 1+ the index of the first occurrence of the
element. If the element is not in the list or set, returns 0.
member(Elem(e),(Lst(l) or Set(l)))
Example:
member(1,[4,3,1,2]) gives 3
Draws the midpoint of the line segment AB.
midpoint((Pnt or Cplx(A)),(Pnt or Cplx(A)))
Example:
midpoint(0,6+6i)returns point(3,3)
MINREAL
MKSA
Returns the minimum real number that the HP Prime is capable
of representing: 1E4–99.
Converts a unit object into a unit object written with the
compatible MKSA base unit.
mksa(Unit)
Example:
mksa(32_yd)returns 29.2608_m
modgcd
Uses the modular algorithm to return the greatest common
divisor of two polynomials.
modgcd(Poly,Poly)
Example:
modgcd(x^4-1,(x-1)^2)gives x-1
Functions and commands
401
mRow
Multiplies the row n1 of the matrix A by an expression.
mRow(Expr,Mtrx(A),Intg(n1))
Example:
mRow(12,[[1,2],[3,4],[5,6]],0)gives
[[12,24],[3,4],[5,6]]
mult_c_conjugate
If the given complex expression has a complex denominator,
returns the expression after both the numerator and the
denominator have been multiplied by the complex conjugate
of the denominator. If the given complex expression does not
have a complex denominator, returns the expression after
both the numerator and the denominator have been
multiplied by the complex conjugate of the numerator.
mult_c_conjugate(Expr)
Example:
mult_c_conjugate(1/(3+i*2))gives 1*(3+(-i)*2)/
((3+(i)*2)*(3+(-i)*2))
mult_conjugate
Takes an expression in which the numerator or the
denominator contains a square root. If the denominator
contains a square root, returns the expression after both the
numerator and the denominator have been multiplied by the
complex conjugate of the denominator. If the denominator
does not contain a square root, returns the expression after
both the numerator and the denominator have been
multiplied by the complex conjugate of the numerator.
mult_conjugate(Expr)
Example:
mult_conjugate(sqrt(3)-sqrt(2))gives (sqrt(3)-
(sqrt(2)))*(sqrt(3)+sqrt(2))/
(sqrt(3)+sqrt(2))
nDeriv
Returns an approximate value of the derivative of an
expression at a given point, using f’(x)=(f(x+h)–f(x+h))/2*h.
Without a third argument, the value of h is set to 0.001. With
a real as third argument, it is the value of h.
nDeriv(Expr,Var(var),[Real(h)])
Example:
nDeriv(f(x),x,h)gives (f(x+h)-(f(x-h)))*0.5/h
NEG
Unary minus. Enters the negative sign.
402
Functions and commands
normal
Returns the expanded irreducible form of an expression.
normal(Expr)
Example:
normal(2*x*2)gives 4*x
normalize
Returns a vector divided by its l2 norm (where the l2 norm is the
square root of the sum of the squares of the vector’s
coordinates).
normalize(Lst||Cplx)
Example:
normalize(3+4*i)gives (3+4*i)/5
NOT
Returns the logical inverse of a Boolean expression.
not(Boolean)
NTHROOT
octahedron
Gives the expression for calculating the nth root of a number.
Draws an octahedron with center A and vertex B and such
that the plane ABC contains four vertices.
octahedron(Pnt(A),Pnt(B),Pnt(C))
odd
Returns 1 if a given integer is odd, and returns 0 otherwise.
odd(Intg(n))
Example:
odd(6)gives 0
open_polygon
OR
Draws a polygonal line with vertices at the elements of the
given list.
open_polygon(LstPnt||LstCplx)
Logical Or.
expr1 OR expr2
Example:
3+1==4 OR 8 < 5returns 1.
order_size
Returns the remainder (O term) of a series expansion:
limit(x^a*order_size(x),x=0)=0 if a>0.
order_size(Expr)
Functions and commands
403
orthocenter
orthogonal
Shows the orthocenter of the triangle made with three points.
orthocenter((Pnt or Cplx),(Pnt or Cplx),(Pnt
or Cplx))
Example:
orthocenter(0,4i,4)returns (0,0)
With a point (A) and a line (BC) as arguments, draws the
orthogonal plane of the line that passes through the point.
With a point (A) and a plane (BCD) as arguments, draws the
orthogonal line of the plane that passes through the point.
orthogonal(Pnt(A),(Line(BC) or Plane(BCD))
Example:
orthogonal(A,line(B,C)) draws the orthogonal
plane of line BC through A and
orthogonal(A,plane(B,C,D)) draws the orthogonal
line of plane(B,C,D) through A.
pa2b2
pade
Takes a prime integer n congruent to 1 modulo 4 and returns
[a,b] such that a^2+b^2=n.
pa2b2(Intg(n))
Example:
pa2b2(17) gives [4,1]
Returns the Pade approximation i.e. a rational fraction P/Q
such that P/Q=Xpr mod x^(n+1) or mod N with degree(P)<p.
pade(Expr(Xpr), Var(x), (Intg(n) || Poly(N)),
Intg(p))
Example:
pade(exp(x),x,10,6)gives (-x^5-30*x^4-420*x^3-
3360*x^2-15120*x-30240)/(x^5-30*x^4+420*x^3-
3360*x^2+15120*x-30240)
parabola
With two points (F, A) as arguments, draws a parabola of
focus F and top A. With three points (F, A and P) as
arguments, draws a parabola with focus F and top A in the
plane ABP. With a complex (A) and a real (c) as arguments,
draws a parabola of equation y=yA+c*(x–xA)^2. With one
second degree polynomial (P(x,y)) as argument, draws the
parabola when the polynomial is set to equal 0.
parabola(Pnt(F)||Pnt(xA+i*yA),Pnt(A)||Real(c)
,[Pnt(P)])
404
Functions and commands
Example:
parabola(GA,GB) draws a parabola whose focus is
point A and whose directrix is line B
parallel
With a point and a line as arguments, draws the line through
the point that is parallel to the given line. With a point and a
plane as arguments, draws the plane through the point that is
parallel to the given plane. with a point and two lines as
arguments, draws the plane through the point that is parallel
to the plane made by the two given lines.
parallel(Pnt or Line,Line or Plane,[Line])
Example:
parallel(A, B) draws the line through point A that is
parallel to line B
parallelepiped
parallelogram
Draws a parallelepiped with sides AB, AC, and AD. The faces
of the parallelepiped are parallelograms.
parallelepiped(Pnt(A),Pnt(B),Pnt(C),Pnt(D))
Draws the parallelogram ABCD such that
vector(AB)+vector(AD)=vector(AC).
parallelogram(Pnt(A)||Cplx,Pnt(B)||Cplx,Pnt(C
)||Cplx,[Var(D)])
Example:
parallelogram(0,6,9+5i) draws a parallelogram
whose vertices are at (0, 0), (6, 0), (9, 5), and (3,5). The
coordinates of the last point are calculated automatically.
perimeterat
Displays the perimeter at point z0 of a circle or polygon. A
legend is provided.
perimeterat(Polygon,Pnt||Cplx(z0))
perimeteratraw
Displays the perimeter at point z0 of a circle or polygon.
perimeteratraw(Polygon,Pnt||Cplx(z0))
Functions and commands
405
perpen_bisector
Draws the bisection (line or plane) of the segment AB.
perpen_bisector((Pnt or Cplx(A)),(Pnt or
Cplx(B)))
Example:
perpen_bisector(3+2i,i) draws the perpendicular
bisector of a segment whose endpoints have coordinates
(3, 2) and (0, 1); that is, the line whose equation is y=x/
3+1.
perpendicular
With a point and a line as arguments, returns the line that is
orthogonal to the given line and that passes through the given
point. With a line and a plane as arguments, draws the plane
that is orthogonal to the given plane and that contains the
given line.
perpendicular((Pnt or Line),(Line or Plane))
Example:
perpendicular(3+2i,line(x-y=1)) draws a line
through the point whose coordinates are (3, 2) that is
perpendicular to the line whose equation is x – y = 1;
that is, the line whose equation is y=-x+5.
PI
Inserts pi.
PIECEWISE
Takes as arguments pairs consisting of a condition and an
expression. Each of these pairs defines a sub-function of the
piecewise function and the domain over which it is active. The
syntax depends on the entry mode and working view:
•
When textbook entry is enabled, the syntax (for both non-
CAS and CAS) is:
{ case1 if test1
{ ...
{ casen [if testn]
Example:
{“Even” if (324 MOD 2) == 0
{“Odd” if
returns “Even”
•
•
When textbook entry is disabled, the syntax for non-CAS is:
PIECEWISE(test1, case1, ...[, testn], casen)
When textbook entry is disabled, the syntax for CAS is:
piecewise(test1, case1, ...[, testn], casen)
406
Functions and commands
plane
With three points as arguments, draws the plane made by the
three points. With a point and a line as arguments, draws the
plane made by the point and the line. With an equation as
argument, draws the plane corresponding to the equation in
3D space.
plane(Pnt or Eq, [Pnt or Line],[Pnt])
plotinequation
plotparam
Draws the points of the plane whose coordinates satisfy the
inequations of two
plotinequation(Expr,[x=xrange,y=yrange],[xste
p],[ystep])
With a complex (a(t)+i*b(t)) and a list of values for the
variable (t) as arguments, draws the parametric representation
of the curve defined by x=a(t) and y=g(t) over the interval
specified in the second argument. With a list of expressions of
two variables (a(u,v),b(u,v),c(u,v)) and a list of values for the
variables (u=u0...u1,v=v0...v1) as arguments, draws the
surface defined by x=a(u,v), y=b(u,v), and z=c(u,v) over the
intervals specified by in the second argument.
plotparam(Cplx||Lst,Var||Lst(Var))
plotpolar
For an expression f(x), draws the polar curve r=f(x) for x over
the interval VarMin to VarMax.
plotpolar(Expr,Var,VarMin,VarMax)
plotseq
point
Displays the pth terms of the sequence u(0)=a,u(n)=f(u(n–1)).
plotseq(Expr(f(Var)),Var=[a,xm,xM],Intg(p))
With a complex as argument, plots it. With the coordinates of
a point in three dimensions as argument, plots it.
point(Cplx||Vect)
polar
Returns the line of the conjugated points of A with respect to
a circle.
polar(Crcle,Pnt or Cplx(A))
polar_coordinates
Returns the list of the norm and of the argument of the affix of
a point, complex number or list of rectangular coordinates.
polar_coordinates(Pnt or Cplx or LstRectCoord)
Example:
polar_coordinates(point(1+2*i))gives
[sqrt(5),atan(2)]
Functions and commands
407
polar_point
pole
Returns the point with polar coordinates r and t.
polar_point(Real(r),Real(t))
Returns the point for which the line is polar with respect to the
circle.
pole(Crcle,Line)
POLYCOEF
Returns the coefficients of a polynomial with roots given in the
vector argument.
polyCoef(Vect)
Example:
POLYCOEF({-1, 1})returns {1, 0, -1}
POLYEVAL
polygon
Evaluates a polynomial given by its coefficients at x0.
polyEval(Vect,Real(x0))
Example:
POLYEVAL({1,0,-1},3)returns 8
Draws the polygon whose vertices are elements in a list.
polygon(LstPnt||LstCplx)
Example:
polygon(GA,GB,GD) draws ΔABD
polygonplot
polygonscatterplot
polyhedron
Draws the polygons made by joining the points (xk,yk), where
xk=element row k column 0 and yk=element row k column j
(for j fixed and for k=0...nrows).
polygonplot(Mtrx)
Draws the points (xk,yk) and the polygons made by joining
the points (xk,yk), where xk=element row k column 0 and
yk=element row k column j (for j fixed and for k=0...nrows).
polygonscatterplot(Mtrx)
Draws a convex polyhedron whose vertices are the points in
the sequence.
polyhedron(SeqPnt(A,B,C...))
408
Functions and commands
polynomial_
regression
Returns the coefficients (an,...a1,a0) of
y=an*x^n+..a1x+a0), where y is the nth order polynomial
which best approximates the points whose coordinates are the
elements in two lists or the rows of a matrix.
polynomial_regression(Lst||Mtrx(A),[Lst],Intg
(n))
Example:
polynomial_regression([[1.0,1.0],[2.0,4.0],[3
.0,9.0],[4.0,16.0]],3)gives [-0.0,1.0,-
0.0,0.0]
POLYROOT
potential
Returns the zeros of the polynomial given as argument (either
as symbolic expression or as a vector of coefficients).
POLYROOT(P(x) or Vect)
Example:
POLYROOT([1,0,-1]}returns [-1, 1]
Returns a function whose gradient is the vector field defined
by Vect(V) and VectVar.
potential(Vect(V),VectVar)
Example:
potential([2*x*y+3,x^2-4*z,-4*y],[x,y,z])
gives 2*x^2*y/2+3*x-4*y*z
power_regression
Returns the coefficients (m,b) of y=b*x^m, where y is the
monomial which best approximates the points whose
coordinates are the elements in two lists or the rows of a
matrix.
power_regression(Lst|Mtrx(A),[Lst])
Example:
power_regression([[1.0,1.0],[2.0,4.0],[3.0,9.
0],[4.0,16.0]])gives 2.0,1.0
powerpc
Returns the real number d^2–R^2, where d is the distance
between the point and the center of the circle, and R is the
radius of the circle.
powerpc(Crcle,Pnt or Cplx)
Example:
powerpc(circle(0,1+i),3+i)gives 8
Functions and commands
409
prepend
primpart
Adds an element to the beginning of a list.
prepend(Lst,Elem)
Example:
prepend([1,2],3)gives [3,1,2]
Returns a polynomial divided by the greatest common divisor
of its coefficients.
primpart(Poly,[Var])
Example:
primpart(2x^2+10x+6)gives x^2+5*x+3
prism
Draws a prism whose base is the plane ABCD and whose
edges are parallel to the line made by A and A1.
prism(LstPnt([A,B,C,D]),Pnt(A1))
product
With an expression as the first argument, returns the product
of solutions when the variable in the expression is substituted
from a to b with step p. If p is not provided, it is taken as 1.
With a list as the first argument, returns the product of the
values in the list. With a matrix as the first argument, returns
the element-by-element product of the matrix.
product(Expr||Lst,[Var||Lst],[Intg(a)],[Intg(
b)],[Intg(p)])
Example:
product(n,n,1,10,2)gives 945
projection
propfrac
Returns the orthogonal projection of the point on the curve.
projection(Curve,Pnt)
Returns a fraction or rational fraction A/B simplified to Q+r/
B, where R<B or the degree of R is less than the degree of B.
propfrac(Frac or RatFrac)
Example:
propfrac(28/12)gives 2+1/3
ptayl
Returns the Taylor polynomial Q such as P(x)=Q(x–a).
ptayl(Poly(P(var)),Real(a),[Var])
Example:
ptayl(x^2+2*x+1,1)gives x^2+4*x+4
410
Functions and commands
purge
Unassigns a variable name.
purge(Var)
pyramid
With three points as arguments, draws the pyramid with a
face in the plane of the three points and with two vertices at
the first and second points. With four points as arguments,
draws the pyramid with vertices at the four points.
pyramid(Pnt(A),Pnt(B),Pnt(C),[Pnt(D)])
q2a
Returns the matrix of a quadratic form with respect to the given
in VectVar.
q2a(QuadraForm,VectVar)
Example:
q2a(x^2+2*x*y+2*y^2,[x,y])gives [[1,1],[1,2]]
quadrilateral
quantile
Draws the quadrilateral ABCD.
quadrilateral(Pnt(A)||Cplx,Pnt(B)||Cplx,Pnt(C
)||Cplx,Pnt(D)||Cplx)
Returns the quantile of the elements of a list corresponding to
p (0<p<1).
quantile(Lst(l),Real(p))
Example:
quantile([0,1,3,4,2,5,6],0.25)gives [1.0]
quartile1
quartile3
Returns the first quartile of the elements of a list or the columns
of a matrix.
quartile1(Lst||Mtrx,[Lst])
Example:
quartile1([1,2,3,5,10,4])gives 2.0
Returns the third quartile of the elements of a list or the
columns of a matrix.
quartile3(Lst||Mtrx,[Lst])
Example:
quartile3([1,2,3,5,10,4])gives 5.0
Functions and commands
411
quartiles
quorem
Returns the minimum, first quartile, median, third quartile, and
maximum of the elements of a list or the columns of a matrix.
quartiles(Lst||Mtrx,[Lst])
Example:
quartiles([1,2,3,5,10,4])gives
[[1.0],[2.0],[3.0],[5.0],[10.0]]
Returns the quotient and remainder of the Euclidean division
(by decreasing power) of two polynomials. The polynomials
can be expressed as vectors of their coefficients or in symbolic
form.
quorem((Vect or Poly),(Vect or Poly),[Var])
Example:
quorem([1,2,3,4],[-1,2])gives [poly1[-1,-4,-
11],poly1[26]]
QUOTE
Returns an expression unevaluated.
quote(Expr)
radical_axis
Returns the line which is the locus of points at which tangents
drawn to two circles have the same length.
radical_axis(Crcle,Crcle)
randexp
Returns a random real according to the exponential
distribution of parameter a>0.
randexp(Real(a))
Example:
randexp(1) gives 1.17118631006
randperm
ratnormal
Returns a random permutation of [0,1,2,...,n–1].
randperm(Intg(n))
Example:
randperm(4)gives [2,1,3,0]
Rewrites an expression as an irreducible rational fraction.
ratnormal(Expr)
Example:
ratnormal((x^2-1)/(x^3-1))gives (x+1)/
(x^2+x+1)
412
Functions and commands
reciprocation
rectangle
Returns the list where the point is replaced with its polar and
the line is replaced with its pole with respect to the circle.
reciprocation(Crcle,Lst(Pnt,Line))
Draws the rectangle ABCD, where, if k is provided, AD=k*AB
if k>0, and where, if k and P are provided, the rectangle is in
the plane ABP with AD=AP and AD=k*AB.
rectangle(Pnt(A)||Cplx,Pnt(B)||Cplx,Real(k)||
Pnt(P)||Lst(P,k),[Var(D)],[Var(C)])
rectangular_
coordinat
Returns the list of the abscissas and of the ordinates of points
given by a list of their polar coordinates.
rectangular_coordinates(LstPolCoord)
Example:
rectangular_coordinates([1,-1])gives [cos(1),-
sin(1)]
red
Used with displayto specify the color of the geometrical
object to be displayed.
reduced_conic
Takes a conic expression and a vector of , and returns the
origin of the conic, the matrix of a basis in which the conic is
reduced, 0 or 1 (0 if the conic is degenerate), the reduced
equation of the conic, and a vector of the conic’s parametric
equations.
reduced_conic(Expr,[LstVar])
Example:
reduced_conic(x^2+2*x-2*y+1) gives [[-
1,0],[[0,1],[-1,0]],1,y^2+2*x,[[-1+(-i)*(t*t/
-2+(i)*t),t,-4,4,0.1]]]
ref
Returns the solution to a system of linear equations written in
matrix form.
ref(Mtrx(M))
Example:
ref([[3,1,-2],[3,2,2]])gives [[1,1/3,-2/
3],[0,1,4]]
Functions and commands
413
reflection
With a line (D) and a point (C) as arguments, returns the
reflection of the point across the line (i.e. the line is taken as
a line of symmetry). With a point (A) and a curve (C) as
arguments, returns the reflection of the curve about the point
(i.e. the point is taken as the point of symmetry).
reflection((Pnt(A) or Line(D)),(Pnt(C) or
Curve(C)))
Example:
reflection(line(x=3),point(1,1)) reflects the point
at (1, 1) over the vertical line x=3 to create a point at (5,1)
remove
reorder
Returns a list with the elements that satisfy the Boolean
function removed.
remove(FncBool(f)||e,Lst(l))
Example:
remove(x->x>=5,[1,2,6,7])gives [1,2]
Reorders the in an expression according to the order given in
LstVar.
reorder(Expr,LstVar)
Example:
reorder(x^2+2*x+y^2,[y,x])gives y^2+x^2+2*x
REPEAT
residue
Used in programming to indicate a statement or statements
that should be repeated until a given condition is true.
Returns the residue of an expression at a.
residue(Expr,Var(v),Cplx(a))
Example:
residue(1/z,z,0)gives 1
restart
Purges all the variables.
restart(NULL)
resultant
Returns the resultant (i.e. the determinant of the Sylvester
matrix) of two polynomials.
resultant(Poly,Poly,Var)
RETURN
Used in programming return a value of a function at a certain
point.
return(Expr)
414
Functions and commands
revlist
Returns a list with the elements in reverse order.
revlist(Lst)
Example:
revlist([1,2,3])gives [3,2,1]
rhombus
With two points (A and B) and an angle (a) as arguments,
draws the rhombus ABCD such that the angle AB-AD=a. With
three points as arguments (A, B and P), draws the rhombus
ABCD in the plane ABP such that angle AB-AD=angle AB-AP.
rhombus(Pnt(A)||Cplx,Pnt(B)||Cplx,Angle(a)||P
nt(P)||Lst(P,a)),[Var(C)],[Var(D)])
Example:
rhombus(GA,GB,angle(GC,GD,GE)) draws a rhombus
on segment AB such that the angle at vertex A has the
same measure as angle DCE
right_triangle
With two points (A and B) and a real (k) as arguments, draws
right-angled triangle such ABC such that AC=k*AB. With
three points (A, B and P) as arguments, draws the right-angled
triangle ABC in the plane ABP and such that AC=AP.
right_triangle((Pnt(A) or Cplx),(Pnt(B) or
Cplx),(Real(k) or Pnt(P) or
Lst(P,k)),[Var(C)])
romberg
rotation
Uses Romberg’s method to return the approximate value of the
integral of the expression over the interval a to b.
romberg(Expr(f(x)),Var(x),Real(a),Real(b))
Example:
romberg(exp(x^2),x,0,1)gives 1.46265174591
With a point (B), an angle (a1) and another point (A) as
arguments, returns the result of rotating the second point by
the angle about the center of rotation given by the first point.
With a line (Dr3), an angle (a1) and a curve as arguments,
returns the result of rotating the curve by the angle about the
axis of rotation given by the line.
rotation((Pnt(B) or Cplx or
Dr3),Angle(a1),(Pnt(A) or Curve))
Example:
rotation(GA,angle(GB,GC,GD),GK) rotates the
geometric object labeled K, about point A, through an
angle equal to angle CBD.
Functions and commands
415
row
Returns the row n or the sequence of the rows n1...n2 of the
matrix A.
row(Mtrx(A),Intg(n)||Interval(n1..n2))
Example:
row([[1,2,3],[4,5,6],[7,8,9]],1)gives [4,5,6]
rowAdd
Returns the matrix obtained from matrix A after the n2th row
is replaced by the sum of the n1th row and the n2th row.
rowAdd(Mtrx(A),Intg(n1),Intg(n2))
Example:
rowAdd([[1,2],[3,4],[5,6]],1,2)gives
[[1,2],[3,4],[8,10]]
rowDim
Returns the number of rows of a matrix.
rowDim(Mtrx)
Example:
rowdim([[1,2,3],[4,5,6]])gives 2
rowSwap
Returns the matrix obtained from matrix A after the n1th row
and the n2th row are swapped.
rowSwap(Mtrx(A),Intg(n1),Intg(n2))
Example:
rowSwap([[1,2],[3,4],[5,6]],1,2)gives
[[1,2],[5,6],[3,4]]
rsolve
Returns the values of a recurrent sequence or a system of
recurrent sequences.
rsolve((Expr or LstExpr),(Var or
LstVar),(InitVal or LstInitVal))
Example:
rsolve(u(n+1)=2*u(n)+n,u(n),u(0)=1 gives [-
n+2*2^n-1]
segment
Draws a line segment connecting two points.
segment((Pnt or Cplx),(Pnt or
Cplx),[Var],[Var])
Example:
segment(1+2i,4) draws the segment defined by the
points whose coordinates are (1,2) and (4,0)
416
Functions and commands
select
seq
Returns a list with only the elements that satisfy the Boolean
function remaining.
select(FncBool(f),Lst(l))
Example:
select(x->x>=5,[1,2,6,7])gives [6,7]
With an expression and two integers (a and b) as arguments,
returns the sequence obtained when the expression is
evaluated within the interval given by a and b. With an
expression and three integers (a, b and p) as arguments,
returns the sequence obtained when the expression is
evaluated with step of p within the interval given by a and b.
With an expression and three integers (n, a and b) as
arguments, returns the sequence obtained when the
expression is evaluated n times of equal spacing within the
interval given by a and b.
seq(Expr,Intg(n)||Var(var),[Intg(a)],[Intg(b)
],[Intg(p)])
Example:
seq(2^k,k=0..8)gives 1,2,4,8,16,32,64,128,256
seqsolve
Returns the value of a recurrent sequence or a system of
recurrent sequences (u_{n+1}=f(u_n) or
u_{n+2}=f(u_{n+1},u_n)...).
seqsolve((Expr or LstExpr),(Var or
LstVar),(InitVal or LstInitVal))
Example:
seqsolve(2x+n,[x,n],1)gives -n-1+2*2^n
shift_phase
signature
Returns the result of applying a phase shift of pi/2 to a
trigonometric expression.
shift_phase(Expr)
Example:
shift_phase(sin(x))gives -cos((pi+2*x)/2)
Returns the signature of a permutation.
signature(Permut)
Example:
signature([1,0,3,4,2])gives
[100.0,100.0,0.0,87,14,""]
Functions and commands
417
similarity
With two points (B and A), a real (k) and an angle (a1) as
arguments, returns a point that is the point similar to A across
center B with angle a1 and with scaling coefficient k. With an
axis (Dr3), a real (k) an angle (a1) and a point (A) as
arguments, returns a point that is the point similar to A across
the axis given by the line with angle a1 and with scaling
coefficient k.
similarity(Pnt(B) or
Dr3,Real(k),Angle(a1),Pnt(A))
Example:
similarity(0,3,angle(0,1,i),point(2,0)) dilates
the point at (2,0) by a scale factor of 3 (a point at (6,0)),
then rotates the result 90° counterclockwise to create a
point at (0,6)
simult
Returns the solution to a system of linear equations or several
systems of linear equations presented in matrix form. In other
words, in the case of one system of linear equations, takes a
matrix A and a column matrix B, and returns column matrix X
such A*X=B.
simult(Mtrx(A),Mtrx(B))
Example:
simult([[3,1],[3,2]],[[-2],[2]])gives [[-
2],[4]]
SIN
Sine: sinx.
SIN(value)
sincos
Returns an expression with the complex exponentials rewritten
in terms of sin and cos.
sincos(Expr)
Example:
sincos(exp(i*x))gives cos(x)+(i)*sin(x)
single_inter
With two curves or two surfaces as arguments, returns one of
the intersections of the two curves or surfaces. With to curves
or surfaces and a point or list of points as arguments, returns
an intersection of the curves or surfaces that is nearest to the
point or not in the list of points.
single_inter(Curve,Curve,[Pnt(A)||LstPnt(L)])
418
Functions and commands
slopeat
slopeatraw
sphere
Displays the value at point z0 of the slope of the line or
segment d. A legend is provided.
slopeat(Line,Pnt||Cplx(z0))
Displays the value at point z0 of the slope of the line or
segment d.
slopeatraw(Line,Pnt||Cplx(z0))
With two points as arguments, draws the sphere of diameter
made by the line from one point to another. With a point and
a real as arguments, draws the sphere with center at the point
and radius given by the real.
sphere((Pnt or Vect),(Pnt or Real))
spline
Returns the natural spline through the points given by two lists.
The polynomials in the spline are in variable x and of degree d.
spline(Lst(lx),Lst(ly),Var(x),Intg(d))
Example:
spline([0,1,2],[1,3,0],x,3) gives [-5*x^3/
4+13*x/4+1,5*(x-1)^3/4+-15*(x-1)^2/4+(x-1)/-
2+3]
sqrt
Returns the square root of an expression.
sqrt(Expr)
Example:
sqrt(50) gives 5*sqrt(2)
square
Draws the square of side AB in the plane ABP.
square((Pnt(A) or Cplx),(Pnt(B) or
Cplx),[Pnt(P),Var(C),Var(D)])
Example:
square(0, 3+2i,p,q) draws a square with vertices at
(0,0), (3,2), (1,5), and (-2,3). The last two vertices are
computed automatically and are saved into the CAS
variables p and q.
stddev
Returns the standard deviance of the elements in a list with the
or returns the list of standard deviances of the columns of a
matrix. The optional second list is a list of weights.
stddev(Lst||Mtrx,[Lst])
Example:
stddev([1,2,3])gives (sqrt(6))/3
Functions and commands
419
stddevp
Returns the population standard deviation of the elements in
a list or returns the list of standard deviations of the columns
of a matrix. The optional second list is a list of weights.
stddevp(Lst||Mtrx,[Lst])
Example:
stddevp([1,2,3])gives 1
STEP
sto
Used in programming to indicate the step in an iteration or
the step size of an incrementation.
Stores a real or string in a variable.
sto((Real or Str),Var)
sturmseq
Returns the Sturm sequence for a polynomial or a rational
fraction.
sturmseq(Poly,[Var])
Example:
sturmseq(x^3-1,x)gives [1,[[1,0,0,-
1],[3,0,0],9],1]
subMat
Extracts from a matrix a sub matrix with first element=A[n1,n2]
and last element=A[n3,n4].
subMat(Mtrx(A),Intg(n1),Intg(n2),Intg(n3),Int
g(n4))
Example:
subMat([[1,2],[3,4],[5,6]],1,0,2,1) gives
[[3,4],[5,6]]
suppress
surd
Returns a list without the nth element.
suppress(Lst,Intg(n))
Example:
suppress([0,1,2,3],2) gives [0,1,3]
Returns an expression to the power of 1/n.
surd(Expr,Intg(n))
Example:
surd(8,3) gives 8^(1/3)
420
Functions and commands
sylvester
Returns the Sylvester matrix of two polynomials.
sylvester(Poly,Poly,Var)
Example:
sylvester(x^2-1,x^3-1,x)gives [[1,0,-
1,0,0],[0,1,0,-1,0],[0,0,1,0,-1],[1,0,0,-
1,0],[0,1,0,0,-1]]
table
tail
Defines an array where the indexes are strings or real
numbers.
table(SeqEqual(index_name=element_value))
Returns a list or sequence or string without its first element.
tail(Lst or Seq or Str)
Example:
tail([3,2,4,1,0])gives [2,4,1,0]
TAN
Tangent: tan(x).
tan(value)
tan2cossin2
Returns an expression with tan(x) rewritten as (1–cos(2*x))/
sin(2*x).
tan2cossin2(Expr)
Example:
tan2cossin2(tan(x))gives (1-cos(2*x))/sin(2*x)
tan2sincos2
tangent
Returns an expression with tan(x) rewritten as sin(2*x)/
(1+cos(2*x)).
tan2sincos2(Expr)
Example:
tan2sincos2(tan(x))gives sin(2*x)/(1+cos(2*x)
With a curve as argument, draws the tangent line to the curve
at point A. With a surface as argument, draws the tangent
plane to the surface at point A.
tangent(Curve or surface(C),Pnt(A))
Example:
tangent(plotfunc(x^2),GA) draws the tangent to the
graph of y=x^2 through point A
THEN
Used in programming to introduce a statement dependent on
a conditional statement.
Functions and commands
421
TO
Used in programming in a loop when expressing the range of
values of a variable for which a statement should be executed.
translation
With a vector and a point as arguments, returns the point
translated by the vector. With two points as arguments, returns
the second point translated by the vector from the origin to the
first point.
translation(Vect,Pnt(C))
Example:
translation(0-i,GA) translates object A down one
unit
transpose
Returns a matrix transposed (without conjugation).
transpose(Mtrx)
Example:
tran([[1,2,3],[1,3,6],[2,5,7]])gives
[[1,1,2],[2,3,5],[3,6,7]]
triangle
trunc
Draws a triangle with vertices at the three points.
triangle((Pnt or Cplx),(Pnt or Cplx),(Pnt or
Cplx))
Returns a value or a list of values truncated to n decimal
places. If n is not provided, it is taken as 0. Accepts complex
numbers.
trunc(Real||LstReal,Int(n))
Example:
trunc(4.3) gives 4
tsimplify
Returns an expression with transcendentals rewritten as
complex exponentials.
tsimplify(Expr)
Example:
tsimplify(exp(2*x)+exp(x))gives
exp(x)^2+exp(x)
type
Returns the type of an expression (e.g. list, string).
type(Expr)
Example:
type("abc")gives DOM_STRING
422
Functions and commands
UFACTOR
unapply
Factorizes a unit in a unit object.
ufactor(Unit,Unit)
Returns the function defined by an expression and a variable.
unapply(Expr,Var)
Example:
unapply(2*x^2,x) gives (x)->2*x^2
UNTIL
Used in programming to indicate the conditions under which
a statement should stop being executed.
USIMPLIFY
Simplifies a unit in a unit object.
usimplify(Unit)
valuation
Returns the valuation (degree of the term of lowest degree) of
a polynomial. With only a polynomial as argument, the
valuation returned is for x. With a variable as second
argument, the valuation is performed for it.
valuation(Poly,[Var])
Example:
valuation(x^4+x^3)gives 3
variance
Returns the variance of a list or the list of variances of the
columns of a matrix. The optional second list is a list of
weights.
variance(Lst||Mtrx,[Lst])
Example:
variance([3,4,2])gives 2/3
vector
With one point as argument, defines a vector from the origin
to the point. With two points as arguments, defines a vector
from the first point to the second point. With a point and a
vector as arguments, defines a vector beginning from the
point and with direction and magnitude of the vector.
vector(Pnt,Pnt||Pnt,Vect)
vertices
Returns the list of the vertices of a polygon or polyhedron.
vertices(Polygon or Polyedr)
vertices_abca
Returns the closed list [A,B,...A] of the vertices of a polygon or
polyhedron.
vertices_abca(Polygon or Polyedr)
Functions and commands
423
vpotential
Returns U such as curl(U)=V.
vpotential(Vect(V),LstVar)
Example:
vpotential([2*x*y+3,x^2-4*z,-2*y*z],[x,y,z])
gives [0,-2*x*y*z,-x^3/3+4*x*z+3*y]
when
Used to introduce a conditional statement.
WHILE
Used to indicate the conditions under which a statement
should be executed.
XOR
Exclusive or. Returns 1 if the first expression is true and the
second expression is false or if the first expression is false and
the second expression is true. Returns 0 otherwise.
xor(Expr1,Expr2)
yellow
zip
Used with displayto specify the color of the geometrical
object to be displayed.
Applies a bivariate function to the elements of two lists.
Without the default value its length is the minimum of the
lengths of the two lists and the shorter list is padded with the
default value.
zip(Fnc2d(f),Lst(l1),Lst(l2),[Val(default)])
Example:
zip('+',[a,b,c,d], [1,2,3,4])gives
[a+1,b+2,c+3,d+4]
|
Substitutes a value for a variable in an expression.
|(Expr,Var(v1)=value(a1)[,v2=a2,...])
Returns the square of an expression.
(Expr)2
2
Inserts pi.
Inserts a template for a partial derivative expression.
Inserts a template for a summation expression.
Inserts a minus sign.
Inserts a square root sign.
Inserts a template for an antiderivative expression.
Inserts a not-equal-to sign.
424
Functions and commands
Inserts a less-than-or-equal-to sign.
Inserts a greater-than-or-equal-to sign.
Evaluates the expression then stores the result in variable var.
Note that cannot be used with the graphics G0–G9. See the
command BLIT.
expression var
i
-1
Inserts the imaginary number i.
Returns the inverse of an expression.
(Expr)–1
Creating your own functions
You can create your own function by writing a program (see
chapter 27) or by using the simpler DEFINEfunctionality.
Functions you create yourself appear on the User menu (one
of the Toolbox menus).
Suppose you wanted to create the function
SINCOS(A,B)=SIN(A)+COS(B)+C.
1. Press Sd (Define).
2. In the Name field, enter
a name for the
function—for example,
SINCOS—and tap
.
3. In the Function field,
enter the function.
eAA>+fAB>AC
New fields appear
below your function, one
for each potential
parameter it. will take.
You need to decide
which ones are to be
parameters when the
function is called. In this
example, we’ll make A
and B parameters. The value of C will be provided by
global variable C (which by default is zero).
Functions and commands
425
4. Make sure that Aand Bare selected and Cis not.
5. Tap
.
You can run your function by entering it on the entry line
in Home view, or be selecting it from the USER menu. You
enter the value for each variable you chose to be a
parameter. In this example. we chose A and B to be
parameters. Thus you might enter SINCOS(0.5, 0.75).
426
Functions and commands
22
Variables
Variables are placeholders for objects (such as function
definitions, numbers, matrices, the results of calculations,
and the like). Some are built-in and cannot be deleted. But
you can also create your own.
Many built-in variables are automatically assigned objects
as a result of some operation (such as defining a polar
function, performing a calculation, or setting an option).
For example, if you define a polar function, that definition
is assigned to variable named R0 to R . If you use the
n
Function app to find the slope of a curve at some x-value,
the slope is assigned to a variable named Slope. And if
you choose binary as the base for integer arithmetic, a
built-in variable named Baseis given the value 0. If you
had chosen octal instead, Basewould have been given
the value 1.
Creating variables
Variables you create are assigned whatever value you
give them. You can assign a value to certain built-in
variables (such as the Home variables). You can also
create your own variables. Example 1 below gives an
example of assigning a value to a built-in variable, and
example 2 illustrates how to create a variable and assign
a value to it
Example 1: To assign 2 to the built-in variable A:
Szj
AaE
Your stored value
appears as shown at the
right. If you then wanted
to multiply your stored
value by 5, you could
enter:
Aas5E
Variables
427
To assign an object to a built-in variable, it is important
that you choose a variable that matches the type of object.
For example, you cannot assign a complex number to the
variables A through Z. These are reserved fro real
numbers. Complex numbers need to be assigned to
variables Z0 through Z9. Likewise, matrices can only be
assigned to the built-in variables M0 through M9. See
“Home variables” on page 431 for more information.
You can also take advantage of the built-in variables in
CAS view. However, the built-in CAS variables must be
entered in lowercase: a–z.
Example 2: You can create your own variables—in
Home view and in CAS view. For example, suppose you
want to create a variable called MEand assign 2 to it.
You would enter:
Szj
A message appears asking if you want to create a
variable called ME. Tap or press E to
AQAcE
confirm your intention. You can now use that variable in
subsequent calculations: ME*3will yield 303, for
example.
You can also create variables by entering [variable
name]:=[object]. For example, entering
AxAoAtAwS.55
Eassigns 55 to the variable YOU. You can now use
that variable in subsequent calculations: YOU+60 will
yield 115, for example.
Using variables to
change settings
Just as you can assign values to variables you create
yourself, you can assign values to certain built-in
variables. You could modify Home settings on the Home
Settings screen (SH). But you can also modify a
Home setting from Home view by assigning a value to the
variable that represents that setting. For example, entering
0
BaseE in Home view forces the setting
for the integer base to binary. (A value of 1 would force it
to octal, 2 to decimal, and 3 to hex.) Another example:
you can change the angle measure setting from radians to
428
Variables
degrees by entering 1
view. Entering 0
HAngleE in Home
HAngleE forces the
setting to return to radians.
Retrieving variables
You can see what value has been assigned to a
variable—built-in or user-defined—by entering its name in
Home view and pressing E. You can enter the
name letter by letter, or choose the variable from the
Variables menu.
The Variables menu is
opened by tapping a.
There are four sub-
menus, covering Home,
CAS, app, and user
variables. Home
variables are the built-in
variables set by what you
do in Home view or by the settings you choose on the
Home Settings screen. Some examples are HAngle
and Base. App variables are also built-in, but they are set
by what you do in an app. Some examples are XMaxand
Slope. The CAS variables and user variables are those
you create yourself.
If you want to retrieve just the value of a variable and not
its name, tap
before you select the variable from a
Variables menu.
Qualifying
variables
Some variables are common to more than one app. For
example, the Function app has a variable named Xmin,
but so too does the Polar app, the Parametric app, the
Sequence app, and the Solve app. Likewise, the X
variable is common to both the Statistics 1Var and
Statistics 2Var apps. Although named identically, these
variables can hold different values.
Variables
429
If you attempt to retrieve
a variable that is used in
more than one app by
entering just its name in
Home view, you will get
the value that was last
calculated for that
variable. This might not
be the value that you want. To ensure you get the right
value, you need to qualify the variable with the name of
the app that generated it. In the example at the right, the
variable X was entered, but it returned the value of that
variable as it was calculated in the Statistics 1Var app (the
first entry). However, it was the value of the variable as it
was calculated in the Statistics 2Var app that was sought.
To retrieve that value, the variable name had to be
qualified by prefixing it with the name of the app that
generated it: Statistics_2Varfollowed by a period
(the second entry).
Note the syntax required:
app_name.variable_name
Spaces are not allowed in an app name and must be
represented by the underscore character: SX. The
app can be a built-in app or one you have crated based
on a built-in app. The name of a built-in variable must
match a name listed in the Home variables or App
variables tables below.
Tip
Non-standard characters in variables name—such as
and —can be entered by selecting them from the special
symbols palette: Sr.
430
Variables
Home variables
The Home variables are accessed by pressing a and
tapping
.
Category
Names
Real
A to Z and
For example, 7.45
A
Complex
Z0 to Z9
For example, 2+3×i
Z1 or
(2,3)
Z1 (depending on your
Complex number settings)
List
L0 to L9
For example, {1,2,3}
L1.
Matrix
M0 to M9
Store matrices and vectors in these
variables.
For example, [[1,2],[3,4]]
M1.
Graphics
Settings
G0 to G9
HAngle
HFormat
HDigits
HComplex
Date
Time
Language
Entry
Integer
Base
Bits
Signed
Variables
431
App variables
The app variables are accessed by pressing a and
tapping . They are grouped below by app. (You
can find then grouped by view—Symbolic, Numeric, Plot,
—in “Variables and Programs” on page 553.)
Note that if you have customized a built-in app, your app
will appear on the App variables menu under the name you
gave it. You access the variables in a customized app in the
same way that you access the variables in built-in apps.
Function app variables
Category
Names
a
Area
Extremum
Isect
Root
Slope
Results
Symbolic
Plot
F1
F2
F3
F4
F5
F6
F7
F8
F9
F0
Axes
Xmin
Cursor
GridDots
GridLines
Labels
Method
Recenter
Xmax
Xtick
Xzoom
Ymax
Ymin
Ytick
Yzoom
Numeric
Modes
NumStart
NumStep
Automatic
NumIndep
NumType
NumZoom
BuildYourOwn
AAngle
AComplex
ADigits
AFormat
a. The Results variables contain the last value found by the Signed
Area, Extremum, Intersection, Root, and Slope functions respectively.
432
Variables
Geometry app variables
Category
Names
Numeric
XMin
YMin
XMax
Modes
AAngle
AComplex
ADigits
AFormat
Spreadsheet app variables
Category
Names
Numeric
ColWidth
Row
RowHeight
Col
Cell
Modes
AAngle
AComplex
ADigits
AFormat
Solve app variables
Category
Names
Symbolic
E1
E2
E3
E4
E5
E6
E7
E8
E9
E0
Plot
Axes
Xmin
Cursor
GridDots
GridLines
Labels
Method
Recenter
Xmax
Xtick
Xzoom
Ymax
Ymin
Ytick
Yzoom
Modes
AAngle
AComplex
ADigits
AFormat
Variables
433
Advanced Graphing app variables
Category
Names
Symbolic
S1
S2
S3
S4
S5
S6
S7
S8
S9
S0
Plot
Axes
Xmin
Cursor
GridDots
GridLines
Labels
Method
Recenter
Xmax
Xtick
Xzoom
Ymax
Ymin
Ytick
Yzoom
Numeric
Modes
NumXStart
NumYStart
NumXStep
NumYStep
NumIndep
NumType
NumXZoom
NumYZoom
Automatic
BuildYourOwn
AAngle
AComplex
ADigits
AFormat
434
Variables
Statistics 1Var app variables
Category
Names
NbItem
Min
Q1
Med
Q3
Max
X
Results
[explained
below]
X2
MeanX
sX
X
serrX
Symbolic
Plot
H1
H2
H3
H4
H5
H1Type
H2Type
H3Type
H4Type
H5Type
Axes
Xmax
Cursor
GridDots
GridLines
Hmin
Xmin
Xtick
Xzoom
Ymax
Hmax
Ymin
Hwidth
Labels
Recenter
Ytick
Yzoom
Numeric
Modes
D1
D2
D3
D4
D5
D6
D7
D8
D9
D0
AAngle
AComplex
ADigits
AFormat
Variables
435
Results
NbItem
Contains the number of data points in the current 1-
variable analysis (H1-H5).
Min
Q1
Contains the minimum value of the data set in the current
1-variable analysis (H1-H5).
Contains the value of the first quartile in the current 1-
variable analysis (H1-H5).
Med
Q3
Contains the median in the current 1-variable analysis
(H1-H5).
Contains the value of the third quartile in the current 1-
variable analysis (H1-H5).
Max
X
Contains the maximum value in the current 1-variable
analysis (H1-H5).
Contains the sum of the data set in the current 1-variable
analysis (H1-H5).
X2
MeanX
sX
Contains the sum of the squares of the data set in the
current 1-variable analysis (H1-H5).
Contains the mean of the data set in the current 1-variable
analysis (H1-H5).
Contains the sample standard deviation of the data set in
the current 1-variable analysis (H1-H5).
X
Contains the population standard deviation of the data set
in the current 1-variable analysis (H1-H5).
serrX
Contains the standard error of the data set in the current
1-variable analysis (H1-H5).
436
Variables
Statistics 2Var app variables
Category
Names
NbItem
Corr
CoefDet
sCov
sX
X
serrX
MeanY
Y
Results
[explained
below]
Cov
XY
Y2
MeanX
sY
Y
serrY
X
X2
Symbolic
Plot
S1
S2
S3
S4
S5
S1Type
S2Type
S3Type
S4Type
S5Type
Axes
Xmin
Cursor
GridDots
GridLines
Labels
Method
Recenter
Xmax
Xtick
Xzoom
Ymax
Ymin
Ytick
Yzoom
Numeric
Modes
C1
C2
C3
C4
C5
C6
C7
C8
C9
C0
AAngle
AComplex
ADigits
AFormat
Variables
437
Results
NbItem
Contains the number of data points in the current 2-
variable analysis (S1-S5).
Corr
Contains the correlation coefficient from the latest
calculation of summary statistics. This value is based on
the linear fit only, regardless of the fit type chosen.
CoefDet
Contains the coefficient of determination from the latest
calculation of summary statistics. This value is based on
the fit type chosen.
sCov
Cov
XY
MeanX
X
Contains the sample covariance of the current 2-variable
statistical analysis (S1-S5).
Contains the population covariance of the current 2-
variable statistical analysis (S1-S5).
Contains the sum of the X·Y products for the current 2-
variable statistical analysis (S1-S5).
Contains the mean of the independent values (X) of the
current 2-variable statistical analysis (S1-S5).
Contains the sum of the independent values (X) of the
current 2-variable statistical analysis (S1-S5).
X2
sX
Contains the sum of the squares of the independent values
(X) of the current 2-variable statistical analysis (S1-S5).
Contains the sample standard deviation of the
independent values (X) of the current 2-variable statistical
analysis (S1-S5).
X
Contains the population standard deviation of the
independent values (X) of the current 2-variable statistical
analysis (S1-S5).
serrX
Contains the standard error of the independent values (X)
of the current 2-variable statistical analysis (S1-S5).
MeanY
Contains the mean of the dependent values (Y) of the
current 2-variable statistical analysis (S1-S5).
438
Variables
Y
Contains the sum of the dependent values (Y) of the
current 2-variable statistical analysis (S1-S5).
Y2
sY
Contains the sum of the squares of the dependent values
(Y) of the current 2-variable statistical analysis (S1-S5).
Contains the sample standard deviation of the dependent
values (Y) of the current 2-variable statistical analysis (S1-
S5).
Y
Contains the population standard deviation of the
dependent values (Y) of the current 2-variable statistical
analysis (S1-S5).
serrY
Contains the standard error of the dependent values (Y) of
the current 2-variable statistical analysis (S1-S5).
Inference app variables
Category
Names
Result
CritScore
CritVal1
CritVal2
DF
Results
[explained
below]
TestScore
TestValue
Prob
AltHyp
Method
Type
Symbolic
Numeric
Alpha
Conf
Mean1
Mean2
n1
Pooled
s1
s2
1
2
n2
0
x1
x2
0
Modes
AAngle
AComplex
ADigits
AFormat
Variables
439
Results
CritScore
Contains the value of the Z- or t-distribution associated
with the input -value
CritVal1
CritVal2
Contains the lower critical value of the experimental
variable associated with the negative TestScore value
which was calculated from the input -level.
Contains the upper critical value of the experimental
variable associated with the positive TestScore value
which was calculated from the input -level.
DF
Contains the degrees of freedom for the t-tests.
Prob
Contains the probability associated with the TestScore
value.
Result
For hypothesis tests, contains 0 or 1 to indicate rejection
or failure to reject the null hypothesis.
TestScore
TestValue
Contains the Z- or t-distribution value calculated from the
hypothesis test or confidence interval inputs.
Contains the value of the experimental variable
associated with the TestScore.
440
Variables
Parametric app variables
Category
Names
Symbolic
X1
Y1
X2
Y2
X3
Y3
X4
Y4
X5
X6
Y6
X7
Y7
X8
Y8
X9
Y9
X0
Y0
Y5
Plot
Axes
Tstep
Xmax
Xmin
Xtick
Xzoom
Ymax
Ymin
Ytick
Yzoom
Cursor
GridDots
GridLines
Labels
Method
Recenter
Tmin
Tmax
Numeric
Modes
Automatic
BuildYourOwn
NumIndep
NumStep
NumType
NumZoom
NumStart
AAngle
AComplex
ADigits
AFormat
Variables
441
Polar app variables
Category
Names
Symbolic
R1
R2
R3
R4
R5
R6
R7
R8
R9
R0
Plot
min
max
Recenter
Xmax
step
Xmin
Axes
Xtick
Xzoom
Ymax
Ymin
Ytick
Yzoom
Cursor
GridDots
GridLines
Labels
Method
Numeric
Automatic
BuildYourOwn
NumIndep
NumStep
NumType
NumZoom
NumStart
Modes
AAngle
AComplex
ADigits
AFormat
Finance app variables
Category
Names
CPYR
BEG
FV
NbPmt
PMTV
PPYR
PV
Numeric
IPYR
Modes
AAngle
AComplex
ADigits
AFormat
442
Variables
Linear Solver app variables
Category
Numeric
Modes
Names
a
LSystem
LSolution
AAngle
AComplex
ADigits
AFormat
a. Contains a vector with the last solution found by either the Linear
Solver app or the LSolveapp function.
Triangle Solver app variables
Category
Names
SideA
SideB
SideC
Rect
AngleA
AngleB
AngleC
Numeric
Modes
AAngle
AComplex
ADigits
AFormat
Linear Explorer app variables
Category
Names
Modes
AAngle
AComplex
ADigits
AFormat
Quadratic Explorer app variables
Category
Names
Modes
AAngle
AComplex
ADigits
AFormat
Variables
443
Trig Explorer app variables
Category
Names
Modes
AAngle
AComplex
ADigits
AFormat
Sequence app variables
Category
Names
Symbolic
U1
U2
U3
U4
U5
U6
U7
U8
U9
U0
Plot
Axes
Xmax
Cursor
GridDots
GridLines
Labels
Nmin
Xmin
Xtick
Xzoom
Ymax
Ymin
Nmax
Recenter
Ytick
Yzoom
Numeric
Modes
Automatic
BuildYourOwn
NumIndep
NumStep
NumType
NumZoom
NumStart
AAngle
AComplex
ADigits
AFormat
444
Variables
23
Units and constants
Units
A unit of measurement—such as inch, ohm, or
Becquerel—enables you to give a precise magnitude to a
physical quantity.
You can attach a unit of measurement to any number or
numerical result. A numerical value with units attached is
referred to as a measurement. You can operate on
measurements just as you do on numbers without attached
units. The units are kept with the numbers in subsequent
operations.
The units are on the Units menu. Press SF (Units)
and, if necessary, tap
.
The menu is organized by category. Each category is
listed at the left, with the units in the selected category
listed at the right.
Unit categories
•
•
•
•
•
•
length
area
•
•
•
•
•
•
acceleration
force
•
•
•
•
•
electricity
light
volume
time
energy
angle
power
viscosity
radiation
speed
mass
pressure
temperature
Units and constants
445
Prefixes
The Units menu includes an entry that is not a unit
category, namely, Prefix. Selecting this option displays
a palette of prefixes.
Y: yotta
G: giga
d: deci
p: pico
Z: zetta
E: exa
P: peta
T: tera
M: mega k: kilo
h: hecto
D: deca
c: centi
f: femto
m: milli
a: atto
: micro n: nano
z: zepto y: octo
Unit prefixes provide a handy way of entering large or
small numbers. For example, the speed of light is
approximately 300,000 m/s. If you wanted to use that in
a calculation, you could enter it as 300_km/s, with the
prefix k selected from the prefix palette.
Select the prefix you want before selecting the unit.
Unit calculations
A number plus a unit is a measurement. You can perform
calculations with multiple measurements providing that the
units of each measurement are from the same category.
For example, you can add two measurements of length
(even lengths of different units, as illustrated in the
following example). But you cannot add, say, a length
measurement to a volume measurement.
446
Units and constants
Example
Suppose you want to add 20 centimeters and 5 inches
and have the result displayed in centimeters.
1. If you want the result
in cm, enter the
centimeter
measurement first.
20 SF (Units)
Select Length
Select cm
2. Now add 5 inches.
5 SF
+
Select Length
Select in
E
The result is shown
as 32.7 cm. If you
had wanted the
result in inches, then
you would have
entered the 5 inches
first.
3. To continue the
example, let’s divide
the result by 4
seconds.
4 SF
n
Select Time
Select s
E
The result is shown
as 8.175 cm*s–1.
Units and constants
447
4. Now convert the
result to kilometers
per hour.
SF
Select Speed
Select km/h
E
The result is shown
as 0.2943 kilometers
per hour.
Unit tools
There are a number of tools for managing and operating
on units. These are available by pressing SF
and tapping
.
CONVERT
Converts one unit to another unit of the same category.
CONVERT(5_m,1_ft)returns 16.4041994751_ft
You can also use the last answer as the first argument in a
new conversion calculation. Pressing S+ places the
last answer on the entry line. You can also select a value
from history and tap
to copy it to the entry line.
with a measurement calls the convert command as
well and converts to whatever unit follows the Store
symbol.
MKSA
Meters, kilograms, seconds, amperes. Converts a
complex unit into the base components of the MKSA
system.
MKSA(8.175_cm/s)returns .08175_m*s–1
448
Units and constants
UFACTOR
USIMPLIFY
Unit factor conversion. Converts a measurement using a
compound unit into a measurement expressed in
constituent units. For example, a Coulomb—a measure of
electric charge—is a compound unit derived from the SI
base units of Ampere and second: 1 C = 1 A * 1 s. Thus:
UFACTOR(100_C,1_A))returns 100_A*s
Unit simplification. For example, a Joule is defined as one
kg*m2/s2. Thus:
USIMPLIFY(5_kg*m^2/s^2)returns 5_J
Physical constants
The values of 34 math and physical constants can be
selected (by name or value) and used in calculations.
These constants are grouped into four categories: math,
chemistry, physics and quantum mechanics. A list of all
these constants is given in “List of constants” on page 451.
To display the constants, press SF and then tap
.
Example
Suppose you want to know the potential energy of a mass
of 5 units according to the equation E = mc2.
1. Enter the mass and
the multiplication
operator:
5
s
2. Open the constants
menu.
SF
Units and constants
449
3. Select Physics.
4. Select c:
299792458.
5. Square the speed of
light and evaluate
the expression.
jE
Value or
measurement?
You can enter just the value of a constant or the constant
and its units (if it has units). If
is showing on the
screen, the value is inserted at the cursor point. If
is showing on the screen, the value and its units are
inserted at the cursor point.
In the example at the
right, the first entry shows
the Universal Gas
Constant after it was
chosen with
showing. The second
entry shows the same
constant, but chosen
when
showing.
was
Tapping
displays
, and vice versa.
450
Units and constants
List of constants
Category
Name and symbol
e
Math
MAXREAL
MINREAL
i
Avogadro,NA
Boltmann, k
molar volume, Vm
universal gas, R
standard temperature, StdT
standard pressure, StdP
Chemistry
Phyics
Stefan-Boltzmann,
speed of light, c
permittivity,
0
permeability, 0
acceleration of gravity, g
gravitation, G
Planck, h
Dirac,
Quantum
electronic charge, q
electron mass, me
q/me ratio, qme
proton mass, mp
mp/me ratio, mpme
fine structure,
magnetic flux,
Faraday, F
Rydberg, R∞
Bohr radius, a0
Bohr magneton, B
nuclear magneton, N
photon wavelength,
photon frequency, f0
0
Compton wavelength, c
Units and constants
451
452
Units and constants
24
Lists
A list consists of comma-separated real or complex
numbers, expressions, or matrices, all enclosed in braces.
A list may, for example, contain a sequence of real
numbers such as {1,2,3}. Lists represent a convenient
way to group related objects.
You can do list operations in Home and in programs.
There are ten list variables available, named L0to L9, or
you can create your own list variable names. You can use
them in calculations or expressions in Home or in a
program. Retrieve a list name from the Vars menu (a),
or just type its name from the keyboard.
You can create, edit, delete, send, and receive named lists
in the List Catalog:
(List). You can also create
Sp
and store lists—named or unnnamed—in Home view.
List variables are identical in behavior to the columns C1-
C0in the Statistics 2Var app and the columns D1-D0in
the Statistics 1Var app. You can store a statistics column
as a list (or vice versa) and use any of the list functions on
the statistics columns, or the statistics functions on the list
variables.
Create a list in the List Catalog
1. Open the List
Catalog.
(List)
Sp
The number of
elements in a list is
shown beside the list
name.
Lists
453
2. Tap on the name you
want to assign to the
new list (L1, L2,
etc.). The list editor
appears.
If you’re creating a
new list rather than
changing, make sure
you choose a list with out any elements in it.
3. Enter the values you want in the list, pressing
after each one.
E
Values can be real or
complex numbers (or
an expression). If
you enter a
expression, it is
evaluated and the
result is inserted in
the list.
4. When done, press
(List) to return to the List
Sp
catalog, or press
to go to Home view.
H
List Catalog:
Buttons and keys
The buttons and keys in the List Catalog are:
Button or Key
Purpose
Opens the highlighted list for
editing. You can also just tap on a
list name.
or
Deletes the contents of the selected
list.
C
Transmits the highlighted list to
another HP Prime.
(Clear)
Clears all lists.
SJ
S=
or
Moves to the top or bottom of the
catalog, respectively.
\
454
Lists
The List Editor
The List Editor is a special environment for entering data
into lists. There are two ways to open the List Editor once
the List Catalog is open:
•
•
Highlight the list and tap
Tap the name of the list.
or
List Editor: Buttons
and keys
When you open a list, the following buttons and keys are
available to you:
Button or Key
Purpose
Copies the highlighted list item
into the entry line.
Inserts a new value—with default
zero—before the highlighted item.
Deletes the highlighted item.
C
or
Displays a menu for you to choose
the small font, medium font, or
large font
Displays a menu for you to choose
how many lists to display at one
time: one, two, three, or four. For
example, if you have only L4
displayed and you choose 3from
the Lists menu, lists L5and L6
will be displayed in addition to
L4.
(Clear)
Clears all items from the list.
SJ
or
Moves the cursor to the start or the
end of the list.
S=
\
Lists
455
To edit a list
1. Open the List
Catalog.
(List)
Sp
2. Tap on the name of
the list (L1, L1,etc.). The List Editor appears.
3. Tap on the element
you want to edit.
(Alternatively, press
or
until the
=
\
element you want to
edit is highlighted.)
In this example, edit
the third element so
that it has a value of 5.
5
To insert an element
in a list
Suppose you want to
insert a new value, 9, in
L1(2) in the list L1 shown
to the right.
456
Lists
Select L1(2), that is,
the second element
in the list.
9
Deleting lists
To delete a list
In the List Catalog, use the cursor keys to highlight the list
and press C. You are prompted to confirm your
decision. Tap
or press E.
If the list is one of the reserved lists L0-L9, then only the
contents of the list are deleted. The list is simply stripped
of its contents. If the list is one you have named (other than
L0-L9), then it is deleted entirely.
To delete all lists
In the List Catalog, press
J (Clear).
S
The contents of the lists L0-L9 are deleted and any other
named lists are deleted entirely.
Lists in Home view
You can enter and operate on lists directly in Home view.
The lists can be named or unnamed.
To createa list
1. Press S
({}).
q
A pair of braces appears on the entry line. All lists
must be enclosed in braces.
2. Enter the first element in the list followed by a comma:
[element] o
3. Continue adding elements, separating each with a
comma.
Lists
457
4. When you have finished entering the elements, press
. The list is added to History (with any
E
expressions among the elements evaluated).
To store a list
You can store a list in a variable. You can do this
before the list is added to History, or you can copy it
from History. When you’ve entered a list in the entry
line or copied it from History to the entry line, tap
, enter a name for the list and press E.
The reserved list variable names available to you are
L0through L9; however, you can create a list
variable name of your own as well.
For example, to store
the list {25,147,8} in
L7:
1. Create the list on the
entry line.
2. Press > to move the
cursor outside the
list.
3. Tap
.
4. Enter the name:
Aj7
5. Complete the operation: E.
To display a list
To display a list in Home view, type its name and
pressE.
If the list is empty, a pair of empty braces is returned.
To display one
element
To display one element of a list in Home view, enter
listname (element#). For example, if L6 is {3,4,5,6}, then
L6(2)
returns 4.
E
To store one
element
To store a value in one element of a list in Home view,
enter value listname (element#). For example, to
store 148 as the second element in L2, type
148 L2(2)
.
E
458
Lists
To send a list
You can send lists to another calculator or a PC just as you
can apps, programs, matrices, and notes. See “Sharing
data” on page 44 for instructions.
List functions
List functions are found on the Math menu. You can use
them in Home and in programs.
You can type in the name
of the function, or you
can copy the name of the
function from the List
category of the Math
menu.
Press D 6 to select the
List category in the left column of the Math menu. (List is
the sixth category on the Math menu, which is why
pressing 6 will take you straight to the List category.) Tap
a function to select it, or use the direction keys to highlight
it and either tap
or press E.
List functions are enclosed in parentheses. They have
arguments that are separated by commas, as in
CONCAT(L1,L2). An argument can be either a list
variable name or the actual list; for example,
REVERSE(L1) or REVERSE({1,2,3}).
Common operators like +, –, ×, and ÷ can take lists as
arguments. If there are two arguments and both are lists,
then the lists must have the same length, since the
calculation pairs the elements. If there are two arguments
and one is a real number, then the calculation operates on
each element of the list.
Example:
5*{1,2,3} returns {5,10,15}.
Besides the common operators that can take numbers,
matrices, or lists as arguments, there are commands that
can only operate on lists.
Lists
459
Menu format
By default, a List function is presented on the Math menu
using its descriptive name, not its common command
name. Thus the shorthand name CONCATis presented as
Concatenate and POSis presented as Position.
If you prefer the Math menu to show command names
instead, deselect the Menu Display option on page 2 of
the Home Settings screen (see page 26).
Make List
Calculates a sequence of elements for a new list using the
syntax:
MAKELIST(expression,variable,begin,end,
increment)
Evaluates expression with respect to variable, as variable
takes on values from begin to end values, taken at
increment steps.
Example:
In Home, generate a series of squares from 23 to 27:
D
Select List
Select Make List
(or MAKELIST)
a
a
A
A
j o
o
23
27
o
1
o E
Sort
Sorts the elements in a list in ascending order.
SORT(list)
Example:
SORT({2,5,3})returns {2,3,5}
460
Lists
Reverse
Creates a list by reversing the order of the elements in a
list.
REVERSE(list)
Example:
REVERSE({1,2,3})returns {3,2,1}
Concatenate
Position
Concatenates two lists into a new list.
CONCAT(list1,list2)
Example:
CONCAT({1,2,3},{4})returns {1,2,3,4}.
Returns the position of an element within a list. The
element can be a value, a variable, or an expression. If
there is more than one instance of the element, the
position of the first occurrence is returned. A value of 0 is
returned if there is no occurrence of the specified element.
POS(list, element)
Example:
POS ({3,7,12,19},12)returns 3
Size
Returns the number of elements in a list.
SIZE(list)
Example:
SIZE({1,2,3})returns 3
LIST
Creates a new list composed of the first differences of a
list; that is, the differences between consecutive elements
in the list. The new list has one less element than the
original list. The differences for {x , x , x ,... x , x } are
1
2
3
n-1
n
{x –x , x –x ,... x –x }.
2
1
3
2
n
n–1
LIST(list1)
Lists
461
Example:
In Home view, store
{3,5,8,12,17,23} in L5
and find the first
differences for the list.
q
S
3,5,8,12,17,23
>
j 5
A
D
E
Select List
Select List
j 5
A
E
LIST
Calculates the sum of all elements in a list.
LIST(list)
Example:
LIST({2,3,4})returns 9.
LIST
Calculates the product of all elements in list.
LIST(list)
Example:
LIST({2,3,4})returns 24.
Finding statistical values for lists
To find statistical values—such as the mean, median,
maximum, and minimum of a list—you create a list, store
it in a data set and then use the Statistics 1Var app.
Example
In this example, use the Statistics 1Var app to find the
mean, median, maximum, and minimum values of the
elements in the list L1, being 88, 90, 89, 65, 70, and 89.
462
Lists
1. In Home view, create
L1.
q
S
88, 90, 89, 65,
70,89 >
j1
A
E
2. In Home view, store
L1 in D1.
j1
A
d1
A
E
You will now be able
to see the list data in the Numeric view of the
Statistics 1Var app.
3. Start the Statistics 1Var app.
Select
I
Statistics 1Var
Notice that your list
elements are in data
set D1.
4. In the Symbolic view,
specify the data set
whose statistics you want to find.
Y
By default, H1 will
use the data in D1,
so nothing further
needs to be done in
Symbolic view.
However, if the data
of interest were in D2, or any column other than D1,
you would have to specify the desired data column
here.
Lists
463
5. Calculate the
statistics.
M
6. Tap
when
you are done.
See the chapter 10,
“Statistics 1Var app”,
beginning on page 209, for the meaning of each
statistic.
464
Lists
25
Matrices
You can create, edit, and operate on matrices and vectors
in the Home view, CAS, or in programs. You can enter
matrices directly in Home or CAS, or use the Matrix Editor.
Vectors
Vectors are one-dimensional arrays. They are composed
of just one row. A vector is represented by single brackets;
for example, [1 2 3]. A vector can be a real number
vector, or a complex number vector such as
[1+2*i 7+3*i].
Matrices
Matrices are two-dimensional arrays. They are composed
of at least two rows and at least one column. Matrices
may contain any combination of or real and complex
numbers, such as:
1 + 2i
3 – 4i
7
1 2 3
4 5 6
or
.
Matrix variables
There are ten reserved matrix variables available, named
M0to M9; however, you can save a matrix in a variable
name you define. You can then use them in calculations in
Home or CAS views or in a program. You can retrieve
matrix names from the Vars menu, or just type their names
from the keyboard.
Matrices
465
Creating and storing matrices
The Matrix Catalog
contains the reserved
matrix variables M0-M9,
as well as any matrix
variables you have
created in Home or CAS
views (or from a program
if they are global).
Once you select a matrix name, you can create, edit, and
delete matrices in the Matrix Editor. You can also send a
matrix to another HP Prime.
To open the Matrix Catalog, press
(Matrix).
St
In the Matrix Catalog, the size of a matrix is shown beside
the matrix name. (An empty matrix is shown as 1*1.) The
number of elements in it is shown beside a vector.
You can also create and store matrices—named or
unnamed—in Home view. For example, the command:
POLYROOT([1,0,–1,0])M1
stores the roots of the complex vector of length 3 into the
variable M1. M1 will thus contain the three roots of
x3 – x = 0 : 0, 1 and –1.
Matrix Catalog:
buttons and keys
The buttons and keys available in the Matrix Catalog are:
Button or Key Purpose
Opens the highlighted matrix for editing.
C
or
Deletes the content sof the selected matrix.
Changes the selected matrix into a one-
dimensional vector.
Transmits the highlighted matrix to another
HP Prime.
(Clear Clears the contents of the reserved matrix
variables M0-M9and deletes any user-
named matrices.
SJ
)
466
Matrices
Working with matrices
To open the Matrix
Editor
To create or edit a matrix, go to the Matrix Catalog, and
tap on a matrix. (You could also use the cursor keys to
highlight the matrix and then press
Editor opens.
The Matrix
.)
Matrix Editor:
Buttons and keys
The buttons and keys available in the Matrix Editor are.:
Button or Key
Purpose
Copies the highlighted element to
the entry line.
Inserts a row of zeros above, or a
column of zeros to the left, of the
highlighted cell. You are
prompted to choose row or
column.
Displays a menu for you to choose
the small font, medium font, or
large font.
A three-way toggle that controls
how the cursor will move after an
element has been entered.
moves the cursor to the right,
moves it downward, and
does not move it at all.
Displays a menu for you to choose
1, 2, 3, or 4 columns to be
displayed at a time.
(Clear)
Deletes the highlighted row, or
column, or the entire matrix. (You
are prompted to make a choice.)
SJ
Moves the cursor to the first row,
last row, first column, or last
column respectively.
S=\<>
Matrices
467
To create a matrix
in the Matrix Editor
1. Open the Matrix Catalog:
(Matrix)
St
2. If you want to create a vector, press = or \ until
the matrix you want to use is highlighted, tap
,
and then press
. Continue from step 4 below.
E
3. If you want to create a matrix, either tap on the name
of the matrix (M0–M9), or press = or \ until the
matrix you want to use is highlighted and then press
E.
Note that an empty matrix will be shown with a size
of 1*1beside its name.
4. For each element in the matrix, type a number or an
expression, and then tap
or press E.
You can enter complex numbers in complex
form, that is, (a, b), where a is the real part and b is
the imaginary part. You can also enter them in the
form a+bi.
5. By default, on entering an element the cursor moves
to the next column in the same row. You can use the
cursor keys to move to a different row or column. You
can also change the direction the cursor
automatically moves by tapping
. The
button toggles between the following options:
–
–
–
: the cursor moves to the cell to the right of
the current cell when you press
.
E
: the cursor moves to the cell below the
current cell when you press
.
E
: the cursor stays in the current cell when
you press
.
E
6. When done, press St (Matrix) to return to the
Matrix Catalog, or press H to return to Home view.
The matrix entries are automatically saved.
Matrices in Home
view
You can enter and operate on matrices directly in Home
view. The matrices can be named or unnamed.
Enter a vector or matrix in Home or CAS views directly in
the entry line.
468
Matrices
1. Press S u ([])
to start a vector or
matrix. The matrix
template will appear,
as shown in the
figure to the right.
2. Enter a value in the
square. Then press
> to enter a second value in the same row, or press
\ to move to the second row. The matrix will grow
with you as you enter values, adding rows and
columns as needed.
3. You can increase
your matrix at any
time, adding
columns and rows as
you please. You can
also delete an entire
row or column. Just
place the cursor on
the ± symbol at the end of a row or column. Then
press + to insert a new row or column, or w to
delete the row or column. You can also press C to
delete a row or column. In the figure above, pressing
C would delete the second row of the matrix.
4. When you are
finished, press
E and the
matrix will be
displayed in the
History. You can then
use or name your
matrix.
To store a matrix
You can store a vector or matrix in a variable. You can do
this before it is added to History, or you can copy it from
History. When you’ve entered a vector or matrix in the
entry line or copied it from History to the entry line, tap
, enter a name for it and press E. The
variable names reserved for vectors and matrices are M0
through M9. You can always use a variable name you
Matrices
469
devise to store a vector or matrix. The new variable will
appear in the Vars menu under
.
The screen at the right
shows the matrix
2.5 729
16 2
being stored in M5. Note
that you can enter an
expression (like 5/2) for
an element of the matrix, and it will be evaluated upon
entry
The figure to the right
shows the vector [1 2 3]
being stored in the user
variable M25. You will
be prompted to confirm
that you want to create
your own variable. Tap
to proceed or
to cancel.
Once you tap
,
your new matrix will be
stored under the name
M25. This variable will
show up in the User
section of the Vars menu.
You will also see your
new matrix in the Matrix
Catalog.
To display a matrix
In Home view, enter the name of the vector or matrix and
press
. If the vector or matrix is empty, zero is
E
returned inside double square brackets.
To display one
element
In Home view, enter matrixname(row,column). For
example, if M2is [[3,4],[5,6]], then
M2(1,2)Ereturns 4.
To store one
element
In Home view, enter value, tap
matrixname(row,column).
For example, to change the element in the first row and
, and then enter
470
Matrices
second column of M5 to 728 and then display the
resulting matrix:
728
AQ5
R1o 2
E
An attempt to store an
element to a row or
column beyond the size of the matrix results in re-sizing the
matrix to allow the storage. Any intermediate cells will be
filled with zeroes.
To send a matrix
You can send matrices between calculators just as you can
send apps, programs, lists, and notes. See “Sharing data”
on page 44 for instructions.
Matrix arithmetic
You can use the arithmetic functions (+, –, ×, ÷, and
powers) with matrix arguments. Division left-multiplies by
the inverse of the divisor. You can enter the matrices
themselves or enter the names of stored matrix variables.
The matrices can be real or complex.
For the next examples, store [[1,2],[3,4]] in M1 and
[[5,6],[7,8]] in M2.
Example
1. Select the first matrix:
St (Matrix)
Tap M1 or highlight it and press E.
2. Enter the matrix
elements:
1 E 2
E 3 E
4 E
Matrices
471
3. Select the second matrix:
St (Matrix)
Tap M2 or highlight it and press E.
4. Enter the matrix
elements:
E
5
E
6
E
7
E
8
5. In Home view, add
the two matrices you
have just created.
HA Q1 +
A Q2 E
To multiply and
divide by a scalar
For division by a scalar, enter the matrix first, then the
operator, then the scalar. For multiplication, the order of
the operands does not matter.
The matrix and the scalar
can be real or complex.
For example, to divide
the result of the previous
example by 2, press the
following keys:
n 2 E
To multiply two
matrices
To multiply the two matrices that you created for the
previous example, press the following keys:
AQ1sA
Q2E
To multiply a matrix by a
vector, enter the matrix
first, then the vector. The
number of elements in
the vector must equal the
number of columns in the
matrix.
472
Matrices
To raise a matrix to
a power
You can raise a matrix to any power as long as the power
is an integer. The following example shows the result of
raising matrix M1, created earlier, to the power of 5.
AQ1k5
E
You can also raise a
matrix to a power without
first storing it as a
variable.
Matrices can also be
raised to negative
powers. In this case, the result is equivalent to 1/
[matrix]^ABS(power). In the following example, M1 is
raised to the power of –2.
kQ
A
1
Q
E
2
To divide by a
square matrix
For division of a matrix or a vector by a square matrix, the
number of rows of the dividend (or the number of
elements, if it is a vector) must equal the number of rows
in the divisor.
This operation is not a mathematical division: it is a left-
multiplication by the inverse of the divisor. M1/M2 is
–1
equivalent to M2 * M1.
To divide the two
matrices you created for
the previous example,
press the following keys:
A Q1 n
A Q2
Matrices
473
To invert a matrix
You can invert a square matrix in Home view by typing the
matrix (or its variable name) and pressing
SnE. You can also use the INVERSE
command in the Matrix category of the Math menu.
To negate each
element
You can change the sign of each element in a matrix by
pressing Q, entering the matrix name, and pressing
E.
Solving systems of linear equations
You can use matrices to solve systems of linear equations,
such as the following:
2x+3y+4z=5
x+y–z=7
4x–y+2z=1
In this example we will use matrices M1 and M2, but you
could use any available matrix variable name.
1. Open the Matrix
Catalog, clear M1,
choose to create a
vector, and open the
Matrix Editor:
St
[press = or \ to
select M1]
C
E
2. Create the vector of
the three constants in
the linear system.
5E7E1
E
474
Matrices
3. Return to the Matrix
Catalog.
St
The size of M1
should be showing
as 3.
4. Select and clear M2,
and re-open the
Matrix Editor:
[Press \ or = to
select M2] C
E
5. Enter the equation
coefficients.
2
3
E E
[Tap in cell R1, C3.]
4
1
E
1
E E
1
Q E
4
1
EQ
2
E E
6. Return to Home view
and left-multiply the constants vector by the inverse of
the coefficients matrix:
HA Q2
S n
s
A Q1E
The result is a vector of
the solutions: x = 2, y = 3
and z = –2.
An alternative method is
to use the RREF function
(see page 477).
Matrices
475
Matrix functions and commands
Functions
Functions can be used in any app or in Home view. They
are listed on the Math menu under the Matrix category.
They can be used in mathematical expressions—primarily
in Home view—as well as in programs.
Functions always produce and display a result. They do
not change any stored variables, such as a matrix
variable.
Functions have arguments that are enclosed in
parentheses and separated by commas; for example,
CROSS(vector1,vector2). The matrix input can be either a
matrix variable name (such as M1) or the actual matrix
data inside brackets. For example, CROSS(M1,[1 2]).
Menu format
By default, a Matrix function is presented on the Math
menu using its descriptive name, not its common
command name. Thus the shorthand name TRNis
presented as Transpose and DETis presented as
Determinant.
If you prefer the Math menu to show command names
instead, deselect the Menu Display option on page 2 of
the Home Settings screen (see page 26).
Commands
Matrix commands differ from matrix functions in that they
do not return a result. For this reason, these functions can
The matrix commands are designed to support programs
that use matrices.
The matrix commands are listed in the Matrix category of
the Commands menu in the Program Editor. They are also
listed in the Catalog menu, one of the Toolbox menus.
Press D and tap
to display the commands
catalog. The matrix functions are described in the
following sections of this chapter; the matrix commands
are described in the chapter Programming (see page
541).
476
Matrices
Argument
conventions
•
•
For row# or column#, supply the number of the row
(counting from the top, starting with 1) or the number
of the column (counting from the left, starting with 1).
The argument matrix can refer to either a vector or a
matrix.
Matrix functions
The matrix functions are available in the Matrix category
on the Math menu: D Select MatrixSelect a function.
Transpose
Transposes matrix. For a complex matrix, TRN finds the
conjugate transpose.
TRN(matrix)
Example:
1 2
3 4
1 3
2 4
TRN
returns
Determinant
Determinant of a square matrix.
DET(matrix)
Example:
1 2
3 4
DET
returns –2
RREF
Reduced Row-Echelon Form. Changes a rectangular
matrix to its reduced row-echelon form.
RREF(matrix)
Example:
1 –2 1
1 0 0.2
RREF
returns
3 4 –1
0 1 –0.4
Create
Make
Creates a matrix of dimension rows × columns, using
expression to calculate each element. If expression
contains the variables I and J, then the calculation for each
element substitutes the current row number for I and the
current column number for J. You can also create a vector
Matrices
477
by the number of elements (e) instead of the number of
rows and columns.
MAKEMAT(expression, rows, columns)
MAKEMAT(expression, elements)
Examples:
MAKEMAT(0,3,3)returns a 3 × 3 zero matrix,
[[0,0,0],[0,0,0],[0,0,0]].
MAKEMAT(√2,2,3)returns the 2 × 3 matrix
[[√2,√2,√2],[√2,√2,√2]].
MAKEMAT(I+J–1,2,3)returns the 2 × 3 matrix
[[1,2,3],[2,3,4]]
Note in the example above that each element is the
sum of the row number and column number minus 1.
MAKEMAT(√2,2)returns the 2-element vector
[√2,√2].
Identity
Identity matrix. Creates a square matrix of dimension
size × size whose diagonal elements are 1 and off-
diagonal elements are zero.
IDENMAT(size)
Random
Given two integers, n and m, and a matrix name, creates
an n x m matrix that contains random integers in the range
−99 through 99 with a uniform distribution and stores it in
the matrix name.
randMat(MatrixName,n,m)
Example:
RANDMAT(M1,2,2)returns a 2x2 matrix with
random integer elements, and stores it in M1.
Jordan
Returns a square nxn matrix with expr on the diagonal, 1
above and 0 everywhere else.
JordanBlock(Expr,n)
Example:
7 1 0
JordanBlock(7,3)returns
0 7 1
0 0 7
478
Matrices
Hilbert
Given a positive integer, n, returns the nth order Hilbert
matrix. Each element of the matrix is given by the formula
1/(j+k-1) where j is the row number and k is the column
number.
hilbert(n)
Example:
1 1 1
1 - - -
2 3 4
1 1 1 1
- - - -
2 3 4 5
In CAS view, hilbert(4)returns
1 1 1 1
- - - -
3 4 5 6
1 1 1 1
- - - -
4 5 6 7
Isometric
Matrix of an isometry given by its proper elements.
mkisom(vector,sign(1 or -1))
Example:
In CAS view, mkisom([1,2],1)returns
cos1 –sin1
sin1 cos1
Vandermonde
Returns the Vandermonde matrix. Given a vector [n1, n2
0
1
… nj], returns a matrix whose first row is [(n1) , (n1) ,
2
j-1
0
1
2
(n1) , …,(n1) ]. The second row is [(n2) , (n2) , (n2) ,
j-1
…,(n2) ], etc.
vandermonde(vector)
Example:
1 1 1
vandermonde([1 3 5])returns
1 3 9
1 5 25
Basic
Norm
Returns the Frobenius norm of a matrix.
|matrix|
Example:
1 2
returns 5.47722557505
3 4
Matrices
479
Row Norm
Row Norm. Finds the maximum value (over all rows) for
the sums of the absolute values of all elements in a row.
ROWNORM(matrix)
Example:
1 2
3 4
ROWNORM
returns 7
Column Norm
Column Norm. Finds the maximum value (over all
columns) of the sums of the absolute values of all elements
in a column.
COLNORM(matrix)
Example:
1 2
3 4
COLNORM
returns 6
Spectral Norm
Spectral Radius
Condition
Spectral Norm of a square matrix.
SPECNORM(matrix)
Example:
1 2
3 4
SPECNORM
returns 5.46498570422
Spectral Radius of a square matrix.
SPECRAD(matrix)
Example:
1 2
3 4
SPECRAD
returns 5.37228132327
Condition Number. Finds the 1-norm (column norm) of a
square matrix.
COND(matrix)
Example:
1 2
3 4
COND
returns 21
480
Matrices
Rank
Pivot
Rank of a rectangular matrix.
RANK(matrix)
Example:
1 2
3 4
RANK
returns 2
Given a matrix, a row number n, and a column number,
m, uses Gaussian elimination to return a matrix with
zeroes in column m, except that the element in column m
and row n is kept as a pivot.
pivot(matrix,n,m)
Example:
1 2
3 4
5 6
1 2
0 –2
0 –4
pivot
,1,1 returns
Trace
Finds the trace of a square matrix. The trace is equal to the
sum of the diagonal elements. (It is also equal to the sum
of the eigenvalues.)
TRACE(matrix)
Example:
1 2
3 4
TRACE
returns 5
Advanced
Eigenvalues
Displays the eigenvalues in vector form for matrix.
EIGENVAL(matrix)
Example:
1 2
3 4
EIGENVAL
returns:
.
5.37228 –0.37228
Matrices
481
Eigenvectors
Eigenvectors and eigenvalues for a square matrix.
Displays a list of two arrays. The first contains the
eigenvectors and the second contains the eigenvalues.
EIGENVV(matrix)
Example:
1 2
3 4
EIGENVV
returns the following matrices:
0.4159 –0.8369 5.3722
0
,
0.9093 0.5742
0
–0.3722
Jordan
Returns the list made by the matrix of passage and the
Jordan form of a matrix.
jordan(matrix)
Example:
0 2
1 0
2 0
2 – 2
jordan
returns
,
1 1
0 – 2
Diagonal
Given a list, returns a matrix with the list elements along
its diagonal and zeroes elsewhere. Given a matrix, returns
a vector of the elements along its diagonal.
diag(list) or diag(matrix)
Example:
1 2
3 4
diag
returns
1 4
Cholesky
For a numerical symmetric matrix A, returns the matrix L
such that A=L*tran(L).
cholesky(matrix)
Example:
3 1
1 4
In CAS view, cholesky
returns
3 0
after simplification
3 33
--- -----
3 3
482
Matrices
Hermite
Hermite normal form of a matrix with coefficients in Z:
returns U,B such that U is invertible in Z, B is upper
triangular and B=U*A.
ihermite(Mtrx(A))
Example:
1 2 3
4 5 6
7 8 9
–3 1 0
1 –1 –3
ihermite
returns
,
4 –1 0
0 3 6
–1 2 –1 0 0 0
Hessenberg
Matrix reduction to Hessenberg form. Returns [P,B] such
that B=inv(P)*A*P.
hessenberg(Mtrx(A))
Example:
In CAS view, hessenberg
1 2 3
4 5 6
7 8 9
4
7
0 - 1
1 0 0
29
0 1 0
returns
39
278 3
49 7
1 --- 2 7 --- 8 0 ----- -
7
7
Smith
Smith normal form of a matrix with coefficients in Z:
returns U,B,V such that U and V invertible in Z, B is
diagonal, B[i,i] divides B[i+1,i+1], and B=U*A*V.
ismith(Mtrx(A))
Example:
1 2 3
4 5 6
7 8 9
ismith
returns
1 0 0 1 0 0 1 –2 1
4 –1 0 0 3 0 0 1 –2
–1 2 –1 0 0 0 0 0 1
Matrices
483
Factorize
LQ
LQ Factorization. Factorizes a m × n matrix into three
matrices L, Q, and P, where
{[L[m × n lowertrapezoidal]],[Q[n × n orthogonal]],
[P[m × m permutation]]}and P*A=L*Q.
LQ(matrix)
Example:
1 2
3 4
LQ
returns
2.2360
0
0.4472 0.8944 1 0
,
,
4.9193 0.8944 0.8944 –0.4472 0 1
LSQ
Least Squares. Displays the minimum norm least squares
matrix (or vector) corresponding to the system
matrix1*X=matrix2.
LSQ(matrix1, matrix2)
Example:
1 2 5
,
3 4 11
1
2
LSQ
returns
LU
LU Decomposition. Factorizes a square matrix into three
matrices L, U, and P, where
{[L[lowertriangular]],[U[uppertriangular]],[P[permutation]]
}}
and P*A=L*U.
LU(matrix)
Example:
1 2
3 4
LU
returns
1
0 3
,
4
1 0
,
0.3333 1 0 0.6666 0 1
484
Matrices
QR
QR Factorization. Factorizes an m×n matrix A numerically
as Q*R, where Q is an orthogonal matrix and R is an
upper triangular matrix, and returns R. R is stored in var2
and Q=A*inv(R) is stored in var1.
QR(matrix A,var1,var2)
Example:
1 2
3 4
QR
returns
0.3612 0.9486
0.9486 –0.3162
3.1622 4.4271 1 0
,
,
0
0.6324 0 1
SCHUR
Schur Decomposition. Factorizes a square matrix into two
matrices. If matrix is real, then the result is
{[[orthogonal]],[[upper-quasi triangular]]}.
If matrix is complex, then the result is
{[[unitary]],[[upper-triangular]]}.
SCHUR(matrix)
Example:
1 2
3 4
SCHUR
returns
5.3722
1
0.4159 0.9093
0.9093 0.4159
,
–17
5.5510
–0.3722
SVD
Singular Value Decomposition. Factorizes an m × n matrix
into two matrices and a vector:
{[[m × m square orthogonal]],[[n × n square orthogonal]],
[real]}.
SVD(matrix)
Example:
1 2
3 4
SVD
returns
0.4045 –0.9145
0.9145 0.4045
0.5760 0.8174
0.8174 –0.5760
,
,
5.4649 0.3659
Matrices
485
SVL
Singular Values. Returns a vector containing the singular
values of matrix.
SVL(matrix)
Example:
1 2
3 4
SVL
returns
5.4649 0.3659
Vector
Cross Product
Dot Product
L2 Norm
Cross Product of vector1 with vector2.
CROSS(vector1, vector2)
Example:
CROSS
,
returns
1 2 3 4 0 0 –2
Dot Product of two arrays, matrix1 and matrix2.
DOT(matrix1, matrix2)
Example:
DOT
,
returns 11
1 2 3 4
Returns the l2 norm (sqrt(x1^2+x2^2+...xn^2)) of a
vector.
l2norm(Vect)
Example:
l2norm
returns √29
3 4 –2
L1 Norm
Returns the l1 norm (sum of the absolute values of the
coordinates) of a vector.
l1norm(Vect)
Example:
l1norm
returns 9
3 4 –2
486
Matrices
Max Norm
Returns the l∞ norm (the maximum of the absolute values
of the coordinates) of a vector.
maxnorm(Vect or Mtrx)
Example:
maxnorm
returns 4
1 2 3 –4
Examples
Identity Matrix
You can create an identity matrix with the IDENMAT
function. For example, IDENMAT(2) creates the 2×2
identity matrix [[1,0],[0,1]].
You can also create an identity matrix using the MAKEMAT
(make matrix) function. For example, entering
MAKEMAT(I≠J,4,4) creates a 4 × 4 matrix showing the
numeral 1 for all elements except zeros on the diagonal.
The logical operator (≠) returns 0 when I (the row number)
and J (the column number) are equal, and returns 1 when
they are not equal. (You can insert ≠ by choosing it from
the relations palette: Sv.)
Transposing a
Matrix
The TRNfunction swaps the row–column and column–row
elements of a matrix. For instance, element 1,2 (row 1,
column 2) is swapped with element 2,1; element 2,3 is
swapped with element 3,2; and so on.
For example, TRN([[1,2],[3,4]])creates the matrix
[[1,3],[2,4]].
Reduced-Row
Echelon Form
The set of equations
x – 2y + 3z = 14
2x + y – z = – 3
4x – 2y + 2z = 14
can be written as the augmented matrix
1 –2 3 14
2 1 –1 –3
4 –2 2 14
Matrices
487
which can then be stored
as a 3 4 real matrix in
any matrix variable. M1
is used in this example.
You can then use the
RREFfunction to change
this to reduced-row
echelon form, storing it in
any matrix variable. M2
is used in this example.
The reducedrowechelon
matrix gives the solution
to the linear equation in
the fourth column.
An advantage of using
the RREFfunction is that
it will also work with
inconsistent matrices
resulting from systems of equations which have no solution
or infinite solutions.
For example, the following set of equations has an infinite
number of solutions:
x + y – z = 5
2x – y = 7
x – 2y + z = 2
The final row of zeros in
the reduced-row echelon
form of the augmented
matrix indicates an
inconsistent system with
infinite solutions.
488
Matrices
26
Notes and Info
The HP Prime has two text editors for entering notes:
•
•
The Note Editor: opens from within the Note Catalog
(which is a collection of notes independent of apps).
The Info Editor: opens from the Info view of an app.
A note created in the Info view is associated with the
app and stays with it if you send the app to another
calculator.
The Note Catalog
Subject to available memory, you can store as many notes
as you want in the Note Catalog. These notes are
independent of any app. The Note Catalog lists the notes
by name. This list excludes notes that were created in any
app’s Info view, but these can be copied and then pasted
into the Note Catalog via the clipboard. From the Note
Catalog, you create or edit individual notes in the Note
Editor.
Note Catalog:
button and keys
Press S N (Notes) to enter the Note Catalog. While
you are in the Note Catalog, you can use the following
buttons and keys. Note that some buttons will not be
available if there are no notes in the Note Catalog.
Button or Key
Purpose
Opens the selected note for
editing.
Begins a new note, and
prompts you for a name.
Tap to provide additional
features. See below.
Notes and Info
489
Button or Key
Purpose (Continued)
Save: creates a copy of the
selected note and prompts you
to save it under a new name.
Rename: renames the
selected note.
Sort: sorts the list of notes
(sort options are alphabetical
and chronological).
Delete: deletes the selected
note.
Clear: deletes all notes.
Send: sends the selected note
to another HP Prime.
Deletes the selected note.
C
Deletes all notes in the
catalog.
SJ
The Note Editor
The Note Editor is where you create and edit notes. You
can launch the Note Editor from the Notes Catalog, and
also from within an app. Notes created within an app stay
with that app even if you send the app to another
calculator. Such notes do not appear in the Notes
Catalog. They can only be read when the associated app
is open. Notes created via the Notes Catalog are not
specific to any app and can be viewed at any time by
opening the Notes Catalog. Such notes can also be sent
to another calculator.
To create a note
from the Notes
Catalog
1. Open the Note
Catalog.
SN
490
Notes and Info
2. Create a new note.
3. Enter a name for
your note. In this
example, we’ll call
the note MYNOTE.
AA MYNOTE
4. Write your note,
using the editing
keys and formatting options described in the
following sections.
When you are
finished, exit the
Note Editor by
pressing
or
H
pressing I and
opening an app.
Your work is
automatically saved.
To access your new note, return to the Notes
Catalog.
To create a note for
an app
You can also create a note that is specific to an app and
which stays with the app should you send the app to
another calculator. See “Adding a note to an app” on
page 106. Notes created this way take advantage of all
the formatting features of the Note Editor (see below).
Notes and Info
491
NoteEditor:buttons
and keys
The following buttons and keys are available while you
are adding or editing a note.
Button or Key
Purpose
Opens the text formatting
menu. See “Formatting
options” on page 494.
Provides bold, italic,
underline, full caps,
superscript and subscript
options. See “Formatting
options” on page 494
A toggle button that offers
three types of bullet. See
“Formatting options” on
page 494
Starts a 2D editor for entering
mathematical expressions in
textbook format; see
“Inserting mathematical
expressions” on page 495
Enters a space during text
entry.
X
Moves from page to page in a
multi-page note.
Shows options for copying text
in a note. See below.
SV
Copy option. Mark where to
begin a text selection.
Copy option. Mark where to
end a text selection.
Copy option. Select the entire
note.
Copy option. Cut the selected
text.
Copy option. Copy the
selected text.
C
Deletes the character to the
left of the cursor.
492
Notes and Info
Button or Key
Purpose (Continued)
Starts a new line.
E
(Clear)
Erases the entire note.
SJ
a
Menu for entering variable
names, and the contents of
variables.
D
Menu for entering math
commands.
(Chars)
Displays a palette of special
characters. To type one,
Sa
highlight it and tap
press E. To copy a
character without closing the
Chars menu, select it and tap
.
or
Entering uppercase
and lowercase
characters
The following table below describes how to quickly enter
uppercase and lowercase characters.
Keys
Purpose
Make the next character upper-case
A
Lock mode: make all characters
uppercase until the mode is reset
AA
With uppercase locked, make next
character lowercase
S
With uppercase locked, make all
characters lowercase until the mode
is reset
SA
Reset uppercase lock mode
A
Make the next character lower-case
AS
ASA
Lock mode: make all characters
lowercase until the mode is reset
With lowercase locked, make next
character uppercase
S
Notes and Info
493
Keys
Purpose (Continued)
With lowercase locked, make all
characters uppercase until the mode
is reset
SA
Reset lowercase lock mode
A
The left side of the notification area of the title bar will
indicate what case will be applied to the character you
next enter.
Text formatting
You can enter text in different formats in the Note Editor.
Choose a formatting option before you start entering text.
The formatting options are described in “Formatting
options” below.
Formatting options
Formatting options are available from three touch buttons
in the Note Editor and in the Info view of an app:
The formatting options are listed in the table below.
Category
Options
•
10–22 pt
Font Size
Select from twenty colors.
Select from twenty colors.
Foreground Color
Background Color
•
•
•
Left
Center
Right
Align
(text alignment)
494
Notes and Info
Category
Options (Continued)
•
•
•
•
•
•
Bold
Italic
Underline
Strikethrough
Superscript
Subscript
Font Style
•
•
Bullets
• ◦
•
•
[Cancels bullet]
Inserting
mathematical
expressions
You can insert a
mathematical expression
in textbook format into
your note, as shown in
the figure to the right. The
Note Editor uses the
same 2D editor that the
Home and CAS views
employ, activated via the
menu button.
1. Enter the text you want. When you come to the point
where you want to start a mathematical expression,
tap
.
2. Enter the mathematical expression just as you would
in Home or CAS views. You can use the math
template as well as any function in the Toolbox
menus.
3. When you have finished entering your mathematical
expression, press > 2 or 3 times (depending on the
complexity of your expression) to exit the editor. You
can now continue to enter text.
Notes and Info
495
To import a note
You can import a note from the Note Catalog into an
app’s Info view and vice versa.
Suppose you want to copy a note named Assignments
from the Note Catalog into the Function Info view:
1. Open the Note Catalog.
SN
2. Select the note Assignmentsand tap
3. Open the copy options for copying to the clipboard.
SV (Copy))
The menu buttons change to give you options for
copying:
: Marks where the copying or cutting is to begin.
Marks where the copying or cutting is to
:
end.
: Select the entire program.
: Cut the selection.
: Copy the selection.
4. Select what you want to copy or cut (using the options
listed immediately above).
5. Tap
.
or
6. Open the Info view of the Function app.
I.
I, tap the Function app icon, press
S
7. Move the cursor to the location where you want the
copied text to be pasted and open the clipboard.
Z
S
8. Select the text from the clipboard and press
.
Sharing notes
You can send a note to another HP Prime. See “Sharing
data” on page 44.
496
Notes and Info
27
Programming
This chapter describes how to program the HP Prime. In
this chapter you’ll learn about:
•
•
•
•
•
•
•
programming commands
writing functions in programs
using variables in programs
executing programs
debugging programs
creating programs for building custom apps
sending a program to another HP Prime
HP Prime
Programs
An HP Prime program contains a sequence of commands
that execute automatically to perform a task.
Command
Structure
Commands are separated by a semicolon ( ; ).
Commands that take multiple arguments have those
arguments enclosed in parentheses and separated by a
comma( , ). For example,
PIXON(xposition, yposition);
Sometimes, arguments to a command are optional. If an
argument is omitted, a default value is used in its place. In
the case of the PIXON command, a third argument could
be used that specifies the color of the pixel:
PIXON(xposition, yposition [,color]);
In this manual, optional arguments to commands appear
inside square brackets, as shown above. In the PIXON
example, a graphics variable (G) could be specified as
the first argument. The default is G0, which always
contains the currently displayed screen. Thus, the full
syntax for the PIXON command is:
PIXON([G,] xposition, yposition [ ,color]);
Programming
497
Some built-in commands employ an alternative syntax
whereby function arguments do not appear in
parentheses. Examples include RETURNand RANDOM.
Program
Structure
Programs can contain any number of subroutines (each of
which is a function or procedure). Subroutines start with a
heading consisting of the name, followed by parentheses
that contain a list of parameters or arguments, separated
by commas. The body of a subroutine is a sequence of
statements enclosed within a BEGIN–END; pair. For
example, the body of a simple program, called
MYPROGRAM, could look like this:
EXPORT MYPROGAM()
BEGIN
PIXON(1,1);
END;
Comments
When a line of a program begins with two forward
slashes, //, the rest of the line will be ignored. This
enables you to insert comments in the program:
EXPORT MYPROGAM()
BEGIN
PIXON(1,1);
//This line is just a comment.
END;
The Program Catalog
The Program Catalog is where you run and debug
programs, and send programs to another HP Prime. You
can also rename and remove programs, and it is where
you start the Program Editor. The Program Editor is where
you create and edit programs. Programs can also be run
from Home view or from other programs.
498
Programming
Open the
Program
Catalog
Press Sx
Program) to open the
Program Catalog.
The Program Catalog
displays a list of program
names. The first item in
the Program Catalog is a
built-in entry that has the
same name as the active app. This entry is the app
program for the active app, if such a program exists. See
the “App programs” on page 519 for more information.
Program Catalog: buttons and keys
Button or Key
Purpose
Opens the highlighted
program for editing.
Prompts for a new
program name, then
opens the Program
Editor.
Opens further menu
options for the selected
program:
•
•
•
•
•
Save
Rename
Sort
Delete
Clear
These options are
described immediately
below.
To redisplay the initial
menu, press O or
J.
Programming
499
Button or Key
Purpose (Continued)
Save creates a copy of
the selected program
with a new name you are
prompted to give.
Rename renames the
selected program.
Sort sorts the list of
programs. (Sort options
are alphabetical and
chronological).
Delete deletes the
selected program.
Clear deletes all
programs.
Transmits the highlighted
program to another HP
Prime or to a PC.
Debugs the selected
program.
Runs the highlighted
program.
S= or S\
Moves to the beginning
or end of the Program
Catalog.
Deletes the selected
program.
C
Deletes all programs.
SJ
500
Programming
Creating a new program
1. Open the Program
Catalog and start a
new program.
Sx(Program)
2. Enter a name for the
program.
AA (to lock
alpha mode)
MYPROGRAM
.
3. Press
again.
A template for your
program is then
automatically
created. The
template consists of
a heading for a
function with the
same name as the program, EXPORT
MYPROGRAM(), and a BEGIN–END;pair that will
enclose the statements for the function.
H I N T
A program name can contain only alphanumeric
characters (letters and numbers) and the underscore
character. The first character must be a letter. For
example, GOOD_NAMEand Spin2are valid program
names, while HOT STUFF(contains a space) and
2Cool!(starts with number and includes !) are not valid.
The Program Editor
Until you become familiar with the HP Prime commands,
the easiest way to enter commands is to select them from
the Catalog menu (D
menu in the Program Editor (
), or from the Commands
). To enter variables,
Programming
501
symbols, mathematical functions, units, or characters, use
the keyboard keys.
Program Editor:
buttons and keys
The buttons and keys in the Program Editor are:
Button or Key
Meaning
Checks the current program
for errors.
If your programs goes beyond
one screen, you can quickly
jump from screen to screen by
tapping either side of this
button. Tap the left side of the
button to display the previous
page; tap the right side to
display the next page. (The
left tap will be inactive if you
have the first page of the
program displayed.)
or
S= and
S\
Opens a menu from which you
can choose from common
programming commands. The
commandsaregrouped under
the options:
•
•
•
•
•
•
•
Strings
Drawing
Matrix
App Functions
Integer
I/O
More
Press J to return to the
main menu.
The commands in this menu
are described in “Commands
under the Cmds menu”,
beginning on page 531.
502
Programming
Button or Key
Meaning (Continued)
Opens a menu from which you
can select common
programming commands. The
commandsaregroupedunder
the options:
•
•
•
•
•
Block
Branch
Loop
Variable
Function
Press J to return to the
main menu.
The commands in this menu
are described in “Commands
under the Tmplt menu”,
beginning on page 525.
Displays menus for selecting
variable names and values.
a
Sa
(Chars)
Displays a palette of
characters. If you display this
palette while a program is
open, you can choose a
character and it will be be
added to your program at the
cursor point. To add one
character, highlight it and tap
or press E. To
add a character without
closing the characters palette,
select it and tap
.
S> and
S<
Moves the cursor to the end
(or beginning) of the current
line. You can also swipe the
screen.
S= and
S\
Moves the cursor to the start
(or end) of the program. You
can also swipe the screen.
Programming
503
Button or Key
Meaning (Continued)
A> and
A<
Moves the cursor one screen
right (or left). You can also
swipe the screen.
Starts a new line.
E
C
Deletes the character to the
Deletes the character to the
right of the cursor.
SC
SJ
Deletes the entire program.
1. To continue the
MYPROGRAM
example (which we
began on page
501), use the cursor
keys to position the
cursor where you
want to insert a
command. In this example, you need to position the
cursor between BEGINand END.
2. Tap
to open
the menu of common
programming
commands for
blocking, branching,
looping, variables,
and functions.
In this example we’ll
select a LOOP command from the menu.
3. Select Loopand
then select FORfrom
the sub-menu.
504
Programming
Notice that a
FOR_FROM_TO_DO
_ template is
inserted. All you
need do is fill in the
missing information.
4. Using the cursor keys
and keyboard, fill in
the missing parts of
the command. In this
case, make the
statement match the
following:
FOR N FROM1 TO
3 DO
5. Move the cursor to a blank line below the FOR
statement.
6. Tap
to open the menu of common
programming commands.
7. Select I/Oand then
select MSGBOXfrom
the sub-menu.
8. Fill in the argument
of the MSGBOX
command, and type
a semicolon at the
end of the
command.
9. Tap
to check the syntax of your program.
10.When you are finished, press Sx to return to
the Program Catalog or H to go to Home view.
You are ready now to execute the program.
Programming
505
Run a
Program
From Home view, enter the name of the program. If the
program takes parameters, enter a pair of parentheses
after the program name with the parameters inside them
each separated by a comma. To run the program, press
E.
From the Program Catalog, highlight the program you
want to run and tap
. When a program is executed
from the catalog, the system looks for a function named
START()(no parameters).
You can also run a
program from the USER
menu (one of the Toolbox
menus):
D
Tap MYPROGRAM
and MYPROGRAM
appears on the entry
line. Tap E and the program executes,
displaying a message box.
Tap
three
times to step through
the FORloop. Notice
that the number
shown increments by
1 each time.
After the program
terminates, you can
resume any other activity with the HP Prime.
If a program has arguments, when you press
screen appears prompting you to enter the program
parameters.
a
506
Programming
Multi-function
programs
If there is more than one EXPORT function in a program,
when is tapped a list appears for you to choose
which function to run. To see this feature, create a program
with the text:
EXPORT NAME1( )
BEGIN
END;
EXPORT NAME2( )
BEGIN
END;
Now note that when you tap
or
, a list with
NAME1and NAME2appears.
Debug a
Program
You cannot run a program that contains syntax errors. If
the program does not do what you expect it to do, or if
there is a run-time error detected by the system, you can
execute the program step by step, and look at the values
of local variables.
Let’s debug the program created above: MYPROGRAM.
1. In the Program
Catalog, select
MYPROGRAM.
Sx
Select
MYPROGRAM
2. Tap
.
If there is more than
one EXPORT function
in a file, a list
appears for you to
choose which
function to debug.
While debugging a
program, the title of the program or intra-program
function appears at the top of the display. Below that
is the current line of the program being debugged.
Programming
507
The current value of each variable is visible in the
main body of the screen. The following menu buttons
are available in the debugger:
: Skips to the next line or block of the program
Executes the current line
:
: Opens a menu of variables
: Closes the debugger
: Continues program execution without
debugging
3. Execute the FOR loop command.
The FORloop starts and the top of the display shows
the next line of the program (the MSGBOX
command).
4. Execute the MSGBOX command.
The message box appears. Note that when each
message box is displayed, you still have to dismiss it
by tapping
or pressing E.
Tap
and press E repeatedly to execute
the program step-by-step.
to close the debugger at the current line of the
program, or tap to run the rest of the program
Tap
without using the debugger.
Edit a
program
You edit a program using the Program Editor, which is
accessible from the Program Catalog.
1. Open the Program
Catalog.
Sx
2. Tap the program you
want to edit (or use
the arrow keys to
highlight it and press
E).
The HP Prime opens the Program Editor. The name of
your program appears in the title bar of the display.
508
Programming
The buttons and keys you can use to edit your
program are listed in “Program Editor: buttons and
keys” on page 502.
Copy a
You can use the global Copyand Pastecommands to
copy part or all of a program. The following steps illustrate
the process:
program or
part of a
program
1. Open the Program Catalog.
Sx
2. Tap the program that has the code you want to copy.
3. Press SV (Copy).
The menu buttons change to give you options for
copying:
: Marks where the copying or cutting is to begin.
Marks where the copying or cutting is to
:
end.
: Select the entire program.
: Cut the selection.
: Copy the selection.
4. Select what you want to copy or cut (using the options
listed immediately above).
5. Tap
.
or
6. Return to the Program Catalog and open the target
program.
7. Move the cursor to where you want to insert the
copied or cut code.
8. Press SZ (Paste). The clipboard opens. What
you most recently copied or cut will be first in the list
and highlighted already, so just tap
. The code
will be pasted into the program, beginning at the
cursor location.
Programming
509
Delete a
program
To delete a program:
1. Open the Program Catalog.
Sx
2. Highlight a program to delete and press C.
3. At the prompt, tap
to cancel.
to delete the program or
Delete all
programs
To delete all programs at once:
1. Open the Program Catalog.
Sx
2. Press SJ (Clear).
3. At the prompt, tap
to cancel.
to delete all programs or
Delete the
contents of a
program
You can clear the contents of a program without deleting
the program. The program then just has a name and
nothing else.
1. Open the Program Catalog.
Sx
3. Press SJ (Clear).
4. At the prompt, tap
to cancel.
to delete the contents or
The text of the program is deleted, but the program
name remains.
To share a
program
You can send programs between calculators just as you
can send apps, notes, matrices, and lists. See “Sharing
data” on page 44.
510
Programming
The HP Prime programming language
Variables
and visibility
Variables in an HP Prime program can be used to store
numbers, lists, matrices, graphics objects, and strings. The
name of a variable must be a sequence of alphanumeric
characters (letters and numbers), starting with a letter.
Names are case-sensitive, so the variables named
MaxTempand maxTempare different.
The HP Prime has built-in variables of various types, visible
globally (that is, visible wherever you are in the
calculator). For example, the built-in variables Ato Zcan
store complex numbers, M0to M9can be used to store
Matrices and vectors, and so on. These names are
reserved. You cannot use them for other data. For
example, you cannot name a program M1, or store a real
number in a variable named Z8. In addition to these
reserved variables, each HP app has its own reserved
variables. Some examples are Root, Xmin, and
Numstart. Again, these names cannot be used to name
a program. (A full list of system and app variables is given
in chapter 22, “Variables”, beginning on page 427.)
In a program you can declare variables for use only within
a particular function. This is done using a LOCAL
declaration. The use of LOCALvariables enables you to
declare and use variables that will not affect the rest of the
calculator. LOCALvariables are not bound to a particular
type, that is, you can store floating-point numbers,
integers, lists, matrices, and symbolic expressions in a
variable with any local name. Although the system will
allow you to store different types in the same local
variable, this is poor programming practice and should
be avoided.
Variables declared in a program should have descriptive
names. For example, a variable used to store the radius of
a circle is better named RADIUSthan VGFTRFG. You are
more likely to remember what the variable is used for if its
name matches its purpose.
If a variable is needed after the program executes, it can
be exported from the program using the EXPORT
command. To do this, the first command in the program
Programming
511
(that is, on a line above the program name) would be
EXPORT RADIUS. Then, if a value is assigned to
RADIUS, the name appears on the variables menu (a)
and is visible globally. This feature allows for extensive
and powerful interactivity among different environments in
the HP Prime. Note that if another program exports a
variable with the same name, the most recently exported
version will be active.
The program below prompts the user for the value of
RADIUS, and exports the variable for use outside the
program.
EXPORT RADIUS;
EXPORT GETRADIUS()
BEGIN
INPUT(RADIUS);
END;
Note that EXPORT
command for the
variable RADIUS
appears before the
heading of the function
where RADIUSis
assigned. After you
execute this program, a
new variable named RADIUSappears on the USER
GETRADIUSsection of the Variables menu.
Qualifying
thenameofa
variable
The HP Prime has many system variables with names that
are apparently the same. For example, the Function app
has a variable named Xmin, but so too does the Polar
app, the Parametric app, the Sequence app, and the
Solve app. In a program, and in the Home view, you can
refer to a particular version of these variables by
qualifying its name. This is done by entering the name of
the app (or program) that the variable belongs to,
followed by a dot (.), and then the actual variable name.
For example, the qualified variable Function.Xmin
refers to the value of Xminwithin the Function app.
Similarly, the qualified variable Parametric.Xmin
refers to the value of Xminin the Parametric app. Despite
having the same name—Xmin—the variables could have
512
Programming
different values. You do likewise to declare a local
variable in a program: specify the name of the program,
followed by the dot, and then variable name.
Functions,
their
You can define your own functions in a program, and data
can be passed to a function using parameters. Functions
can return a value (using the RETURNstatement) or not.
When a program is executed from Home view, the
program will return the value returned by the last statement
that was executed.
arguments,
and
parameters
Furthermore, functions can be defined in a program and
exported for use by other programs, in much the same
way that variables can be defined and used elsewhere.
In this section, we will create a small set of programs, each
illustrating some aspect of programming in the HP Prime.
Each program will be used as a building block for a
custom app described in the next section, App Programs.
Program ROLLDIE
We’ll first create a program called ROLLDIE.It simulates
the rolling of a single die, returning a random integer
between 1 and whatever number is passed into the
function.
In the Program Catalog create a new program named
ROLLDIE. (For help, see page 501.) Then enter the code
in the Program Editor.
EXPORT ROLLDIE(N)
BEGIN
RETURN 1+FLOOR(RANDOM(N));
END;
The first line is the heading of the function. Execution of the
RETURNstatement causes a random integer from 1 to N
to be calculated and returned as the result of the function.
Note that the RETURNcommand causes the execution of
the function to terminate. Thus any statements between the
RETURNstatement and ENDare ignored.
In Home view (in fact, anywhere in the calculator where a
number can be used), you can enter ROLLDIE(6)and a
random integer between 1 and 6 inclusive will be
returned.
Programming
513
Program
ROLLMANY
Another program could use the ROLLDIEfunction, and
generate n rolls of a die with any number of sides. In the
following program, the ROLLDIEfunction is used to
generate n rolls of two dice, each with the number of sides
given by the local variable sides. The results are stored
in list L2, so that L2(1) shows the number of times the dies
came up with a combined total of 1, L2(2) shows the
number of times the dies came up with a combined total
of 2, etc. L2(1) should be 0 (since the sum of the numbers
on 2 dice must be at least 2).
EXPORT ROLLMANY(n,sides)
BEGIN
LOCAL k,roll;
// initialize list of frequencies
MAKELIST(0,X,1,2*sides,1)L2;
FOR k FROM 1 TO n DO
ROLLDIE(sides)+ROLLDIE(sides)roll;
L2(roll)+1L2(roll);
END;
END;
By omitting the EXPORTcommand when a function is
declared, its visibility can be restricted to the program
within which it is defined. For example, you could define the
ROLLDIEfunction inside the ROLLMANYprogram like this:
ROLLDIE();
EXPORT ROLLMANY(n,sides)
BEGIN
LOCAL k,roll;
// initialize list of frequencies
MAKELIST(0,X,1,2*sides,1)L2;
FOR k FROM 1 TO n DO
ROLLDIE(sides)+ROLLDIE(sides)roll;
L2(roll)+1L2(roll);
END;
END;
ROLLDIE(n)
BEGIN
RETURN 1+FLOOR(RANDOM(N));
END;
514
Programming
In this scenario, assume there is no ROLLDIEfunction
exported from another program. Instead, ROLLDIEis
visible only to ROLLMANY. The ROLLDIEfunction must be
declared before it is called. The first line of the program
above contains the declaration of the ROLLDIEfunction.
The definition of the ROLLDIEfunction is located at the
end of the program.
Finally, the list of results could be returned as the result of
calling ROLLMANYinstead of being stored directly in the
global list variable, L2. This way, if the user wanted to
store the results elsewhere, it could be done easily.
EXPORT ROLLMANY(n,sides)
BEGIN
LOCAL k,roll,results;
MAKELIST(0,X,1,2*sides,1)results;
FOR k FROM 1 TO n DO
ROLLDIE(sides)+ROLLDIE(sides)roll;
results(roll)+1results(roll);
END;
RETURN results;
END;
In Home view you would enter ROLLMANY(100,6) L5
and the results of the simulation of 100 rolls of two six-
sided dice would be stored in list L5.
The User Keyboard: Customizing key presses
You can assign alternative functionality to any key on the
keyboard, including to the functionality provided by the
shift and alpha keys. This enables you to customize the
keyboard to your particular needs. For example, you
could assign e to a function that is multi-nested on a
menu and thus difficult to get to on a menu (such as
ALOG).
A customized keyboard is called the user keyboard and
you activate it when you go into user mode.
Programming
515
User mode
There are two user modes:
•
Temporary user mode: the next key press, and only
the next, enters the object you have assigned to that
key. After entering that object, the keyboard
automatically returns to its default operation.
To activate temporary user mode, press SW
(User). Notice that 1U appears in the title bar. The 1
will remind you that the user keyboard will be active
for just one key press.
•
Persistent user mode: each key press from now until
you turn off user mode will enter whatever object you
have assigned to a key.
To activate persistent user mode, press
SWSW. Notice that U appears in the
title bar. The user keyboard will now remain active
until you press SW again.
If you are in user mode and press a key that hasn’t been
re-assigned, the key’s standard operation is performed.
Re-assigning
keys
Suppose you want to
assign a commonly used
function—such as
ALOG—to its own key on
the keyboard. Simply
create a new program
that mimics the syntax in
the image at the right.
The first line of the program specifies the key to be
reassigned using its internal name. (The names of all the
keys are given in “Key names” on page 517. They are
case-sensitive.)
On line 3, enter the text you want produced when the key
being re-assigned is pressed. This text must be enclosed in
quote marks.
The next time you want to insert ALOGat the position of
your cursor, you just press SWe.
You can enter any string you like in the RETURN line of
your program. For example, if you enter “Newton”, that
text will be returned when you press the re-assigned key.
516
Programming
You can even get the program to return user-defined
functions as well as system functions, and user-defined
variables as well as system variables.
You can also re-assign a shifted key combination. So, for
example, ASn could be re-assigned to produce
SLOPE(F1(X),3)rather than the lowercase t. Then if
ASn is entered in Home view and E
pressed, the gradient at X = 3 of whatever function is
currently defined as F1(X) in the Function app would be
returned.
T i p
A quick way to write a program to re-assign a key is to
press Z and select Create user keywhen you are
in the Program Editor. You will then be asked to press the
key (or key combination) you want to re-assign. A
program template appears, with the internal name of the
key (or key combination) added automatically.
Key names
The first line of a program that re-assigns a key must
specify the key to be reassigned using its internal name.
The table below gives the internal name for each key.
Note that key names are case-sensitive.
Internal name of keys and key states
Key
Name
S
A
AS
+ key
+ key
+ key
K_0
K_1
K_2
K_3
K_4
K_5
K_6
K_7
K_8
K_9
KS_0
KS_1
KS_2
KS_3
KS_4
KS_5
KS_6
KS_7
KS_8
KS_9
KA_0
KA_1
KA_2
KA_2
KA_4
KA_5
KA_6
KA_7
KA_8
KA_9
KSA_0
KSA_1
KSA_2
KSA_2
KSA_4
KSA_5
KSA_6
KSA_7
KSA_8
KSA_9
N
x
y
z
t
u
v
p
q
r
Programming
517
Internal name of keys and key states
Key
Name
S
A
AS
+ key
+ key
+ key
K_Abc
K_Alpha
K_Apps
K_Bksp
KS_Abc
KS_Alpha
KS_Apps
KS_Bksp
KA_Abc
KA_Alpha
KA_Apps
KA_Bksp
KSA_Abc
KSA_Alpha
KSA_Apps
KSA_Bksp
KSA_Comma
KSA_Cos
KSA_Div
c
A
I
C
o
f
n
.
\
K_Comma KS_Comma KA_Comma
K_Cos
K_Div
KS_Cos
KS_Div
KA_Cos
KA_Div
K_Dot
KS_Dot
KS_Down
KS_Enter
KS_Home
KS_Left
KA_Dot
KSA_Dot
K_Down
K_Enter
K_Home
K_Left
KA_Down
KA_Enter
KA_Home
KA_Left
KSA_Down
KSA_Enter
KSA_Home
KSA_Left
E
H
,<
K_Right
K_Ln
KS_Right
KS_Ln
KA_Right
KA_Ln
KSA_Right
KSA_Ln
,>
h
i
w
Q
M
O
P
+
k
e
j
Y
K_Log
KS_Log
KS_Minus
KS_Neg
KS_Num
–
KA_Log
KA_Minus
KA_Neg
KA_Num
KA_On
KSA_Log
K_Minus
K_Neg
K_Num
K_On
KSA_Minus
KSA_Neg
KSA_Num
KSA_On
K_Plot
KS_Plot
KS_Plus
KS_Power
KS_Sin
KA_Plot
KA_Plus
KA_Power
KA_Sin
KSA_Plot
K_Plus
K_Power
K_Sin
KSA_Plus
KSA_Power
KSA_Sin
K_Sq
KS_Sq
KA_Sq
KSA_Sq
K_Symb
KS_Symb
KA_Symb
KSA_Symb
518
Programming
Internal name of keys and key states
Key
Name
S
A
AS
+ key
+ key
+ key
K_Tan
K_Up
KS_Tan
KS_Up
KA_Tan
KA_Up
KSA_Tan
KSA_Up
g
=
K_Vars
K_View
K_Xttn
K_Help
K_Menu
K_Esc
KS_Vars
KS_View
KS_Xttn
–
KA_Vars
KA_View
KA_Xttn
KA_Help
KA_Menu
KA_Esc
KSA_Vars
KSA_View
KSA_Xttn
KSA_Help
KSA_Menu
KSA_Esc
KSA_Cas
KSA_Math
KSA_Templ
KSA_Paren
KSA_Eex
KSA_Mul
–
a
V
d
W
Z
J
K
D
F
R
B
s
S
X
KS_Menu
KS_Esc
KS_Cas
KS_Math
KS_Templ
KS_Paren
KS_Eex
KS_Mul
–
K_Cas
K_Math
K_Templ
K_Paren
K_Eex
KA_Cas
KA_Math
KA_Templ
KA_Paren
KA_Eex
KA_Mul
–
K_Mul
–
K_Space
KS_Space
KA_Space
KSA_Space
App programs
An app is a unified collection of views, programs, notes,
and associated data. Creating an app program allows
you to redefine the app’s views and how a user will
interact with those views. This is done with (a) dedicated
program functions with special names and (b) by
redefining the views in the Views menu.
Programming
519
Using
These programs are run when the keys shown in the table
below are pressed. These program functions are designed
to be used in the context of an app.
dedicated
program
functions
Program
Name
Equivalent
Keystrokes
Symb
Symbolic view
Symbolic Setup
Plot view
Y
SymbSetup
Plot
SY
P
PlotSetup
Num
Plot Setup
SP
M
Numeric view
Numeric Setup
Info view
NumSetup
Info
SM
SI
START
RESET
Starts an app
Resets or
initializes an app
Redefining
the Views
menu
The Views menu allows any app to define views in
addition to the standard seven views shown in the table
above. By default, each HP app has its own set of
additional views contained in this menu. The VIEWS
command allows you to redefine these views to run
programs you have created for an app. The syntax for the
VIEWScommand is:
VIEWS"text"
By adding VIEWS"text" before the declaration of a
function, you will override the list of views for the app. For
example, if your app program defines three
views—"SetSides", "RollDice" and "PlotResults"—when
you press V you will see SetSides, RollDice, and
PlotResults instead of the app’s default view list.
520
Programming
Customizing
an app
When an app is active, its associated program appears
as the first item in the Program Catalog. It is within this
program that you put functions to create a custom app. A
useful procedure for customizing an app is illustrated
below:
1. Decide on the HP app that you want to customize.
The customized app inherits all the properties of the
HP app.
2. Go to the Applications Library (I), highlight the
HP app, tap
name.
and save the app with a unique
3. Customize the new app if you need to (for example,
by configuring the axes or angle measure settings).
4. Develop the functions to work with your customized
app. When you develop the functions, use the app
naming conventions described above.
5. Put the VIEWScommand in your program to modify
the app's Views menu.
6. Decide if your app will create new global variables. If
so, you should EXPORTthem from a separate user
program that is called from the Start()function in
the app program. This way they will not have their
values lost.
7. Test the app and debug the associated programs.
It is possible to link more than one app via programs. For
example, a program associated with the Function app
could execute a command to start the Statistics 1Var app,
and a program associated with the Statistics 1Var app
could return to the Function app (or launch any other app).
Example
The following example illustrates the process of creating a
custom app. The app is based on the built-in Statistics
1Var app. It simulates the rolling of a pair of dice, each
with a number of sides specified by the user. The results
are tabulated, and can be viewed either in a table or
graphically.
Programming
521
1. In the Application
Librray, select the
Statistics 1Var app
but don’t open it.
I Select
Statistics
1Var.
2. Tap
.
3. Enter a name for the new app (such as
DiceSimulation.)
4. Tap
twice.
The new app appears in the Application Library.
5. Open the new app.
6. Open the Program Catalog.
Sx
7. Tap the program to
open it.
Each customised
app has one
program associated
with it. Initially, this
program is empty.
You customize the
app by entering functions into that program.
At this point you decide how you want the user to interact
with the app. In this example, we will want the user to be
able to:
•
•
start the app
specify the number of sides (that is, faces) on each
die
•
•
specify number of times to roll the dice
start the app again.
With that in mind, we will create the following views:
START, SETSIDES, and SETNUMROLLS.
The STARToption will initialize the app and display a
note that gives the user instructions. The user will also
interact with the app through the Numeric view and the
522
Programming
Plot view. These views will be activated by pressing M
and P, but the functions Numand Plotin our app
program will actually launch those views after doing some
configuration.
The program discussed earlier in this chapter to get the
number of sides for a dice is expanded here, so that the
possible sums of two such die are stored in dataset D1.
Enter the following sub-routines into the program for the
DiceSimulationapp.
The program
DiceSimulation
START()
BEGIN
DICESIMVARS();
{}D1;
{}D2;
SetSample(H1,D1);
SetFreq(H1,D2);
0H1Type;
END;
VIEWS "Roll Dice",ROLLMANY()
BEGIN
LOCAL k,roll;
MAKELIST(X+1,X,1,2*SIDES-1,1)D1;
MAKELIST(X+1,X,1,2*SIDES-1,1)D2;
FOR k FROM 1 TO ROLLS DO
roll:=ROLLDIE(SIDES)+ROLLDIE (SIDES);
D2(roll-1)+1D2(roll-1);
END;
-1Xmin;
MAX(D1)+1Xmax;
0Ymin;
MAX(D2)+1Ymax;
STARTVIEW(1,1);
END;
VIEWS "Set Sides",SETSIDES()
BEGIN
REPEAT
Programming
523
INPUT(SIDES,"Die Sides","N=","ENTER
num sides",2);
FLOOR(SIDES)SIDES;
IF SIDES<2 THEN
MSGBOX("Must be >= 2");
END;
UNTIL SIDES >=2;
END;
VIEWS "Set Rolls",SETROLLS()
BEGIN
REPEAT
INPUT(ROLLS,"Numofrolls","N=","Enter
numrolls",25);
FLOOR(ROLLS)ROLLS;
IF ROLLS<1 THEN
MSGBOX(" u must enter a num >=1");
END;
UNTIL ROLLS>=1;
END;
PLOT()
BEGIN
-1Xmin;
MAX(D1)+1Xmax;
0Ymin;
MAX(D2)+1Ymax;
STARTVIEW(1,1);
END;
The ROLLMANY()routine is an adaptation of the program
presented earlier in this chapter. Since you cannot pass
parameters to a program called through a selection from
a custom Views menu, the exported variables SIDESand
ROLLSare used in place of the parameters that were used
in the previous versions.
The program above calls two other user programs:
ROLLDIE()and DICESIMVARS(). ROLLDIE()
appears earlier in this chapter. Here is DICESIMVARS.
Create a program with that name and enter the following
code.
524
Programming
The program
DICESIMVARS
EXPORT ROLLS,SIDES;
EXPORT DICESIMVARS()
BEGIN
10 ROLLS;
6
SIDES;
END;
Press V to see the
custom app menu. Here
you can set the number
of sides of the dice, the
number of rolls, and
execute a simulation.
After running a
simulation, press P to
see a histogram of your simulation results.
Program commands
This section describes each program command. The
commands under the
commands under the
menu are described first. The
menu are described in
“Commands under the Cmds menu” on page 531.
Commands under the Tmplt menu
Block
The block commands determine the beginning and end of
a sub-routine or function. There is also a Return
command to recall results from sub-routines or functions.
BEGIN END
Syntax: BEGINstmt1;stm2;…stmtN; END;
Defines a command or set of commands to be executed
together. In the simple program:
EXPORT SQM1(X)
BEGIN
RETURN X^2-1;
END;
the block is the single RETURN command.
Programming
525
If you entered SQM1(8)in Home view, the result returned
would be 63.
RETURN
KILL
Syntax: RETURNexpression;
Returns the current value of expression.
Syntax: KILL;
Stops the step-by-step execution of the current program
(with debug).
Branch
In what follows, the plural word commands refers to both
a single command or a set of commands.
IF THEN
Syntax: IFtest THENcommands END;
Evaluate test. If test is true (not 0), execute commands.
Otherwise, nothing happens.
IF THEN ELSE
CASE
Syntax: IFtest THENcommands1 ELSEcommands 2
END;
Evaluate test. If test is true (non 0), execute commands 1,
otherwise, execute commands 2
Syntax:
CASE
IFtest1 THENcommands1 END;
IFtest2 THENcommands2 END;
…
[DEFAULTcommands]
END;
Evaluates test1. If true, execute commands1 and end the
CASE. Otherwise, evaluate test2. If true, execute
commands2. Continue evaluating tests until a true is
found. If no true test is found, execute default commands,
if provided.
Example:
CASE
IF x 0 THEN RETURN"negative"; END;
IF x 1 THEN RETURN"small"; END;
DEFAULT RETURN"large";
END;
526
Programming
IFERR IFERRcommands1 THENcommands2 END;
Executes sequence of commands1. If an error occurs
during execution of commands1, executes sequence of
commands2.
IFERR ELSE IFERRcommands1 THENcommands2 ELSE
commands3 END;
Executes sequence of commands1. If an error occurs
during execution of commands1, executes sequence of
commands2. Otherwise, execute sequence of
commands3.
Loop
FOR
Syntax: FORvar FROMstart TOfinish DOcommands END;
Sets variable var to start, and for as long as this variable
is less than or equal to finish, executes the sequence of
commands, and then adds 1 (increment) to var.
Example 1: This program determines which integer from 2
to N has the greatest number of factors.
EXPORT MAXFACTORS(N)
BEGIN
LOCAL cur, max,k,result;
1 max;1 result;
FOR k FROM 2 TO N DO
SIZE(idivis(k)) cur;
IF cur > max THEN
cur max;
k
result;
END;
END;
MSGBOX("Max of "+ max +" factors for
"+result);
END;
Programming
527
In Home, enter
MAXFACTORS(100).
FOR STEP
Syntax: FORvar FROMstart TOfinish [STEP increment]
DOcommands END;
Sets variable var to start, and for as long as this variable
is less than or equal to finish, executes the sequence of
commands, and then adds increment to var.
Example 2: This
program draws an
interesting pattern on
the screen.
EXPORT
DRAWPATTERN()
BEGIN
LOCAL
xincr,yincr,color;
STARTAPP("Function");
RECT();
xincr := (Xmax - Xmin)/320;
yincr := (Ymax - Ymin)/240;
FOR X FROM Xmin TO Xmax STEP xincr DO
FOR Y FROM Ymin TO Ymax STEP yincr DO
color := FLOOR(X^2+Y^2) MOD 32768;
PIXON(X,Y,color);
END;
END;
FREEZE;
END;
FOR DOWN
Syntax: FORvar FROMstart DOWNTOfinish DOcommands
END;
Sets variable var to start, and for as long as this variable
is more than or equal to finish, executes the sequence of
commands, and then subtracts 1 (decrement) from var.
528
Programming
FOR DOWN STEP
Syntax: FORvar FROMstart DOWNTOfinish [STEP
increment] DOcommands END;
Sets variable var to start, and for as long as this variable
is more than or equal to finish, executes the sequence of
commands, and then subtract increment from var.
WHILE
Syntax: WHILEtest DOcommands END;
Evaluate test. If result is true (not 0), executes the
commands, and repeat.
Example: A perfect number is one that is equal to the sum
of all its proper divisors. For example, 6 is a perfect
number because 6 = 1+2+3. The example below returns
true when its argument is a perfect number.
EXPORT ISPERFECT(n)
BEGIN
LOCAL d, sum;
2
1
d;
sum;
WHILE sum <= n AND d < n DO
IF irem(n,d)==0 THEN
sum+d sum;
END;
d+1 d;
END;
RETURN sum==n;
END;
The following program displays all the perfect numbers up
to 1000:
EXPORT PERFECTNUMS()
BEGIN
LOCAL k;
FOR k FROM 2 TO 1000 DO
IF ISPERFECT(k) THEN
MSGBOX(k+" is perfect, press OK");
END;
END;
END;
Programming
529
REPEAT
Syntax: REPEATcommands UNTILtest;
Repeats the sequence of commands until test is true (not
0).
The example below prompts for a positive value for SIDES,
modifying an earlier program in this chapter:
EXPORT SIDES;
EXPORT GETSIDES()
BEGIN
REPEAT
INPUT(SIDES,"Die Sides","N = ","Enter
num sides",2);
UNTIL SIDES>0;
END;
BREAK
Syntax: BREAK(n)
Exits from loops by breaking out of n loop levels.
Execution picks up with the first statement after the loop.
With no argument exit from a single loop.
CONTINUE
Syntax: CONTINUE
Transfer execution to the start of the next iteration of a
loop.
Variable
These commands enable you to control the visibility of a
user-defined variable.
LOCAL
Local.
Syntax: LOCALvar1,var2,…varn;
Makes the variables var1, var2, etc. local to the program
in which they are found.
EXPORT
Exports the variable so that it is globally available.
530
Programming
Function
These commands enable you to control the visibility of a
user-defined function.
EXPORT
Export.
Syntax: EXPORT FunctionName()
Exports the function FunctionNameso that it is globally
available and appears on the User menu (D
).
VIEW
KEY
Sets text that the user can see by pressing V.
A prefix to a key name when creating a user keyboard.
See “The User Keyboard: Customizing key presses” on
page 515.
Commands under the Cmds menu
Strings
A string is a sequence of characters enclosed in double
quotes (""). To put a double quote in a string, use two
consecutive double quotes. The \ character starts an
escape sequence, and the character(s) immediately
following are interpreted specially. \n inserts a new line
and two backslashes insert a single backslash. To put a
new line into the string, press E to wrap the text at
that point.
ASC
Syntax: asc(str)
Returns a vector containing the ASCII codes of string str.
Example: asc("AB") returns [65,66]
CHAR
Syntax: char(vector or int)
Returns the string corresponding to the character codes in
vector, or the single code int.
Examples: char(65) returns "A"; char([82,77,72])
returns "RMH"
Programming
531
DIM
Syntax: dim(str)
Returns the number of characters in string str.
Example: dim("12345") returns 5, dim("""") and
dim("\n") return 1. (Notice the use of the two double
quotes and the escape sequence.)
STRING
Syntax: string(object);
Returns a string representation of the object. The result
varies depending on the type of object.
string(2/3); results in the string 0.666666666667
Examples:
String
Result
string(F1), when F1(X)
= COS(X)
"COS(X)"
"{1,2,3}"
string(L1) when L1 =
{1,2,3}
string(M1) when M1 =
"[[1,2,3],[4,5,6]]"
1 2 3
4 5 6
INSTRING
Syntax: inString(str1,str2)
Returns the index of the first occurrence of str2 in str1.
Returns 0 if str2 is not present in str1. Note that the first
character in a string is position 1.
Examples:
inString("vanilla","van") returns 1.
inString("banana","na") returns 3
inString("ab","abc") returns 0
LEFT
Syntax: left(str,n)
Return the first n characters of string str. If n dimstr or
n 0 , returns str. If n == 0 returns the empty string.
Example: left("MOMOGUMBO",3) returns "MOM"
532
Programming
RIGHT
MID
Syntax: right(str,n)
Returns the last n characters of string str. If n <= 0, returns
empty string. If n > –dim(str), returns str
Example: right("MOMOGUMBO",5) returns
"GUMBO"
Syntax: mid(str,pos, [n])
Extracts n characters from string str starting at index pos.
n is optional, if not specified, extracts all the remainder of
the string.
Example: mid("MOMOGUMBO",3,5) returns
"MOGUM", mid("PUDGE",4) returns "GE"
ROTATE
Syntax: rotate(str,n)
Permutation of characters in string str. If 0 <=n < dim(str),
shifts n places to left. If –dim(str) < n <= –1, shifts n spaces
to right. If n > dim(str) or n < -dim(str), returns str.
Examples:
rotate("12345",2) returns "34512"
rotate("12345",-1) returns "51234"
rotate("12345",6) returns "12345"
STRINGFROMID
Syntax: STRINGFROMID(integer)
Returns, in the current language, the built-in string
associated in the internal string table with the specified
integer.
Examples:
STRINGFROMID(56) returns “Complex”
STRINGFROMID(202) returns “Home Vars”
REPLACE
Syntax: REPLACE(object1, start, object2)
Replaces part of object1 with object2 beginning at start.
The objects can be matrices, vectors, or stings.
Example:
REPLACE("12345",3,”99”) returns "12995"
Programming
533
Drawing
There are 10 built-in graphics variables in the HP Prime,
called G0–G9. G0 is always the current screen graphic.
G1 to G9 can be used to store temporary graphic objects
(called GROBs for short) when programming applications
that use graphics. They are temporary and thus cleared
when the calculator turns off.
Twenty-six functions can be used to modify graphics
variables. Thirteen of them work with Cartesian
coordinates using the Cartesian plane defined in the
current app by the variables Xmin, Xmax, Ymin, and
Ymax.
The remaining thirteen work with pixel coordinates where
the pixel 0,0is the top left pixel of the GROB, and 320,
240 is the bottom right. Functions in this second set have
a _P suffix to the function name.
C→PX
Converts from Cartesian coordinates to screen coordinates.
DRAWMENU
Syntax: DRAWMENU({text1, text2, …})
Draws a menu showing the text items listed.
FREEZE
Syntax: FREEZE
Pauses program execution until a key is pressed. This
prevents the screen from being redrawn after the end of
the program execution, leaving the modified display on
the screen for the user to see.
PX→C
Converts from screen coordinates to Cartesian
coordinates.
RGB
Syntax: RGB(R, G, B, [A])
Returns an integer number that can be used as the color
parameter for a drawing function. Based on Red, Green
and Blue components values (0 to 255).
If Alpha is greater than 128, returns the color flagged as
transparent. There is no alpha channel blending on Prime.
So RGB(255,0,128) returns #FF000F.
RECT(RGB(0,0,255)) makes a blue screen, as would
RGB(255) (any valid number gets interpreted the same way).
LINE(...,RGB(0,255,0)) makes a green line.
534
Programming
Pixels and Cartesian
ARC_P
ARC
Syntax; ARC(G, x, y, r [ , a1, a2, c])
ARC_P(G, x, y, r [ , a1, a2, c])
Draws an arc or circle on G, centered on point x,y, with
radius r and color c starting at angle a1 and ending on
angle a2.
G can be any of the graphics variables and is optional.
The default is G0
r is given in pixels.
c is optional and if not specified black is used. It should
be specified in this way: #RRGGBB (in the same way as
a color is specified in HTML).
a1 and a2 follow the current angle mode and are
optional. The default is a full circle.
BLIT_P
BLIT
Syntax: BLIT([trgtGRB, dx1, dy1, dx2, dy2],
srcGRB [ ,sx1, sy1, sx2, sy2, c])
BLIT_P([trgtGRB, dx1, dy1, dx2, dy2],
srcGRB [ ,sx1, sy1, sx2, sy2, c])
Copies the region of srcGRB between point sx1, sy1 and
sx2, sy2 into the region of trgtGRB between points dx1,
dy1 and dx2, dy2. Do not copy pixels from srcGRB that
are color c.
trgtGRB can be any of the graphics variables and is
optional. The default is G0.
srcGRB can be any of the graphics variables.
dx2, dy2 are optional and if not specified will be
calculated so that the destination area is the same size as
the source area.
sx2, sy2 are optional and if not specified will be the
bottom right of the srcGRB.
sx1, sy1 are optional and if not specified will be the top
left of srcGRB.
Programming
535
dx1, dy1 are optional and if not specified will be the top
left of trgtGRB.
c can be an color specified as #RRGGBB. If it is not
specified all pixels from rcGRB will be copied.
N O T E
Using the same variable for trgtGRB and srcGRB can be
unpredictable when the source and destination overlap.
DIMGROB_P
DIMGROB
Syntax: DIMGROB_P(G, w, h, [color]) or
DIMGROB_P(G, list)
DIMGROB(G, w, h, [color]) or
DIMGROB(G, list)
Sets the dimensions of GROB G to w × h. Initializes the
graphic G with color or with the graphic data provided in
list. If the graphic is initialized using graphic data, then list
is a list of integers. Each integer, as seen in base 16,
describes one color every 16 bits.
Colors are in A1R5G5B5 format (that is,1 bit for the alpha
channel, and 5 bits for R, G, and B).
GETPIX_P
GETPIX
Syntax: GETPIX([G], x, y)
GETPIX_P([G], x, y)
Returns the color of the pixel G with coordinates x,y.
G can be any of the graphics variables and is optional.
The default is G0, the current graphic.
GROBH_P
GROBH
Syntax: GROBH(G)
GROBH_P(G)
Returns the height of G.
G can be any of the graphics variables and is optional.
The default is G0.
536
Programming
GROBW_P
GROBW
Syntax: GROBW(G)
GROBW_P(G)
Returns the width of G.
G can be any of the graphics variables and is optional.
The default is G0.
INVERT_P
INVERT
Syntax: INVERT([G, x1, y1, x2, y2])
INVERT_P([G, x1, y1, x2, y2])
Executes a reverse video of the selected region. G can be
any of the graphics variables and is optional. The default
is G0.
x2, y2 are optional and if not specified will be the bottom
right of the graphic.
x1, y1 are optional and if not specified will be the top left
of the graphic. If only one x,y pair is specified, it refers to
the top left.
LINE_P
LINE
Syntax: LINE(G, x1, y1, x2, y2, c)
LINE_P(G, x1, y1, x2, y2, c)
Draws a line of color c on G between points x1,y1 and
x2,y2.
G can be any of the graphics variables and is optional.
The default is G0.
c can be any color specified as #RRGGBB. The default is
black.
PIXOFF_P
PIXOFF
Syntax: PIXOFF([G], x, y)
PIXOFF_P([G], x, y)
Sets the color of the pixel G with coordinates x,y to white.
G can be any of the graphics variables and is optional.
The default is G0, the current graphic
Programming
537
PIXON_P
PIXON
Syntax: PIXON([G], x, y [ ,color])
PIXON_P([G], x, y [ ,color])
Sets the color of the pixel G with coordinates x,y to color.
G can be any of the graphics variables and is optional.
The default is G0, the current graphic. Color can be any
color specified as #RRGGBB. The default is black.
RECT_P
RECT
Syntax: RECT([G, x1, y1, x2, y2, edgecolor, fillcolor])
RECT_P([G, x1, y1, x2, y2, edgecolor, fillcolor])
Draws a rectangle on G between points x1,y1 and x2,y2
using edgecolor for the perimeter and fillcolor for the
inside.
G can be any of the graphics variables and is optional.
The default is G0, the current graphic.
x1, y1 are optional. The default values represent the top
left of the graphic.
x2, y2 are optional. The default values represent the
bottom right of the graphic.
edgecolor and fillcolor can be c any color specified as
#RRGGBB. Both are optional, and fillcolor defaults to
edgecolor if not specified.
To erase a GROB, execute RECT(G). To clear the screen
execute RECT().
When optional arguments are provided in a command
with multiple optional parameters (like RECT), the
arguments provided correspond to the leftmost parameters
first. For example, in the program below, the arguments
40and 90in the RECT_Pcommand correspond to x1
and y1. The argument #000000corresponds to
edgecolor, since there is only the one additional
argument. If there had been two additional arguments,
they would have referred to x2 and y2 rather than
edgecolor and fillcolor. The program produces the figure
below.
538
Programming
EXPORT BOX()
BEGIN
RECT();
RECT_P(40,90,
#000000);
FREEZE;
END;
The program below also uses the RECT_Pcommand. In
this case, the pair of arguments 0and 3correspond to x2
and y2.
EXPORT BOX()
BEGIN
RECT();INVERT(G
0);
RECT_P(40,90,0,
3);
FREEZE;
END;
SUBGROB_P
SUBGROB
Syntax: SUBGROB(srcGRB [ ,x1, y1, x2, y2], trgtGRB)
SUBGROB_P(srcGRB [ ,x1, y1, x2, y2], trgtGRB)
Sets trgtGRB to be a copy of the area of srcGRB between
points x1,y1 and x2,y2.
srcGRB can be any of the graphics variables and is
optional. The default is G0.
trgtGRB can be any of the graphics variables except G0.
x2, y2 are optional and if not specified will be the bottom
right of srcGRB.
x1, y1 are optional and if not specified will be the top left
of srcGRB.
Example: SUBGROB(G1, G4) will copy G1 in G4.
Programming
539
TEXTOUT_P
TEXTOUT
Syntax: TEXTOUT(text [ ,G], x, y [ ,font, c1, width, c2])
TEXTOUT_P(text [ ,G], x, y [ ,font, c1, width,
c2])
Draws text using color c1 on graphic G at position x, y
using font. Do not draw text more than width pixels wide
and erase the background before drawing the text using
color c2. G can be any of the graphics variables and is
optional. The default is G0.
Font can be:
0: current font selected in mode screen, 1: small font 2:
large font. Font is optional and if not specified is the
current font selected on the Homes Settings screen.
c1 can be any color specified as #RRGGBB. The default is
black (#000000).
width is optional and if not specified, no clipping is
performed.
c2 can be any color specified as #RRGGBB. c2 is
optional. If not specified the background is not erased.
Example:
This program displays the successive approximations for
using the series for the arctangent(1). Note that a color for
the text, and for background, has been specified (with the
width of the text being limited to 100 pixels).
EXPORT RUNPISERIES()
BEGIN
LOCAL sign;
2
K;4 A;
-1 sign;
RECT();
TEXTOUT_P("N=",0,0);
TEXTOUT_P("PI APPROX=",0,30);
REPEAT
A+sign*4/(2*K-1) A;
TEXTOUT_P(K,35,0,2,
#FFFFFF,100,#333399);
540
Programming
TEXTOUT_P(A,90,30,2,
#000000,100,#99CC33);
sign*-1
sign;
K+1 K;
UNTIL 0;
END;
The program executes
until the user presses
O to terminate. The
spaces after K(the number of the term) and A(the current
approximation) in the TEXTOUT_Pcommands are there
to overwrite the previously displayed value.
Matrix
Some matrix commands take as their argument the matrix
variable name on which the command is applied. Valid
names are the global variables M0–M9 or a local
variable that contains a matrix.
ADDCOL
Syntax: ADDCOL
(name [ ,value1,...,valuen],column_number)
Inserts values into a new column inserted before
column_number in the specified matrix. You enter the
values as a vector. (These are not optional arguments.) The
values must be separated by commas and the number of
values must be the same as the number of rows in the
matrix name.
ADDROW
Syntax: ADDROW
(name [ ,value1,...,valuen],row_number)
Inserts values into a new row inserted before row_number
in the specified matrix. You enter the values as a vector.
(These are not optional arguments.) The values must be
separated by commas and the number of values must be
the same as the number of columns in the matrix name.
DELCOL
Syntax: DELCOL(name ,column_number)
Deletes column column_number from matrix name.
Programming
541
DELROW
EDITMAT
Syntax: DELROW(name ,row_number)
Deletes row row_number from matrix name.
Syntax: EDITMAT(name)
Starts the Matrix Editor and displays the specified matrix.
If used in programming, returns to the program when user
presses
. Even though this command returns the
matrix that was edited, EDITMATcannot be used as an
argument in other matrix commands.
REDIM
Syntax: REDIM(name, size)
Redimensions the specified matrix (name) or vector to size.
For a matrix, size is a list of two integers (n1,n2). For a
vector, size is a list containing one integer (n). Existing
values in the matrix are preserved. Fill values will be 0.
REPLACE
Syntax: REPLACE(name, start, object)
Replaces portion of a matrix or vector stored in name with
an object starting at position start. Start for a matrix is a
list containing two numbers; for a vector, it is a single
number. REPLACEalso works with lists, graphics, and
strings. For example, REPLACE("123456", 2, "GRM") ->
"1GRM56"
SCALE
Syntax: SCALE(name, value, rownumber)
Multiplies the specified row_number of the specified
matrix by value.
SCALEADD
Syntax: SCALEADD(name, value, row1, row2)
Multiplies the specified row1 of the matrix (name) by
value, then adds this result to the second specified row2
of the matrix (name).
SUB
Syntax: SUB(name, start, end)
Extracts a sub-object—a portion of a list, matrix, or
graphic—and stores it in name. Start and end are each
specified using a list with two numbers for a matrix, a
number for vector or lists, or an ordered pair, (X,Y), for
graphics: SUB(M1{1,2},{2,2})
542
Programming
SAWAPCOL
Syntax: SWAPCOL(name, column1, column2)
Swaps column1 and column2 of the specified matrix
(name).
SWAPROW
Syntax: SWAPROW(name, row1, row2)
Swaps row1 and row2 in the specified matrix (name).
App Functions
These commands allow you to launch any HP app, bring
up any view of the current app, and change the options in
the Views menu.
STARTAPP
Syntax: STARTAPP("name")
Starts the app with name. This will cause the app
program’s STARTfunction to be run, if it is present. The
app’s default view will be started. Note that the START
function is always executed when the user taps
in
the Application Library. This also works for user-defined
apps.
Example: STARTAPP("Function") launches the Function
app.
STARTVIEW
Syntax: STARTVIEW(n [,draw?])
Starts the nth view of the current app. If draw? is true (that
is, not 0), it will force an immediate redrawing of the
screen for that view.
The view numbers (n) are as follows:
Symbolic:0
Plot:1
Numeric:2
Symbolic Setup:3
Plot Setup:4
Numeric Setup:5
App Info: 6
Views Menu:7
First special view (Split Screen Plot Detail):8
Second special view (Split Screen Plot Table):9
Third special view (Autoscale):10
Fourth special view (Decimal):11
Fifth special view (Integer):12
Sixth special view (Trig):13
Programming
543
The special views in parentheses refer to the Function app,
and may differ in other apps. The number of a special
view corresponds to its position in the Views menu for that
app. The first special view is launched by
STARTVIEW(8), the second with STARTVIEW(9), and
so on.
You can also launch views that are not specific to an app
by specifying a value for n that is less than 0:
HomeScreen:-1
Home Modes:-2
Memory Manager:-3
Applications Library:-4
Matrix Catalog:-5
List Catalog:-6
Program Catalog:-7
Notes Catalog:-8
VIEW
Syntax: VIEWS("string"[,program_name])
Adds a view to the Views menu. When string is selected,
runs program_name.
Integer
BITAND
BITNOT
BITOR
BITSL
Syntax: BITAND(int1, int2, … intn)
Returns the bitwise logical AND of the specified integers.
Example: BITAND(20,13) returns 4.
Syntax: BITNOT(int)
Returns the bitwise logical NOT of the specified integer.
Example: BITNOT(47) returns 549755813840.
Syntax: BITOR(int1, int2, … intn)
Returns the bitwise logical OR of the specified integers.
Example: BITAND(9,26) returns 27.
Syntax: BITSL(int1 [,int2])
Bitwise Shift Left. Takes one or two integers as input and
returns the result of shifting the bits in the first integer to the
left by the number places indicated by the second integer.
If there is no second integer, the bits are shifted to the left
by one place.
544
Programming
Examples:
BITSL(28,2) returns 112
BITSL(5)returns 10.
BITSR
Syntax: BITRL(int1 [,int2])
Bitwise Shift Right. Takes one or two integers as input and
returns the result of shifting the bits in the first integer to the
right by the number places indicated by the second
integer. If there is no second integer, the bits are shifted to
the right by one place.
Examples:
BITSR(112,2) returns 28
BITSR(10)returns 5.
BITXOR
Syntax: BITXOR(int1, int2, … intn)
Returns the bitwise logical exclusive OR of the specified
integers.
Example: BITAND(9,26) returns 19.
B→R
Syntax: B→R(#integerm)
Converts an integer in base m to a decimal integer (base
10). The base marker m can be b (for binary), o (for
octal), or h (for hexadecimal).
Example: B→R(#1101b)returns 13
GETBASE
GETBITS
Syntax: GETBASE(#integer[m])
Returns the base for the specified integer (in whatever is
the current default base): 0 = default, 1 = binary, 2 =
octal, 3 = hexadecimal.
Examples: GETBASE(#1101b)returns #1h (if the
default base is hexadecimal) while GETBASE (#1101)
returns #0h.
Syntax: GETBITS(#integer)
Returns the number of bits used by integer, expressed in
the default base.
Example: GETBITS(#22122)returns #20h (if the
default base is hexadecimal)
Programming
545
R→B
SETBITS
SETBASE
Syntax: R→B(integer)
Converts a decimal integer (base 10) to an integer in the
default base.
Example: R→B(13)returns #1101b(if the default base is
binary) or #Dh (if the default base is hexadecimal).
Syntax: SETBITS(#integer[m] [,bits])
Sets the number of bits to represent integer. Valid values
are in the range –64 to 65. If m or bits is omitted, the
default value is used.
Example: SETBITS(#1111,b15) returns #1111b:15
Syntax: SETBASE(#integer[m][c])
Displays integer expressed in base m in whatever base is
indicated by c, where can be 1 (for binary), 2 (for octal),
or 3 (for hexadecimal). Parameter m can be b (for binary),
d (for decimal), o (for octal), or h (for hexadecimal). If m
is omitted, the input is assumed to be in the default base.
Likewise, if c is omitted, the output is displayed in the
default base.
Examples: SETBASE (#34o,1)returns #11100b while
GETBASE (#1101)returns #0h ((if the default base is
hexadecimal).
I/O
I/O commands are used for inputting data into a
program, and for outputting data from a program. They
allow users to interact with programs.
These commands start the Matrix and List editors.
CHOOSE
Syntax: CHOOSE(var, "title", "item1",
"item2",…,"itemn")
Displays a choose box with the title and containing the
choose items. If the user selects an object, the variable
whose name is provided will be updated to contain the
number of the selected object (an integer, 1, 2, 3, …) or
0 if the user taps
.
Returns true (not zero) if the user selects an object,
otherwise return false (0).
546
Programming
Example:
CHOOSE
(N,"PickHero",
"Euler","Gauss
","Newton");
IF N==1 THEN
PRINT("You
picked
Euler"); ELSE
IF N==2 THEN PRINT("You picked
Gauss");ELSE PRINT("You picked
Newton");
END;
END;
After execution of CHOOSE, the value of n will be updated
to contain 0, 1, 2, or 3. The IF THEN ELSEcommand
causes the name of the selected person to be printed to
the terminal.
EDITLIST
EDITMAT
GETKEY
Syntax: EDITLIST(listvar)
Starts the List Editor loading listvar and displays the
specified list. If used in programming, returns to the
program when user taps
.
Example: EDITLIST(L1) edits list L1.
Syntax: EDITMAT(matrixvar)
Starts the Matrix Editor and displays the specified matrix.
If used in programming, returns to the program when user
taps
.
Example: EDITMAT(M1) edits matrix M1.
Syntax: GETKEY
Returns the ID of the first key in the keyboard buffer, or –1
if no key was pressed since the last call to GETKEY. Key
IDs are integers from 0 to 50, numbered from top left (key
0) to bottom right (key 50) as shown in figure 27-1.
Programming
547
0
1
3
4
2
Keys 0–13
6
9
7
8
12
{
5
10
11
13
Keys 14–19
Keys 20–25
Keys 26–30
Keys 31–35
Keys 36–40
Keys 41–45
Keys 46–50
Figure 27-1: Numbers of the keys
INPUT
Syntax: INPUT(var [,"title", "label", "help", default]);
Opens a dialog box with the title text title, with one field
named label, displaying help at the bottom and using the
default value. Updates the variable var if the user taps
and returns 1. If the user taps
, it does not
update the variable, and returns 0.
Example:
EXPORT SIDES;
EXPORT
GETSIDES()
BEGIN
INPUT(SIDES,"D
ie Sides","N =
","Enter num
sides",2);
END;
548
Programming
ISKEYDOWN
MOUSE
Syntax: ISKEYDOWN(key_id);
Returns true (non-zero) if the key whose key_id is provided
is currently pressed, and false (0) if it is not.
Syntax: MOUSE[(index)]
Returns two lists describing the current location of each
potential pointer (or empty lists if the pointers are not
used). The output is {x , y, original z, original y, type}
where type is 0 (for new), 1 (for completed), 2 (for drag),
3 (for stretch), 4 (for rotate), and 5 (for long click).
The optional parameter index is the nth element that
would have been returned—x, y, original x, etc.—had the
parameter bee omitted (or –1 if no pointer activity had
occurred).
MSGBOX
Syntax: MSGBOX(expression or string [ ,ok_cancel?]);
Displays a message box with the value of the given
expression or string.
If ok_cancel? is true, displays the
buttons, otherwise only displays the
value for ok_cancel is false.
and
button. Default
Returns true (non-zero) if the user taps
, false (0) if
the user presses
.
EXPORT AREACALC()
BEGIN
LOCAL radius;
INPUT(radius, "Radius of Circle","r =
","Enter radius",1);
MSGBOX("The area is " +*radius^2);
END;
If the user enters 10 for
the radius, the message
box shows this:
Programming
549
PRINT
Syntax: PRINT(expression or string);
Prints the result of expression or string to the terminal.
The terminal is a program text output viewing mechanism
which is displayed only when PRINTcommands are
executed. When visible, you can press \ or = to view
the text, Cto erase the text and any other key to hide
the terminal. Pressing O stops the interaction with the
terminal. PRINTwith no argument clears the terminal.
There are also commands for outputting data in the
Graphics section. In particular, the commands TEXTOUT
and TEXTOUT_Pcan be used for text output.
This example prompts the user to enter a value for the
radius of a circle, and prints the area of the circle on the
terminal.
EXPORT AREACALC()
BEGIN
LOCAL radius;
INPUT(radius,
"Radius of
Circle","r =
","Enter
radius",1);
PRINT("The
area is "
+*radius^2);
END;
Notice the use of the
LOCALvariable for the
radius, and the naming
convention that uses lower case letters for the local
variable. Adhering to such a convention will improve the
readability of your programs.
WAIT
Syntax: WAIT(n);
Pauses program execution for n seconds. With no
argument or with n = 0, pauses program execution for one
minute.
550
Programming
More
%CHANGE
%TOTAL
Syntax: %CHANGE(x,y)
The percentage change in going from x to y.
Example: %CHANGE(20,50)returns 150.
Syntax: %TOTAL(x,y)
The percentage of x that is y.
Example: %TOTAL(20,50)returns 250.
CAS
EVALLIST
EXECON
Syntax: CAS(Exp.) or CAS.function(...)or
CAS.variable[(...)]
Evaluates the expression or variable using the CAS.
Syntax: EVALLIST({list})
Evaluates the content of each element in a list and returns
an evaluated list.
Creates a new list based on the elements in one or more
lists by iteratively modifying each element according to an
expression that contains the ampersand character (&). The
syntax:
EXECON(expression with &,list1 [list2] …
[listn])
Where the expression is & plus an operator (o) plus a
number (n), each element in the list is operated on by o
and n and a new list created.
Examples:
EXECON("&+1",{1,2,3}) returns {2,3,4}
Where the & is followed directly by a number, the position
in the list is indicated. For example:
EXECON("&2–&1",{1, 4, 3, 5}" returns {3, –1,
2}
In the example above, &2 indicates the second element
and &1 the first element in each pair of elements. The
minus operator between them subtracts the first from the
second in each pair until there are no more pairs. Note
that numbers appended to & can only be from 1 to 9
inclusive.
Programming
551
EXECON can also operate on more than one list. For
example:
EXECON("&1+&2",{1,2,3},{4,5,6})returns
{5,7,9}
In the example above, &1 indicates an element in the first
list and &2 indicates the corresponding element in the
second list. The plus operator between them adds the two
elements until there are no more pairs. Note that numbers
appended to & can only be from 1 to 9 inclusive.
EXECON can also begin operating on a specified
element in a specified list. For example:
EXECON("&23+&1",{1,5,16},{4,5,6,7})returns
{7,12}
In the example above, &23 indicates that operations are
to begin on the second list and with the third element. To
that element is added the first element in the first list. The
process continues until there are no more pairs.
Again, the digits appended to & can only be from 1 to 9
inclusive.
→HMS
Syntax: →HMS(value)
Converts a decimal value to hexagesimal format; that is,
in units subdivided into groups of 60. This includes
degrees, minutes, and seconds as well as hours, minutes,
and seconds.
→
Example: HMS(54.8763) returns 54°52′34.68″
HMS→
ITERATE
TICKS
Syntax: HMS→(value)
Converts a value expressed hexagesimal format to
decimal format.
→
Example: HMS (54°52′34.68″) returns 54.8763
Syntax: ITERATE(expr, var, ivalue, #times)
For #times, repeatedly evaluate expr in terms of var
beginning with var = ivalue.
Example: ITERATE(X^2, X, 2, 3) returns 256
Syntax: TICKS
Returns the internal clock value in milliseconds.
552
Programming
TIME
TYPE
Syntax: TIME(program_name)
Returns the time in milliseconds required to execute the
program program_name. The results are stored in the
variable TIME. The variable TICKSis similar. It contains
the number of milliseconds since boot up.
Syntax: TYPE(object)
Returns the type of the object:
0: Real
1: Integer
2: String
3: Complex
4: Matrix
5: Error
6: List
8: Function
9: Unit
14.?: cas object. The fractional part is the cas type.
Variables and Programs
The HP Prime has four types of variables: Home variables,
App variables, CAS variables, and User variables. You
can retrieve these variables from the Variable menu (a).
Home variables are used for real numbers, complex
numbers, graphics, lists, and matrices among other
things. Home variables keep the same value in Home and
in apps.
App variables are those whose values depend on the
current app. The app variables are used in programming
to represent the definitions and settings you make when
working with apps interactively.
CAS variables are exactly the same as Home variables
except that they are used only when doing CAS
operations. They can, however, be called by commands
in Home view. The names for CAS variables mirror those
for Home variables except that they must be lowercase.
Programming
553
User variables are variables created by the user or
exported from a user program. They provide one of
several mechanisms to allow programs to communicate
with the rest of the calculator, and with other programs.
Once a variable has been exported from a program, it
will appear among the User variables in the Variables
menu, next to the program that exported it.
This chapter deals with App variables and User variables.
For information on Home and CAS variables, see chapter
22, “Variables”, beginning on page 427.
App
variables
Not all app variables are used in every app. S1Fit, for
example, is only used in the Statistics 2Var app. However,
most of the variables are used in common by the Function
app, the Parametric app, the Polar app, the Sequence
app, the Solve app, the Statistics 1Var app, the Statistics
2Var app, and others. If a variable is not available in all
of these apps, or is available only in some other apps,
then a list of the apps where the variable can be used
appears under the variable name.
The following sections list the app variables by the view in
which they are used. To see the variables listed by the
menus in which they appears on the Variables menu see
“App variables”, beginning on page 432.
Plot view variables
Axes
Turns axes on or off.
In Plot Setup view, check (or uncheck) AXES.
In a program, type:
0 Axes—to turn axes on.
1 Axes—to turn axes off.
Cursor
Sets the type of cursor. (Inverted or blinking is useful if the
background is solid).
In Plot Setup view, choose Cursor.
554
Programming
In a program, type:
0 CrossType—for solid crosshairs (default).
1 CrossType—to invert the crosshairs.
2 CrossType—for blinking crosshairs.
GridDots
GridLines
Turns the background dot grid in Plot view on or off.
In Plot Setup view, check (or uncheck) GRID DOTS.
In a program, type:
0 GridDots—to turn the grid dots on (default).
1 GridDots—to turn the grid dots off.
Turns the background line grid in Plot View on or off.
In Plot Setup View, check (or uncheck) GRID LINES.
In a program, type:
0 GridLines—to turn the grid lines on (default).
1 GridLines—to turn the grid lines off.
Hmin/Hmax
Statistics 1Var
Defines the minimum and maximum values for histogram
bars.
In Plot Setup View for one-variable statistics, set values for
HRNG.
In a program, type:
n1 Hmin
n2 Hmax
wheren1 n2
Hwidth
Statistics 1Var
Sets the width of histogram bars.
In Plot Setup View for one-variable statistics, set a value for
Hwidth.
In a program, type:
n Hwidth
Labels
Draws labels in Plot View showing X and Y ranges.
In Plot Setup View, check (or uncheck) Labels.
In a program, type:
1
Labels—to turn labels on (default)
0 Labels—to turn labels off.
Programming
555
Method
Defines the graphing method: adaptive, fixed-step
segments, or fixed-step dots. (See “Graphing methods” on
page 99 for an explanation of the difference between
these methods.)
In a program, type:
0
Method—select adaptive
1 Method—select fixed-step segments
2 Method—select fixed-step dots
Nmin/Nmax
Sequence
Defines the minimum and maximum values for the
independent variable.
Appears as the NRNGfields in the Plot Setup view. In Plot
Setup View, enter values for NRNG.
In a program, type:
n1 Nmin
n2 Nmax
where n1 n2
Recenter
Recenters at the cursor when zooming.
From Plot-Zoom-Set Factors, check (or uncheck)
Recenter.
In a program, type:
0 Recenter— to turn recenter on (default).
1 Recenter— to turn recenter off.
S1mark-S5mark
Statistics 2Var
Sets the mark to use for scatter plots.
In Plot Setup view for two-variable statistics, select one of
S1mark-S5marks.
SeqPlot
Sequence
Enables you to choose between a Stairstep or a Cobweb
plot.
In Plot Setup view, select SeqPlot, then choose
Stairstepor Cobweb.
In a program, type:
0 SeqPlot—for Stairstep.
1 SeqPlot—for Cobweb.
556
Programming
min/max
Sets the minimum and maximum independent values.
In Plot Setup, View enter values for RNG.
In a program, type:
Polar
n1 min
n2 max
where n1 n2
step
Sets the step size for the independent variable.
In Plot Setup view, enter a value for STEP.
In a program, type:
Polar
n step
where n 0
Tmin/Tmax
Parametric
Sets the minimum and maximum independent variable values.
In Plot Setup View, enter values for TRNG.
In a program, type:
n1 Tmin
n2 Tmax
where n1 n2
Tstep
Parametric
Sets the step size for the independent variable.
In Plot Setup View, enter a value for TSTEP.
In a program, type
n Tstep
where n 0
Xtick
Ytick
Sets the distance between tick marks for the horizontal axis.
In Plot Setup View, enter a value for Xtick.
I a program, type:
n Xtickwhere n 0
Sets the distance between tick marks on the vertical axis.
In Plot Setup View, enter a value for Ytick.
In a program, type:
n Ytickwhere n 0
Programming
557
Xmin/Xmax
Ymin/Ymax
Xzoom
Sets the minimum and maximum horizontal values of the
plot screen.
In Plot Setup View, enter values for XRNG.
In a program, type:
n1 Xmin
n2 Xmax
where n1 n2
Sets the minimum and maximum vertical values of the plot
screen.
In Plot Setup View, enter the values for YRNG.
In a program, type:
n1 Ymin
n2 Ymax
where n1 n2
Sets the horizontal zoom factor.
In Plot View, press
Factors,select it and press
Zoom
then
. Scroll to Set
. Enter the value for X
.
In a program, type:
n Xzoom
where n 0
The default value is 4.
Yzoom
From Plot setup (P), press
Set Factors,select it and press
then
. Scroll to
. Enter the value
for Y zoom and press
.
Or, in a program, type:
n Yzoom
The default value is 4.
558
Programming
Symbolic view variables
AltHyp
Inference
Determines the alternative hypothesis used for a
hypothesis testing. Choose an option from the Symbolic
view.
In a program, type:
0 AltHyp—for 0
1 AltHyp—for 0
2 AltHyp—for 0
E0...E9
Solve
Can contain any equation or expression. Independent
variable is selected by highlighting it in Numeric View.
Example:
X+Y*X-2=Y E1
F0...F9
Function
Can contain any expression. Independent variable is X.
Example:
SIN(X) F1
H1...H5
Statistics 1Var
Contains the data values for a 1-variable statistical
analysis. For example, H1(n) returns the nth value in the
data set for the H1 analysis.
H1Type...H5Type
Statistics 1Var
Sets the type of plot used to graphically represent the
statistical analyses H1 through H5. From the Symbolic
setup, specify the type of plot in the field for Type1, Type
2, etc.
Or in a program, store one of the following constant
integers or names into the variables H1Type, H2Type,
etc.
0 Histogram(default)
1 Box and Whisker
2 Normal Probability
3 Line
4 Bar
5 Pareto
Example:
2H3Type
Programming
559
Method
Inference
Determines whether the Inference app is set to calculate
hypothesis test results or confidence intervals.
In a program, type:
0 Method—for Hypothesis Test
1 Method—for Confidence Interval
R0...R9
Polar
Can contain any expression. Independent variable is .
Example:
2*SIN(2* ) R1
S1...S5
Statistics 2Var
Contains the data values for a 2-variable statistical
analysis. For example, S1(n) returns the nth data pair in
the data set for the S1 analysis. With no argument, returns
a list containing the independent column name, the
dependent column name and the number of the fit type.
S1Type...S5Type
Statistics 2Var
Sets the type of fit to be used by the FIToperation in
drawing the regression line. From Symbolic Setup view,
specify the fit in the field for Type1,Type2, etc.
In a program, store one of the following constant integers
or names into a variable S1Type,S2Type,etc.
0 Linear
1 Logarithmic
2 Exponential
3 Power
4 Exponent
5 Inverse
6 Logistic
7 Quadratic
8 Cubic
9 Quartic
10 User Defined
Example:
Cubic S2type
or
8 S2type
560
Programming
Type
Inference
Determines the type of hypothesis test or confidence
interval. Depends upon the value of the variable Method.
Make a selection from the Symbolic view.
Or, in a program, store the constant number from the list
below into the variable Type. With Method=0, the
constant values and their meanings are as follows:
0 Z-Test:1
1 Z-Test:1 – 2
2 Z-Test:1
3 Z-Test:1 – 2
4 T-Test:1
5 T-Test:1 – 2
With Method=1, the constants and their meanings are:
0 Z-Int:1
1 Z-Int:1 – 2
2 Z-Int:1
3 Z-Int:1 – 2
4 T-Int:1
5 T-Int:1 – 2
X0, Y0...X9,Y9
Parametric
Can contain any expression. Independent variable is T.
Example:
SIN(4*T) Y1;2*SIN(6*T) X1
U0...U9
Sequence
Can contain any expression. Independent variable is N.
Example:
RECURSE (U,U(N-1)*N,1,2) U1
Numeric view variables
C0...C9
Statistics 2Var
C0 through C9, for columns of data. Can contain lists.
Enter data in the Numeric view.
In a program, type:
LIST Cn
where n = 0 , 1, 2, 3 ... 9 and LISTis either a list or the
name of a list.
Programming
561
D0...D9
Statistics 1Var
D0 through D9, for columns of data. Can contain lists.
Enter data in the Numeric view.
In a program, type:
LIST Dn
where n = 0 , 1, 2, 3 ... 9 and LISTis either a list or the
name of a list.
NumIndep
Function
Parametric
Polar
Sequence
Advanced
Graphing
Specifies the list of independent values (or two-value sets
of independent values) to be used by Build Your Own
Table. Enter your values one-by-one in the Numeric view.
In a program, type:
LIST NumIndep
Listcan be either a list itself or the name of a list. In the
case of the Advanced Graphing app, the list will be a list of
pairs (a list of 2-element vectors) rather than a list of numbers.
NumStart
Function
Parametric
Polar
Sets the starting value for a table in Numeric view.
From Numeric Setup view, enter a value for NUMSTART.
In a program, type:
Sequence
n NumStart
NumXStart
Advanced Graphing
Sets the starting number for the X-values in a table in
Numeric view.
From Numeric Setup view, enter a value for NUMXSTART.
In a program, type:
n NumXStart
NumYStart
Advanced Graphing
Sets the starting value for the Y-values in a table in
Numeric view.
From Numeric Setup view, enter a value for NUMYSTART.
In a program, type:
n NumYStart
NumStep
Function
Parametric
Polar
Sets the step size (increment value) for an independent
variable in Numeric view.
From Numeric Setup view, enter a value for NUMSTEP.
In a program, type:
n NumStep
where n 0
Sequence
562
Programming
NumXStep
Advanced Graphing
Sets the step size (increment value) for an independent X
variable in Numeric view.
From Numeric Setup view, enter a value for NUMXSTEP.
In a program, type:
n NumXStep
where n 0
NumYStep
Advanced Graphing
Sets the step size (increment value) for an independent Y
variable in Numeric view.
From Numeric Setup view, enter a value for NUMYSTEP.
In a program, type:
n NumYStep
where n 0
NumType
Sets the table format.
Function
From Numeric Setup view, enter 0or 1.
In a program, type:
Parametric
Polar
Sequence
Advanced Graphing
0 NumType—for Automatic(default).
1 NumType—for BuildYourOwn.
NumZoom
Function
Parametric
Polar
Sets the zoom factor in the Numeric view.
From Numeric Setup view, type in a value for NUMZOOM.
In a program, type:
Sequence
n NumZoom
where n 0
NumXZoom
Advanced Graphing
Sets the zoom factor for the values in the X column in the
Numeric view.
From Numeric Setup view, type in a value for NUMXZOOM.
In a program, type:
n NumXZoom
where n 0
NumYZoom
Advanced Graphing
Sets the zoom factor for the values in the Y column in the
Numeric view.
From Numeric Setup view, type in a value for NUMYZOOM.
In a program, type:
n NumYZoom
where n 0
Programming
563
Inference
app
variables
The following variables are used by the Inference app.
They correspond to fields in the Inference app Numeric
view. The set of variables shown in this view depends on
the hypothesis test or the confidence interval selected in
the Symbolic view.
Alpha
Sets the alpha level for the hypothesis test. From the
Numeric view, set the value of Alpha.
In a program, type:
n Alpha
where 0 n 1
Conf
Sets the confidence level for the confidence interval. From
the Numeric view, set the value of Conf.
In a program, type:
n Conf
where 0 n 1
Mean1
Sets the value of the mean of a sample for a 1-mean
hypothesis test or confidence interval. For a 2-mean test or
interval, sets the value of the mean of the first sample.
From the Numeric view, set the value of Mean1.
In a program, type:
n Mean1
Mean2
For a 2-mean test or interval, sets the value of the mean of
the second sample. From the Numeric view, set the value
of Mean2.
In a program, type:
n Mean2
The following variables are used to set up hypothesis
test or confidence interval calculations in the
Inference app.
0
Sets the assumed value of the population mean for a
hypothesis test. From the Numeric view, set the value of
0 .
In a program, type:
n 0
564
Programming
where0 0 1
n1
Sets the size of the sample for a hypothesis test or
confidence interval. For a test or interval involving the
difference of two means or two proportions, sets the size
of the first sample. From the Numeric view, set the value of
n1.
In a program, type:
n n1
n2
For a test or interval involving the difference of two means
or two proportions, sets the size of the second sample.
From the Numeric view, set the value of n2.
In a program, type:
n n2
0
Sets the assumed proportion of successes for the One-
proportion Z-test. From the Numeric view, set the value of
0 .
In a program, type:
n 0
where 0 0 1
Pooled
Determine whether or not the samples are pooled for tests
or intervals using the Student’s T-distribution involving two
means. From the Numeric view, set the value of Pooled.
In a program, type:
0 Pooled—for not pooled (default).
1 Pooled—for pooled.
s1
Sets the sample standard deviation for a hypothesis test or
confidence interval. For a test or interval involving the
difference of two means or two proportions, sets the
sample standard deviation of the first sample. From the
Numeric view, set the value of s1.
In a program, type:
n s1
Programming
565
s2
For a test or interval involving the difference of two means
or two proportions, sets the sample standard deviation of
the second sample. From the Numeric view, set the value
of s2.
In a program, type:
n s2
1
Sets the population standard deviation for a hypothesis
test or confidence interval. For a test or interval involving
the difference of two means or two proportions, sets the
population standard deviation of the first sample. From the
Numeric view, set the value of 1.
In a program, type:
n 1
2
For a test or interval involving the difference of two means
or two proportions, sets the population standard deviation
of the second sample. From the Numeric view, set the
value of 2.
In a program, type:
n 2
x1
Sets the number of successes for a one-proportion
hypothesis test or confidence interval. For a test or interval
involving the difference of two proportions, sets the
number of successes of the first sample. From the Numeric
view, set the value of x1.
In a program, type:
n x1
x2
For a test or interval involving the difference of two
proportions, sets the number of successes of the second
sample. From the Numeric view, set the value of x2.
In a program, type:
n x2
Finance app
variables
The following variables are used by the Finance app. They
correspond to the fields in the Finance app Numeric view.
566
Programming
CPYR
Compounding periods per year. Sets the number of
compounding periods per year for a cash flow
calculation. From the Numeric view of the Finance app,
enter a value for C/YR.
In a program, type:
n CPYR
where n 0
END
Determines whether interest is compounded at the
beginning or end of the compounding period. From the
Numeric view of the Finance app. Check or uncheck END.
In a program, type:
1END—for compounding at the end of the period
(Default)
0END—for compounding at the beginning of the
period
FV
Future value. Sets the future value of an investment. From
the Numeric view of the Finance app, enter a value for FV.
In a program, type:
n FV
Note: positive values represent return on an investment or
loan.
IPYR
NbPmt
Interest per year. Sets the annual interest rate for a cash
flow. From the Numeric view of the Finance app, enter a
value for I%YR.
In a program, type:
n IPYR
where n 0
Number of payments. Sets the number of payments for a
cash flow. From the Numeric view of the Finance app,
enter a value for N.
In a program, type:
n NbPmt
where n 0
Programming
567
PMT
Payment value. Sets the value of each payment in a cash
flow. From the Numeric view of the Finance app, enter a
value for PMT.
In a program, type:
n PMT
Note that payment values are negative if you are making
the payment and positive if you are receiving the payment.
PPYR
Payments per year. Sets the number of payments made
per year for a cash flow calculation. From the Numeric
view of the Finance app, enter a value for P/YR.
In a program, type:
n PPYR
where n 0
PV
Present value. Sets the present value of an investment.
From the Numeric view of the Finance app, enter a value
for PV.
In a program, type:
n PV
Note: negative values represent an investment or loan.
GSize
Group size. Sets the size of each group for the
amortization table. From the Numeric view of the Finance
app, enter a value for Group Size.
In a program, type:
n GSize
Linear Solver
app
variables
The following variables are used by the Linear Solver app.
They correspond to the fields in the app's Numeric view.
LSystem
Contains a 2x3 or 3x4 matrix which represents a 2x2 or
3x3 linear system. From the Numeric view of the Linear
Solver app, enter the coefficients and constants of the
linear system.
In a program, type:
matrixLSystem
568
Programming
where matrixis either a matrix or the name of one of the
matrix variables M0-M9.
Size
Contains the size of the linear system. From the Numeric
view of the Linear Solver app, press
or
.
In a program, type:
2Size—for a 2x2 linear system
3Size—for a 3x3 linear system
Triangle
Solver app
variables
The following variables are used by the Triangle Solver
app. They correspond to the fields in the app's Numeric
view.
SideA
SideB
SideC
The length of Side A. Sets the length of the side opposite
the angle A. From the Triangle Solver Numeric view, enter
a positive value for A.
In a program, type:
n SideA
where n 0
The length of Side B. Sets the length of the side opposite
the angle B. From the Triangle Solver Numeric view, enter
a positive value for B.
In a program, type:
n SideB
where n 0
The length of Side C. Sets the length of the side opposite
the angle C. From the Triangle Solver Numeric view, enter
a positive value for C.
In a program, type:
n SideC
where n 0
AngleA
The measure of angle . Sets the measure of angle .
The value of this variable will be interpreted according to
the angle mode setting (Degreesor Radians). From the
Triangle Solver Numeric view, enter a positive value for
angle
Programming
569
In a program, type:
n AngleA
where n 0
AngleB
AngleC
RECT
The measure of angle . Sets the measure of angle .
The value of this variable will be interpreted according to
the angle mode setting (Degreesor Radians). From the
Triangle Solver Numeric view, enter a positive value for
angle .
In a program, type:
n AngleB
where n 0
The measure of angle . Sets the measure of angle . The
value of this variable will be interpreted according to the
angle mode setting (Degreesor Radians). From the
Triangle Solver Numeric view, enter a positive value for
angle .
In a program, type:
n AngleC
where n 0
Corresponds to the status of
in the Numeric view
of the Triangle Solver app. Determines whether a general
triangle solver or a right triangle solver is used. From the
Triangle Solver view, tap
.
In a program, type:
0RECT—for the general Triangle Solver
1RECT—for the right Triangle Solver
Modes
variables
The following variables are found in the Home Modes
input form. They can all be over-written in an app's
Symbolic setup.
Ans
Contains the last result calculated in the Home view.
HAngle
Sets the angle format for the Home view. From Modes
view, choose Degreesor Radiansfor angle measure.
570
Programming
In a program, type:
0 HAngle—for Degrees.
1 HAngle—for Radians.
HDigits
Sets the number of digits for a number format other than
Standard in the Home view. From the Modes view, enter
a value in the second field of Number Format.
In a program, type:
n HDigits, where 0 n 11 .
HFormat
Sets the number display format used in the Home view.
From the Modes view, choose Standard, Fixed,
Scientific, or Engineeringin the Number
Formatfield.
In a program, store one of the following the constant
numbers (or its name) into the variable HFormat:
0 Standard
1 Fixed
2 Scientific
3 Engineering
HComplex
Date
Sets the complex number mode for the Home view. From
Modes, check or uncheck the Complexfield. Or, in a
program, type:
0
1
HComplex—for OFF.
HComplex—for ON.
Returns the system date. The format is YYYY.MMDD. This
format is used irrespective of the format set on the Home
Settings screen.
Time
Returns the system time or sets the system time.
HHMMSS Time
Language
Sets the language. From Modes, choose a language for
the Languagefield.
Programming
571
In a program, store one of the following constant numbers
into the variable Language:
1 Language (English)
2 Language (Chinese)
3 Language (French)
4 Language (German)
5 Language (Spanish)
6 Language (Dutch)
7 Language (Portuguese)
Entry
Sets the entry mode. In a program, enter:
0
1
2
Entry—for Textbook
Entry—for Algebraic
Entry—for RPN
Integer
Base
Returns or sets the integer base. In a program, enter:
0
1
2
3
Base—for Binary
Base—for Octal
Base—for Decimal
Base—for Hexadecimal
Bits
Returns or sets the number of bits for representing integers.
In a program, enter:
n Bits where n is the number of bits.
Signed
Returns or sets a flag indicating that the integer wordsize
is signed or not. In a program, enter:
0
1
Signed—for unsigned
Signed—for signed
The following variables are found in the Symbolic setup of
an app. They can be used to overwrite the value of the
corresponding variable in Home Modes.
572
Programming
AAngle
Sets the angle mode.
From Symbolic setup, choose System, Degrees, or
Radiansfor angle measure. System(default) will force
the angle measure to agree with that in Modes.
In a program, type:
0 AAngle—for System (default).
1 AAngle—for Degrees.
2 AAngle—for Radians.
AComplex
Sets the complex number mode.
From Symbolic setup, choose System, ON, or OFF. System
(default) will force this setting to agree with the
corresponding setting in Home Modes.
In a program, type:
0 AComplex—for System (default).
1 AComplex—for ON.
2 AComplex—for OFF.
ADigits
Defines the number of decimal places to use for the
Fixednumber format in the app’s Symbolic Setup.
Affects results in the Home view.
From Symbolic setup, enter a value in the second field of
Number Format.
In a program, type:
n ADigits
where 0 n 11
AFormat
Defines the number display format used for number
display in the Home view and to label axes in the Plot
view.
From Symbolic setup, choose Standard, Fixed,
Scientific, or Engineeringin the Number Format
field.
Programming
573
In a program, store the constant number (or its name) into
the variable AFormat.
0 System
1 Standard
2 Fixed
3 Scientific
4 Engineering
Example:
Scientific AFormat
or
3 AFormat
Results
variables
The Function, Linear Solver, Statistics 1Var, Statistics 2Var,
and Inference apps offer functions that generate results
that can be re-used outside those apps (such as in a
program). For example, the Function app can find a root
of a function, and that root is written to a variable called
Root. That variable can then be used elsewhere.
The results variables are listed with the apps that generate
them. See “App variables” on page 432.
574
Programming
28
Basic Integer arithmetic
The common number base used in contemporary mathematics is
base 10. By default, all calculations performed by the HP Prime
are carried out in base 10, and all results are displayed in base
10.
However, the HP Prime enables
you to carry out integer
arithmetic in four bases: decimal
(base 10), binary, (base 2),
octal (base 8), and hexadecimal
(base 16). For example, you
could multiply 4 in base 16 by
71 in base 8 and the answer is
E4 in base 16. This is equivalent in base 10 to multiplying 4 by
57 to get 228.
You indicate that you are about to engage in integer arithmetic
by preceding the number with the pound symbol (#, got by
pressing Az). You indicate what base to use for the
number by appending the appropriate base marker:
Base marker
Base
[blank]
Adopt the defualt base (see
“The default base” on
page 576)
d
b
o
h
decimal
binary
octal
hexadecimal
Thus #11brepresents 310. The base marker b indicates that the
number is to interpreted as a binary number: 112. Likewise #E4h
Basic Integer arithmetic
575
represents 22810. In this case, the base marker h indicates that the
number is to interpreted as a hexadecimal number: E416.
Note that with integer arithmetic, the result of any calculation that
would return a remainder in floating-point arithmetic is truncated:
only the integer portion is presented. Thus #100b/#10b gives the
correct answer: #10b (since 410/210 is 210). However, #100b/
#11b gives just the integer component of the correct result: #1b.
Note too that the accuracy of integer arithmetic can be limited by
the integer wordsize. The wordsize is the maximum number of bits
that can represent an integer. You can set this to any value
between 1 and 64. The smaller the wordsize, the smaller the
integer that can be accurately represented. The default wordsize
is 32, which is adequate for representing integers up to
approximately 2 × 109. However, integers larger than that would
be truncated, that is, the most significant bits (that is, the leading
bits) would be dropped. thus the result of any calculation
involving such a number would not be accurate.
The default base
Setting a default base only affects the entry and display of
numbers being used in integer arithmetic. If you set the default
base to binary, 27 and 44 will still be represented that way in
Home view, and result of those numbers being added will still be
represented as 71. However, if you entered #27b, you would get
a syntax error, as 2 and 7 are not integers found in binary
arithmetic. You would have to enter 27 as #11011b (since
2710=110112).
Setting a default base means that you do not always have to
specify a base marker for numbers when doing integer arithmetic.
The exception is if you want to include a number from the non-
default base: it will have to include the base marker. Thus if your
default base is 2 and you want to enter 27 for an integer
arithmetic operation, you could enter just #11011 without the b
suffix. But if you wanted to enter E416, you need to enter it with the
suffix: #E4h. (The HP Prime adds any omitted base markers when
the calculation is displayed in history.)
576
Basic Integer arithmetic
Note that if you change the
default base, any calculation in
history that involves integer
arithmetic for which you did not
explicitly add a base marker will
be resisplayed in the new base.
In the example at the right, the
first calculation explicitly
included base markers (b for each operand). The second
calculation was a copy of the first but without the base markers.
The default base was then changed to hex. The first calculation
remained as it was, while the second—without base markers
being explicitly added to the operands—was redisplayed in base
16.
Changing the default base
The calculator’s default base for integer arithmetic is 16
(hexadecimal). To change the default base:
1. Display the Home Settings screen:
SH
2. Choose the base you want
from the Integers menu:
Binary, Octal, Decimal
or Hex.
3. The field to the right of
Integers is the wordsize
field. This is the maximum
number of bits that can
represent an integer. The default value is 32, but you can
change it any value between 1 and 64.
4. If you want to allow for signed integers, select the ± option to
the right of the wordsize field. Choosing this option reduces
the maximum size of an integer to one bit less than the
wordsize.
Basic Integer arithmetic
577
Examples of integer arithmetic
The operands in integer arithmetic can be of the same base or of
mixed bases.
Integer calculation
Decimal equivalent
#10000b+#10100b =
#1100b
8 + 20 = 28
#71o–#10100b =
#45o
57 – 20 = 37
#4Dh * #11101b = #8B9h
#32Ah/#5o = #A2h
77 × 29 = 2233
810/5 = 162
Mixed-base arithmetic
With one exception, where you
have operands of different
bases, the result of the
calculation is presented in the
base of the first operand. The
example at the right shows two
equivalent calculations: the first
multiplies 410 by 5710 and the
second multiplies 5710 by 410. Obviously the results too are
mathematically equivalent. However, each is presented in the
base of the operand entered first: 16 in the first case and 8 in the
second.
The exception is if an operand is
not marked as an integer by
preceding it with #. In these
cases, the result is presented in
base 10.
578
Basic Integer arithmetic
Integer manipulation
The result of integer arithmetic can be further analyzed, and
manipulated, by viewing it in the Edit Integer dialog.
1. In Home view, use the cursor keys to select the result of
interest.
2. Press Sw (Base).
The Edit Integer dialog
appears. The Was field at
the top shows the result you
selected in Home view.
The hex and decimal
equivalents are shown
under the Out field,
followed by a bit-by-bit
representation of the integer.
Symbols beneath the bit representation show the keys you
can press to edit the integer. (Note that this doesn’t change
the result of the calculation in Home view.) The keys are:
–
< or > (Shift): these keys shift the bits one space to the
left (or right). With each press, the new integer
represented appears in the Out field (and in the hex and
decimal fields below it).
–
–
= or \ (Bits): these keys increase (or decrease) the
wordsize. The new wordsize is appended to the value
shown in the Out field.
Q (Neg): returns the two’s complement (that is, each
bit in the specified wordsize is inverted and one is
added. The new integer represented appears in the Out
field (and in the hex and decimal fields below it).
–
+ or w (Cycle base): displays the integer in the Out
field in another base.
Menu buttons provide some additional options:
: returns all changes to their original state
: cycles through the bases; same as pressing +
: toggles the wordsize between signed and unsigned
: returns the one’s complement (that is, each bit in the
specified wordsize is inverted: a 0 is replaced by 1 and a 1
Basic Integer arithmetic
579
by 0. The new integer represented appears in the Out field
(and in the hex and decimal fields below it).
: activates edit mode. A cursor appear sand you can
move abut the dialog using the cursor keys. The hex and
decimal fields can be modified, as can the bit
representation. A change in one such field automatically
modifies the other fields.
: closes the dialog and saves your changes. If you
don’t want to save your changes, press J instead.
3. Make whatever changes you want.
4. To save your changes, tap
; otherwise press J.
N o t e
If you save changes, the next time you select that same result in
Home view and open the Edit Integer dialog, the value shown
in the Was field will be the value you saved, not the value of the
result.
Base functions
Numerous functions related to integer arithmetic can be invoked
from Home view and within programs:
•
•
•
•
BITAND
BITSL
•
•
•
•
BITNOT
BITSR
•
•
•
•
BITOR
BITXOR
GETBITS
SETBITS
B→R
GETBASE
SETBASE
R→B
These are described in “Integer”, beginning on page 544.
580
Basic Integer arithmetic
Appendix A
Glossary
app
A small application, designed for the
study of one or more related topics or
to solve problems of a particular type.
The built-in apps are Function,
Advanced Graphing, Geometry,
Spreadsheet, Statistics 1Var, Statistics
2Var, Inference, Datastreamer, Solve,
Linear Solver, Triangle Solver,
Finance, Parametric, Polar, Sequence,
Linear Explorer, Quadratic Explorer,
and Trig Explorer. An app can be
filled with the data and solutions for a
specific problem. It is reusable (like a
program, but easier to use) and it
records all your settings and
definitions.
button
CAS
An option or menu shown at the
bottom of the screen and activated by
touch. Compare with key.
Computer Algebra System. Use the
CAS to perform exact or symbolic
calculations. Compare to calculations
done in Home view, which often yield
numerical approximations. You can
share results and variables between
the CAS and Home view (and vice
versa).
catalog
A collection of items, such as
matrices, lists, programs and the like.
New items you create are saved to a
catalog, and you choose a specific
item from a catalog to work on it. A
special catalog that lists the apps is
called the Application Library.
Glossary
581
command
expression
function
An operation for use in programs.
Commands can store results in
variables, but do not display results.
A number, variable, or algebraic
expression (numbers plus functions)
that produces a value.
An operation, possibly with
arguments, that returns a result. It
does not store results in variables. The
arguments must be enclosed in
parentheses and separated with
commas.
Home view
The basic starting point of the
calculator. Most calculations can be
done in Home view. However, such
calculations only return numeric
approximations. For exact results, you
can use the CAS. You can share
results and variables between the
CAS and Home view (and vice
versa).
input form
key
A screen where you can set values or
choose options. Another name for a
dialog box.
A key on the keypad (as opposed to
a button, which appears on the
screen and needs to be tapped to be
activated).
Library
list
A collection of items, more
specifically, the apps. See also
catalog.
A set of objects separated by commas
and enclosed in curly braces. Lists are
commonly used to contain statistical
data and to evaluate a function with
multiple values. Lists can be created
and manipulated by the List Editor
and stored in the List Catalog.
582
Glossary
matrix
A two-dimensional array of real or
complex numbers enclosed by square
brackets. Matrices can be created
and manipulated by the Matrix Editor
and stored in the Matrix Catalog.
Vectors are also handled by the
Matrix Catalog and Editor.
menu
note
A choice of options given in the
display. It can appear as a list or as a
set of touch buttons across the bottom
of the display.
Text that you write in the Note Editor.
It can be a general, standalone note
or a note specific to an app.
open
sentence
An open sentence consists of two
expressions (algebraic or arithmetic),
separated by a relational operator
such as =, <, etc. Examples of open
sentences include y2<x−1 and
x2−y2=3+x.
program
variable
A reusable set of instructions that you
record using the Program Editor.
A name given to an object—such as
a number, list, matrix, graphic and so
on—to assist in later retrieving it. The
command assigns a variable,
and the object can be retrieved by
selecting the associated variable from
the variables menu (a).
vector
views
A one-dimensional array of real or
complex numbers enclosed in single
square brackets. Vectors can be
created and manipulated by the
Matrix Editor and stored in the Matrix
Catalog.
The primary environments of HP apps.
Examples of app views include Plot,
Plot Setup, Numeric, Numeric Setup,
Symbolic, and Symbolic Setup.
Glossary
583
584
Glossary
Appendix B
Troubleshooting
Calculator not responding
If the calculator does not respond, you should first try to
reset it. This is much like restarting a PC. It cancels certain
operations, restores certain conditions, and clears
temporary memory locations. However, it does not clear
stored data (variables, apps, programs, etc.).
To reset
Turn the calculator over and insert a paper clip into the
Reset hole just above the battery compartment cover. The
calculator will reboot and return to Home view.
If the calculator does not turn on
If the HP Prime does not turn on, follow the steps below
until the calculator turns on. You may find that the
calculator turns on before you have completed the
procedure. If the calculator still does not turn on, contact
Customer Support for further information.
1. Charge the calculator for at least one hour.
2. After an hour of charging, turn the calculator on.
3. If it does not turn on, reset the calculator as per the
preceding section.
Troubleshooting
585
Operating limits
Operating temperature: 0 to 45C (32 to 113F).
Storage temperature: –20 to 65C (–4 to 149F).
Operating and storage humidity: 90% relative
humidity at 40C (104F) maximum. Avoid getting the
calculator wet.
The battery operates at 3.7V with a capacity of 1500mAh
(5.55Wh).
Status messages
The table below lists the most common general error
messages and their meanings. Some apps and the CAS
have more specific error messages that are self-
explanatory.
Message
Meaning
Bad argument type Incorrect input for this
operation.
Insufficient memory You must recover some memory
to continue operation. Delete
one or more customized apps,
matrices, lists, notes, or
programs.
Insufficientstatistics Not enough data points for the
data
calculation. For two-variable
statistics there must be two
columns of data, and each
column must have at least four
numbers.
Invalid dimension
Array argument had wrong
dimensions.
Statistics data size
not equal
Need two columns with equal
numbers of data values.
586
Troubleshooting
Message
Meaning (Continued)
Syntax error
The function or command you
entered does not include the
proper arguments or order of
arguments. The delimiters
(parentheses, commas, periods,
and semi-colons) must also be
correct. Look up the function
name in the index to find its
proper syntax.
No functions
checked
You must enter and check an
equation in the Symbolic view
before entering the Plot view.
Receive error
Problem with data reception
from another calculator. Re-
send the data.
Undefined name
Out of memory
The global variable named
does not exist.
You must recover a lot of
memory to continue operation.
Delete one or more customized
apps, matrices, lists, notes, or
programs.
Two decimal
separators input
One of the numbers you have
entered has two or more
decimal points.
X/0
Division by zero error.
Undefined result in division.
LN(0) is undefined.
0/0
LN(0)
Inconsistent units
The calculation involves
incompatible units (eg., adding
length and mass).
Troubleshooting
587
588
Troubleshooting
Appendix C
Product Regulatory Information
Federal Communications Commission Notice
This equipment has been tested and found to comply with
the limits for a Class B digital device, pursuant to Part 15
of the FCC Rules. These limits are designed to provide
reasonable protection against harmful interference in a
residential installation. This equipment generates, uses,
and can radiate radio frequency energy and, if not
installed and used in accordance with the instructions,
may cause harmful interference to radio communications.
However, there is no guarantee that interference will not
occur in a particular installation. If this equipment does
cause harmful interference to radio or television recep-
tion, which can be determined by turning the equipment
off and on, the user is encouraged to try to correct the
interference by one or more of the following measures:
• Reorient or relocate the receiving antenna.
• Increase the separation between the equipment and the
receiver.
• Connect the equipment into an outlet on a circuit different
from that to which the receiver is connected.
• Consult the dealer or an experienced radio or television
technician for help.
Modifications
The FCC requires the user to be notified that any changes
or modifications made to this device that are not
expressly approved by Hewlett-Packard Company may
void the user's authority to operate the equipment.
Cables
Connections to this device must be made with shielded
cables with metallic RFI/EMI connector hoods to main-
tain compliance with FCC rules and regulations. Applica-
ble only for products with connectivity to PC/laptop.
Product Regulatory Information
589
Declaration of Conformity for products Marked with FCC
Logo, United States Only
This device complies with Part 15 of the FCC Rules. Oper-
ation is subject to the following two conditions: (1) this
device may not cause harmful interference, and (2) this
device must accept any interference received, including
interference that may cause undesired operation.
If you have questions about the product that are not
related to this declaration, write to:
Hewlett-Packard Company
P.O. Box 692000, Mail Stop 530113
Houston, TX 77269-2000
For questions regarding this FCC declaration, write to:
Hewlett-Packard Company
P.O. Box 692000, Mail Stop 510101 Houston, TX 77269-
2000 or call HP at 281-514-3333
To identify your product, refer to the part, series, or
model number located on the product.
Canadian Notice
This Class B digital apparatus meets all requirements of
the Canadian Interference-Causing Equipment Regula-
tions.
Avis Canadien
Cet appareil numérique de la classe B respecte toutes les
exigences du Règlement sur le matériel brouilleur du Can-
ada.
590
Product Regulatory Information
European Union Regulatory Notice
Products bearing the CE marking comply with the follow-
ing EU Directives:
• Low Voltage Directive 2006/95/EC
• EMC Directive 2004/108/EC
• Ecodesign Directive 2009/125/EC, where applicable
CE compliance of this product is valid if powered with
the correct CE-marked AC adapter provided by HP.
Compliance with these directives implies conformity to
applicable harmonized European standards (European
Norms) that are listed in the EU Declaration of Confor-
mity issued by HP for this product or product family and
available (in English only) either within the product docu-
mentation or at the following web site: www.hp.eu/cer-
tificates (type the product number in the search field).
The compliance is indicated by one of the following con-
formity markings placed on the product:
For non-telecommunications products
and for EU harmonized
telecommunications products, such as
Bluetooth® within power class below
10mW.
For EU non-harmonized
telecommunications products (If
applicable, a 4-digit notified body
number is inserted between CE and !).
Please refer to the regulatory label provided on the prod-
uct.
The point of contact for regulatory matters is:
Hewlett-Packard GmbH, Dept./MS: HQ-TRE, Herren-
berger Strasse 140, 71034 Boeblingen, GERMANY.
Product Regulatory Information
591
Japanese Notice
Korean Class
Notice
Disposal of Waste
Equipment by Users
in Private
Household in the
European Union
This symbol on the product or on its
packaging indicates that this product must
not be disposed of with your other
household waste. Instead, it is your
responsibility to dispose of your waste
equipment by handing it over to a
designated collection point for the
recycling of waste electrical and electronic
equipment. The separate collection and
recycling of your waste equipment at the
time of disposal will help to conserve
natural resources and ensure that it is
recycled in a manner that protects human
health and the environment. For more
information about where you can drop off
your waste equipment for recycling, please
contact your local city office, your
household waste disposal service or the
shop where you purchased the product.
592
Product Regulatory Information
Chemical
Substances
HP is committed to providing our customers with informa-
tion about the chemical substances in our products as
needed to comply with legal requirements such as
REACH (Regulation EC No 1907/2006 of the European
Parliament and the Council). A chemical information
report for this product can be found at:
Perchlorate Material - special handling may apply
This calculator's Memory Backup battery may contain
perchlorate and may require special handling when
recycled or disposed in California.
Product Regulatory Information
593
594
Product Regulatory Information
Index
A
adapter 12
adaptive graphing 99
Advanced Graphing app 69,
125–134
Geometry 69, 135–192
Linear Solver 70, 130, 265–267
Plot Gallery 134
trace options 129
variables, summary of 434
algebra functions 322–323
algebraic entry 32, 36, 47
algebraic precedence 39
alternative hypothesis 238
amortization 291–292
angle measure 31, 56
annunciators 14
Ans (last answer) 41
antilogarithm
Quadratic Explorer 70, 300–302
Spreadsheet 70, 193–208
Statistics 1Var 70, 209–220
common 308
natural 308
app
commands 543
creating 107, 134, 521
definition of 581
deleting 72
backspace 21
functions See functions
HP apps See apps, HP
library 71
notes 106
open 71
programs 519
reset 71
sorting 71, 72
indicator 16
variables 109, 432–444,
554–574
warning 12
binary arithmetic See integer arithmetic
575
See also variables
App menu 305
app views 72
block commands 525
Boolean operators 21
box zoom 90
Numeric 77
Numeric Setup 78
Plot 74
box-and-whisker plot 218
branch commands 526, 553
brightness 13
Plot Setup 76
Symbolic Setup 74
Symbolic view 73
Build Your Own See custom tables
Index
595
buttons
command 20
menu 20
See also menu buttons
variable 530, 531
C
cables 44
calculations
CAS 54, 322–343
confidence intervals 251
financial 285–292
geometric 150
in Home view 35, 307–321
statistical 216, 231
with units 446
confidence intervals 238, 251–255,
calculus functions 323–328
CAS 53–59
functions
algebra 322–323
calculus 323–328
integer 334–336
plot 342–343
math 451
quantum science 451
polynomial 337–342
rewrite 330–334
solve 328–330
menu 322–343
settings 30, 55
view 13
cash flow 287
Catlg menu 372–425
programs 509
cells
correlation coefficient 234
entering content 199
formatting 206
importing data 200
naming 198
referencing 198, 202
selecting 197
curves 158
custom apps 107, 134, 521
custom functions 425
custom tables 103
custom variables 42, 427
characters 22
charging 11
chemistry constants 451
cobweb graph 279
coding See programming
color
D
highlight 34
data set definition 222
data sharing 44
date 34
of geometric objects 143
of graphs 85
theme 34
debugging programs 507
decimal comma 33
596
Index
decimal mark 33
decimal zoom 90, 93, 102
default settings, restoring 21, 87, 100,
106
define your own fit 230
degree symbol 21
deleting
TVM calculations 285
apps 72
characters 21
lists 457
matrices 466
notes 490
programs 500
statistical data 215, 228
determinant 477
dilation 162
display 13
annunciators 14
clearing 13
format
engineering 31
fixed 31
hexagesimal 26
notes 494
fraction 31
menu buttons 14
parts of 14
scientific 31
standard 31
DMS format 21
document conventions 9
drag 17
drawing commands 534–541
E
editing
lists 453
matrices 466
notes 489
programs 498
base 580
engineering number format 31
entry format See entry methods
entry line 14
calculus 323–328
common 371
entry methods 32, 36, 47
epsilon 58
creating your own 425
defining 37, 81, 112
definition of 111
Finance app 367–368
Function app 343–344
geometric 165–192
hyperbolic 315
evaluation (Eval) 84
evaluation, in Numeric view 102
exam mode 34, 61–67
activating 64
canceling 66
configuring 63
Inference app 364–367
integer 334–336
Index
597
keyboard 307–310
Linear Explorer 371
Linear Solver 369
graphing methods 99
Greek characters 21
number 311–312
plot 342–343
polynomial 337–342
probability 315–320
rewrite 330–334
H
solve 328–330
Solve app 344
spreadsheet 208, 345–362
Statistics 1Var 363
Statistics 2Var 363–364
Triangle Solver 369–370
G
geometric objects 153–160
geometric transformations 161–164
Geometry app 69, 135–192
commands 165–192
creating objects
in Plot view 141
in Symbolic view 148
functions 165–192
naming objects 142
objects, types of 153–160
Plot view, menu buttons 146
selecting an object 143
shortcut keys 147
transforming objects 161–164
undo option 144
variables, summary of 433
gestures 17
confidence intervals 251–255
One-Proportion Z-Test 246
One-Sample T-Interval 254
One-Sample T-Test 248
One-Sample Z-Interval 251
One-Sample Z-Test 244
Two-Proportion Z-Interval 253
Two-Proportion Z-Test 247
Two-Sample T-Interval 254
Two-Sample T-Test 249
Two-Sample Z Test 245
Two-Sample Z-Interval 251
global variables 511
glossary 581–583
graph
bar 218
box-and-whisker 218
cobweb 279
color for 85
line 218
normal probability 218
pareto 219
stairsteps 279
statistical data
one-variable 217
two-variable 232
598
Index
Inference app 69, 237–255
confidence intervals 251–255
functions 364–367
hypothesis tests 243–250
importing statistics 241
variables
Numeric 564
Results 440
summary of 439
Info, Solve app 263
input form 29
insufficient memory 586
insufficient statistics data 586
integer 32
integer arithmetic 575
integer base 56
operating on 457–459
variables 431, 453
lowercase characters 23, 493
integer commands, programming 544
integer functions 334–336
integer zoom 90, 93, 102
integer, editing 579–580
intercepts 132
invalid
dimension 586
statistics data 586
K
keyboard 18
customizing 515
editing keys 20
entry keys 20
functions on 307–310
keys
in scientific notation 27
negative numbers in 39
commands 541–543
condition number 480
create identity 487
creating 466, 468
deleting 466
edit 20
entry 20
internal name of 517
math 24
shift 22
user defined 515
variables 25
L
language, select 32
Library, Application 582
line plot 218
deleting columns 467
deleting rows 467
determinant 477
dot product 486
functions 476–487
inverting 474
linear equations, solving 265, 474
Linear Explorer app 69, 130,
297–299
functions 371
linear equations, solving of 474
Index
599
matrix calculations 465
negating elements 474
raised to a power 473
reduced-row echelon 487
storing 466, 469, 470
swap row 543
Normal Z-distribution, confidence inter-
transposing 487
variables 431, 465
maximum real number 36
measurements See units 445
menu
App 305
CAS 322–343
Catlg 372–425
context sensitive 20
Math 310–321
shortcuts 28
User 305
menu buttons 20
in Linear Solver app 267
in Numeric view 104
in Plot view
general 96
Geometry app 146
in Spreadsheet app 205
in Statistics 2Var app 227, 234
in Symbolic view 86
menus 28
objects
closing 29
display format of 33, 306
searching through 28
Toolbox 29
geometric 153–160
on and off 12
One-Sample Z-Test 244
online help 45
messages, Solve app 263
minutes symbol 21
mixed numbers 26
MKSA 448
mode
exact 56
symbolic 56
open sentences 125
defining 81, 127
user 516
modes See system-wide settings 30
P
N
palettes, shortcut 21, 25
Parametric app 70, 269–273
variables 441
names, in Geometry app 142, 143
natural logarithm 308
navigation 16
pareto plot 219
negation 310
600
Index
permutations 316
physical constants 449
physics constants 451
pinch 17
pixels 18
plot
box-and-whisker 218
cobweb 279
color of 85
defined in Geometry app 160
functions 342–343
line 218
one-variable statistics 217
pareto 219
stairsteps 279
statistical data
one-variable 217
two-variable 232
Plot and Numeric views together 106
Plot Gallery 134
Plot Setup view 76
common operations in 96–100
Plot view 74
regression models See fit types
regulatory information 589
common operations in 88–95
in Geometry app 141
menu buttons 96, 146
variables 554–558
zoom 88–94
points 153
Polar app 70, 275–278
variables 442
polygons 157
polynomial functions 337–342
precedence, algebraic 39
prediction 235
Reverse Polish Notation See RPN
prefixes, for units 446
principal solutions 57
probability functions 315–320
program
RPN 36, 47–52
commands 51–52
entry 32
commands
app functions 543
block 525
S
branch 526
sample programs 513–515, 523–525
scientific number format 27, 31
searching
drawing 534–541
function 531
I/O 544, 546
menus 28
integer 544
online help 45
speed searches 28
loop 527
matrix 541
Index
601
seconds symbol 21
seed value 257, 261
sending See data sharing
Sequence app 70, 279–284
graph types 279
variables 444
settings 30, 431
CAS 30, 55
sharing data 44
shift keys 22
shortcut palettes 20
shortcuts
in Geometry 147
in menus 28
Solve app 70, 257–264
functions 344
limitations 262
messages 263
one equation 258
several equations 261
variables, summary of 433
solve functions 328–330
sort apps 71, 72
special symbols palette 21, 25
split-screen viewing 91, 106
Spreadsheet app 70, 193–208
cell referencing 198
entering content 199
external functions 201
external referencing 202
format parameters 207
formatting 206
functions 208, 345–362
gestures 197
importing data 200
menu buttons 205
storing 42
naming cells 198
navigating 197
selecting cells 197
variables 203, 433
square zoom 90, 93
stack, in RPN 48, 51
stairsteps graph 279
standard number format 31
statistical calculations 216, 231
statistical fit types 229–230
statistical plots 217–219, 232
Statistics 1Var 70, 209–220
data set definitions 210
symbolic calculations 56
Symbolic Setup view 74
common operations in 87
Symbolic view 73
common operations in 81–85
in Geometry app 148
menu buttons 86
symbols, in title bar 14
system-wide settings 30, 431
override 87
602
Index
T
tables, custom 103
template key 24
user modes 516
templates 20
test mode See exam mode
text 23
textbook entry 32, 33, 36, 47
theme 34
time 16, 34
time-value-of-money problems 285
title bar 14
app 109, 554–574
Toolbox menus 29, 305
touch options 16
trace 94–95, 129
transformations, geometric 161–164
Triangle Solver app 70, 293–296
functions 369–370
variables
Numeric 569
summary of 443
Trig Explorer app 70, 302–304
trig zoom 90, 94, 102
trigonometric
Home settings 431
in programming 553
Inference app 439
fit 230
functions 314
troubleshooting 585
turn on and off 12
TVM problems 285
Two-Proportion Z-Interval 253
Two-Proportion Z-Test 247
Two-Sample T-Interval 254
Two-Sample T-test 249
Two-Sample Z-Interval 251
Two-Sample Z-Test 245
Polar app 442
real 431
U
undo
retrieving 429
a zoom 90
Sequence apps 444
Solve app 433
Spreadsheet app 203, 433
Statistics 1Var 435
Statistics 2Var 437
Symbolic view 559–561
Triangle Solver 443
types of in programming 553
User 554
in Geometry 144
units 445–451
calculating with 446
converting between 448
prefixes for 446
tools for manipulating 448
uppercase characters 23, 493
Upper-Tail Chi-Square probability 317
USB cables 44
Index
603
vectors
definition of 465, 583
See Also matrices
views
wireless network 34
wordsize 577
definition of 583
Z
in apps 72
Numeric 77
Z-Intervals 251–253
zoom
Numeric Setup 78
Plot 74
examples of 91–94
factors 88
in Numeric view 100–102
in Plot view 88–94
keys for 89, 101
types of 89–90, 102
Plot Setup 76
Symbolic 73
Symbolic Setup 74
Views menu 91, 520
604
Index
|