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 0int(periodic interest rate).
Register 1fv(future value).
Register 2pv(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 0cost(amount paid for asset).
Register 1salvage(value of asset at end of life).
Register 2life(useful life of the asset).
Register 3period(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 0pmt(periodic payment).
Register 1int(periodic interest rate).
Register 2n(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 0prin(principal).
Register 1int(periodic interest rate).
Register 2n(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 0pmt(periodic payment).
Register 1int(periodic interest rate).
Register 2n(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 0fv(future value).
Register 1pv(present value).
Register 2n(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 0cost(cost of the asset).
Register 1salvage(salvage value of the asset).
Register 2life(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 0cost(cost of the asset).
Register 1salvage(salvage value of the asset).
Register 2life(useful life of the asset).
Register 3period(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 0pmt(periodic payment).
Register 1fv(future value).
Register 2int(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:
00.621kilometers per hour or miles per hour
11.414213562square root of 2
22.718281828e
33.141592653pi
40.3937007centimeters or inches
557.295779513degrees in a radian
61048576.02 to the power of 20
70.0353grams or ounces
80.948kilojoules or British thermals
90.0610cubic 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