home *** CD-ROM | disk | FTP | other *** search
/ Media Share 9 / MEDIASHARE_09.ISO / educatio / gr101.zip / GR.DOC < prev    next >
Text File  |  1991-09-17  |  14KB  |  385 lines

  1.  
  2.  
  3.  
  4. GRAPHITI Copyright (c) 1991 Copy Con Incorporated                        Page 1
  5.  
  6.  
  7. OVERVIEW
  8. --------
  9. Graphiti is a mathematical function plotter, capable of displaying two-
  10. dimensional, three-dimensional, and polar functions, based on your input.
  11.  
  12. Requirements: Any MS-DOS computer with a CGA, Hercules, MCGA, EGA, VGA, or SVGA
  13. graphics adapter.
  14.  
  15.  
  16. DISCLAIMER
  17. ----------
  18. Copy Con hereby disclaims all warranties relating to this software, whether
  19. express or implied, including without limitation any implied warranties of
  20. merchantability or fitness for a particular purpose. Copy Con will not be
  21. liable for any special, incidental, consequential, indirect or similar damages
  22. due to loss of data or any other reason, even if Copy Con or an agent of
  23. Copy Con has been advised of the possibility of such damages. In no event
  24. shall Copy Con's liability for any damages ever exceed the price paid for the
  25. use of the software, regardless of the form of the claim. The person using the
  26. software bears all risk as to the quality and performance of the software.
  27.  
  28.  
  29. REGISTRATION
  30. ------------
  31. Graphiti is NOT free - it is being offered to you as Shareware. If you plan to
  32. continue using Graphiti, you are obligated to pay the modest registration fee.
  33. As a registered user, you will be sent a registered copy of Graphiti with lots
  34. of added features, and NO annoying opening screen.
  35.  
  36. To register, send $24.00 + $4.00 shipping & handling per copy (check or money
  37. order drawn on a U.S. bank in U.S. funds) to:
  38.  
  39.    Copy Con Incorporated
  40.    P.O. Box 23255
  41.    Baltimore, MD 21203
  42.  
  43. Maryland residents must add five percent state sales tax ($1.40 per copy).
  44. Please specify 5.25" or 3.5" diskette.
  45.  
  46. We thank you for your support.
  47.  
  48.  
  49.  
  50. GRAPHITI Copyright (c) 1991 Copy Con Incorporated                        Page 2
  51.  
  52.  
  53. OPERATION
  54. ---------
  55. Graphiti is activated from the command line, using the format
  56.  
  57.    GR function [options]
  58.  
  59. To stop a plot in progress, press any key, and the plotting will stop; another
  60. keypress will exit the program. Ctrl-Break will stop and exit immediately.
  61.  
  62.  
  63. FUNCTIONS
  64. ---------
  65. Functions must be in one of the following forms:
  66.  
  67.    x=f(y)      2-dimensional vertical      Angles specified in radians
  68.    y=f(x)      2-dimensional horizontal      "        "     "     "
  69.    z=f(x,y)    3-dimensional                 "        "     "     "
  70.    r=f(p)      Polar                         "        "     "  degrees
  71.  
  72. Parentheses are not necessary for single variables.  For example,
  73.    "y=sin x"   is equivalent to "y=sin(x)" ;
  74.    "y=sin x+1" is equivalent to "y=sin(x)+1" .
  75. If you want the sine of quantity x+1, you would use "y=sin(x+1)".
  76.  
  77. Functions cannot be directly followed by alphabetic variables or constants;
  78. instead of "y=sinx", use "y=sin x" or "y=sin(x)". Functions CAN be directly
  79. followed by numeric constants, as in "y=sin3". Don't type the quotes!
  80.  
  81. Following is the list of functions that Graphiti supports:
  82.  
  83.    Function  Description
  84.    --------  -----------
  85.      abs     Absolute value
  86.      acos    Arc cosine
  87.      asin    Arc sine
  88.      atan    Arc tangent
  89.      ceil    Smallest integer not less than input value (rounds up)
  90.      cos     Cosine
  91.      cosh    Hyperbolic cosine
  92.      csc     Cosecant
  93.      ctn     Cotangent
  94.      cub     Cube root
  95.      exp     E to the power of input value
  96.      flr     Largest integer not greater than input value (rounds down)
  97.      int     Rounds down (same as FLR)
  98.      ln      natural logarithm
  99.      log     natural logarithm (same as LN)
  100.      logt    Base 10 logarithm
  101.      sec     Secant
  102.      sgn     Sign of input value (positive=1, negative=-1, zero=0)
  103.      sin     Sine
  104.      sinh    Hyperbolic sine
  105.      sqr     Square root
  106.      tan     Tangent
  107.      tanh    Hyperbolic tangent
  108.  
  109.  
  110.  
  111. GRAPHITI Copyright (c) 1991 Copy Con Incorporated                        Page 3
  112.  
  113.  
  114. OPERATORS
  115. ---------
  116. Each operator has a precedence, and operators with higher precedence are
  117. evaluated before operators with lower precedence. Operators with equal
  118. precedence are handled from left to right within a function.
  119.  
  120. Following is the list of operators that Graphiti supports, along with their
  121. precedences:
  122.  
  123.    Operator  Precedence  Description
  124.    --------  ----------  -----------
  125.       (          5       Left parenthesis
  126.       )          5       Right parenthesis
  127.       !          4       Factorial
  128.       ^          3       Exponential
  129.       *          2       Multiplication
  130.       /          2       Division
  131.       %          2       Modulus
  132.       +          1       Addition
  133.       -          1       Subtraction
  134.  
  135.  
  136. VARIABLES
  137. ---------
  138. The three variables (X, Y, and P) change value from their lower range to their
  139. higher range (with increments determined by the D option), and the function's
  140. value is plotted accordingly. Variables can be used in the following functions:
  141.  
  142.    Variable  Functions
  143.    --------  ---------
  144.       X      y=f(x), z=f(x,y)
  145.       Y      x=f(y), z=f(x,y)
  146.       P      r=f(p)
  147.  
  148. The variables are plotted according to the functions they are used in:
  149.  
  150.       x=f(y), y=f(x)    |        z=f(x,y)        |        r=f(p)
  151.    ---------------------|------------------------|--------------------
  152.             y           |            z   y       |           r
  153.             |           |            | /         |           |
  154.             |           |            |/          |           |
  155.    -x ------+------ x   |   -x ------+------ x   |   r ------+------ r
  156.             |           |           /|           |           |
  157.             |           |          / |           |           |
  158.            -y           |       -y  -z           |           r
  159.  
  160. Trust us, the functions look better on a graphics screen than they do above.
  161.  
  162.  
  163.  
  164. GRAPHITI Copyright (c) 1991 Copy Con Incorporated                        Page 4
  165.  
  166.  
  167. CONSTANTS
  168. ---------
  169. Graphiti supports numeric constants, as well as two alphabetic constants,
  170. PI and E. Alphabetic constants must be separated from functions by a space; use
  171. "y=sin pi", not "y=sinpi". Numeric constants need not be separated from
  172. functions with spaces; "y=sin3" is okay.
  173.  
  174. Here are the approximate values of PI and E:
  175.  
  176.    PI = 3.14159265358979323846
  177.    E  = 2.71828182845904523536
  178.  
  179.  
  180. OPTIONS
  181. -------
  182. Options must be in the form "OPTION:option1[,option2]", as in "u:2" or
  183. "rx:-3,5". Case is not important. Separate options with spaces.
  184.  
  185.    Option  Description
  186.    ------  -----------
  187.      A     Axis lines toggle - determines whether the X- Y- and/or Z-axes
  188.            will be drawn. Default is Y. (Note: On 3D graphs with hidden
  189.            lines, axes will be drawn after the graph has been plotted.)
  190.  
  191.      C     Color - the color of the plotted function. Range is 1 thru the
  192.            maximum amount of colors for the video screen. Default if 1 if
  193.            using a two-color screen, otherwise the default is the maximum
  194.            color minus one.
  195.  
  196.      D     Dot resolution - number of pixels per scan line. Range is 1
  197.            thru 10; amount of pixels will be 2^(D-1). Default is 2.
  198.  
  199.      FS    GIF file save - GIF filename to save screen to after plotting.
  200.            Default is none. (Notes: A pixel will appear on the right side
  201.            of the current line being processed. When the pixel reaches
  202.            the bottom, the screen has been saved; if any key is pressed
  203.            before that time, the incomplete GIF file will be deleted.
  204.            The FS option is not functional in the unregistered version.)
  205.  
  206.      G     3D grid lines toggle - whether 3D graphs will also plot lines
  207.            parallel to the Y-axis, in addition to the lines parallel to
  208.            the X-axis. Default is Y. (Note: This option is not functional
  209.            in the unregistered version; G will be set to N. View
  210.            REGISTER.GIF to see an example of grid lines.)
  211.  
  212.      H     3D hidden lines toggle - whether 3D graphs will plot as solid,
  213.            instead of see-thru. Default is Y. (Note: This option is not
  214.            functional in the unregistered version; H will be set to N.
  215.            View REGISTER.GIF to see an example of hidden lines.)
  216.  
  217.      L     Line resolution - number of lines per unit in 3D graphs. Range
  218.            is 1 thru 10; number of lines will be 2^(L-1). Default is 2.
  219.  
  220.  
  221.  
  222. GRAPHITI Copyright (c) 1991 Copy Con Incorporated                        Page 5
  223.  
  224.  
  225. OPTIONS (continued)
  226. -------------------
  227.  
  228.    Option  Description
  229.    ------  -----------
  230.      RP    Range of P - low and high range of variable P in r=f(p). Ranges
  231.            are any two numbers, as long as the low range is less than the
  232.            high range. If only one number is entered, the range will be
  233.            the negative value of the number to the positive value.
  234.            Defaults are 0,360.
  235.  
  236.      RX    Range of X - low and high range of variable X in y=f(x) and
  237.            z=f(x,y). Low range is -15 times the unit value (see option U)
  238.            to the high range. High range is the low range to 15 times the
  239.            unit value. That can be expressed as:
  240.  
  241.                -15*U <= low range < high range <= 15*U
  242.  
  243.            If only one number is entered, the range will be the negative
  244.            value of the number to the positive value. Defaults are -15,15.
  245.  
  246.      RY    Range of Y - low and high range of variable Y in x=f(y) and
  247.            z=f(x,y). Ranges and defaults:
  248.  
  249.                Graph     Range (See option U)                     Defaults
  250.               --------   ---------------------------------------  --------
  251.                x=f(y)    -10*U <= low range < high range <= 10*U   -10,10
  252.               z=f(x,y)   -15*U <= low range < high range <= 15*U   -15,15
  253.  
  254.            If only one number is entered, the range will be the negative
  255.            value of the number to the positive value.
  256.  
  257.      S     SVGA mode - type of Super VGA card in your system. Range is 0
  258.            thru 6, where:
  259.  
  260.               Value  SVGA Card
  261.               -----  ---------
  262.                 0    None
  263.                 1    ATI
  264.                 2    Orchid
  265.                 3    Paradise
  266.                 4    VEGA
  267.                 5    Compro
  268.                 6    SOTA
  269.  
  270.            Default is 0. (Note: This option is not functional in the
  271.            unregistered version; S will be set to 0.)
  272.  
  273.      U     Unit value - value of one unit (used for scaling). There are
  274.            ten units from the center of the screen to the top, and the
  275.            units are marked on the axis lines. Range is .0001 to 10000.
  276.            Default is 1. (Note: In the unregistered version, range is .01
  277.            to 100.)
  278.  
  279.  
  280.  
  281. GRAPHITI Copyright (c) 1991 Copy Con Incorporated                        Page 6
  282.  
  283.  
  284. ERROR MESSAGES
  285. --------------
  286. Following is the list of error messages you may have the misfortune to see,
  287. along with their corresponding DOS errorlevels.
  288.  
  289.    Level  Message & Description
  290.    -----  ---------------------
  291.      1    Invalid command line options - Graphiti cannot understand your
  292.           input. Functions must start with "X=", "Y=", "Z=", or "R=".
  293.           Options must be in the form "OPTION:option1[,option2]", as in
  294.           "u:2" or "rx:-3,5". Don't type the quotes! Case isn't important.
  295.  
  296.      2    Graphics hardware not detected - either your computer is not
  297.           equipped with a graphics adapter, or Graphiti cannot determine
  298.           what type of adapter it is.
  299.  
  300.      3    Abnormal program termination - either we erred in trapping a
  301.           math function, or the program has been corrupted somehow.
  302.           (Please drop us a line describing everything that led up to this
  303.           error, if you happen to come across it.)
  304.  
  305.      4    Invalid function '(function)' - you have attempted to use an
  306.           unsupported function. If it's a common function, let us know,
  307.           and we will add it.
  308.  
  309.      5    Invalid operator '(op)' - you have attempted to use an
  310.           unsupported operator. If it's a common operator, let us know,
  311.           and we will add it.
  312.  
  313.      6    Mixmatched parentheses - either there were an uneven amount of
  314.           parentheses, or a right paren was encountered before its
  315.           matching left paren.
  316.  
  317.      7    Invalid use of functions - functions cannot be directly followed
  318.           by an operator (unless the operator is a "+" or "-" indicating
  319.           the sign of the value that follows).
  320.  
  321.      8    Invalid use of operators - operators cannot be directly followed
  322.           by other operators (unless the second operator is a "+" or "-"
  323.           indicating the sign of the value that follows).
  324.  
  325.      9    Formula too complex - your function has 128 or more references
  326.           to constants and variables. (WOW!)
  327.  
  328.     10    Formula cannot reference itself - the function variable on the
  329.           left side of the equals sign cannot be referred to on the right
  330.           side (as in "y=sin y").
  331.  
  332.     11    Variable '(variable)' cannot be used in this function - function
  333.           must be in the form "x=f(y)", "y=f(x)", "z=f(x,y)", or "r=f(p)".
  334.  
  335.     12    Unable to open file '(file)' - the named GIF file cannot be
  336.           opened for writing.
  337.  
  338.  
  339.  
  340. GRAPHITI Copyright (c) 1991 Copy Con Incorporated                        Page 7
  341.  
  342.  
  343. FUTURE RELEASES
  344. ---------------
  345. Here is a semi-complete list of things to look forward to in future releases of
  346. Graphiti, in no particular order.
  347.  
  348.    Support for imaginary numbers, if we can figure out how to plot an
  349.    imaginary point.
  350.  
  351.    Menu interface, for those with little tolerance for the command line.
  352.  
  353.    Ability to see ANY part of a function, not just plus and minus zero.
  354.  
  355.    Ability to plot multiple graphs onscreen.
  356.  
  357.    A support BBS, if funds allow.
  358.  
  359.    (your suggestion here)
  360.  
  361.  
  362. CREDITS
  363. -------
  364. Thanks go out to the following people:
  365.  
  366.    GIF encoding routines based on code by David Rowley.
  367.  
  368.    SVGA driver written by John Sieraski.
  369.  
  370.    Much thankage to John "Catman" Lalmond and to Deborah "Debbie" Carey,
  371.    the original beta-testers.
  372.  
  373.  
  374. CORRESPONDENCE
  375. --------------
  376. If you have comments, suggestions or bug reports(?), please write to:
  377.  
  378.    Copy Con Incorporated
  379.    P.O. Box 23255
  380.    Baltimore, MD 21203
  381.  
  382. If you want a reply, please include a self-addressed, stamped envelope.
  383.  
  384. We look forward to hearing from you.
  385.