# Category : Printer + Display Graphics

Archive : GRAPHIT2.ZIP

Filename : GRAPHIT1.HLP

Operator/Function Meaning

ÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ ÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ

+, -, *, / add, subtract, multiply, divide

^ exponentiation

{[( )]} parentheses: may be nested to any extent,

braces and brackets are provided for ease of

reading but the parser will NOT differentiate

between "{" and "(" and "[".

abs absolute value

acos, asin, atan arc cosine, arc sine, and arc tangent

cos, cosh cosine and hyperbolic cosine

exp Euler's number to the specified power

int greatest integer ([x] is not supported)

ln, log natural logarithm, logarithm base 10 ÚÄÄÄÄÄÄÄÄÄ¿

sin, sinh sine, hyperbolic sine ³PgDn for ³

sqr square root ³more help³

tan, tanh tangent, hyperbolic tangent ÀÄÄÄÄÄÄÄÄÄÙ

---> NOTE that all trig functions work in RADIANS, not degrees. <---

Besides the variables x and y, 2 other "variables" (pi [3.14159...] and

e [Euler's number: 2.718...]) are legal identifiers for your convenience.

CALLING FUNCTIONS

The parser's ability to determine exactly what you want to pass as an

argument to a function is somewhat limited, so I suggest you make it a habit

to enclose the desired expression in parentheses. "cos x" may work fine but

"cos 2x" is interpreted as "(cos 2)*x" and "cos x^2" turns out "(cos x)^2".

Typing "cos (2x)" or "cos (x^2)" instead works perfectly.

The order of operations is the standard algebraic left to right of:

Functions

Parentheses

Exponents

Multiplication and division

Addition and subtraction

GraphIt! supports implied multiplication of variables and constants as in

"3x" or "5(2x+3)", but not of variables and other alphabetic identifiers such

as functions and built-in transcendental numbers like "xx", "xcos(x)", or

"xpi", so you must include the times sign in those cases. (Implied multi-

plication of the two variables x and y [i.e. "xy=1"] IS supported, however.)

The parser may reject some complex expressions for no apparent reason. Keep

trying! I suggest liberal use of parentheses: if you are not sure whether

something will be interpreted correctly, go back and put parentheses around

it. (One exception: do NOT enclose the entire expression on either side of the

equals sign in parentheses.) Press PgDn for more help.

GRAPHING THE EQUATION

To interrupt a graph when the computer is in the process of drawing it,

hit any key and the program will display on the bottom line the message:

"PAUSE at x=#, y=#. Press ESC to quit, any other key to restart...", where #

indicates the x and y coordinates you stopped it at. If you mistyped the

equation and want to fix it, just press ESC.

Be patient! GraphIt! may need a while to produce a quality graph on a

slower machine. To speed up the graphing, you may want to select a lower

Fineness value.

THE GRAPHING LOOP

When the graph for your equation is complete, you will again be given the

"Graph?" prompt at the bottom of the screen. If you'd like to start all over

with a completely different equation, press ESC and the input field will

clear. If you'd rather modify the last equation, go right ahead; it's already

stored safe and sound in the redraw queue (for more information see Section

III: Using AutoRedraw and the Redraw Queue). To exit the otherwise infinite

graphing loop, press enter or escape on a blank line (escape twice will always

work).

Press PgDn for help on error messages.

ERROR MESSAGES

Eleven error messages may be encountered when graphing (apart from the

messages ingrained in the library functions which I cannot control). Five of

them are fatal; the equation cannot be graphed and you must edit it. They will

cause the computer to beep so you know there is a problem. The other six apply

only to specific point(s) for which a y-value cannot be generated. They will

not appear unless you ask for them using the Warnings option and then they

appear silently.

"Found bad operation or mismatched parentheses. Press any key to retype..."

You either left out a paren somewhere, left out one or both of the

operands for a binary operation or the argument for a function, or typed

some other weird thing the parser and evaluator couldn't digest. Examine

your equation carefully and fix whatever seems to be the problem.

"Found unknown identifier. Press any key to retype equation."

Unfortunately, the evaluator isn't set up to return what caused the error,

so you'll have to look for it yourself. Check that your equation contains

only valid identifiers (x, y, pi, e, and the functions listed above) and

that you separated each of them with an operator, space, or some other

punctuation.

Press PgDn for more error messages.

ERROR MESSAGES continued

"No equals sign or more than one found. Press any key to edit equation."

To be a valid and graphable, your equation must include exactly one equals

sign ['=']. If you get this error, you either left out the '=' or

accidentally typed two or more of them.

"No 'y' variable or more than one found. Press any key to edit equation."

Although GraphIt! has been enhanced to isolate ONE 'y' variable and graph

some relations, it cannot graph an equation without a 'y', like "x=4". It

also cannot perform the factoring needed to isolate the variable 'y' when

it occurs more than once (i.e. "x=y^2+3y"). If you can adjust the equation

so it uses only one 'y', do so; otherwise it can't be graphed.

"Can't find the inverse of this function of y. Press a key to edit equation."

You tried to graph an equation like "int(y)=x" or "abs(y)=x" for which y

cannot be isolated by taking the inverse of the function. The functions

which cannot be isolated are "abs", "cosh", "sinh", "tanh", and "int". If

you can't adjust the equation so this error does not occur, it is not

graphable.

Press PgDn for more error messages.

WARNING ERROR MESSAGES

"Overflow at x=#.##."

Some function or operation generated a number too large to fit into a 8-

byte floating point variable. The point at x=#.## was not graphed.

"Division by zero at x=#.##."

At #.## your equation attempted division by zero so the point was skipped.

"Can't raise a negative number to a fractional power. [x=#.##]"

Due to the possibility of getting an even root of a negative number, the C

Library pow() function refuses to process any arguments like these. The

portion of your graph (if any) where the base is not negative or the power

is not fractional should be graphed perfectly. This error also occurs when

you take the square root of a negative number with the "sqr" function.

"Can't find the logarithm of a negative number. [x=#.##]"

The natural logarithm (ln) and base 10 logarithm (log) functions are

defined only on x greater than zero.

"Domain error: asin/acos functions defined only on -1óxó1. [x=#.##]"

The arcsine (asin) and arc cosine (acos) functions are only defined

between -1 and 1 (the range of the sin and cos functions).

ÄÄÄÄÄÄÄÄÄÄÄÄÄÄEnd of Graphing help. Press ESC to return to menu.ÄÄÄÄÄÄÄÄÄÄÄÄÄÄ

Very nice! Thank you for this wonderful archive. I wonder why I found it only now. Long live the BBS file archives!

This is so awesome! 😀 I’d be cool if you could download an entire archive of this at once, though.

But one thing that puzzles me is the “mtswslnkmcjklsdlsbdmMICROSOFT” string. There is an article about it here. It is definitely worth a read: http://www.os2museum.com/wp/mtswslnk/