NAME
gcalctool - a desktop calculator
SYNOPSIS
gcalctool [ -D ] [ -E ] [
-a accuracy ] [ -v ] [ -? ]
DESCRIPTION
gcalctool is a desktop calculator. It
has been designed to be used with either the mouse or the keyboard.
It is visually similar to a lot of hand-held calculators. There are
basic, financial and scientific modes. Some of the calculator keys
have menu marks. This indicates that there is a menu associated
with that key. Each key is discussed in more detail below.
One of the most important things to remember about
gcalctool is that calculations are performed from left to
right, with no arithmetic precedence. If you need arithmetic
precedence, then you should use parentheses (see below).
Internal arithmetic is now done with multi-precision floating
point numbers. Accuracy can be adjusted from zero to nine numeric
places in fixed notation, but numbers can be displayed in
engineering and scientific notation as well. There is also an
option to show or remove trailing zeroes after the numeric point.
The calculator reverts to scientific notation when the number is
larger than the display would allow in fixed notation. In the
scientific mode, the base of operation can be changed between
binary, octal, decimal and hexadecimal. Numbers are initially
displayed in fixed notation to nine numeric places, with trailing
zeroes removed, in the decimal base.
You can use the Copy and Paste functions in
conjunction with the numeric display to store or retrieve
characters from the clipboard. You can also remove the last digit
entered, completely clear the displayed entry and totally reset the
calculator.
There are ten memory registers. Numbers can be stored or
retrieved in these locations, and arithmetic can be performed upon
register contents.
On startup, gcalctool will use several configuration
resources stored in a gconf database. These are listed in
detail in the resources section of these manual pages. Any
constants or function definitions that the user defines are also
stored in this database.
Context sensitive help is also available. Control-F1 toggles
whether tooltip help is displayed for the item which currently has
focus.
OPTIONS
- -D
- Turning on gcalctool debugging.
- -E
- Turning on debugging in the multiple precision arithmetic
package.
- -a accuracy
- Initial number of digits displayed after the numeric point.
This value must be in the range 0 to 9. The default is nine numeric
places.
- -v
- Show the version number and the usage message of this release
of the gcalctool program.
- -?
- Show the version number and the usage message of this release
of the gcalctool program. Note that the ? character
must be escaped if using csh(1).
RESOURCES
On startup, gcalctool uses the following
string type resources stored in a gconf database:
- Resource: /schemes/apps/gcalctool/accuracy
- Values:
- Accuracy value
- Description
- The number of of digits displayed after the numeric point. This
value must be in the range 0 to 9.
- Resource:
- /schemes/apps/gcalctool/base
- Values:
- Numeric Base
- Description
- The initial numeric base. Valid values are "BIN" (binary),
"OCT" (octal), "DEC" (decimal) and "HEX" (hexadecimal).
- Resource:
- /schemes/apps/gcalctool/display
- Values:
- Display mode
- Description
- The initial display mode. Valid values are "ENG" (engineering),
"FIX" (fixed-point) and "SCI" (scientific).
- Resource:
- /schemes/apps/gcalctool/mode
- Values:
- Mode
- Description
- The initial calculator mode. Valid values are "BASIC",
"FINANCIAL" and "SCIENTIFIC".
- Resource:
- /schemes/apps/gcalctool/showzeroes
- Values:
- true, false (true)
- Description
- Whether trailing zeroes, after the numeric point, are shown in
the display value.
- Resource:
- /schemes/apps/gcalctool/showthousands
- Values:
- true, false (false)
- Description
- Whether fixed numbers in the decimal base are displayed with
thousands separated.
- Resource:
- /schemes/apps/gcalctool/showregisters
- Values:
- true, false (true)
- Description
- Whether the memory register window is initially displayed.
- Resource:
- /schemes/apps/gcalctool/trigtype
- Values:
- Trig. type
- Description
- The initial trigonometric type. Valid values are "DEG"
(degrees), "GRAD" (grads) and "RAD" (radians).
MENU BAR
This section describes the menu items available in the
applications menubar.
Calculator Menu
- Quit [ Control-Q ]
- Exit without user verification.
Edit Menu
- Copy [ Control-C ]
- Copy the calculators numeric display to the clipboard.
- Paste [ Control-V ]
- Paste the contents of the clipboard into the calculators
numeric display.
- Insert ASCII Value [
Control-I ]
- A separate window is displayed which allows you to enter any
character.
The ASCII value of this character is then displayed in the current
base.
View Menu
- Basic Mode [ Control-B ]
- Display the calculator in basic mode.
- Financial Mode [ Control-F ]
- Display the calculator in financial mode.
- Scientific Mode [ Control-S ]
- Display the calculator in scientific mode.
- Memory Registers [ Control-M ]
- Display the memory registers window.
Help Menu
- Contents... [ F1 ]
- Display the online help for the calculator in a separate
window.
- About Gcalctool [ Control-A ]
- Display information about this application, including the
version number and the author.
CALCULATOR BUTTONS
This section describes the calculator keys present in the main
gcalctool window. gcalctool has three modes; basic,
financial and scientific. The keys associated with each of these
modes are described in separate sections below.
Keyboard equivalents appear in the square brackets. Note that
Alt followed by a letter indicates that the Alt key and this key
should be pressed together.
BASIC MODE
Numerical Keys [ 0-9 . = <Return> ].
Enter a digit (decimal digits 0-9) into the display. The '.'
character acts as the numeric point, and '=' (or Return) is used to
complete numerical entry.
Upto forty digits may be entered.
Arithmetical Operations [ + - x * / ].
Perform an arithmetical operation using the previous entry and
the next entry as operands. Addition, subtraction, multiplication
and division are denoted by the characters '+', '-', '*' and '/'
respectively ('x' is also synonymous with multiplication).
Number Manipulation Operators.
- Int [ i ]
- Return the integer portion of the current entry.
- Frac [ : ]
- Return the fractional portion of the current entry.
- Abs [ u ]
- Return the absolute value of the current entry.
- +/- [ c ]
- Change the arithmetic sign of the current entry.
- 1/x [ r ]
- Return the value of 1 divided by the current entry.
- x^2 [ @ ]
- Return the square of the current entry.
- % [ % ]
- Perform a percentage calculation using the last entry and the
next entry.
- Sqrt [ s ]
- Perform a square root operation on the current
entry.
Menu Operations.
Each of these operations has a popup menu associated with it. It
is also possible to use just the keyboard to achieve the same
results. The first keyboard value selects the menu operation; the
second keyboard character selects the new value for this operation.
Unlike the menu facility available with the mouse, there is no
visual feedback on what choices are available to you, so the user
has to know what item they wish to select.
- Acc [ a ]
- Set the display accuracy. Between 0 and 9 [ 0-9 ] significant
digits can be
displayed.
- Rcl [ R ]
- Retrieve memory register value. There are ten memory registers
[ 0-9 ].
- Sto [ S ]
- Store value in memory register. There are ten memory registers
[ 0-9 ].
The register number may be preceded by an arithmetic operation
(addition, subtraction, multiplication or division), in which case
the specified operation is carried out between the displayed entry
and the value currently in the selected memory register, and the
result is placed in the memory register.
- Exch [ X ]
- Exchange the current display with the contents of a memory
register. There
are ten memory registers [ 0-9 ].
Other Operations.
- Clr [ Delete ]
- Clear the display, and reset the calculator.
- CE [ Control-Back
Space or Escape ]
- Clear the display.
- Bksp [ Back Space ]
- Remove the rightmost character of the current entry, and
recalculate the
displayed value.
FINANCIAL MODE
An example of how to use each of these financial calculations,
is available via the tooltip help facility.
- Ctrm [ m ]
- Compounding term. Computes the number of compounding periods it
will take an
investment of present value pv to grow to a future value of fv,
earning a fixed interest rate int per compounding period.
Memory register usage:
Register
0 int (periodic
interest rate).
Register
1 fv (future
value).
Register
2 pv (present
value).
- Ddb [ d ]
- Double-declining depreciation. Computes the depreciation
allowance on an
asset for a specified period of time, using the double-declining
balance method.
Memory register usage:
Register
0 cost (amount
paid for asset).
Register
1 salvage (value
of asset at end of life).
Register
2 life (useful
life of the asset).
Register
3 period (time
period for depreciation allowance).
- Fv [ v ]
- Future value. This calculation determines the future value of
an investment.
It computes the future value based on a series of equal payments,
each of amount pmt, earning periodic interest rate int, over the
number of payment periods in term.
Memory register usage:
Register
0 pmt (periodic
payment).
Register
1 int (periodic
interest rate).
Register
2 n (number
of periods).
- Pmt [ P ]
- Periodic payment. Computes the amount of the periodic payment
of a loan.
Most installment loans are computed like ordinary annuities, in
that payments are made at the end of each payment period.
Memory register usage:
Register
0 prin (principal).
Register
1 int (periodic
interest rate).
Register
2 n (term).
- Pv [ p ]
- Present value. Determines the present value of an investment.
It computes
the present value based on a series of equal payments, each of
amount pmt, discounted at periodic interest rate int, over the
number of periods in term.
Memory register usage:
Register
0 pmt (periodic
payment).
Register
1 int (periodic
interest rate).
Register
2 n (term).
- Rate [ T ]
- Periodic interest rate. Returns the periodic interest necessary
for a present
value of pv to grow to a future value of fv over the number of
compounding periods in term.
Memory register usage:
Register
0 fv (future
value).
Register
1 pv (present
value).
Register
2 n (term).
- Sln [ l ]
- Straight-line depreciation. Computes the straight-line
depreciation of an
asset for one period. The straight-line method of depreciation
divides the depreciable cost (cost - salvage) evenly over the
useful life of an asset. The useful life is the number of periods
(typically years) over which an asset is depreciated.
Memory register usage:
Register
0 cost (cost
of the asset).
Register
1 salvage (salvage
value of the asset).
Register
2 life (useful
life of the asset).
- Syd [ Y ]
- Sum-of-the-years-digits depreciation. The
sum-of-the-years'-digits method
of depreciation accelerates the rate of depreciation, so that more
depreciation expense occurs in earlier periods than in later ones.
The depreciable cost is the actual cost minus salvage value. The
useful life is the number of periods (typically years) over which
an asset is depreciated.
Memory register usage:
Register
0 cost (cost
of the asset).
Register
1 salvage (salvage
value of the asset).
Register
2 life (useful
life of the asset).
Register
3 period (period
for which depreciation is computed).
- Term [ t ]
- Payment period. Returns the number of payment periods in the
term of an
ordinary annuity necessary to accumulate a future value of fv,
earning a periodic interest rate of int. Each payment is equal to
amount pmt.
Memory register usage:
Register
0 pmt (periodic
payment).
Register
1 fv (future
value).
Register
2 int (periodic
interest rate).
SCIENTIFIC MODE
This section describes the functionality available in the
calculators scientific mode. This also includes a special mode
panel used for setting various options.
Mode Panel.
- Numeric Base
- Set the numeric base of operation. Choices are binary, octal,
decimal (the default) and hexadecimal.
- Display Type
- Set the display mode. Valid values are "Eng" (engineering),
"Fix" (fixed-point) and "Sci" (scientific).
- Trigonometric Type
- Set the trigonometric type. Valid values are Degrees, Gradians
and Radians.
- Hyp
- Toggle the hyperbolic function indicator. This switch affects
the type of sine, cosine and tangent trigonometric functions
performed.
- Inv
- Toggle the inverse function indicator. This switch affects the
type of sine, cosine and tangent trigonometric functions
performed.
Menu Operations.
- Con [ # ]
- Retrieve and display a constant value. There are ten constant
values [ 0-9 ],
and each one has a default value which can be overridden when the
user creates their own constant definitions. The ten default values
are:
0 0.621
kilometers per
hour or miles per hour
1 1.414213562 square
root of 2
2 2.718281828 e
3 3.141592653 pi
4 0.3937007 centimeters
or inches
5 57.295779513 degrees
in a radian
6 1048576.0 2
to the power of 20
7 0.0353
grams or
ounces
8 0.948
kilojoules or
British thermals
9 0.0610
cubic
centimeters or cubic inches
- Fun [ f ]
- Retrieve and execute a function expression. There can be upto
ten functions
expression defined by the user [0 - 9]. There are no default
function values.
Scientific buttons.
- < [ < ]
- Shift the current entry to the left. The shift can be between 1
and 15 places
[ 1-9, A-F ]. This calculator key has a popup menu associated with
it.
- > [ >
]
- Shift the current entry to the right. The shift can be between
1 and 15 places
[ 1-9, A-F ]. This calculator key has a popup menu associated with
it.
- &16 [ ] ]
- Truncate the current entry to a 16 bit unsigned integer.
- &32 [ [ ]
- Truncate the current entry to a 32 bit unsigned integer.
- ( and ) [ ( and ) ]
- Parentheses. Allow precedence with arithmetic calculations.
Note that parentheses can be nested to any level, and
gcalctool provides a visual feedback of what is being typed
in, in the calculator display. The calculation doesn't take place
until the last parenthesis is matched, then the display is updated
with the new result.
- Exp [ e ]
- This is used to allow numbers to be entered in scientific
notation. The
mantissa should be initially entered, then the Exp key selected.
The exponent is then entered. If no numerical input had occurred
when the Exp key was selected, then a mantissa of 1.0 is assumed.
- e^x [ { ]
- Returns e raised to the power of the current entry.
- 10^x [ } ]
- Returns 10 raised to the power of the current entry.
- y^x [ y ]
- Take the last entry and raise it to the power of the next
entry.
- x! [ ! ]
- Return the factorial of the current entry. Note that the
factorial function
is only valid for positive integers.
- Rand [ ? ]
- Return a random number between 0.0 and 1.0.
- Hexadecimal Keys [ A-F ]
- The hexadecimal numerical digits A-F. These buttons will be
insensitive unless the calculator is currently in the hexadecimal
mode.
- Cos [ J ]
- Return the trigonometric cosine, arc cosine, hyperbolic cosine
or inverse
hyperbolic cosine of the current display, depending upon the
current settings of the hyperbolic and inverse function switches.
The result is displayed in the current trigonometric units
(degrees, radians or grads).
- Sin [ K ]
- Return the trigonometric sine, arc sine, hyperbolic sine or
inverse
hyperbolic sine of the current display, depending upon the current
settings of the hyperbolic and inverse function switches. The
result is displayed in the current trigonometric units (degrees,
radians or grads).
- Tan [ L ]
- Return the trigonometric tangent, arc tangent, hyperbolic
tangent or inverse
hyperbolic tangent of the current display, depending upon the
current settings of the hyperbolic and inverse function switches.
The result is displayed in the current trigonometric units
(degrees, radians or grads).
- Ln [ N ]
- Return the natural logarithm of the current entry.
- Log [ G ]
- Return the base 10 logarithm of the current entry.
- Or [ | ]
- Perform a logical OR operation on the current entry and the
next entry,
- And [ & ]
- Perform a logical AND operation on the current entry and the
next entry,
treating both numbers as unsigned long integers.
- Not [ ~ ]
- Perform a logical NOT operation on the current entry.
- Xor [ ^ ]
- Perform a logical XOR operation on the current entry and the
next entry,
treating both numbers as unsigned long integers.
- Xnor [ n ]
- Perform a logical XNOR operation on the current entry and the
next entry,
treating both numbers as unsigned long integers.
FILES
- ~/.gcalctoolrc
- user's personal gcalctool resources for customizing the
appearance and color of gcalctool