File: geom_help Version: 2006 March 27 17:50. Author: Arthur L. Edwards (email: xenopsbird@comcast.net). GEOM HELP MESSAGES c=============================================================================== Note: In command lines, arguments shown in lower case are to be typed literally as shown. Arguments shown in UPPER CASE indicate data to be provided by you (the user). Arguments in square brackets are options with choices and/or with defaults. c=============================================================================== HELP COMMANDS c=============================================================================== help, h Display a help message for each command category. commands [help] help commands Display all command words, including synonyms. environment [help] help environment Display a help message for environment commands. error [help] help error Display a help message for error-control commands. random [help] help random Display a help message for Monte Carlo commands. object [help] help object Display a help message for commands that create and display objects. math [help] help math Display a help message for mathematics commands. misc [help] help misc Display a help message for miscellaneous commands. COMMAND help help COMMAND Display a help message for command COMMAND. help all Display help messages for all commands (many pages of output). Synonyms: [commands, comm, alph], [environment, env], [error, err], [help, h], [object, obj]. c=============================================================================== HELP FOR COMMANDS BY FUNCTIONAL GROUP c=============================================================================== Environment commands include: status, stat Display title, I/O files, environmental parameters. title, id Display problem title. prompt Switch between long and short prompts. when Display code date and run date. time, t Display time charged to problem. . Repeat previous command. input, in, i, read, rd, r Display/repeat previous commands. input, in, i, read, rd, r Specify/display input medium. input conv.mac Display or read metric conversion factors. return, rtn Return to last input medium. output, out, o, wr, w Specify/display output file. trace Display input medium return path. plot Specify plot parameters, make plots. marker, mark, m Specify/display markers and their text. delimiter, delim Specify/display field delimiter. ; (unquoted) Separates commands, comments, on same input line. Not after ".", "input", "read" or "return". Not after "indo", "redo" or "undo". coordinate, coord, cs Specify/display coordinate system. angles, angle, ang Specify/display/convert angle units. tol Specify/display numerical tolerance limit. define Define a command, key word or variable. tables, sizes Display command name and max number for objects. commands, comm, alph Display all command words, including synonyms. synonym, syn Display synonyms of commands, key words. symbol, symb, sym Create/display a symbol with a replacement. search, find Search for an object with a specified name or value. alias, al, a Create/display aliases. variable, var, set, s Create/display named variables, do math. icalc Specify mode of integer input and output in icalc. c or C (before blank) Comment line. cc, CC (columns 1 and 2) Comment line. cxxxx, Cxxxx (< blank) Comment line (x = "+", "-" or "_"). #, *, / (column 1) Comment line. ! (following command) Begins appended comment. page Insert page restore symbol "^L" into output file. undo, u Undo the last command(s). indo Redo a command, with increments. redo Redo a command, with replacements. do/enddo Begin/end a do loop. if/endif Begin/end a conditional block. vi Open text editor vi to display and/or edit a file. lock Lock and unlock GEOM. end, exit, quit, split End the run. Exit from GEOM. c=============================================================================== Error-control commands include: . Repeat last command. input, in, i, read, rd, r Display/repeat previous commands. undo, u Undo the last command(s). indo Redo a command, with increments. redo Redo a command, with replacements. help COMMAND Display a help message for command COMMAND. COMMAND help Display a help message for command COMMAND. Synonyms: [help, h], [input, in, i, read, rd, r], [undo, u]. c=============================================================================== Commands to create and display objects include: alias, al, a Create/display aliases. big Create/display big integers, do math. variable, var, set, s Create/display named variables, do math. vector, vect, v Create/display vectors. operator, oper, op Create/display operators to reflect, rotate, invert or scale. point, pnt, pt, p Create/display points. cluster, cl Create/display clusters of points. line, ln, l Create/display lines. triangle, tri Create/display triangles. See trig, cute, cuts. polygon, polyg, pg Create/display regular polygons. disk, dk Create/display annular disks. plane, pl Create/display planes. sphere, sph Create/display spheres. cylinder, cyl Create/display circular cylinders. cone Create/display circular cones. ellipsoid, ell, el Create/display ellipsoids. axisym Create/display axisymmetric quadric surfaces. hyperb, saddle Create/display quadric surface through quadrangle. quadric, quad, q Create/display general quadric surfaces. mesh Create/display a logical mesh. mesh block Create/display a logical mesh block. polyhedron, polyh, ph Create/display regular polyhedrons. tetrahedron, tetra, tet Create/display tetrahedrons. brick, br Create/display bricks. zone, zn, z Create/display zones. bin Create/display probability bins. pdf Create/display probability distribution functions. copy, cp, duplicate, dup Copy an object. delete, del, remove, rm Delete objects. switch, sw, rename Rename an object. last Create/display base names of objects. list Display names of objects. sort Sort objects by names. c=============================================================================== Monte Carlo commands include: spin Spin the random number sequence. variable, var, set, s Randomly sample floating point numbers. icalc Randomly sample integers. walk Randomly walk points. bin Create/display probability bins. pdf Create/display probability distribution functions. sample Randomly sample from a pdf. point, pnt, pt, p Randomly sample points on surfaces or in volumes. vector, vect, v Randomly sample vectors. mcvol Estimate the volume of a zone. c=============================================================================== Mathematics commands include: base Convert decimal values to any number base. big Big integer create, display, math functions. bisect Bisect an angle. contfr Find coefficients or value of a continued fraction. cross, outer Find the cross product of a vector pair. crt Solve Chinese Remainder Theorem problem. dot, inner Find the dot product and angle of a vector pair. factor Find the prime factors of integers. factor Find the Euler totient function of integers. hex Convert/display hex and decimal formats. icalc Do integer arithmetic. iris Find equivalent series of reciprocals of integers. mean Find mean and std dev of a specified set of variables. ratio, rat Find the ratio of terms for a geometric series. root Find the real roots of a polynomial equation. rootf Factor a root out of a polynomial equation. roots Find the roots of a quadratic, cubic or quartic eq. solve Solve 3 linear equations in 3 unknowns. variable, var, set, s Do floating point arithmetic. c=============================================================================== Miscellaneous commands include: if/endif Specify/end a conditional block. ratio, rat Find the ratio of terms for a geometric series. bisect Bisect an angle. dot, inner Find the dot product and angle of a vector pair. cross, outer Find the cross product of a vector pair. increment, incr Increment a blank-delimited string. invert, inv Invert points, clusters, vectors, planes, quadrics. move, translate Move points, clusters, vectors, planes, quadrics. reflect, refl Reflect points, clusters, vectors, planes, quadrics. rotate, rot Rotate points, clusters, vectors, planes, quadrics. scale, sc Scale points, clusters, vectors, planes, quadrics. project, proj Project points onto a plane, cylinder, or sphere. twist, tw Twist points around an axis. circle, circ Find a circle through 3 points, or tangent circles. intcirc Find the intersection of 2 circles. kiss Find tangent circles and spheres. distance, dist, int Find distances or intersections between objects. slice, cut Find the intersection of a quadric with a plane. slice, cut Find points in a quadric surface. triple Find any triple intersection point of three planes. track, trk Find track distances, intersections. accelerate, accel Find parabolic paths of accelerated particles. arc Find curvatures of a quadric surface at a point. side; proximal, prox Find sides of quadric surfaces points are on. side; proximal, prox Find distances from points to quadric surfaces. side; proximal, prox Find proximal points on quadric surfaces. extrema, extr Find the extrema of a quadric surface. where Find if points are in bricks, tetrahedrons, zones. trig Find the missing parts of a triangle. cuts Cut a triangle in two with equal perimeters, areas. cute Find triangle extension with same perimeter, area. steiner, stein Find the Steiner vertex of a triangle. sudoku Solve a Sudoku puzzle. area Find the area of a polygon. volume Find the volume of a rotated polygon. mcvol Estimate the volume of a zone. c=============================================================================== HELP FOR INDIVIDUAL COMMANDS c=============================================================================== The geom execution line is: geom [[IN_FILE|tty] [[OUT_FILE|geom.hsp]]] Commands to get help messages include: help, h Display a help message for each command category. commands [help] help commands Display all command words, including synonyms. environment [help] help environment Display a help message for environment commands. error [help] help error Display a help message for error-control commands. random [help] help random Display a help message for Monte Carlo commands. object [help] help object Display a help message for commands that create and display objects. math [help] help math Display a help message for mathematics commands. misc [help] help misc Display a help message for miscellaneous commands. COMMAND help help COMMAND Display a help message for command COMMAND. help all Display help messages for all commands (many pages of output). Synonyms: [commands, comm, alph], [environment, env], [error, err], [help, h], [object, obj]. The field delimiter is now " ". c=============================================================================== Alphabetic list of command words, including synonyms: . ; a accel accelerate al alias alph ang angle angles arc area axisym base big bin bisect br brick C c C++++ c++++ C---- c---- C.... c.... circ circle cl cluster comm commands cone contfr coord coordinate copy cp cross crt cs cut cute cuts cyl cylinder C____ c____ debug def define del delete delim delimit delimiter disc disk dist distance dk do dot dup duplicate el ell ellipse ellipsoid end enddo endif env environment err error exit extr extrema factor find goto h help hex hyperb i icalc id if in incr increment indo inner input int intcirc inter intersect inv invert iris kiss l last line list ln lock m mark marker math mcvol mean mesh misc move mv o obj object op oper operator out outer output p page parse pdf pg ph pl plane plot pnt point polyg polygon polyh polyhedron proj project prompt prox proximal pt q quad quadric quit r random rat ratio rd read redo refl reflect remove rename repack return rm root rootf roots rot rotate rtn s saddle sample sc scale search set setup side slice solve sort sph sphere spin split sr stat status steiner su sudoku sw switch sym symb symbol syn synonym sys system t tables tet tetra tetrahedron time title tol trace track trans translate tri triangle trig triple trk tw twist u undo v var variable vect vector vi vol volume w walk when where wr z zn zone Synonyms: [commands, comm, alph], [help, h]. c=============================================================================== Environment commands include: status, stat Display title, I/O files, environmental parameters. title, id Display problem title. prompt Switch between long and short prompts. when Display code date and run date. time, t Display time charged to problem. . Repeat previous command. input, in, i, read, rd, r Display/repeat previous commands. input, in, i, read, rd, r Specify/display input medium. input conv.mac Display or read metric conversion factors. return, rtn Return to last input medium. output, out, o, wr, w Specify/display output file. trace Display input medium return path. plot Specify plot parameters, make plots. marker, mark, m Specify/display markers and their text. delimiter, delim Specify/display field delimiter. ; (unquoted) Separates commands, comments, on same input line. Not after ".", "input", "read" or "return". Not after "indo", "redo" or "undo". coordinate, coord, cs Specify/display coordinate system. angles, angle, ang Specify/display/convert angle units. tol Specify/display numerical tolerance limit. define Define a command, key word or variable. tables, sizes Display command name and max number for objects. commands, comm, alph Display all command words, including synonyms. synonym, syn Display synonyms of commands, key words. symbol, symb, sym Create/display a symbol with a replacement. search, find Search for an object with a specified name or value. alias, al, a Create/display aliases. variable, var, set, s Create/display named variables, do math. icalc Specify mode of integer input and output in icalc. c or C (before blank) Comment line. cc, CC (columns 1 and 2) Comment line. cxxxx, Cxxxx (< blank) Comment line (x = "+", "-" or "_"). #, *, / (column 1) Comment line. ! (following command) Begins appended comment. page Insert page restore symbol "^L" into output file. undo, u Undo the last command(s). indo Redo a command, with increments. redo Redo a command, with replacements. if/endif Specify/end a conditional block. do/enddo Specify/end a do loop. vi Open text editor vi to display and/or edit a file. lock Lock and unlock GEOM. end, exit, quit, split End the run. Exit from GEOM. c=============================================================================== Error-control commands include: . Repeat last command. input, in, i, read, rd, r Display/repeat previous commands. undo, u Undo the last command(s). indo Redo a command, with increments. redo Redo a command, with replacements. help COMMAND Display a help message for command COMMAND. COMMAND help Display a help message for command COMMAND. debug Display internal variables. parse Display input line parsing. Synonyms: [help, h], [input, in, i, read, rd, r], [undo, u]. c=============================================================================== Mathematics commands include: variable, var, set, s Do floating point arithmetic. icalc Do integer arithmetic. big Do big integer arithmetic. hex Convert/display hex and decimal formats. base Convert decimal values to any number base. mean Find the mean value and std dev of a set of variables. root Find the real roots of a polynomial equation. roots Find the roots of a quadratic, cubic or quartic eq. rootf Factor a root out of a polynomial equation. solve Solve 3 linear equations in 3 unknowns. ratio, rat Find the ratio of terms for a geometric series. bisect Bisect an angle. dot, inner Find the dot product and angle of a vector pair. cross, outer Find the cross product of a vector pair. factor Find all of the prime factors of an integer. factor Find the Euler totient function of an integer. contfr Find coefficients or value of a continued fraction. iris Find equivalent series of reciprocals of integers. crt Solve Chinese Remainder Theorem problem. c=============================================================================== Miscellaneous commands include: if/endif Specify/end a conditional block. ratio, rat Find the ratio of terms for a geometric series. bisect Bisect an angle. dot, inner Find the dot product and angle of a vector pair. cross, outer Find the cross product of a vector pair. increment, incr Increment a blank-delimited string. invert, inv Invert points, clusters, vectors, planes, quadrics. move, translate Move points, clusters, vectors, planes, quadrics. reflect, refl Reflect points, clusters, vectors, planes, quadrics. rotate, rot Rotate points, clusters, vectors, planes, quadrics. scale, sc Scale points, clusters, vectors, planes, quadrics. project, proj Project points onto a plane, cylinder, or sphere. twist, tw Twist points around an axis. circle, circ Find a circle through 3 points, or tangent circles. intcirc Find the intersection of 2 circles. kiss Find tangent circles and spheres. distance, dist, int Find distances or intersections between objects. slice, cut Find the intersection of a quadric with a plane. slice, cut Find points in a quadric surface. triple Find any triple intersection point of three planes. track, trk Find track distances, intersections. accelerate, accel Find parabolic paths of accelerated particles. arc Find curvatures of a quadric surface at a point. side; proximal, prox Find sides of quadric surfaces points are on. side; proximal, prox Find distances from points to quadric surfaces. side; proximal, prox Find proximal points on quadric surfaces. extrema, extr Find the extrema of a quadric surface. where Find if points are in bricks, tetrahedrons, zones. trig Find the missing parts of a triangle. cuts Cut a triangle in two with equal perimeters, areas. cute Find triangle extension with same perimeter, area. steiner, stein Find the Steiner vertex of a triangle. sudoku, su Solve a Sudoku puzzle. area Find the area of a polygon. volume Find the volume of a rotated polygon. mcvol Estimate the volume of a zone. c=============================================================================== Commands to create and display objects include: alias, al, a Create/display aliases. big Create/display big integers, do math. variable, var, set, s Create/display named variables, do math. vector, vect, v Create/display vectors. operator, oper, op Create/display operators to reflect, rotate, invert or scale. point, pnt, pt, p Create/display points. cluster, cl Create/display clusters of points. line, ln, l Create/display lines. triangle, tri Create/display triangles. See trig, cute, cuts. polygon, polyg, pg Create/display regular polygons. disk, dk Create/display annular disks. plane, pl Create/display planes. sphere, sph Create/display spheres. cylinder, cyl Create/display circular cylinders. cone Create/display circular cones. ellipsoid, ell, el Create/display ellipsoids. axisym Create/display axisymmetric quadric surfaces. hyperb, saddle Create/display quadric surface through quadrangle. quadric, quad, q Create/display general quadric surfaces. mesh Create/display a logical mesh. mesh block Create/display a logical mesh block. polyhedron, polyh, ph Create/display regular polyhedrons. tetrahedron, tetra, tet Create/display tetrahedrons. brick, br Create/display bricks. zone, zn, z Create/display zones. bin Create/display probability bins. pdf Create/display probability distribution functions. copy, cp, duplicate, dup Copy an object. delete, del, remove, rm Delete objects. switch, sw, rename Rename objects. last Create/display base names of objects. list Display names of objects. repack Remove deleted objects. sort Sort objects by names. c=============================================================================== Monte Carlo commands include: spin Spin the random number sequence. variable, var, set, s Randomly sample floating point numbers. icalc Randomly sample integers. walk Randomly walk points. bin Create/display probability bins. pdf Create/display probability distribution functions. sample Randomly sample from a pdf. point, pnt, pt, p Randomly sample points on surfaces or in volumes. vector, vect, v Randomly sample vectors. mcvol Estimate the volume of a zone. c=============================================================================== Command "accel": acceptable input lines include: "accelerate [help]" Display this message. "accelerate path PINIT VINIT VACC" For a particle initially at point PINIT, with initial velocity vector VINIT and acceleration vector VACC, find the position, path length and velocity at the vertex of its parabolic trajectory. "accelerate path PINIT VINIT VACC time TMIN [DT TMAX]" For a particle initially at point PINIT, with initial velocity vector VINIT and acceleration vector VACC, find the position, path length and velocity at the vertex of its path, and for time[s] TMIN [(DT) TMAX]. "accelerate path PINIT VINIT VACC point PNAME" For a particle initially at point PINIT, with initial velocity vector VINIT and acceleration vector VACC, find the points on its path that intersect or are proximal to the point PNAME, and for each such point, the coordinates, the path length and the time. "accelerate path PINIT VINIT VACC cluster CLNAME" For a particle initially at point PINIT, with initial velocity vector VINIT and acceleration vector VACC, find the points on its path that intersect or are proximal to each point in cluster CLNAME, and for each such point, the coordinates, the path length and the time. "accelerate path PINIT VINIT VACC line ALNAME" For a particle initially at point PINIT, with initial velocity vector VINIT and acceleration vector VACC, find the points on its path that intersect or are proximal to the line ALNAME, and for each such point, the coordinates, the path length and the time. "accelerate path PINIT VINIT VACC plane PLNAME" For a particle initially at point PINIT, with initial velocity vector VINIT and acceleration vector VACC, find the points on its path that intersect or are proximal to the plane PLNAME, and for each such point, the coordinates, the path length and the time. Typefor more help. "accelerate path PINIT VINIT VACC quadric QNAME" For a particle initially at point PINIT, with initial velocity vector VINIT and acceleration vector VACC, find the points on its path that intersect the quadric suface QNAME, and for each such point, the coordinates, the path length and the time. "accelerate fit P1 [T1 P2 T2 [P3 T3]]" For a particle at points P1, P2 and P3 at times T1, T2 and T3, find the position and velocity at time zero, and the acceleration vector. Synonyms: [accelerate, accel], [help, h], [line, ln, l], [plane, pl], [quadric, quad, q], [time, t]. c=============================================================================== Command "alias": acceptable input lines include: "alias [help]" Display this message. "alias all" Display all alias pairs. "alias list [ANAME1 ANAME2 ANAME3 ...]" Display the alias pairs for all listed aliases (the default is all aliases). "alias ANAME" Display the alias pair for alias ANAME. "alias ANAME = ' '" Remove alias ANAME. "alias ANAME = 'STRING'" In subsequent input lines, replace all first-word occurrences of alias ANAME by the entire string STRING. Note: use +/- for ANAME to incr/decr the last alias name: Synonyms: [", ' (in pairs)], [alias, al, a], [help, h]. c=============================================================================== Command "lock": acceptable input lines include: "lock help" Display this message. "lock" Get word, continue when retyped. Synonyms: [help, h], [lock, zzz]. c=============================================================================== Command "angles": acceptable input lines include: "angles [help]" Display current problem units and this message. "angles degrees" Change angle units to degrees. "angles radians" Change angle units to radians. "angles UNIT1 UNIT2 ANGLE1 [ANGLE2 ANGLE3 ...]" Convert from UNIT1 to UNIT2: ANGLE1 [and ANGLE2, ANGLE3, ...]. UNIT1 may be "degrees", "grads" or "radians". UNIT2 may be "degrees", "grads", "radians" or "dms". "angles UNIT1 UNIT2 ANGLE1 thru ANGLEN" Convert from UNIT1 to UNIT2: all stored variables with names in the range from ANGLE1 thru ANGLEN. UNIT1 may be "degrees", "grads" or "radians". UNIT2 may be "degrees", "grads", "radians" or "dms". "angles dms UNIT2 DEGREES MINUTES SECONDS" Convert from degrees, minutes, seconds to UNIT2. UNIT2 may be "degrees", "grads", "radians" or "dms". Synonyms: [angles, angle, ang], [degrees, degree, deg], [grads, grad], [help, h], [radians, radian, rad]. c=============================================================================== Command "arc": acceptable input lines include: "arc [help]" Display this message. "arc PNAME QNAME" Find, at point PNAME: the normal vector of the family of quadric surfaces QNAME; the number of curves in the surface, passing through that point, and lying in a plane containing the normal vector, having zero or extreme values of the curvature; and for each such curve, the corresponding curvature, radius of curvature, center of curvature, and unit direction vector. Synonyms: [help, h]. c=============================================================================== Command "area": acceptable input lines include: "area [help]" Display this message. "area VNORM point PNAME1 PNAME2 PNAME3 ..." Find the area projected onto a plane with normal vector VNORM by the polygon with vertex points PNAME1, PNAME2, PNAME3, ... "area VNORM cluster CLNAME" Find the area projected onto a plane with normal vector VNORM by the polygon formed by the points in cluster CLNAME. Synonyms: [cluster, cl], [help, h], [point, pnt, pt, p]. c=============================================================================== Command "axisym": acceptable input lines include: "axisym [help]" Display this message. "axisym all" Display all axisymmetric quadrics. "axisym list [AXNAME1 AXNAME2 AXNAME3 ...]" Display all listed axisymmetric quadrics (default is all axisymmetric quadrics). "axisym AXNAME" Display axisymmetric quadric surface AXNAME. "axisym AXNAME fit PCEN VAXIS PNAME2 PNAME3" Create axisymmetric quadric AXNAME, centered at point PCEN, with axis vector VAXIS, and through points PNAME2 and PNAME3. "axisym AXNAME focus PFOC VAXIS PNAME2 PNAME3" Create axisymmetric quadric AXNAME, with focus at point PFOC, with axis vector VAXIS, and through points PNAME2 and PNAME3. "axisym AXQ02 move NUMAX INC AXQ01 VMOVE" Create a family of NUMAX axisymmetric quadrics AXQ02, ..., with names incremented by INC characters, and spaced at intervals of vector VMOVE, starting from axisymmetric quadric AXQ01. "axisym AXQ02 rotate NUMAX INC AXQ01 OPNAME PINV" Create a family of NUMAX axisymmetric quadrics AXQ02, ..., with names incremented by INC characters, by rotating the preceding axisymmetric quadric with operator OPNAME and invariant point PINV, starting from axisymmetric quadric AXQ01. "axisym AXQ02 scale NUMAX INC AXQ01 OPNAME PINV" Create a family of NUMAX quadrics AXQ02, ..., with names incremented by INC characters, by scaling the preceding quadric with operator OPNAME and invariant point PINV, starting from axisymmetric quadric AXQ01. WARNING: a linear or radial scaling axis not parallel to that of AXQ01 will produce non-axisymmetric quadric surfaces; a linear or radial scaling will changes spheres to ellipsoids. Note: use +/- for AXNAME to incr/decr the last axisymmetric quadric surface name: Synonyms: [focus, foc, focal], [help, h], [move, mv, translate, trans], [rotate, rot], [scale, sc]. c=============================================================================== Command "base": acceptable input lines include: "base [help]" Display this message. "base NBASE VALUE1 VALUE2 VALUE3 ..." Display the values in base NBASE of the decimal values VALUE1, VALUE2, VALUE3, ... Synonyms: [help, h]. c=============================================================================== Command "big": acceptable input lines include: "big [help]" Display this message. "big all" Display all big integers. "big all 0" Zero out all big integers. "big BIGNAME" Display big integer BIGNAME and its one-word integer and floating point values, if any, and log10, if any. "big BIGNAME [N|1] = INT1 INT2 INT3 ..." Replace digits N (default 1), N+1, N+2, ... of big integer BIGNAME with integer groups INT1, INT2, INT3, ... If BIGNAME is not zero, and N exceeds the initial length of BIGNAME, all digits in between will be zeros. BIGNAME must be a capital letter from A to Z. INT1, INT2, INT3, ... may be positive integers or integer variables, but not big integers. "big BIGNAME tag 'BIGTAG'" Give big integer BIGNAME the tag BIGTAG (up to 32 characters). "big BIGNAME = big BIGNAME2" Replace big integer BIGNAME with big integer BIGNAME2. "big BIGNAME = INT1 [+,-,*,/,] INT2" Replace big integer BIGNAME with the [sum, difference, product, quotient] of integers INT1 and INT2. In this and the following commands INT1 and INT2 may be positive integers or integer variable or big integers. of integers INT1 and INT2. "big BIGNAME = INT1 // INT2" Replace big integer BIGNAME with the result of dividing INT1 by the highest possible power of INT2, if the latter is an exact factor of INT1. "big BIGNAME = INT1 mod INT2" Replace big integer BIGNAME with the modulus of integer INT1 with respect to integer INT2. "big BIGNAME = INT1 ^ NPOW" Replace big integer BIGNAME with the NPOW'th power of integer INT1. "big BIGNAME = INT1 root NROOT" Replace big integer BIGNAME with the NROOT'th root of integer INT1. "big BIGNAME = INT1 fact" Replace big integer BIGNAME with the factorial of integer INT1. Note: use +/- for BIGNAME to incr/decr the last big integer name: Synonyms: [all, list], [help, h], [^, **]. c=============================================================================== Command "bin": acceptable input lines include: "bin [help]" Display this message. "bin [all,list]" Display all probability bins. "bin list BINAME1 BINAME2 BINAME3 ..." Display all listed bins. "bin BINAME" Display probability bin BINAME. "bin BINAME event [PRTOT|1]" Create bin BINAME, for a discrete event with total probability PRTOT. "bin BINAME value VRAN [PRTOT|1]" Create bin BINAME, for a discrete value VRAN with total probability PRTOT. "bin BINAME uniform VRANL VRANR [DPR|1]" Create bin BINAME, with uniform differential probability DPR of values VRANL to VRANR > VRANL. "bin BINAME linear VRANL VRANR [DPRL|1] [DPRR|DPRL]" Create bin BINAME, with differential probabilities in a linear distribution from DPRL for value VRANL, to DPRR for value VRANR > VRANL. "bin BINAME power VRANL VRANR POW [PRTOT|1]" Create bin BINAME, with total probability PRTOT, differential probabilities in a power-law distribution with power POW: POW = log (DPRR / DPRL) / log (VRANR / VRANL), PRTOT = (VRANR * DPRR - VRANL * DPRL) / (POW + 1), or if POW = -1: PRTOT = DPRL * VRANL * log (DPRL / DPRR). "bin BINAME exp VRANL VRANR SIGMA [PRTOT|1]" Create bin BINAME, with total probability PRTOT, differential probabilities in an exponential distribution with decay constant SIGMA: SIGMA = log (DPRL / DPRR) / (VRANR - VRANL), PRTOT = (DPRL - DPRR) / SIGMA. "bin BINAME normal VMEAN DEV [PRTOT|1]" Create bin BINAME, with total probability PRTOT, differential probabilities in a normal distribution with mean value VMEAN and standard deviation DEV, for values from minus infinity to plus infinity. "bin BINAME maxwell RATIO [PRTOT|1]" Create bin BINAME, with total probability PRTOT, differential probabilities of beta = v / c in a relativistic Maxwellian distribution, for a ratio RATIO of avg temp to rest mass energy, for 0 < beta < 1. "bin BINAME [planck, wien] BTEMP [PRTOT|1]" Create bin BINAME, with total probability PRTOT, differential probabilities of frequency XNU in a [Planck, Wien] spectrum, for a black-body temperature BTEMP, for values of XNU from 0 to infinity. Note: all probabilities may be relative (unnormalized). Note: use +/- for BINAME to incr/decr the last bin name: Synonyms: [help, h], [maxwell, Maxwell], [normal, norm], [planck, Planck], [power, pow], [wien, Wien] c=============================================================================== Command "bisect": acceptable input lines include: "bisect [help]" Display this message. "bisect PNAME1 PNAME2 PNAME3" Bisect the angle formed by the 3 points PNAME1, PNAME2 and PNAME3, and display the intercept on the line from PNAME3 to PNAME1, and the vector from PNAME1 to the intercept. c============================================================================== Command "brick": acceptable input lines include: "brick [help]" Display this message. "brick all" Display all bricks. "brick list [BRNAME1 BRNAME2 BRNAME3 ...]" Display all listed bricks (default is all bricks). "brick BRNAME" Display brick BRNAME. "brick BRNAME = UMIN UMAX VMIN VMAX WMIN WMAX" Create brick BRNAME, bounded by the coordinate values UMIN, UMAX, VMIN, VMAX, WMIN, WMAX, in the current coordinate system (U, V, W). "brick BR02 increment NUMBR INC BR01 [-] CDIR [FMULT|1]" Create a family of NUMBR bricks BR02, ..., with names incremented by INC characters, each sharing a coordinate surface in the [negative] coordinate direction CDIR (x, y, z, rcyl, theta, rsph, phi), with the preceding brick, starting from brick BR01, and with a thickness in direction CDIR equal to FMULT times the thickness of the preceding brick. Note: use +/- for BRNAME or BR02 to incr/decr the last brick name: Synonyms: [brick, br], [help, h], [increment, incr]. c=============================================================================== Command "circle": acceptable input lines include: "circle [help]" Display this message. "circle point PNAME1 PNAME2 PNAME3" Find the circle through points PNAME1, PNAME2 and PNAME3, Synonyms: [circle, circ], [help, h], [point, pnt, pt, p]. c=============================================================================== Command "cluster": acceptable input lines include: "cluster [help]" Display this message. "cluster all" Display all clusters. "cluster list [CLNAME1 CLNAME2 CLNAME3 ...]" Display all listed clusters (default is all clusters). "cluster CLNAME" Display cluster CLNAME. "cluster CLNAME all" Create new cluster CLNAME, consisting of all points. "cluster CLNAME = PNAME1 ... PNAME2 [thru] PNAME3 ..." Create new cluster CLNAME, consisting of the points PNAME1, ..., PNAME2 [, through] PNAME3, ... "cluster CLNAME & PNAME1 ... PNAME2 [thru] PNAME3 ..." Change cluster CLNAME, to add the points PNAME1, ... PNAME2 [, through] PNAME3, ... "cluster CLNAME - PNAME1 ... PNAME2 [thru] PNAME3 ..." Change cluster CLNAME, to remove the points PNAME1, ..., PNAME2 [, through] PNAME3, ... "cluster CLNAME cluster CLNAME1 ... CLNAME2 [thru] CLNAME3 ..." Create new cluster CLNAME, consisting of all points in existing clusters CLNAME1, ..., CLNAME2 [, through] CLNAME3, ... "cluster CLNAME cluster - CLNAME1 ... CLNAME2 [thru] CLNAME3 ..." Change cluster CLNAME, to remove all points in existing clusters CLNAME1, ..., CLNAME2 [, through] CLNAME3, ... "cluster CLNAME cluster comp. CLNAME1" Create new cluster CLNAME, consisting of all points not in cluster CLNAME1. "cluster CLNAME cl CLNAME1 .not. CLNAME2" Create new cluster CLNAME, consisting of all points in cluster CLNAME1 and not in cluster CLNAME2. Type for more help. "cluster CLNAME cl CLNAME1 .and. CLNAME2" Create new cluster CLNAME, consisting of all points in both cluster CLNAME1 and cluster CLNAME2. "cluster CLNAME cl CLNAME1 .nand. CLNAME2" Create new cluster CLNAME, consisting of all points not in both cluster CLNAME1 and cluster CLNAME2. "cluster CLNAME cl CLNAME1 .or. CLNAME2" Create new cluster CLNAME, consisting of all points in either cluster CLNAME1 or cluster CLNAME2. "cluster CLNAME cl CLNAME1 .nor. CLNAME2" Create new cluster CLNAME, consisting of all points in neither cluster CLNAME1 nor cluster CLNAME2. "cluster CLNAME cl CLNAME1 .xor. CLNAME2" Create new cluster CLNAME, consisting of all points in either cluster CLNAME1 or cluster CLNAME2, but not both. "cluster CLNAME cl CLNAME1 .xnor. CLNAME2" Create new cluster CLNAME, consisting of all points in both or neither cluster CLNAME1 and cluster CLNAME2. "cluster CLNAME brick BRNAME" Create new cluster CLNAME, consisting of all points in brick BRNAME. "cluster CLNAME tetrahedron TETNAME" Create new cluster CLNAME, consisting of all points in tetrahedron TETNAME. "cluster CLNAME zone ZNAME" Create new cluster CLNAME, consisting of all points in zone ZNAME. "cluster CLNAME mesh [all]" Create new cluster CLNAME, consisting of all mesh points. "cluster CLNAME nomesh" Create new cluster CLNAME, consisting of all non-mesh points. "cluster CLNAME mesh block" Create new cluster CLNAME, consisting of all mesh points in the mesh block. "cluster CLNAME mesh vacuum" Create new cluster CLNAME, consisting of all mesh points with x, y, z coordinates of -1.e99 or less. Note: use +/- for CLNAME to incr/decr the last cluster name: Synonyms: [.and., .int.], [.or., .un.], [.xnor., .eqv.], [block, bl], [brick, br], [cluster, cl], [help, h], [tetrahedron, tetra, tet], [zone, zn, z]. c=============================================================================== Command "cone": acceptable input lines include: "cone [help]" Display this message. "cone all" Display all circular cones. "cone list [CNNAME1 CNNAME2 CNNAME3 ...]" Display all listed circular cones (default is all circular cones). "cone CNNAME" Display circular cone CNNAME. "cone CNNAME line PAXIS VAXIS ALNAME" Create circular cone CNNAME with axis point PAXIS and axis vector VAXIS, through the endpoints of line ALNAME. "cone CNNAME fit PVER VAXIS PNAME2" Create circular cone CNNAME with vertex point PVER and axis vector VAXIS, through point PNAME2. "cone CNNAME angle PVER VAXIS ANGLE" Create circular cone CNNAME with vertex point PVER and axis vector VAXIS, with half-angle ANGLE. "cone CNNAME nest NUMCONE INC PVER VAXIS ANG1 ANG2" Create a family of NUMCONE nested circular cones CNNAME, ..., with names incremented by INC characters, with the same vertex point PVER and axis vector VAXIS, and with vertex half-angles equally spaced from ANG1 to ANG2. "cone CONE02 move NUMCONE INC CONE01 VMOVE" Create a family of NUMCONE circular cones CONE02, ..., with names incremented by INC characters, and spaced at intervals of vector VMOVE, starting from circular cone CONE01. "cone CONE02 rotate NUMCONE INC CONE01 OPNAME PINV" Create a family of NUMCONE circular cones CONE02, ..., with names incremented by INC characters, by rotating the preceding circular cone with operator OPNAME and invariant point PINV, starting from circular cone CONE01. "cone CONE02 scale NUMCONE INC CONE01 OPNAME PINV" Create a family of NUMCONE cones CONE02, ..., with names incremented by INC characters, by scaling the preceding cone with operator OPNAME and invariant point PINV, starting from circular cone CONE01. WARNING: a linear or radial scaling axis not parallel to that of CONE01 will produce elliptic cones. Type for more help. Note: use +/- for CNNAME or CONE02 to incr/decr the last circular cone name: Synonyms: [help, h], [line, ln, l] [move, mv, translate, trans], [point, pnt, pt, p], [rotate, rot], [scale, sc]. c=============================================================================== Command "contfr": acceptable input lines include: "contfr [help]" Display this message. "contfr = VALUE" Find the coefficients kc1, kc2, kc3, kc4, ...of the continued fraction VALUE = kc1 + 1/(kc2 + 1/(kc3 + 1/(kc4 + ...))). "contfr C1 C2 C3 ..." Find the value x of the continued fraction x = C1 + 1/(C2 + 1/(C3 + 1/(C4 + ...))), and the equivalent rational fraction xnum / xden = x. Synonyms: [contfr, cf], [help, h]. c=============================================================================== Command "coord": acceptable input lines include: "coord help" Display this message. "coord" Display the current coordinate system. "coord rect" Change the coordinate system to rectangular (x,y,z). "coord cyl" Change the coordinate system to cylindrical (rcyl,theta,z). "coord sph" Change the coordinate system to spherical (rsph,theta,phi). Synonyms: [coordinate, coord, cs, system, sys], [cyl, cylindrical, cy], [help, h], [cartesian, cart, rectangular, rect, xyz], [spherical, sph, sp]. c=============================================================================== Command "copy": acceptable input lines include: "copy [help]" Display this message. "copy alias ANAME ANAME2" Copy alias ANAME to ANAME2. "copy marker SYNNAME SYNNAME2" Copy marker SYNNAME to SYNNAME2. "copy variable VARNAME VARNAME2" Copy variable VARNAME to VARNAME2. "copy big BIGNAME to BIGNAM2" Copy big integer BIGNAME to BIGNAME2. "copy point PNAME PNAME2" Copy point PNAME to PNAME2. "copy cluster CLNAME CLNAME2" Copy cluster CLNAME to CLNAME2. "copy line ALNAME ALNAME2" Copy line ALNAME to ALNAME2. "copy vector VNAME VNAME2" Copy vector VNAME to VNAME2. "copy operator OPNAME OPNAME2" Copy operator OPNAME to OPNAME2. "copy triangle TRNAME TRNAME2" Copy triangle TRNAME to TRNAME2. "copy polygon PGNAME PGNAME2" Copy regular polygon PGNAME to PGNAME2. "copy disk DKNAME DKNAME2" Copy annular disk DKNAME to DKNAME2. "copy plane PLNAME PLNAME2" Copy plane PLNAME to PLNAME2. "copy sphere SPHNAME SPHNAME2" Copy sphere SPHNAME to SPHNAME2. "copy cylinder CYLNAME CYLNAME2" Copy cylinder CYLNAME to CYLNAME2. "copy cone CNNAME CNNAME2" Copy cone CNNAME to CNNAME2. "copy ellipsoid ELNAME ELNAME2" Copy ellipsoid ELNAME to ELNAME2. "copy hyperb HPNAME HPNAME2" Copy hyperbolic paraboloid HPNAME to HPNAME2. "copy axisym AXNAME AXNAME2" Copy axisymmetric quadric AXNAME to AXNAME2. "copy quadric QNAME QNAME2" Copy quadric QNAME to QNAME2. "copy polyhedron PHNAME PHNAME2" Copy regular polyhedron PHNAME to PHNAME2. "copy tetrahedron TETNAME TETNAME2" Copy tetrahedron TETNAME to TETNAME2. "copy brick BRNAME BRNAME2" Copy brick BRNAME to BRNAME2. "copy zone ZNAME ZNAME2" Copy zone ZNAME to ZNAME2. "copy bin BINAME BINAME2" Copy probability bin BINAME to BINAME2. "copy pdf PDFNAME PDFNAME2" Copy pdf PDFNAME to PDFNAME2. "copy symbol SYMBNAME SYMBNAME2" Copy symbol SYMBNAME to SYMBNAME2. "copy OBJTYPE OBJNAME OBJNAME2" Copy OBJTYPE OBJNAME to OBJNAME2, where OBJTYPE is any of the object types used above. Note: use +/- for OBJNAME2 to incr/decr the last OBJTYPE name. Synonyms: [alias, al, a], [brick, br], [copy, cp, duplicate, dup], [cluster, cl], [cylinder, cyl], [disk, disc, dk], [ellipsoid, ellipse, ell, el], [help, h], [hyperb, saddle], [line, ln, l], [marker, mark, m], [operator, oper, op, o], [plane, pl], [point, pnt, pt, p], [polygon, polyg, pg], [polyhedron, polyh, ph], [quadric, quad, q], [sphere, sph], [symbol, symb, sym], [tetrahedron, tetra, tet], [triangle, tri], [variable, var, set, s], [vector, vect, v], [zone, zn, z]. c=============================================================================== Command "cross": acceptable input lines include: "cross [help]" Display this message. "cross VNAME1 VNAME2" Find the cross product of vectors VNAME1 and VNAME2. Synonyms: [cross, outer], [help, h]. c=============================================================================== Command "crt": acceptable input lines include: "crt [help]" Display this message. "crt IDIV1 IREM1 IDIV2 IREM2 IDIV3 IREM3 ... IDIVN IRMIN" Find the least integer for which divisions by IDIVn have the remainders IDIVn, n = 1, N. "crt = IVALUE" For the integer IVALUE, find the remainders of divisions by the first few prime numbers. Synonyms: [help, h]. c=============================================================================== Command "cute": acceptable input lines include: "cute [help]" Display this message. "cute A B C" For the triangle with edges A, B and C, extend sides A and B to make the perimeter 2*(A + B), and double the area. Synonyms: [help, h]. c=============================================================================== Command "cuts": acceptable input lines include: "cuts [help]" Display this message. "cuts A B C" Find the number and location of any straight line cuts of the triangle with edges A, B and C, that partitions the triangle into sections with equal perimeters and areas. Synonyms: [help, h]. c=============================================================================== Command "cylinder": acceptable input lines include: "cylinder [help]" Display this message. "cylinder all" Display all circular cylinders. "cylinder list [CYLNAME1 CYLNAME2 CYLNAME3 ...]" Display all listed circular cylinders (default is all cylinders). "cylinder CYLNAME" Display circular cylinder CYLNAME. "cylinder CYLNAME = PAXIS VAXIS RADIUS" Create circular cylinder CYLNAME, with an axis through point PAXIS in the direction of vector VAXIS, and radius RADIUS. "cylinder CYLNAME fit VAXIS PNAME1 PNAME2 PNAME3" Create circular cylinder CYLNAME with an axis parallel to vector VAXIS, through the three points PNAME1, PNAME2 and PNAME3. "cylinder CYLNAME concentric NUMCYL INC PAXIS VAXIS RAD1 RAD2" Create a family of NUMCYL circular cylinders CYLNAME, ..., with names incremented by INC characters, with an axis through point PAXIS in the direction of vector VAXIS, and with radii equally spaced from radius RAD1 to radius RAD2. "cylinder CYL02 NUMCYL INC move CYL01 VMOVE" Create a family of NUMCYL circular cylinders CYL02, ..., with names incremented by INC characters, and spaced at intervals of vector VMOVE, starting from circular cylinder CYL01. "cylinder CYL02 rotate NUMCYL INC CYL01 OPNAME PINV" Create a family of NUMCYL circular cylinders CYL02, ..., with names incremented by INC characters, by rotating the preceding cylinder with operator OPNAME and invariant point PINV, starting from circular cylinder CYL01. "cylinder CYL02 scale NUMCYL INC CYL01 OPNAME PINV" Create a family of NUMCYL cylinders CYL02, ..., with names incremented by INC characters, by scaling the preceding cylinder with operator OPNAME and invariant point PINV, starting from circular cylinder CYL01. WARNING: a linear or radial scaling axis not parallel to that of CYL01 will produce elliptic cylinders. Note: use +/- for CYLNAME or CYL02 to incr/decr the last circular cylinder name: Synonyms: [help, h], [concentric, conc], [cylinder, cyl], [move, mv, translate, tran], [rotate, rot], [scale, sc]. c=============================================================================== Command "debug": acceptable input lines include: "debug [help]" Display this message. "debug VARINT1 [VARINT2 ...]" Display the values of GEOM internal variables VARINT1 [, VARINT2 ...]. Their definitions are in file store.h. "debug OBJTYPE1 [OBJTYPE2 ...]" Display the values of GEOM internal variables for data groups DATAGRP1 [, DATAGRP2, ...], which may be any of: alias, arithmetic, big, bin, brick, cluster, coordinate, disk, environment, i/o, line, marker, mesh, operator, parameter, parse, pdf, plot, point, polygon, polyhedron, proximal, quadric, sudoku, symbol, synonym, temp, tetrahedron, triangle, variable, vector, zone, or any combination of these. "debug all" Display the values of all GEOM internal variables, by data groups. Synonyms: [alias, al, a], [angles, angle, ang], [arithmetic, arith], [binary, bin], [brick, br], [cluster, cl], [coordinate, coord, cs, system, sys], [disk, disc, dk], [environment, env, setup], [help, h], [line, ln, l], [marker, mark, m], [operator, oper, op], [parameter, param], [point, pnt, pt, p], [polygon, polyg, pg], [polyhedron, polyh, ph], [proximal, prox], [quadric, quad, q], [symbol, symb, sym], [sudoku, su], [synonym, syn], [tetrahedron, tetra, tet], [triangle, tri], [variable, var, set, s], [vector, vect, v], [zone, zn, z]. c=============================================================================== Command "define": acceptable input lines include: "define [help]" Display this message. "define 'ENTRY'" Display entry ENTRY in file geom_base. ENTRY may have up to 19 characters. Case is ignored. Use to define a command, key word, variable, etc. Synonyms: [", ' (in pairs)], [define, def], [help, h]. c=============================================================================== Command "angles": acceptable input lines include: "angles [help]" Display current problem units and this message. "angles degrees" Change angle units to degrees. "angles radians" Change angle units to radians. "angles UNIT1 UNIT2 ANGLE1 [ANGLE2 ANGLE3 ...]" Convert from UNIT1 to UNIT2: ANGLE1 [and ANGLE2, ANGLE3, ...]. UNIT1 may be "degrees", "grads" or "radians". UNIT2 may be "degrees", "grads", "radians" or "dms". "angles UNIT1 UNIT2 ANGLE1 thru ANGLEN" Convert from UNIT1 to UNIT2: all stored variables with names in the range from ANGLE1 thru ANGLEN. UNIT1 may be "degrees", "grads" or "radians". UNIT2 may be "degrees", "grads", "radians" or "dms". "angles dms UNIT2 DEGREES MINUTES SECONDS" Convert from degrees, minutes, seconds to UNIT2. UNIT2 may be "degrees", "grads", "radians" or "dms". Synonyms: [angles, angle, ang], [degrees, degree, deg], [grads, grad], [help, h], [radians, radian, rad]. c=============================================================================== Command "delete": acceptable input lines include: "delete [help]" Display this message. "delete OBJTYPE all" Delete all objects of type OBJTYPE, where OBJTYPE is alias, big, marker, variable, vector, operator, point, cluster, line, triangle, polygon, disk, plane, sphere, cylinder, cone, hyperb, ellipsoid, axisym, quadric, tetrahedron, brick, zone, bin, pdf, symbol. "delete OBJTYPE OBJNAME" Delete the object of type OBJTYPE with name OBJNAME. "delete OBJTYPE OBJNAME1 thru OBJNAME2" Delete any objects of type OBJTYPE with names from OBJNAME1 to OBJNAME2, where the order is ASCII, except for subscripts, which are in numerical order. "delete OBJTYPE OBJNAME all" Delete all objects of type OBJTYPE with the names OBJNAME(NSUB), where NSUB is any subscript, or null. "delete point cluster CLNAME" Delete all points in cluster CLNAME. "delete bin pdf PDFNAME" Delete all probability bins in pdf PDFNAME. Synonyms: [alias, al, a], [brick, br], [cluster, cl], [cylinder, cyl], [delete, del, remove, rm], [disk, disc, dk], [ellipsoid, ellipse, ell, el], [help, h], [hyperb, saddle], [line, ln, l], [marker, mark, m], [operator, oper, op, o], [plane, pl], [point, pnt, pt, p], [polygon, polyg, pg], [polyhedron, polyh, ph], [quadric, quad, q], [sphere, sph], [symbol, symb, sym], [tetrahedron, tetra, tet], [triangle, tri], [variable, var, set, s], [vector, vect, v], [zone, zn, z]. c=============================================================================== Command "delimiter": acceptable input lines include: "delimiter help" Display this message. "delimiter" Restore the field delimiter to a blank character. "delimiter C" Change the field delimiter to the character "C". which may be any of the following characters: (blank) , : < > [ \ ] ^ _ ` { | } Synonyms: [delimiter, delimit, delim], [help, h]. c=============================================================================== Command "disk": acceptable input lines include: "disk [help]" Display this message. "disk all" Display all annular disks. "disk list [DKNAME1 DKNAME2 DKNAME3 ...]" Display all listed annular disks (default is all disks). "disk DKNAME" Display annular disk DKNAME. "disk DKNAME fit PCEN VNORM RADKIN RADKOUT" Create annular disk DKNAME, centered at point PCEN, with normal vector VNORM, inner radius RADKIN, outer radius RADKOUT. Note: use +/- for DKNAME to incr/decr the last disk name: Synonyms: [disk, disc, dk], [help, h]. c=============================================================================== Command "distance": acceptable input lines include: "distance [help]" Display this message. "distance point PNAME1 point PNAME2" Find the distance from point PNAME1 to point PNAME2. "distance point PNAME cluster CLNAME" Find the distances from point PNAME1 to the points in cluster CLNAME. "distance cluster CLNAME1 cluster CLNAME2" Find the distances from the points in cluster CLNAME1 to the points in cluster CLNAME2. "distance point PNAME line ALNAME" Find the distance from point PNAME to line ALNAME. "distance cluster CLNAME line ALNAME" Find the distance from the points in cluster CLNAME to line ALNAME. "distance point PNAME triangle TRNAME" Find the distance from point PNAME to triangle TRNAME. "distance cluster CLNAME triangle TRNAME" Find the distance from the points in cluster CLNAME to triangle TRNAME. "distance point PNAME QTYPE QNAME" Find the distance from point PNAME to quadric type QTYPE with name QNAME, where QTYPE is plane, sphere, cylinder, cone, hyperb, ellipsoid, axisym, quadric. "distance cluster CLNAME QTYPE QNAME" Find the distance from the points in cluster CLNAME to quadric type QTYPE with name QNAME, where QTYPE is plane, sphere, cylinder cone, ellipsoid, axisym, quadric. "distance point PNAME brick BRNAME" Find the distances from point PNAME to the six surfaces bounding brick BRNAME. "distance point PNAME tetrahedron TETNAME" Find the distances from point PNAME to the four planes bounding tetrahedron TETNAME. "distance point PNAME zone ZNAME" Find the distances from point PNAME to the quadric surfaces bounding zone ZNAME. Type for more help. "distance line ALNAME1 line ALNAME2" Find the distance from line ALNAME1 to line ALNAME2. "distance line ALNAME triangle TRNAME" Find the intersection of line ALNAME with triangle TRNAME. "distance line ALNAME plane PLNAME" Find the intersection of line ALNAME with plane PLNAME. "distance triangle TRNAME1 triangle TRNAME2" Find the intersection of triangle TRNAME1 with triangle TRNAME2. "distance triangle TRNAME plane PLNAME" Find the intersection of triangle TRNAME with plane PLNAME. "distance plane PLNAME1 plane PLNAME2" Find distance/intersection of plane PLNAME1 and plane PLNAME2. "distance plane PLNAME QTYPE QNAME" Find distance/intersection of plane PLNAME and quadric type QTYPE with name QNAME, where QTYPE is plane, sphere, cylinder, cone, ellipsoid, axisym or quadric. "distance sphere SPHNAME1 sphere SPHNAME2" Find distance/intersection of spheres SPHNAME1 and SPHNAME2. "distance sphere SPHNAME cylinder CYLNAME" Find distance/intersection of sphere SPHNAME and circular cylinder CYLNAME. "distance cylinder CYLNAME1 cylinder CYLNAME2" Find distance/intersection of circular cylinders CYLNAME1 and CYLNAME2. "distance quadric QNAME1 quadric QNAME2" Find distance/intersection of quadric surfaces QNAME1 and QNAME2. Synonyms: [brick, br], [cluster, cl], [cylinder, cyl], [distance, dist, intersect, inter, int], [ellipsoid, ellipse, ell, el], [help, h], [hyperb, saddle], [line, ln, l], [plane, pl], [point, pnt, pt, p], [quadric, quad, q] [sphere, sph]. c=============================================================================== Command "do": acceptable input lines include: "do [help]" Display this message. "enddo help" Display this message. "do VARNAME [=] N1 N2 [INC|1]" Execute any commands following this command, through the corresponding command "enddo", for each value N of variable VARNAME in the range from N1 to N2, with increment INC (default 1). "enddo" Repeat the current "do-enddo" block for N = N + INC, unless N + INC is not in the range from N1 to N2. Note: "do-enddo" blocks of commands may be nested. Synonyms: [help, h]. c=============================================================================== Command "dot": acceptable input lines include: "dot [help]" Display this message. "dot VNAME1 VNAME2" Find the dot product of vectors VNAME1 and VNAME2, and the angle between them. "variable VARNAME angle VNAME1 VNAME2" Create variable VARNAME, the angle between vectors VNAME1 and VNAME2, in the current angle units. Synonyms: [dot, inner], [help, h]. c=============================================================================== Command "ellipsoid": acceptable input lines include: "ellipsoid [help]" Display this message. "ellipsoid all" Display all ellipsoids. "ellipsoid list [ELNAME1 ELNAME2 ELNAME3 ...]" Display all listed ellipsoids (default is all ellipsoids). "ellipsoid ELNAME" Display ellipsoid ELNAME. "ellipsoid ELNAME = PCEN SAX SAY SAZ" Create ellipsoid ELNAME, centered at point PCEN, with x, y and z semi-axes SAX, SAY and SAZ. "ellipsoid ELNAME fit PCEN VAXIS PNAME2 PNAME3" Create axisymmetric ellipsoid ELNAME, centered at point PCEN, with axis vector VAXIS, and through points PNAME1 and PNAME2. "ellipsoid ELL02 NUMELL INC move ELL01 VMOVE" Create a family of NUMELL ellipsoids ELL02, ..., with names incremented by INC characters, spaced at intervals of vector VMOVE, starting from ellipsoid ELL01. "ellipsoid ELL02 rotate NUMELL INC ELL01 OPNAME PINV" Create a family of NUMELL ellipsoids ELL02, ..., with names incremented by INC characters, by rotating the preceding ellipsoid with operator OPNAME and invariant point PINV, starting from ellipsoid ELL01. "ellipsoid ELL02 scale NUMELL INC ELL01 OPNAME PINV" Create a family of NUMELL ellipsoids ELL02, ..., with names incremented by INC characters, by scaling the preceding ellipsoid with operator OPNAME and invariant point PINV, starting from ellipsoid ELL01. Note: use +/- for ELNAME or ELL02 to incr/decr the last ellipsoid name: Synonyms: [ellipsoid, ellipse, ell, el], [help, h], [move, mv, translate, trans], [rotate, rot], [scale, sc]. c=============================================================================== Command "extrema": acceptable input lines include: "extrema [help]" Display this message. "extrema QNAME VNAME" Find the extrema of quadric surface QNAME in the direction of vector VNAME, and the nature of the surface at any such extrema. "extrema all VNAME" Find the extrema of all quadric surfaces in the direction of vector VNAME, and the nature of the surface at any such extrema. Note: the types of extrema include minima, maxima, simple planes, the intersections of planes, saddle points, and degenerate points. Synonyms: [extrema, extr], [help, h]. c=============================================================================== Command "factor": acceptable input lines include: "factor [help]" Display this message. "factor M1 M2 [thru] M3 ..." For each integer M = M1, M2 [, through] M3, ..., find all of the prime factors, and find how many smaller integers are relatively prime to M, and how many have common factors with M. Synonyms: [factor, totient], [help, h]. c=============================================================================== Command "hex": acceptable input lines include: "hex [help]" Display this message. "hex in STRING1 STRING2 STRING3 ..." Display any decimal floating point values for the hexadecimal integer or hexadecimal floating point values STRING1, STRING2, STRING3, ..., and their hexadecimal machine word formats. "hex out STRING1 STRING2 STRING3 ..." Display any decimal integer, decimal floating point and hexadecimal floating point values for the character strings, decimal values or variables STRING1, STRING2, STRING3, ..., and their hexadecimal machine word formats. Synonyms: [help, h]. c=============================================================================== Command "hyperb": acceptable input lines include: "hyperb [help]" Display this message. "hyperb all" Display all hyperbolic paraboloids. "hyperb list [HPNAME1 HPNAME2 HPNAME3 ...]" Display all listed hyperbolic paraboloids (default is all hyperbolic paraboloids). "hyperb HPNAME" Display hyperbolic paraboloid HPNAME. "hyperb HPNAME fit PNAME1 PNAME2 PNAME3 PNAME4" Create quadric surface HPNAME, a plane or hyperbolic paraboloid, that contains on its surface the quadrangle with vertex points PNAME1, PNAME2, PNAME3 and PNAME4, including its edges and center point. Note: use +/- for HPNAME to incr/decr the last hyperbolic paraboloid name: c=============================================================================== Command "icalc": acceptable input lines include: "icalc [help]" Display this message. "icalc [dec,hex,oct]" Change the mode of integer input to icalc to [decimal, hexadecimal, octal]. "icalc binary" Turn on the display of the integer results of command "icalc" in binary mode. "icalc nobin" Turn off the display of the integer results of command "icalc" in binary mode (default option). "icalc M" Interpret integer M in the current mode. "icalc M FUNCTION N" Interpret integers M and N in the current mode, and do the operation on them specified by FUNCTION: (+, M + N), (-, M - N) (*, M * N), (/, M / N) (**, M**N), (mod, mod(M, N)) (max, max0(M, N)), (min, min0(M, N)) (abs, M * iabs(N)), (sign, isign(M, N)) (fact, M * N!), (ran, ran(M, N)), (comp., M * comp. N), (.not. M .not. N), (.and., M .and. N), (.nand. M .nand. M), (.or., M .or. N), (.nor. M .nor. N), (.xor., M .xor. N), (.xnor. M .xnor. N), (gcd, GCD (M, N), (lcm, LCM (M, N). (perm, P(M,N) (permut) (comb, C(M,N) (combin) Synonyms: [^, **], [binary, bin], [help, h]. Maximum positive integer values: PHYSNET: 2147483647 dec 7fffffff hex 17777777777 oct Cray: 70368744177663 dec 3fffffffffff hex 1777777777777777 oct DEC: 1152921504606846975 dec FFFFFFFFFFFFFFF hex 77777777777777777777 oct The integer input mode is dec. The binary display for command "icalc" is off. c=============================================================================== Command "if": acceptable input lines include: "if [help]" Display this message. "endif help" Display this message. "if A [<,<=,=,/=,>=,>] B [then]" Execute any commands following this command, through the corresponding command "endif", if floating point values or variables A and B satisfy the condition A [less than, less than or equal to, equal to, not equal to, greater than or equal to, greater than] B. "if A null [then]" Execute the commands following this command, through the corresponding "endif" command, if value A has not been specified. "endif" End the current "if-endif" block (optional if the "if" condition was satisfied). Note: "if-endif" blocks of commands may be nested. Synonyms: [/=, =/, .ne.], [<, .lt.], [<=, =<, .le.], [=, .eq.], [=>, >=, .ge.], [>, .gt.], [help, h]/ c=============================================================================== Command "increment": acceptable input lines include: "increment [help]" Display this message. "increment STRING" Increment STRING by 1 character. "increment STRING INC [NUMSTR|2]" Create a family of NUMSTR blank-delimited character strings, by incrementing the preceding string by INC characters, starting with string STRING. Note: STRING may not have more than 24 characters. Synonyms: [increment, incr], [help, h]. c=============================================================================== Command "indo": acceptable input lines include: "indo help" Display this message. "indo [$]" Redo the last saved input line, with no increments. (display with command "input command $ ?") "indo $ [I1 I2 I3 ...]" Redo the last saved input line, with arguments 1, 2, 3, ..., incremented by I1, I2 I3, ... (display with command "input command $ ?") "indo LINE [I1 I2 I3 ...]" Redo line LINE in the list of saved input lines, with arguments 1, 2, 3, ..., incremented by I1, I2, I3, ... (display with command "input command LINE ?") "indo STRING [I1 I2 I3 ...]" Redo the last saved input line beginning with STRING, with arguments 1, 2, 3, ..., incremented by I1, I2, I3, ... (display with command "input command ?") Note: "0" or "." means no increment (all trailing "0" or "." may be omitted). A negative LINE means the number of lines before the last saved input line. Only ASCII and integer arguments may be incremented. Synonyms: [help, h], [0, .] c=============================================================================== Input file (line 2): Command "input": acceptable input lines include: "goto help" Display this message. "input help" Display this message. "trace help" Display this message. "return help" Display this message. "input" Display the current input medium. "trace" Display the current return path. "return" Read the preceding input medium, after the last line already read in. "input #" Read the preceding input medium, after the last line already read in. "input tty" Read your terminal. "input [IN_FILE, command] [?]" Read the file IN_FILE or the saved input lines, from beginning to end [and display only]. "goto [LINE1,STRING1]" Read the current input file from line LINE1 (an integer), or from the first line beginning with the space-delimited string STRING1, to the end. "input [IN_FILE,command] [LINE1,STRING1] [LINE2,STRING2|LINE1,STRING1] [?]" Read file IN_FILE, or the saved input lines, from line LINE1 (an integer), or from the first line beginning with the space-delimited string STRING1, to line LINE2 (an integer), or to the first line beginning with the space-delimited string STRING2 [and display only]. Use IN_FILE = conv.mac for metric conversion factors. Note: use of "%" instead of IN_FILE means the current input file. Note: use of "$" instead of LINE1 or LINE2 means the last saved input line, or the end-of-file of an input file. Note: use of a negative integer for LINE1 or LINE2, with option "command" means the line preceding the last saved input line by that many lines. Synonyms: [command, cmd, c], [help, h], [input, in, i, read, rd, r, call], [return, rtn]. c=============================================================================== Command "intcirc": acceptable input lines include: "intcirc [help]" Display this message. "intcirc U1 V1 RADIUS1 U2 V2 RADIUS2" Find any intersections of the circle at point (U1, V1) with radius RADIUS1 and the circle at point (U2, V2) with radius RADIUS2, where U1, V1, U2 and V2 are rectangular coordinates. Synonyms: [help, h]. c=============================================================================== Command "invert ": acceptable input lines include: "invert [help]" Display this message. "invert point PNAME [-] OPNAME [PINV]" to invert point PNAME with operator OPNAME, and invariant point PINV (defaults to origin). "invert cluster CLNAME [-] OPNAME [PINV]" to invert cluster CLNAME with operator OPNAME, and invariant point PINV (defaults to origin). "invert point all [-] OPNAME [PINV]" to invert all points with operator OPNAME, and invariant point PINV (defaults to origin). "invert vector VNAME [-] OPNAME [PINV]" to invert vector VNAME with operator OPNAME, and invariant point PINV (defaults to origin). "invert vector all [-] OPNAME [PINV]" to "invert QTYPE QNAME [-] OPNAME [PINV]" to invert quadric type QTYPE with name QNAME, with operator OPNAME, and invariant point PINV. "invert QTYPE all [-] OPNAME [PINV]" to invert all quadrics of type QTYPE, with operator OPNAME, and invariant point PINV. Note: OPNAME may not be "-". Options: QTYPE must be plane, sphere, cylinder, cone, hyperb, ellipsoid, axisym or quadric. [blank] indicates the operator, and [-] its inverse (use only for operators rotate and scale). Invariant point PINV defaults to the origin. Synonyms: [cluster, cl], [cylinder, cyl], [ellipsoid, ellipse, ell, el], [help, h], [hyperb, saddle], [invert, inv], [plane, pl], [normal, norm], [point, pnt, pt, p], [quadric, quad, q], [reflect, refl], [rotate, rot], [scale, sc], [sphere, sph], [vector, vect, v]. c=============================================================================== Command "iris": acceptable input lines include: "iris [help]" Display this message. "iris = VALUE" Find the coefficients kc(1), kc(2), kc(3), kc(4), ... of the series equivalent of VALUE: VALUE = kc(1) + sum (n = 2, 3, 4, ...) 1 / kc(n). Synonyms: [help, h]. c=============================================================================== Command "kiss": acceptable input lines include: "kiss [help]" Display this message. "kiss RAD1 RAD2 RAD3" Find the radii of two circles tangent to the three tangent circles with radii RAD1, RAD2 and RAD3. "kiss RAD1 RAD2 RAD3 RAD4" Find the radii of two spheres tangent to the four tangent spheres with radii RAD1, RAD2, RAD3 and RAD4. Synonyms: [help, h]. c=============================================================================== Command "last": acceptable input lines include: "last [help]" Display this message. "last all" Display the last named object of every type. "last OBJTYPE" Display the last named object of type OBJTYPE, where OBJTYPE is alias, marker, variable, big, vector, operator, point, cluster, line, triangle, polygon, plane, sphere, cylinder, cone, hyperb, axisym, quadric, polyhedron, tetrahedron, brick, zone, bin, pdf, symbol. "last OBJTYPE [=] OBJNAME" Change the last named object of type OBJTYPE to OBJNAME. "last OBJTYPE [=] random" Change the last named object of type OBJTYPE to a string of random lower case alphabetic characters, except upper case A-Z for big integers. Synonyms: [alias, al, a], [brick, br], [cluster, cl], [cylinder, cyl], [disk, disc, dk], [ellipsoid, ellipse, ell, el], [help, h], [hyperb, saddle], [line, ln, l], [marker, mark, m], [operator, oper, op, o], [plane, pl], [point, pnt, pt, p], [polygon, polyg, pg], [polyhedron, polyh], [quadric, quad, q], [random, ?], [sphere, sph], [symbol, symb, sym], [tetrahedron, tetra, tet], [triangle, tri], [variable, var, set, s], [vector, vect, v], [zone, zn, z]. c=============================================================================== Command "line": acceptable input lines include: "line [help]" Display this message. "line all" Display all lines. "line list [ALNAME1 ALNAME2 ALNAME3 ...]" Display all listed lines (default is all lines). "line ALNAME" Display line ALNAME. "line ALNAME = PNAME1 PNAME2" Create line ALNAME from point PNAME1 to point PNAME2. "line LINE02 incr NUMLINE INC LINE01 [IP1 [IP2]]" Create a family of NUMLINE lines LINE02, ..., with names incremented by INC characters, by incrementing the names of the end points of the preceding line by the number of characters indicated by the integers IP1, IP2, starting from line LINE01. Note: use +/- for ALNAME to incr/decr the last line name: Synonyms: [increment, incr], [help, h], [line, ln, l]. c=============================================================================== Command "list": acceptable input lines include: "list [help]" Display this message. "list all" Display all object names. "list alias" Display all alias names. "list axisym" Display all axisymmetric quadric names. "list big" Display all big integer names. "list bin" Display all probability bin names. "list brick" Display all brick names. "list cluster" Display all cluster names. "list cone" Display all circular cone names. "list cylinder" Display all circular cylinder names. "list disk" Display all annular disk names. "list ellipsoid" Display all ellipsoid names. "list hyperb Display all hyperbolic paraboloid names. "list line" Display all line names. "list marker" Display all marker names. "list mesh" Display all mesh point names. "list operator" Display all operator names. "list pdf" Display all pdf names. "list plane" Display all plane names. "list point" Display all point names. "list polygon" Display all regular polygon names. "list polyhedron" Display all regular polyhedron names. "list quadric" Display all quadric surface names. "list sphere" Display all sphere names. "list symbol" Display all symbol names. "list tetrahedron" Display all tetrahedron names. "list triangle" Display all triangle names. "list variable" Display all variable names. "list vector" Display all vector names. "list zone" Display all zone names. "list OBJTYPE1 OBJTYPE2 OBJTYPE3 ..." Display the names of all objects of types OBJTYPE1, OBJTYPE2, OBJTYPE3, ... which may be any of the object types listed above. Synonyms: [alias, al, a], [brick, br], [cluster, cl], [cylinder, cyl], [disk, disc, dk], [ellipsoid, ellipse, ell, el], [help, h], [hyperb, saddle], [line, ln, l], [list, print, display], [marker, mark, m], [operator, oper, op, o], [plane, pl], [point, pnt, pt, p], [polygon, polyg, pg], [polyhedron, polyh], [quadric, quad, q], [sphere, sph], [symbol, symb, sym], [tetrahedron, tetra, tet], [triangle, tri], [variable, var, set, s], [vector, vect, v], [zone, zn, z]. c=============================================================================== Command "marker": acceptable input lines include: "marker [help]" Display this message. "marker all" Display all markers and their texts. "marker list [AMNAME1 AMNAME2 AMNAME3 ...]" Display the marker and text for all listed markers (the default is all markers). "marker AMNAME" Display the marker and text for marker AMNAME. "marker AMNAME = ' '" Delete marker AMNAME. "marker AMNAME = 'TEXT'" Create marker AMNAME (one character) with text TEXT (bracketed by ' or "). Note: use +/- for AMNAME to incr/decr the last marker name: Synonyms: [",' (in pairs)], [marker, mark, m], [help, h]. c=============================================================================== Command "mcvol": acceptable input lines include: "mcvol [help]" Display this message. "mcvol ZNAME BRNAME NSAMP" Estimate the volume of the part of zone ZNAME that is inside brick BRNAME, by using NSAMP random points in BRNAME. Synonyms: [brick, br], [help, h]. c=============================================================================== Command "mesh": acceptable input lines include: "mesh [help]" Display this message. "mesh size" Display the mesh size (initially zero). "mesh size [=] KMAX LMAX MMAX" Change the mesh size to k = 1 to KMAX, l = 1 to LMAX and m = 1, MMAX, and release any mesh points with mesh indices k > KMAX, l > LMAX or m > MMAX. "mesh block" Display the mesh block indices (initially zero). "mesh block all" Change the mesh block to the entire mesh. "mesh block K1 K2 L1 L2 M1 M2" Change the mesh block indices to the ranges k = K1 to K2, l = L1 to L2 and m = M1 to M2. Any missing final arguments after K1 default to 1. "mesh [all,list [all]]" Display the mesh size, block indices, and all mesh points. "mesh list void" Display the mesh size, block indices, and all unassigned mesh indices. "mesh list block [void]" Display all mesh points [or unassigned mesh indices] in the mesh block. "mesh list K L M" Display any mesh point with mesh indices K, L and M. "mesh point PMESH" Create mesh points PMESH(k,l,m), with their initial coordinates, if any, or with coordinates x = -1.e99, y = -1,e99,z = -1.e99, for all mesh indices k = 1, KMAX, l = 1, LMAX, m = 1, MMAX not currently assigned. "mesh point PNAME K L M" Assign mesh indices K, L and M to existing point PNAME, after releasing any other mesh point with those indices. If PNAME has three subscripts, they must be K, L, M. Any missing final arguments after PNAME default to 1. "mesh point PMESH(K,L,M)" Assign mesh indices K, L and M to existing point PMESH(K,L,M), after releasing any other mesh point with those indices. Type for more help. "mesh point PMESH block" Create mesh points PMESH(k,l,m), with their initial coordinates, if any, or with coordinates x = -1.e99, y = -1,e99,z = -1.e99, for all mesh indices in the mesh block not currently assigned. "mesh - all" Release all mesh points. "mesh - block" Release all mesh points in the mesh block. "mesh - K L M" Release any mesh point with mesh indices K, L and M. "mesh - point PNAME" Release mesh point PNAME (make its mesh indices zero). "mesh - cluster CLNAME" Release all mesh points in cluster CLNAME. "mesh exchange block [k,l,m] [l,m,k]" Exchange the [k, l, m]-layers in the mesh block with the [l, m, k]-layers in the mesh block, and exchange the relative indices of all mesh points in the mesh block. "mesh invert block [k,l,m]" Invert the [k, l, m]-layer indices of all mesh points in the mesh block. "mesh move block KMOVE LMOVE MMOVE" Move the mesh block and any of its mesh points distances KMOVE, LMOVE and MMOVE in the k, l and m directions, after releasing any mesh points not in the mesh block, but in the new mesh block location. "mesh insert [k,l,m] N1 [N2|N1]" Insert new [k, l, m]-layers with indices from N1 to N2 into the mesh. Shift mesh point [k, l, m] indices of N1 or more up to make room for new mesh layers with [k, l, m] indices from N1 to N2. "mesh delete [k,l,m] N1 [N2|N1]" Delete [k, l, m]-layers with indices from N1 to N2 from the mesh. Release all points with [k, l, m] indices from N1 to N2, and shift all higher mesh point [k, l, m] indices down to fill the gap. Type for more help. "mesh linear block" Linearly interpolate the x, y and z coordinates of all mesh points in the mesh block, between the x, y and z coordinates of the mesh points at the vertices of the mesh block. "mesh relax [-] block" Find the x, y and z coordinates of all mesh points [not] in the mesh block, except for exterior points of [the mesh and] the mesh block, by a relaxation method, which moves each mesh point to the average coordinates of its nearest neighbors. Exterior points have exactly one neighbor in one or more of the k, l and m directions. "mesh test block" See if any mesh indices in the mesh block have not been assigned to mesh points, and if any line, surface or volume elements of the mesh block violate certain geometric criteria. Synonyms: [block, bl], [cluster, cl], [delete, del, remove, rm], [insert, ins], [invert, inv], [move, mv, m, translate, trans], [point, pnt, pt, p]. c=============================================================================== Command "move": acceptable input lines include: "move [help]" to get this message. "move point PNAME VMOVE [VMULT|1]" Move point PNAME by vector VMOVE multiplied by VMULT. "move cluster CLNAME VMOVE [VMULT|1]" Move cluster CLNAME by vector VMOVE multiplied by VMULT. "move point all VMOVE [VMULT|1]" Move all points by vector VMOVE multiplied by VMULT. "move vector VNAME VMOVE [VMULT|1]" Move vector VNAME by vector VMOVE multiplied by VMULT. "move vector all VMOVE [VMULT|1]" Move all vectors by vector VMOVE multiplied by VMULT. "move QTYPE QNAME VMOVE [VMULT|1]" Move the quadric of type QTYPE with name QNAME, by vector VMOVE multiplied by VMULT. "move QTYPE all VMOVE [VMULT|1]" Move all quadrics of type QTYPE, by vector VMOVE multiplied by VMULT. Note: if VMULT is not specified, it defaults to 1. Options: QTYPE must be plane, sphere, cylinder, cone, hyperb, axisym or quadric. Synonyms: [cylinder, cyl], [ellipsoid, ellipse, ell, el], [help, h], [hyperb, saddle], [move, mv, translate, trans], [plane, pl], [point, pnt, pt, p], [quadric, quad, q], [sphere, sph], [vector, vect, v]. c=============================================================================== Command "operator": acceptable input lines include: "operator [help]" Display this message. "operator all" Display all operators. "operator list [OPNAME1 OPNAME2 OPNAME3 ...]" Display all listed operators (default is all operators). "operator OPNAME" Display operator OPNAME. To find and display operator OPNAME: "operator OPNAME axial VAXIS ANGLE" to rotate around axis vector VAXIS by angle ANGLE. "operator OPNAME vector VNAME1 VNAME2" to rotate VNAME1 onto vector VNAME2 around an axis perpendicular to both. "operator OPNAME serial U UANGLE V VANGLE W WANGLE" to rotate around U by angle UANGLE, then to rotate around V by angle VANGLE, then to rotate around W by angle WANGLE, where U, V and W are x, y or z, and 5, 7 or 9 words may be used. "operator OPNAME planar PLNAME1 PLNAME2" to rotate plane PLNAME1 onto plane PLNAME2 around an axis parallel to both. "operator OPNAME triple VNAME1 VNAME2 VNAME3 VNAME4" to rotate vector VNAME1 onto vector VNAME3, and the plane containing vectors VNAME1 and VNAME2 onto the plane containing vectors VNAME3 and VNAME4. "operator OPNAME invert" to invert through origin. Replace x, y, z with -x, -y, -z, respectively. "operator OPNAME scale RATIO" to scale uniformly by RATIO. "operator OPNAME uniform RATIO" to scale uniformly by RATIO. "operator OPNAME radial VAXIS RATIO" to scale radially from axis vector VAXIS by RATIO. "operator OPNAME linear VAXIS RATIO" to scale linearly in the direction of vector VAXIS by RATIO. "operator OPNAME reflect PLNAME" to reflect in a plane parallel to plane PLNAME. Type for more help. To rotate a quadric surface to the principle axes: "operator OPNAME plane PLNAME": plane PLNAME. "operator OPNAME sphere SPHNAME": sphere SPHNAME. "operator OPNAME cylinder CYLNAME": circular cylinder CYLNAME. "operator OPNAME cone CNNAME": circular cone CNNAME. "operator OPNAME hyperb HPNAME": hyperbolic paraboloid HPNAME. "operator OPNAME ellipsoid ELNAME": ellipsoid ELNAME. "operator OPNAME axisym AXNAME": axisymmetric quadric AXNAME. "operator OPNAME quadric QNAME": quadric QNAME. Note: OPNAME may not be "-". Note: use +/- for OPNAME to incr/decr the last operator name: Synonyms: [cylinder, cyl], [ellipsoid, ellipse, ell, el], [help, h], [hyperb, saddle], [invert, inv], [operator, oper, op, o], [plane, pl], [quadric, quad, q], [reflect, refl], [scale, sc, uniform], [sphere, sph] [vector, vect, v]. c=============================================================================== Current output file is geom.hsp Current command summary file is geom.cmd line 2 Acceptable output lines include: "output help" Display this message. "output" Display the output file name. "output OUT_FILE" Change the output file to OUT_FILE. Synonyms: [help, h], [output, out, o, write, wr, w] c=============================================================================== Command "pdf": acceptable input lines include: "pdf [help]" Display this message. "pdf all" Display all pdfs. "pdf list [PDFNAME1 PDFNAME2 PDFNAME3 ...]" Display all listed pdfs (default is all pdfs). "pdf PDFNAME" Display pdf PDFNAME. "pdf PDFNAME all" Create new pdf PDFNAME, consisting of all bins. "pdf PDFNAME = BINAME1 ... BINAME2 [thru] BINAME3 ..." Create new pdf PDFNAME, consisting of the bins BINAME1, ..., BINAME2 [, through] BINAME3, ... "pdf PDFNAME & BINAME1 ... BINAME2 [thru] BINAME3 ..." Change pdf PDFNAME, to add the bins BINAME1, ..., BINAME2 [, through] BINAME3, ... "pdf PDFNAME - BINAME1 ... BINAME2 [thru] BINAME3 ..." Change pdf PDFNAME, to remove the bins BINAME1, ..., BINAME2 [, through] BINAME3, ... Note: use +/- for PDFNAME to incr/decr the last pdf name: Synonyms: [help, h]. c=============================================================================== Command "plane": acceptable input lines include: "plane [help]" Display this message. "plane all" Display all planes. "plane list [PLNAME1 PLNAME2 PLNAME3 ...]" Display all listed planes (default is all planes). "plane PLNAME" Display plane PLNAME. "plane PLNAME = U V W DU DV DW" Create plane PLNAME through point (U, V, W), with normal vector (DU, DV, DW). "plane PLNAME vector PNAME VNORM" Create plane PLNAME through point PNAME with normal vector VNORM. "plane PLNAME fit PNAME1 PNAME2 PNAME3" Create plane PLNAME through the 3 points PNAME1, PNAME2 and PNAME3. "plane PLNAME triangle TRNAME" Create plane PLNAME through triangle TRNAME. "plane PLNAME disk DKNAME" Create plane PLNAME through annular disk DKNAME. "plane PLNAME tangent PNAME QNAME" Create plane PLNAME, tangent at point PNAME to quadric surface family QNAME. "plane PLNAME outline PNAME QNAME" Create any plane PLNAME, containing the outline of quadric surface QNAME, as seen from point PNAME. "plane PLNAME project VNAME QNAME" Create any plane PLNAME, containing the curve on quadric surface QNAME, where the normal vector is perpendicular to vector VNAME. Type for more help. "plane PLNAME parallel NUMPL INC PNAME1 PNAME2" Create a family of NUMPL parallel planes PLNAME, ..., with names incremented by INC characters, equally spaced along the normal axis from point PNAME1 to point PNAME2. "plane PL02 move NUMPL INC PL01 VMOVE" Create a family of NUMPL parallel planes PL02, ..., with names incremented by INC characters, translated by intervals of vector VMOVE, starting from plane PL01. "plane PL02 rotate NUMPL INC PL01 PAXIS VAXIS DANGLE" Create a family of NUMPL planes PL02, ..., with names incremented by INC characters, rotated around an axis through point PAXIS in the direction of vector VAXIS, by equal angular increments DANGLE (counterclockwise, with the axis pointed at the observer), starting from plane PL01. "plane PL02 scale NUMPL INC PL01 OPNAME PINV" Create a family of NUMPL planes PL02, ..., with names incremented by INC characters, by scaling the preceding plane with operator OPNAME and invariant point PINV, starting from plane PL01. Note: use +/- for PLNAME or PL02 to incr/decr the last plane name: Synonyms: [disk, disc, dk], [help, h], [parallel, par], [plane, pl], [project, proj], [rotate, rot], [scale, sc], [tangent, tan], [triangle, tri], [vector, vect, v]. c=============================================================================== Command "point": acceptable input lines include: "point [help]" Display this message. "point [all,list]" Display all points. "point list PNAME1 PNAME2 PNAME3 ..." Display all listed points. "point PNAME" Display point PNAME. "point PNAME [=] X Y Z" Create point PNAME with Cartesian coordinates X, Y, Z (coord rect). "point PNAME [=] RCYL THETA Z" Create point PNAME with cylindrical coordinates RCYL, THETA, Z (coord cyl). "point PNAME [=] RSPH THETA PHI" Create point PNAME with spherical coordinates RSPH, THETA, PHI (coord sph). In the 3 commands above, "=" is optional if the next argument is numerical. "point PNAME [option] QNAME" option: plane, sphere, cylinder, cone, hyperb, ellipsoid, axisym, quadric. Create the central point of quadric QNAME. "point PNAME01 polygon PGNAME" Create points PNAME01, PNAME02, PNAME03, ..., at the vertices of regular polygon PGNAME. "point PNAME01 polyhedron PHNAME" Create points PNAME01, PNAME02, PNAME03, ..., at the vertices of regular polyhedron PHNAME. "point PNAME triangle TRNAME W1 W2 W3" Create point PNAME in triangle TRNAME with vertex weights W1, W2 and W3. "point PNAME tetrahedron TETNAME W1 W2 W3 W4" Create point PNAME in tetrahedron TETNAME with vertex weights W1, W2, W3 and W4. "point PNAME brick BRNAME FU FV FW" Create point PNAME in brick BRNAME, at fractional distances FU, FV and FW across the brick. "point PMESH brick BRNAME mesh block [volume]" Create a family of points PMESH(k,l,m) assigned to the mesh, with indices k, l and m ranging over the indices of the current mesh block, and representing equal intervals [or volumes] between the minimum and maximum u, v and w coordinates of the brick, resp., where u, v and w are in the coordinate system used to create the brick. Release and rename all points previously assigned to the mesh block. Type for more help. "point PNAME proximal" to create point PNAME, at the last proximal point found by command "distance", "proximal", "side" or "track". "point PNAME random [RADIUS|1]" to create point PNAME randomly sampled in a sphere of radius RADIUS (default = 1) centered at the origin. "point PNAME OBJTYPE OBJNAME random" to create point PNAME randomly sampled in OBJTYPE (sphere, triangle, disk, tetrahedron, brick) OBJNAME. "point PNAME zone ZNAME random BRNAME" Create point PNAME randomly sampled in zone ZNAME, by trying points randomly sampled in brick BRNAME. "point PNAME02 move NUMPT INC PNAME01 VMOVE" Create a family of NUMPT points PNAME02, ..., with names incremented by INC characters, and spaced at intervals of vector VMOVE, starting from point PNAME01. "point PNAME02 rotate NUMPT INC PNAME01 OPNAME PINV" Create a family of NUMPT points PNAME02, ..., with names incremented by INC characters, by rotating the preceding point with operator OPNAME and invariant point PINV, starting from point PNAME01. "point PNAME02 scale NUMPT INC PNAME01 OPNAME PINV" Create a family of NUMPT points PNAME02, ..., with names incremented by INC characters, by scaling the preceding point with operator OPNAME and invariant point PINV, starting from point PNAME01. Note: PNAME or PNAME02 may not be "thru". Note: use +/- for PNAME or PNAME02 to incr/decr the last point name: Synonyms: [brick, br], [cylinder, cyl], [disk, disc, dk], [ellipsoid, ellipse, ell, el], [help, h], [hyperb, saddle] [move, mv, translate, tran], [plane, pl], [point, pnt, pt, p], [polygon, polyg, pg], [polyhedron, polyh, ph], [proximal, prox], [quadric, quad, q], [random, ?], [scale, sc], [sphere, sph], [tetrahedron, tetra, tet], [triangle, tri], [volume, vol], [zone, z]. c=============================================================================== Command "polygon": acceptable input lines include: "polygon [help]" Display this message. "polygon all" Display all polygons. "polygon list [PGNAME1 PGNAME2 PGNAME3] ..." Display all listed regular polygons (default is all regular polygons). "polygon PGNAME" Display regular polygon PGNAME. "polygon PGNAME fit NVER PCEN PVER PCOP" Create regular polygon PGNAME with NVER vertices, centered at point PCEN, with the first vertex at point PVER, and coplanar with point PCOP. Note: use +/- for PGNAME to incr/decr the last polygon name: Synonyms: [help, h], [polygon, polyg, pg]. c=============================================================================== Command "polyhedron": acceptable input lines include: "polyhedron [help]" Display this message. "polyhedron all" Display all regular polyhedrons. "polyhedron list [PHNAME1 PHNAME2 PHNAME3 ...]" Display all listed regular polyhedrons (default is all). "polyhedron PHNAME" Display regular polyhedron PHNAME. "polyhedron PHNAME fit NVER PCEN PVER PCOP" Create regular polyhedron PHNAME with NVER vertices, centered at point PCEN, with the first vertex at point PVER, and with PCEN, PVER and the second vertex coplanar with point PCOP. NVER must be 4 (tetrahedron), 6 (octahedron), 8 (cube), 12 (icosahedron) or 20 (dodecahedron). Note: use +/- for PHNAME to incr/decr the last polyhedron name: Synonyms: [help, h], [polyhedron, polyh, ph]. c=============================================================================== Command "project": acceptable input lines include: "project [help]" Display this message. In the input lines below, "OBJTYPE OBJNAME" must be "point PNAME", "cluster CLNAME" or "point all". "project OBJTYPE OBJNAME plane PLNAME" Project points normally onto plane PLNAME. "project OBJTYPE OBJNAME plane PCEN VNORM" Project points normally onto the plane through point PCEN with normal vector VNORM. "project OBJTYPE OBJNAME perspective PVIEW PFOC PTL PTR" Project points toward view point PVIEW, onto a plane through point PFOC perpendicular to the line from PVIEW to PFOC, then rotate and translate onto plane z = 0, with PFOC at the origin, and a horizon from point PTL on the left to point PTR on the right. "project OBJTYPE OBJNAME viewfactor PVIEW VNAME" to make a geometric view factor projection of points based on the view from point PVIEW, in the direction of the vector VNAME, and project the results onto plane z = 0, "project OBJTYPE OBJNAME cylinder RCYL PCEN VAXIS [cyl,sph,cos|cyl]" Project points onto the cylinder with radius RCYL, on an axis through point PCEN in the direction of the vector VAXIS. Does not project point PCEN. Project [cyl] (default) toward the axis, or [sph] toward the central point PCEN, or [cos] to make the axial distance from point PCEN equal to the cosine of the spherical polar angle PHI from the axis, measured from point PCEN. "project OBJTYPE OBJNAME sphere RSPH PCEN VAXIS [sph,cyl,polar|sph]" Project points onto the sphere with radius RSPH, centered at point PCEN. Does not project point PCEN. Project [sph] (default, and VAXIS is not needed) toward the center PCEN, or [cyl] toward the polar axis through point PCEN in the direction of the vector VAXIS, or [polar] in the direction of the polar axis. Synonyms: [cosine, cos], [cylinder, cyl], [cylindrical, cyl], [cluster, cl], [help, h], [perspective, pers], [plane, pl], [point, pnt, pt, p], [project, proj], [sphere, sph], [spherical, sph], [viewfactor, view] c=============================================================================== Command "prompt": acceptable input lines include: "prompt help" Display this message. "prompt" Switch between long and short prompts. "prompt [=] STRING Use short prompt string STRING (up to 8 characters). Synonyms: [help, h]. c=============================================================================== Command "proximal": acceptable input lines include: "proximal [help]" Display this message. "proximal PNAME QNAME [NUMDIR|100]" Find the proximal point on quadric surface QNAME, for point PNAME, If the standard method fails (rarely), try NUMDIR isotropic random directions from point PNAME, then 10 * NUMDIR cosine-power random directions from point PNAME, directed in the last best direction, with powers geometrically increasing from 1 to 1.e10. Convergence is determined by tol. Synonyms: [help, h], [proximal, prox]. c=============================================================================== Command "quadric": acceptable input lines include: "quadric [help]" Display this message. "quadric types" Display all quadric types. "quadric all" Display all quadric surfaces. "quadric list [QNAME1 QNAME2 QNAME3 ...]" Display all listed quadrics (default is all quadrics). "quadric QNAME" Display quadric surface QNAME. "quadric QNAME = QC QX QY QZ [QXY QYZ QZX QXX QYY QZZ]" Create quadric QNAME, with implicit equation coefficients QC, QX, QY, QZ [, QXY, QYZ, QZX, QXX, QYY and QZZ]. "quadric QNAME & CFNAME1 CFVAL1 [CFNAME2 CFVAL2 ...]" For existing quadric QNAME, replace coefficient CFNAME1 with new value CFVAL1, where CFNAME1 may be any of the coefficient names QC, QX, QY, QZ, QXY, QYZ, QZX, QXX, QYY, QZZ. Likewise for CFNAME2, CFVAL2, ... "quadric QNAME fit PNAME1 PNAME2 ... PNAME9" Create quadric QNAME, through the nine points PNAME1, PNAME2, ..., PNAME9, if a unique solution exists. "quadric QNAME [* /] FACTOR" [Multiply, Divide] the implicit equation coefficients of quadric QNAME by FACTOR. "quadric QNAME sum QNAME1 QNAME2 [QMULT1|1] [QMULT2|1]" Create quadric QNAME, the weighted sum QMULT1 * QNAME1 + QMULT2 * QNAME2, where QMULT1 and QMULT2 default to 1. "quadric QNAME plane PLNAME1 PLNAME2" Create quadric QNAME, representing the two coincident, parallel or intersecting planes PLNAME1 and PLNAME2. "quadric QNAME project VNAME QNAME2" Create quadric QNAME, a cylindrical quadric parallel to vector VNAME, and tangent to quadric surface QNAME2. "quadric QNAME intersect PLNAME QNAME2" Create quadric QNAME, a cylindrical quadric perpendicular to plane PLNAME, and through the intersection of plane PLNAME and quadric surface QNAME2. Type for more help. "quadric QNAME slice QNAME2 [x,y,z|x] [VAL|0.0]" Create quadric QNAME, a slice through quadric QNAME2 at [x, y, z] = VAL (defaults are x and 0.0). "quadric QNAME ortho QNAME1 QNAME2" Create quadric QNAME, the locus of points where the family of quadric surfaces QNAME1 is orthogonal to the family of quadric surfaces QNAME2. "quadric QNAME02 NUMQ INC move QNAME01 VMOVE" Create a family of NUMQ quadric surfaces QNAME02, ..., with names incremented by INC characters, spaced at intervals of vector VMOVE, starting from quadric surface QNAME01. "quadric QNAME02 rotate NUMQ INC QNAME01 OPNAME PINV" Create a family of NUMQ quadric surfaces QNAME02, ..., with names incremented by INC characters, by rotating the preceding quadric surface with operator OPNAME and invariant point PINV, starting from quadric surface QNAME01. "quadric QNAME02 scale NUMQ INC QNAME01 OPNAME PINV" Create a family of NUMQ quadric surfaces QNAME02, ..., with names incremented by INC characters, by scaling the preceding quadric surface with operator OPNAME and invariant point PINV, starting from quadric surface QNAME01. Note: use +/- for QNAME or QNAME02 to incr/decr the last quadric name: Synonyms: [help, h], [intersect, inter, int], [move, mv, translate, trans], [plane, pl], [quadric, quad, q], [project, proj], [rotate, rot], [scale, sc], [slice, cut], [sum, add]. c=============================================================================== Command "angles": acceptable input lines include: "angles [help]" Display current problem units and this message. "angles degrees" Change angle units to degrees. "angles radians" Change angle units to radians. "angles UNIT1 UNIT2 ANGLE1 [ANGLE2 ANGLE3 ...]" Convert from UNIT1 to UNIT2: ANGLE1 [and ANGLE2, ANGLE3, ...]. UNIT1 may be "degrees", "grads" or "radians". UNIT2 may be "degrees", "grads", "radians" or "dms". "angles UNIT1 UNIT2 ANGLE1 thru ANGLEN" Convert from UNIT1 to UNIT2: all stored variables with names in the range from ANGLE1 thru ANGLEN. UNIT1 may be "degrees", "grads" or "radians". UNIT2 may be "degrees", "grads", "radians" or "dms". "angles dms UNIT2 DEGREES MINUTES SECONDS" Convert from degrees, minutes, seconds to UNIT2. UNIT2 may be "degrees", "grads", "radians" or "dms". Synonyms: [angles, angle, ang], [degrees, degree, deg], [grads, grad], [help, h], [radians, radian, rad]. c=============================================================================== Command "ratio": acceptable input lines include: "ratio [help]" Display this message. "ratio TERM1 SUM NUMT" Find the ratio for a geometric series beginning with TERM1, with sum SUM, and NUMT terms. Synonyms: [help, h], [ratio, rat]. c=============================================================================== Command "redo": acceptable input lines include: "redo help" Display this message. "redo [$]" Redo the last saved input line, with no replacements. (display with command "input command $ ?") "redo $ [R1 R2 R3 ...]" Redo the last saved input line, with arguments 1, 2, 3, ..., replaced by R1, R2 R3, ... (display with command "input command $ ?") "redo LINE [R1 R2 R3 ...]" Redo line LINE in the list of saved input lines, with arguments 1, 2, 3, ..., replaced by R1, R2, R3, ... (display with command "input command LINE ?") "redo STRING [R1 R2 R3 ...]" Redo the last saved input line that begins with STRING, with arguments 1, 2, 3, ..., replaced by R1, R2, R3, ... (display with command "input command ?") Note: "." means no replacement (all trailing "." may be omitted). A negative LINE means the number of lines before the last saved input line. Synonyms: [help, h]. c=============================================================================== Command "reflect ": acceptable input lines include: "reflect [help]" Display this message. "reflect point PNAME [-] OPNAME [PINV]" to reflect point PNAME with operator OPNAME, and invariant point PINV (defaults to origin). "reflect cluster CLNAME [-] OPNAME [PINV]" to reflect cluster CLNAME with operator OPNAME, and invariant point PINV (defaults to origin). "reflect point all [-] OPNAME [PINV]" to reflect all points with operator OPNAME, and invariant point PINV (defaults to origin). "reflect vector VNAME [-] OPNAME [PINV]" to reflect vector VNAME with operator OPNAME, and invariant point PINV (defaults to origin). "reflect vector all [-] OPNAME [PINV]" to "reflect QTYPE QNAME [-] OPNAME [PINV]" to reflect quadric type QTYPE with name QNAME, with operator OPNAME, and invariant point PINV. "reflect QTYPE all [-] OPNAME [PINV]" to reflect all quadrics of type QTYPE, with operator OPNAME, and invariant point PINV. Note: OPNAME may not be "-". Options: QTYPE must be plane, sphere, cylinder, cone, hyperb, ellipsoid, axisym or quadric. [blank] indicates the operator, and [-] its inverse (use only for operators rotate and scale). Invariant point PINV defaults to the origin. "reflect vector VNAME normal VNORM" to reflect vector VNAME in the surface with normal vector VNORM. Synonyms: [cluster, cl], [cylinder, cyl], [ellipsoid, ellipse, ell, el], [help, h], [hyperb, saddle], [invert, inv], [plane, pl], [normal, norm], [point, pnt, pt, p], [quadric, quad, q], [reflect, refl], [rotate, rot], [scale, sc], [sphere, sph], [vector, vect, v]. c=============================================================================== Command "rename": acceptable input lines include: "rename [help]" Display this message. "rename alias ANAME ANAME2" Rename alias ANAME to ANAME2. "rename marker SYNNAME SYNNAME2" Rename marker SYNNAME to SYNNAME2. "rename variable VARNAME VARNAME2" Rename variable VARNAME to VARNAME2. "rename big BIGNAME BIGNAME2" Rename big integer BIGNAME to BIGNAME2. "rename point PNAME PNAME2" Rename point PNAME to PNAME2. "rename cluster CLNAME CLNAME2" Rename cluster CLNAME to CLNAME2. "rename line ALNAME ALNAME2" Rename line ALNAME to ALNAME2. "rename vector VNAME VNAME2" Rename vector VNAME to VNAME2. "rename operator OPNAME OPNAME2" Rename operator OPNAME to OPNAME2. "rename triangle TRNAME TRNAME2" Rename triangle TRNAME to TRNAME2. "rename polygon PGNAME PGNAME2" Rename regular polygon PGNAME to PGNAME2. "rename disk DKNAME DKNAME2" Rename annular disk DKNAME to DKNAME2. "rename plane PLNAME PLNAME2" Rename plane PLNAME to PLNAME2. "rename sphere SPHNAME SPHNAME2" Rename sphere SPHNAME to SPHNAME2. "rename cylinder CYLNAME CYLNAME2" Rename cylinder CYLNAME to CYLNAME2. "rename cone CNNAME CNNAME2" Rename cone CNNAME to CNNAME2. "rename ellipsoid ELNAME ELNAME2" Rename ellipsoid ELNAME to ELNAME2. "rename hyperb HPNAME HPNAME2" Rename hyperbolic paraboloid HPNAME to HPNAME2. "rename axisym AXNAME AXNAME2" Rename axisymmetric quadric AXNAME to AXNAME2. "rename quadric QNAME QNAME2" Rename quadric QNAME to QNAME2. "rename polyhedron PHNAME PHNAME2" Rename regular polyhedron PHNAME to PHNAME2. "rename tetrahedron TETNAME TETNAME2" Rename tetrahedron TETNAME to TETNAME2. "rename brick BRNAME BRNAME2" Rename brick BRNAME to BRNAME2. "rename zone ZNAME ZNAME2" Rename zone ZNAME to ZNAME2. "rename bin BINAME BINAME2" Rename probability bin BINAME to BINAME2. "rename pdf PDFNAME PDFNAME2" Rename pdf PDFNAME to PDFNAME2. "rename symbol SYMBNAME SYMBNAME2" Rename symbol SYMBNAME to SYMBNAME2. "rename OBJTYPE OBJNAME OBJNAME2" Rename OBJTYPE OBJNAME to OBJNAME2, where OBJTYPE is any of the object types used above. Note: use +/- for OBJNAME2 to incr/decr the last OBJTYPE name. Type for more help: "rename OBJTYPE OBJSTEM OBJSTEM2 array" Rename OBJTYPE stem name OBJSTEM to OBJSTEM2, where OBJTYPE is any of the object types used above. Synonyms: [alias, al, a], [brick, br], [cluster, cl], [cylinder, cyl], [disk, disc, dk], [ellipsoid, ellipse, ell, el], [help, h], [hyperb, saddle], [line, ln, l], [marker, mark, m], [operator, oper, op, o], [plane, pl], [point, pnt, pt, p], [polygon, polyg, pg], [polyhedron, polyh, ph], [quadric, quad, q], [rename, switch, sw], [sphere, sph], [symbol, symb, sym], [tetrahedron, tetra, tet], [triangle, tri], [variable, var, set, s], [vector, vect, v], [zone, zn, z]. c=============================================================================== Command "repack": acceptable input lines include: "repack [help] " Display this message. "repack all " Repack all objects. "repack alias " Repack aliases. "repack axisym " Repack all quadric surfaces. "repack bin " Repack probability bins. "repack brick " Repack bricks. "repack cluster " Repack clusters. "repack cone " Repack all quadric surfaces. "repack cylinder " Repack all quadric surfaces. "repack disk " Repack annular disks. "repack ellipsoid " Repack all quadric surfaces. "repack hyperb " Repack all quadric surfaces. "repack line " Repack lines. "repack marker " Repack markers. "repack mesh " Repack mesh points. "repack operator " Repack operators. "repack pdf " Repack pdfs. "repack plane " Repack all quadric surfaces. "repack point " Repack points. "repack polygon " Repack regular polygons. "repack polyhedron " Repack regular polyhedrons. "repack quadric " Repack all quadric surfaces. "repack sphere " Repack all quadric surfaces. "repack symbol " Repack symbols. "repack tetrahedron " Repack tetrahedrons. "repack triangle " Repack triangles. "repack variable " Repack variables. "repack vector " Repack vectors. "repack zone " Repack zones. "repack OBJTYPE1 OBJTYPE2 OBJTYPE3 ..." Display the names of all objects of types OBJTYPE1, OBJTYPE2, OBJTYPE3, ... which may be any of the object types listed above. Synonyms: [alias, al, a], [brick, br], [cluster, cl], [cylinder, cyl], [disk, disc, dk], [ellipsoid, ellipse, ell, el], [help, h], [hyperb, saddle], [line, ln, l], [marker, mark, m], [operator, oper, op, o], [point, pnt, pt, p], [polygon, polyg, pg], [polyhedron, polyh, ph], [quadric, quad, q], [sphere, sph], [symbol, symb, sym], [tetrahedron, tetra, tet], [triangle, tri], [variable, var, set, s], [vector, vect, v], [zone, zn, z] c=============================================================================== Command "root": acceptable input lines include: "root [help]" Display this message. "root XMIN DX XMAX NITMAX A(0) A(1) A(2) A(3) ... A(N)" Search for real roots, extrema and inversion points of the polynomial equation P(x) = sum(n=0,N) {A(n) * x**n} = 0, by Newtonian iteration, with initial guesses of x from XMIN to XMAX, with increment DX, and no more than NITMAX iterations. "root = X(1) X(2) X(3) ... X(N)" Find the coefficients a(n) (n=0,N) for the polynomial equation P(x) = sum(n=0,N) {a(n) * x**n} = 0, with the roots X(1), X(2), X(3), ..., X(N). Synonyms: [help, h]. c=============================================================================== Command "rootf": acceptable input lines include: "rootf [help]" Display this message. "rootf XROOT A(0) A(1) A(2) A(3) ... A(N)" Factor the term (x - XROOT) out of the polynomial equation P(x) = sum(n=0,N) {A(n) * x**n} = 0. Synonyms: [help, h]. c=============================================================================== Command "roots": acceptable input lines include: "roots [help]" Display this message. "roots A0 A1 [A2 [A3 [A4]]]" Find the real and/or any complex roots of the polynomial equation: A0 + A1*z + A2*z**2 + A3*z**3 + A4*z**4 = 0. "roots = X1 [Y1 X2 Y2 [X3 Y3 [X4 Y4]]]" Find the coefficients of the polynomial equation with the roots X1 + Y1 * i, [X2 + Y2 * i, [X3 + Y3 * i, [X4 + Y4 * i]]]. Specify any real roots first, with the imaginary part zero, followed by any complex roots, in conjugate pairs. "roots value X Y A0 A1 [A2|0] [A3|0] A4|0]" For z = X + i*Y, find the value of the polynomial equation: A0 + A1*z + A2*z**2 + A3*z**3 + A4*z**4 = 0. and use Newton's iteration to search for a root. Synonyms: [help, h]. c=============================================================================== Command "rotate ": acceptable input lines include: "rotate [help]" Display this message. "rotate point PNAME [-] OPNAME [PINV]" to rotate point PNAME with operator OPNAME, and invariant point PINV (defaults to origin). "rotate cluster CLNAME [-] OPNAME [PINV]" to rotate cluster CLNAME with operator OPNAME, and invariant point PINV (defaults to origin). "rotate point all [-] OPNAME [PINV]" to rotate all points with operator OPNAME, and invariant point PINV (defaults to origin). "rotate vector VNAME [-] OPNAME [PINV]" to rotate vector VNAME with operator OPNAME, and invariant point PINV (defaults to origin). "rotate vector all [-] OPNAME [PINV]" to "rotate QTYPE QNAME [-] OPNAME [PINV]" to rotate quadric type QTYPE with name QNAME, with operator OPNAME, and invariant point PINV. "rotate QTYPE all [-] OPNAME [PINV]" to rotate all quadrics of type QTYPE, with operator OPNAME, and invariant point PINV. Note: OPNAME may not be "-". Options: QTYPE must be plane, sphere, cylinder, cone, hyperb, ellipsoid, axisym or quadric. [blank] indicates the operator, and [-] its inverse (use only for operators rotate and scale). Invariant point PINV defaults to the origin. Synonyms: [cluster, cl], [cylinder, cyl], [ellipsoid, ellipse, ell, el], [help, h], [hyperb, saddle], [invert, inv], [plane, pl], [normal, norm], [point, pnt, pt, p], [quadric, quad, q], [reflect, refl], [rotate, rot], [scale, sc], [sphere, sph], [vector, vect, v]. c=============================================================================== Command "sample": acceptable input lines include: "sample [help]" Display this message. "sample PDFNAME [NSAMP|1]" Randomly sample from pdf PDFNAME, NSAMP times. "sample PDFNAME NSAMP [norepl|repl]" Randomly sample from pdf PDFNAME, NSAMP times, with [no replacement | replacement]. "sample PDFNAME NSAMP [norepl,repl] [NSET|1]" Randomly sample from pdf PDFNAME, NSAMP times, and repeat for NSET sets, with [no replacement, replacement]. Synonyms: [help, h]. c=============================================================================== Command "scale ": acceptable input lines include: "scale [help]" Display this message. "scale point PNAME [-] OPNAME [PINV]" to scale point PNAME with operator OPNAME, and invariant point PINV (defaults to origin). "scale cluster CLNAME [-] OPNAME [PINV]" to scale cluster CLNAME with operator OPNAME, and invariant point PINV (defaults to origin). "scale point all [-] OPNAME [PINV]" to scale all points with operator OPNAME, and invariant point PINV (defaults to origin). "scale vector VNAME [-] OPNAME [PINV]" to scale vector VNAME with operator OPNAME, and invariant point PINV (defaults to origin). "scale vector all [-] OPNAME [PINV]" to "scale QTYPE QNAME [-] OPNAME [PINV]" to scale quadric type QTYPE with name QNAME, with operator OPNAME, and invariant point PINV. "scale QTYPE all [-] OPNAME [PINV]" to scale all quadrics of type QTYPE, with operator OPNAME, and invariant point PINV. Note: OPNAME may not be "-". Options: QTYPE must be plane, sphere, cylinder, cone, hyperb, ellipsoid, axisym or quadric. [blank] indicates the operator, and [-] its inverse (use only for operators rotate and scale). Invariant point PINV defaults to the origin. Synonyms: [cluster, cl], [cylinder, cyl], [ellipsoid, ellipse, ell, el], [help, h], [hyperb, saddle], [invert, inv], [plane, pl], [normal, norm], [point, pnt, pt, p], [quadric, quad, q], [reflect, refl], [rotate, rot], [scale, sc], [sphere, sph], [vector, vect, v]. c=============================================================================== Command "search": acceptable input lines include: "search [help]" Display this message. "search OBJNAME1 OBJNAME2 OBJNAME3 ..." Search for objects OBJNAME1, OBJNAME2, OBJNAME3, ..., or beginning with single character OBJNAME1, OBJNAME2, OBJNAME3, ... Search for variables, points or vectors with values OBJNAME1, OBJNAME2, OBJNAME3, ..., "search all" Display all objects. Synonyms: [help, h], [search, find]. c=============================================================================== Command "side": acceptable input lines include: "side [help]" Display this message. "side PNAME QNAME" Find the distance from point PNAME to quadric surface QNAME, and which side of surface QNAME point PNAME is on. "side PNAME [all]" Do the same for point PNAME and all quadric surfaces. "side all QNAME" Do the same for all points and quadric surface QNAME. "side all [all]" Do the same for all points and all quadric surfaces. Synonyms: [help, h]. c=============================================================================== Command "slice": acceptable input lines include: "slice [help]" Display this message. "slice quadric QNAME [x,y,z|x] [VAL|0] [[y,z,x] VMIN DV VMAX] Slice quadric QNAME at [x,y,z|x] = [VAL|0], and optionally, find any points in the resulting quadric curve at [y, z, x] = VMIN (DV) VMAX. "slice zone ZNAME [x,y,z|x] [VAL|0.0]" Slice zone ZNAME at [x,y,z|x] = [VAL|0]. Synonyms: [help, h], [quadric, quad, q], [slice, cut], [zone, zn, z]. c=============================================================================== Command "solve": acceptable input lines include: "solve [help]" Display this message. "solve A B C D" Solve for the three unknowns x, y and z in the three equations A1 * x + A2 * y + A3 * z = D1 B1 * x + B2 * y + B3 * z = D2 C1 * x + C2 * y + C3 * z = D3 where A, B, C and D are the vectors (A1, A2, A3), (B1, B2, B3), (C1, C2, C3), and (D1, D2, D3), respectively. Synonyms: [help, h]. c=============================================================================== Command "sort": acceptable input lines include: "sort [help]" Display this message. "sort alias [+,-,?|+]" Sort aliases. "sort all [+,-,?|+]" Sort all objects. "sort axisym [+,-,?|+]" Sort all quadric surfaces. "sort bin [+,-,?|+]" Sort probability bins. "sort brick [+,-,?|+]" Sort bricks. "sort cluster [+,-,?|+]" Sort clusters. "sort cone [+,-,?|+]" Sort all quadric surfaces. "sort cylinder [+,-,?|+]" Sort all quadric surfaces. "sort disk [+,-,?|+]" Sort annular disks. "sort ellipsoid [+,-,?|+]" Sort all quadric surfaces. "sort hyperb [+,-,?|+]" Sort all quadric surfaces. "sort line [+,-,?|+]" Sort lines. "sort marker [+,-,?|+]" Sort markers. "sort mesh [+,-,?|+]" Sort mesh points by mesh indices. "sort operator [+,-,?|+]" Sort operators. "sort pdf [+,-,?|+]" Sort pdfs. "sort plane [+,-,?|+]" Sort all quadric surfaces. "sort point [+,-,?|+]" Sort points. "sort polygon [+,-,?|+]" Sort regular polygons. "sort polyhedron [+,-,?|+]" Sort regular polyhedrons. "sort quadric [+,-,?|+]" Sort all quadric surfaces. "sort sphere [+,-,?|+]" Sort all quadric surfaces. "sort symbol [+,-,?|+]" Sort symbols. "sort tetrahedron [+,-,?|+]" Sort tetrahedrons. "sort triangle [+,-,?|+]" Sort triangles. "sort variable [+,-,?|+]" Sort variables. "sort vector [+,-,?|+]" Sort vectors. "sort zone [+,-,?|+]" Sort zones. where [+,-,?|+] means to sort in [increasing, decreasing, random] order, with increasing order the default option. Synonyms: [?, random], [alias, al, a], [brick, br], [cluster, cl], [cylinder, cyl], [disk, disc, dk], [ellipsoid, ellipse, ell, el], [help, h], [hyperb, saddle], [line, ln, l], [marker, mark, m], [operator, oper, op, o], [point, pnt, pt, p], [polygon, polyg, pg], [polyhedron, polyh, ph], [quadric, quad, q], [sphere, sph], [symbol, symb, sym], [tetrahedron, tetra, tet], [triangle, tri], [variable, var, set, s], [vector, vect, v], [zone, zn, z]. c=============================================================================== Command "sphere": acceptable input lines include: "sphere [help]" Display this message. "sphere all" Display all spheres. "sphere list [SPHNAME1 SPHNAME2 SPHNAME3 ...]" Display all listed spheres (default is all spheres). "sphere SPHNAME" Display sphere SPHNAME. "sphere SPHNAME = PCEN RADIUS" Create sphere SPHNAME, centered at point PCEN, with radius RADIUS. "sphere SPHNAME fit PAXIS VAXIS PNAME1 PNAME2" Create sphere SPHNAME, centered on the axis through point PAXIS, in the direction of vector VAXIS, and with its surface through the two points PNAME1 and PNAME2. "sphere SPHNAME point PNAME1 PNAME2 PNAME3 PNAME4" Create sphere SPHNAME, with its surface through the four points PNAME1, PNAME2, PNAME3 and PNAME4. "sphere SPHNAME concentric NUMSPH INC PCEN RAD1 RAD2" Create a family of NUMSPH concentric spheres SPHNAME, ..., with names incremented by INC characters, centered at point PCEN, with radii equally spaced from radius RAD1 to radius RAD2. "sphere SPH02 move NUMSPH INC SPH01 VMOVE" Create a family of NUMSPH spheres SPH02, ..., with names incremented by INC characters, and spaced at intervals of vector VMOVE, starting from sphere SPH01. Type for more help. "sphere SPH02 rotate NUMSPH INC SPH01 OPNAME PINV" Create a family of NUMSPH spheres SPH02, ..., with names incremented by INC characters, by rotating the preceding sphere with operator OPNAME and invariant point PINV, starting from sphere SPH01. "sphere SPH02 scale NUMSPH INC SPH01 OPNAME PINV" Create a family of NUMSPH quadric surfaces SPH02, ..., with names incremented by INC characters, by scaling the preceding quadric surfaces with operator OPNAME and invariant point PINV, starting from sphere SPH01. WARNING: a linear or radial scaling operator will produce ellipsoids. Note: use +/- for SPHNAME or SPH02 to incr/decr the last sphere name: Synonyms: [help, h], [concentric, conc] [move, mv, translate, trans], [point, pnt, pt, p], [rotate, rot], [scale, sc], [sphere, sph]. c=============================================================================== Command "spin": acceptable input lines include: "spin [help]" Display this message. "spin N" Use up N random numbers. c=============================================================================== Command "sudoku": acceptable input lines include: "sudoku [help]" Display this message. "sudoku new" Start a new sudoku puzzle. "sudoku [row,col,box] N [=] I1 I2 I3 I4 I5 I6 I7 I8 I9" Assign up to 9 digits I1, I2, I3, ... to [row, column, box] N. "sudoku cell NROW NCOL [=] I1" Assign the digit I1 to row NROW, column NCOL. Note: in the commands above, use zero for cells with unassigned digits. "sudoku perm" Display the permitted digits. "sudoku save" Save and display the current assignments. "sudoku reset" Reset the assignments to those of the last save. "sudoku solve" Save the current assignments and solve puzzle. Synonyms: [help, h], [sudoku, su]. c=============================================================================== Command "synonym": acceptable input lines include: "synonym [help]" Display this message. "synonym all" Display all synonyms. "synonym none" Display all command words and key words for which there is no preset synonym. "synonym SYNAME1 SYNAME2 SYNAME3 ..." Display the synonyms, symbols and aliases for each listed word, or if a single character, all synonyms, symbols and aliases beginning with that character. Synonyms: [help, h], [synonym, syn]. c=============================================================================== Command "table": acceptable input lines include: "table [help]" Display this message, and display the maximum sizes of the data tables for various objects, the current space used, and the command types used to create and display them. Synonyms: [help, h], [tables, sizes]. Object type # Max Command type Aliases 0 512 alias Annular disks 0 1000 disk Big integers 26 big Digits per big integer 1001 big Bounding surfaces per zone 16 zone Bricks (coordinate solids) 0 1000 brick Clusters of points 0 100 cluster Lines 0 1000 line Markers 0 256 marker Operators 0 100 operator Plot array columns 65 168 plot Plot array lines 41 104 plot Plot point markers 1 256 plot Plot points 0 1000 plot Point-cluster pairs 0 1000 cluster Points 0 1000 point Polygons 0 1000 polygon Polyhedrons 0 1000 polyh Probability bin-pdf pairs 0 1000 pdf Probability bins 0 1000 bin Probability distribution functions 0 100 pdf Quadric surfaces 0 1000 (all) Planes plane Spheres sphere Circular cylinders cylinder Circular cones cone Ellipsoids ellipsoid Axisymmetric quadric surfaces axisym General quadric surfaces quadric Saved input lines (max 80 characters) 2 2000 input Symbols 6 1000 symbol Synonyms 367 400 synonym Temporary arrays 0 1000 (varies) Tetrahedrons 0 1000 tetra Triangles 0 1000 triangle Variables 0 1000 variable Vectors 0 1000 vector Vertices per polygon 1000 polygon Zones 0 1000 zone c=============================================================================== Command "tetrahedron": acceptable input lines include: "tetrahedron [help]" Display this message. "tetrahedron all" Display all tetrahedrons. "tetrahedron list [TETNAME1 TETNAME2 TETNAME3 ...]" Display all listed tetrahedrons (default is all tetrahedrons). "tetrahedron TETNAME" Display tetrahedron TETNAME. "tetrahedron TETNAME = PNAME1 PNAME2 PNAME3 PNAME4" Create tetrahedron TETNAME through the 4 points PNAME1, PNAME2, PNAME3 and PNAME4. "tetrahedron TET02 increment NUMTET INC TET01 IP1 [IP2 [IP3 [IP4]]]" Create a family of NUMTET tetrahedrons TET02, ..., with names incremented by INC characters, by incrementing the names of the four vertex points of the preceding tetrahedron by the number of characters indicated by the integers IP1, IP2, IP3, IP4, starting from tetrahedron TET01. Unspecifed values of IP2 - IP4 default to zero. Note: use +/- for TETNAME or TET02 to incr/decr the last tetrahedron name: Synonyms: [help, h], [increment, incr], [tetrahedron, tetra, tet]. c=============================================================================== Command "time": acceptable input lines include: "time [help]" Display this message. "time" Display the machine time used. Synonyms: [help, h]. c=============================================================================== Command "title": acceptable input lines include: "title help" Display this message. "title" Display the problem title. "title TITLE" Specify problem title TITLE (up to 72 characters). Synonyms: [help, h], [title, id]. c=============================================================================== Command "tol": acceptable input lines include: "tol help" Display this message. "tol" Display the value of tol. "tol [=] TOL" Change the value of tol to TOL. Must be 0, or between 1.E-15 and 1.E-3. Default is 1.E-11. c=============================================================================== Command "track": acceptable input lines include: "track [help]" Display this message. "track PNAME VNAME point PNAME2" Find the distance to and coordinates of the point on the track through point PNAME in direction VNAME, nearest to point PNAME2. "track PNAME VNAME line ALNAME" Find the distance to and coordinates of the point on the track through point PNAME in direction VNAME, nearest to line ALNAME. "track PNAME VNAME triangle TRNAME" Find the distance to and coordinates of the point on the track through point PNAME in direction VNAME, intersecting triangle TRNAME. "track PNAME VNAME QTYPE QNAME" Find the distance to and coordinates of the point on the track through point PNAME in direction VNAME, intersecting the quadric surface of type QTYPE with name QNAME. QTYPE must be plane, sphere, cylinder, cone, hyperb, ellipsoid, axisym, or quadric. "track PNAME VNAME zone ZNAME" Find the distances to and coordinates of the points on the track through point PNAME in direction VNAME, intersecting the surfaces bounding zone ZNAME. Synonyms: [cylinder, cyl], [ellipsoid, ellipse, ell, el], [help, h], [hyperb, saddle], [line, ln, l], [plane, pl], [point, pnt, pt, p], [quadric, quad, q], [sphere, sph], [track, trk], [zone, zn, z]. c=============================================================================== Command "triangle": acceptable input lines include: "triangle [help]" Display this message. "triangle all" Display all triangles. "triangle list [TRNAME1 TRNAME2 TRNAME3 ...]" Display all listed triangles (default is all triangles). "triangle TRNAME" Display triangle TRNAME. "triangle TRNAME = PNAME1 PNAME2 PNAME3" Create triangle TRNAME through the 3 points PNAME1, PNAME2 and PNAME3. "triangle TR02 increment NUMTR INC TR01 IP1 [IP2 [IP3]]" Create a family of NUMTET triangles TR02, ..., with names incremented by INC characters, by incrementing the names of the three vertex points of the preceding triangle by the number of characters indicated by the integers IP1, IP2, IP3, starting from triangle TR01. "steiner [help]" Display this message. "steiner TRNAME" Display triangle TRNAME (Steiner vertex). Note: use +/- for TRNAME to incr/decr the last triangle name: Synonyms: [help, h], [increment, incr], [steiner, stein], [triangle, tri]. c=============================================================================== Command "trig": acceptable input lines include: "trig [help]" Display this message. "trig [angle,edge] A [angle,edge] B [angle,edge] C" Find the missing parts of a triangle with given parts [angle,edge] A, [angle,edge] B, [angle,edge] C, in counterclockwise order. The last two arguments default to "edge 1". Synonyms: [angle, ang], [edge, side], [help, h]. c=============================================================================== Command "triple": acceptable input lines include: "triple [help]" Display this message. "triple QNAME1 QNAME2 QNAME3 [PNAME]" Find any triple intersection of the three quadric surfaces QNAME1, QNAME2 and QNAME2 [near point PNAME]. Synonyms: [help, h], [point, pnt, pt, p]. c=============================================================================== Command "twist": acceptable input lines include: "twist [help]" Display this message. "twist point PNAME PAXIS VAXIS axial PITCH" Twist point PNAME around the axis through point PAXIS in the direction of vector VAXIS, with one clockwise rotation per axial distance PITCH, along the axis from point PAXIS. "twist point all PAXIS VAXIS axial PITCH" As above, for all points. "twist cluster CLNAME PAXIS VAXIS axial PITCH" As above, for all points in cluster CLNAME. "twist point PNAME PAXIS VAXIS radial PITCH RINV" Twist point PNAME around the axis through point PAXIS in the direction of vector VAXIS, with one clockwise rotation per radial distance PITCH from radius RINV. "twist point all PAXIS VAXIS radial PITCH RINV" As above, for all points. "twist cluster CLNAME PAXIS VAXIS radial PITCH RINV" As above, for all points in cluster CLNAME. Synonyms: [cluster, cl], [help, h], [point, pnt, pt, p], c=============================================================================== Command "undo": acceptable input lines include: "undo help" Display this message. "undo" Undo the last command (display with command "i geom.cmd $ ?"). "undo N" Undo the last N commands (display with command "i geom.cmd -M $ ?", where M = N - 1). Synonyms: [undo, u]. c=============================================================================== Command "variable": acceptable input lines include: "variable [help]" Display this message. "variable all" Display all named variables. "variable list [VARNAME1 VARNAME2 VARNAME3 ...]" Display all listed variables (default is all variables). "variable list VARNAME1 thru VARNAME2" Display named variables VARNAME1 thru VARNAME2. "variable VARNAME" Display named variable VARNAME. "variable VARNAME [=] FVAR" Create floating point variable VARNAME = FVAR. FVAR may be numerical or a floating point variable. "variable VARNAME [=] IVAR" Create integer variable VARNAME = IVAR. IVAR may be numerical or an integer variable. In the 2 commands above, "=" is optional if the next argument is numerical. "variable VARNAME big BIGNAME" Create variable VARNAME with the value of big integer BIGNAME, if it will fit in a machine word. "variable VARNAME pi" Create variable VARNAME = pi = acos(-1). "variable VARNAME deg/rad" Create variable VARNAME = 180 / pi. "variable VARNAME rad/deg" Create variable VARNAME = pi / 180. "variable VARNAME ebase" Create variable VARNAME = exp (1.0). "variable VARNAME rgold" Create variable VARNAME = (1+sqrt(5))/2. "variable VARNAME euler" Create variable VARNAME = 0.577215664901533861 "variable VARNAME random" Create variable VARNAME with a random value uniformly distributed between 0 and 1. "variable VARNAME random VMIN VMAX" Create variable VARNAME with a random value uniformly distributed between VMIN and VMAX. "variable VAR01 prime NUMPRIME" Create a series of NUMPRIME variables VAR01, ..., with names incremented by 1 character, with the values of the first NUMPRIME prime numbers. "variable VARNAME vector VNAME" Create variable VARNAME with the value of the length of the vector VNAME. Type for more help: "variable VARNAME tag 'VARTAG'" Give variable VARNAME the tag VARTAG (up to 48 characters). "variable VARNAME angle VNAME1 VNAME2" Create variable VARNAME with the value of the angle between the two vectors VNAME1 and VNAME2. "variable VARNAME dot VNAME1 VNAME2" Create variable VARNAME with the value of the dot product of the two vectors VNAME1 and VNAME2. "variable VARNAME triple VNAME1 VNAME2 VNAME3" Create variable VARNAME with the value of the scalar triple product of the three vectors: (VNAME1 cross VNAME2) dot VNAME3. "variable VARNAME distance" Create variable VARNAME with the value of the last distance found by command "distance", "side", "proximal", "track" or "walk". "variable VAR02 series NUMVAR INC VAR01 FADD FMULT" Create a series of NUMVAR variables VAR02, ..., with names incremented by INC characters, by adding FADD to FMULT times the value of the preceding variable, starting from variable VAR01. "variable VAR01 data F1 F2 F3 ... enddata" Create a series of variables VAR01, VAR02, ..., with names incremented by one character, with the values of the entries F1 F2 F3 ... in the following data table, up to the word "enddata". Everything after "data" may be on separate input lines. "variable VARNAME [=] K [+,-,*,/,^] L mod M" Create variable VARNAME with integer value K [+, -, *, /, ^] mod L, where K, L and M are integers. Type for more help: "variable VARNAME [=] A FUNCTION B" Create variable VARNAME with (FUNCTION, value): (+, A+B), (-, A-B), (*, A*B), (/, A/B), (**, A**B), (sqrt, A*sqrt(B)), (curt, A*B**(1/3)), (atan2, atan(A/B)), (exp, A*exp(B)), (log, A*alog(B)), (log10, A*log10(B)), (sin, A*sin(B)), (cos, A*cos(B)), (tan, A*tan(B)), (asin, A*asin(B)), (acos, A*acos(B)), (atan, A*atan(B)), (sinh, A*sinh(B)), (cosh, A*cosh(B)), (tanh, A*tanh(B)), (asinh, A*asinh(B)), (acosh, A*acosh(B)), (atanh, A*atanh(B)), (int, A*int(B)), (abs, A*abs(B)), (sign, sign(A,B)), (max, amax1(A,B)), (min, amin1(A,B)), (mod, amod(A,B)), (nint, A*nint(B)), (ran, random number from A to B), (gcd, gcd(A,B)), (lcm, lcm(A,B), (fact, A*B!), (avg, (A+B)/2), (root, A**(1/B). In the command above, "=" is optional if the next argument is numerical. "variable VARNAME [+,*,/] F1 F2 F3 ... FN" Create variable VARNAME with the value of the [sum, product, sum of reciprocals] of the values F1, F2, F3, ..., FN." "variable VARNAME polynomial XARG A(0) A(1) A(2) ... A(N)" Create variable VARNAME with the value of the polynomial function: A(0) + A(1) * XARG + A(2) * XARG^2 + ... + A(N) * XARG^N. Note: use +/- for VARNAME or VAR02 to incr/decr the last variable name: Note: a numerical variable will be an integer variable if its fractional difference from an integer is no more than the tolerance limit tol. Synonyms: [^, **], [angle, ang], [distance, dist], [dot, inner], [increment, incr], [help, h], [polynomial, poly], [random, ?], [tangent, tan], [variable, var, set, s], [vector, vect, v]. c=============================================================================== Command "vector": acceptable input lines include: "vector [help]" Display this message. "vector all" Display all vectors. "vector list [VNAME1 VNAME2 VNAME3 ...]" Display all listed vectors (default is all vectors). "vector VNAME" Display vector VNAME. "vector VNAME = DU DV DW [U|0] [V|0] [W|0]" Create vector VNAME with components DU, DV, DW. at bound point U, V, W, (defaults to [0, 0, 0]). The "=" is optional if argument DU is numerical. "vector VNAME unit" Change the length of vector VNAME to 1. "vector VNAME abs [ABSLEN|1]" Change the length of vector VNAME to ABSLEN [1]. "vector VNAME rel RATIO" Multiply the length of vector VNAME by the factor RATIO. "vector VNAME bound PNAME" Change the bound point of vector VNAME to point PNAME. "vector VNAME line ALNAME" Create vector VNAME same as line ALNAME. "vector VNAME point PNAME1 PNAME2 [rel [RELLEN|1]]" Create vector VNAME from point PNAME1 to point PNAME2, but with length RELLEN [1] times that distance. "vector VNAME point PNAME1 PNAME2 unit" Create vector VNAME from point PNAME1 toward point PNAME2, but with absolute length 1. "vector VNAME point PNAME1 PNAME2 [abs [ABSLEN|1]]" Create vector VNAME from point PNAME1 toward point PNAME2, but with absolute length ABSLEN [1]. "vector VNAME cross VNAME1 VNAME2" Create vector VNAME, the cross product of vectors VNAME1 and VNAME2. Type for more help. "vector VNAME triple VNAME1 VNAME2 VNAME3" Create vector VNAME, the vector triple product of vectors VNAME1, VNAME2 and VNAME3: VNAME1 cross (VNAME2 cross VNAME3) = (VNAME3 cross VNAME2) cross VNAME1. "vector VNAME project VNAME1 PLNAME" Create vector VNAME, the projection of vector VNAME1 on the plane PLNAME. "vector VNAME angle ANG1 VNAME1 ANG2 VNAME2" Create unit vector VNAME at angle ANG1 from vector VNAME1 and angle ANG2 from vector VNAME2. "vector VNAME sum VNAME1 VNAME2 [VMULT1|1 [VMULT2|1]]" Create vector VNAME, the weighted sum VMULT1 * VNAME1 + VMULT2 * VNAME2, where VMULT1 and VMULT2 default to 1. Type for more help. "vector VNAME proximal" Create vector VNAME, between the last pair of proximal points found by command "distance", "proximal", "side" or "track", or the net movement found by command "walk". "vector VNAME random" Create unit vector VNAME, randomly sampled from an isotropic distribution. "vector VNAME random VAXIS cosine [POWER|1]" Create unit vector VNAME, randomly sampled from a cosine-power distribution with power POWER, around the axis vector VAXIS. "vector VNAME random VAXIS angle ANGLE" Create unit vector VNAME, randomly sampled from a uniform azimuthal distribution at angle ANGLE from the axis vector VAXIS. "vector VNAME QTYPE QNAME" QTYPE must be: plane, sphere, cylinder, cone, hyperb, ellipsoid, axisym, quadric. Create vector VNAME from the center of quadric QNAME to the origin. "vector VNAME normal PNAME QNAME" Create vector VNAME, normal at point PNAME to quadric surface family QNAME. "vector VNAME02 rotate NUMV INC VNAME01 OPNAME PINV" Create a family of NUMV vectors VNAME02, ..., with names incremented by INC characters, by rotating the preceding vector with operator OPNAME and invariant point PINV, starting from vector VNAME01. "vector VNAME02 scale NUMV INC VNAME01 OPNAME PINV" Create a family of NUMV vectors VNAME02, ..., with names incremented by INC characters, by scaling the preceding vector with operator OPNAME and invariant point PINV, starting from vector VNAME01. Note: use +/- for VNAME or VNAME02 to incr/decr the last vector name: Synonyms: [angle, ang], [cosine, cos], [cylinder, cyl], [ellipsoid, ell, el], [help, h], [hyperb, saddle], [line, ln, l], [normal, norm], [plane, pl], [point, pnt, pt, p], [project, proj], [proximal, prox], [quadric, quad, q], [random, ?], [rel, *], [rotate, rot], [scale, sc], [sphere, sph], [sum, add], [vector, vect, v]. c=============================================================================== Command "volume": acceptable input lines include: "volume [help]" Display this message. "volume PAXIS VAXIS PNAME1 PNAME2 PNAME3 ..." Find the volume of revolution around the axis through point PAXIS with direction vector VAXIS, of the polygon with vertices PNAME1, PNAME2, PNAME3, ... Synonyms: [help, h]. c=============================================================================== Command "walk": acceptable input lines include: "walk [help]" to get this message. "walk PNAME [VNAME,?] DMEAN PATHMAX [DISTMAX|1.e99]" Randomly walk point PNAME, with initial direction vector [VNAME, random], mean free path DMEAN, until it walks a total path length PATHMAX, or reaches distance DISTMAX from its initial position, whichever occurs first. Note: Use command "define 'random walk'" for details. Note: if PATHMAX is reached first, the net radial distance is stored, and if DISTMAX is reached first, the total distance walked is stored, for use in command "variable VARNAME = distance". Synonyms: [help, h]. c=============================================================================== Command "when": acceptable input lines include: "when help" Display this message. "when" Display the date, hour and machine when the code was made, and the run started. Synonyms: [help, h]. c=============================================================================== Command "where": acceptable input lines include: "where [help]" Display this message. "where point PNAME OBJTYPE OBJNAME" See if point PNAME is in object type OBJTYPE (brick, tetrahedron or zone) with name OBJNAME. "where point PNAME OBJTYPE all" See if point PNAME is in any object type OBJTYPE (brick, tetrahedron or zone). "where point PNAME" See if point PNAME is in any brick, tetrahedron or zone. "where cluster CLNAME OBJTYPE OBJNAME" See if any points in cluster CLNAME are in object type OBJTYPE (brick, tetrahedron or zone) with name OBJNAME. "where cluster CLNAME OBJTYPE all" See if any points in cluster CLNAME are in any object type OBJTYPE (brick, tetrahedron or zone). "where cluster CLNAME" See if any points in cluster CLNAME are in any brick, tetrahedron or zone. "where point all OBJTYPE OBJNAME" See if any points are in object type OBJTYPE (brick, tetrahedron or zone) with name OBJNAME. "where point all OBJTYPE all" See if any points are in any object type OBJTYPE (brick, tetrahedron or zone). "where point all" See if any points are in any brick, tetrahedron or zone. Synonyms: [brick, br], [cluster, cl], [help, h], [point, pnt, pt, p], [tetrahedron, tetra, tet], [zone, zn, z]. c=============================================================================== Command "zone": acceptable input lines include: "zone [help]" Display this message. "zone all" Display all zones. "zone ZNAME" Display zone ZNAME. "zone list [ZNAME1 ZNAME2 ZNAME3 ...]" Display all listed zones (default is all zones). "zone ZNAME [=,&] [+,-|+] Q1 [+,-|+] Q2 [+,-|+] Q3 ..." Create [=] or add surfaces to [&] zone ZNAME, which is opposite the [+,-] side of quadric surface Q1, opposite the [+,-] side of quadric surface Q2, etc., where the + side is in the direction of the normal vector. "zone ZNAME volume ZVOL" Assign zone ZNAME volume ZVOL. "zone ZNAME02 increment NUMZN INC ZNAME01 IQ1 IQ2 ..." Create a family of NUMZN zones ZNAME02, ..., with names incremented by INC characters, by incrementing the names of the bounding surfaces of the preceding zone by the number of characters indicated by the integers IQ1, IQ2, ..., starting from zone ZNAME01. Type for more help. "zone ZNAME family IZU AQU IQU NQU" Create a family of NQU-1 zones ZNAME, ..., with names incremented by IZU characters, bounded by the NQU quadric surfaces AQU, ..., with names incremented by IQU characters, and ordered in the direction of their normal vectors. Note that the normal vector of a circular cone reverses direction at a vertex angle of 90 degrees. "zone ZNAME family IZU AQU IQU NQU family IZV AQV IQV NQV" Like the preceding command, but with each zone expanded to a family of NQV-1 zones, with names incremented by IZV characters, bounded by the NQV quadric surfaces AQV, ..., with names incremented by IQV characters, and ordered in the direction of their normal vectors. "zone ZNAME family IZU AQU IQU NQU family IZV AQV IQV NQV family IZW AQW IQW NQW" Like the preceding command, but with each zone expanded to a family of NQW-1 zones, with names incremented by IZW characters, bounded by the NQW quadric surfaces AQW, ..., with names incremented by IQW characters, and ordered in the direction of their normal vectors. Note: use +/- for ZNAME or ZNAME02 to incr/decr the last zone name: Synonyms: [help, h], [increment, incr], [zone, zn, z]. c=============================================================================== UCRL-WEB-209832