gcalctool(1)

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. They will be shown in upper-case in the calculator display.
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.
Log10	[ G ]
    Return the base 10 logarithm of the current entry.
Log2	[ H ]
    Return the base 2 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