UM

Ultimate Motion

v 3.05 (first public release)

Created by:

   NΣθVIC a.k.a.

      Austin Everman

   The Malevolent

      Eugene O’Neill


I) What UM is.

          UM stands for Ultimate Motion; so what, I was getting hungry when I was doing this. It is a program designed for the ti-83+ and ti-83 (later to be ported to the 86 and 89/92+). It was designed to make calculations of motion much easier.


II) What can UM do?

          UM can solve linear (1D) and projectile (2D) motion problems. In a 2D situation it can graph the path of the projectile, show the angle at any given time, or distance. UM can also displays a “Text Report” and can handle stationary objects for collision. UM can calculate the collision, or lack of, in three situations. It can support a gravitaional constant (other than 9.80665) from another atmosphere. It does more, it has a database of all of the relevant equations.


III) The Specifics of UM

          1) UM is roughly a 10Kb prog.

          2) It has a series of 2 main menus, each with a “Quit” option

          3) It has 5 ‘independent’ functions


IV) Each part of UM

A. Menu 1

1)”1D motion”

a) Allows you to calculate two of the following values given three of the others:

          “Vi”=initial velocity

          “Vf”=final velocity

          “a”=acceleration

          “dX or dY”=change in X or Y

          “t”=change in time

b) Use: enter in the value of three (or four) of the knowns, enter X for the remaining unknown variables.


2)”2D motion”

a) calculates the following when given Vi (initial velocity), θ (launch angle), and Yi (initial height):

          Ymax            (max height reached)

          T @ Ymax    (time when Ymax is reached)

          X @ Ymax    (distance on x-axis when at Ymax)

          Total time     (time for object to hit Y=0, the ground)

          Range           (Xf-Xi or {Xf-0})

          Final speed   (speed on impact with ground {magnitude of velocity})

          Final angle    (angle on impact with ground {direction of velocity})

3)”Collision”

          a)add a projectile

                     calculates the time for two projectiles to collide.

          b)add a falling object (not implemented)

                     calculates the time for a projectile to hit a falling object.

          c)add a still object

                     calculates the height at which a projectile will hit an object and then graphs it

4)”View the graph”

          after running the 2D motion sequence, you can get a graph of the result

                     In graph keys:

                                [Y=] displays “projectile motion” on the grpah

                                [2nd] regraph

                                [+] Zoom In

                                [-] Zoom Out

                                [CLEAR] or [ENTER] return to main menu

                                [TRACE] allows you to trace along the projectiles path

                                [MODE] allows you to enter a ‘T’ and then calculates its position

5)”View the angle”

          find the angle (θ) and magnitude(Vf) of velocity at any given point, displays the angle.

                     In graph keys:

                                [Y=] displays angle (θ, at top of screen) and Vf (at bottom of screen) on the graph

                                [2nd] regraph

  [APPS] {[MATRIX] on the 83} allows you to enter in a time, distance, or height(?) and then calculates the velocity vector at the given, then it graphs it

                                           NOTE: “height” does not work properly

                                [GRAPH] displays an arrow showing the direction of velocity

6)”More>”

          goes to the next menu

7)”Quit”

          exits and ‘cleans up’, erases all of the used variables, lists and functions


B. Menu 2

1)”Text Report”

     displays a paragraph explaining the path of the projectile (it’s really pointless, I might omit it in the next version)

2)”Equation lists”

          displays all of the relevant equations used throughout the prog.

3)”Change g”

     allows you to apply a different value to the gravitational constant; as a default, g is set to 9.80665.

4) “About UM”

          displays the version and the creators

5)”Reset values”

          deletes most of the variables, functions, and, lists and defines g as 9.80665 again

6)”<Back”

          returns to previous menu


NOTES:

Moving between menus is a little slow.


C) What's wrong

“2D motion” cannot yet support a negative Yi {we might fix this later on} and Vi is redefined as the absolute value of Vi (you don’t need a negative velocity, just a negative angle).

“1D motion” cannot correctly solve when both of the velocities (Vi and Vf) are omitted, {If you have any suggestions on how to fix this, tell us} If three unknows (X) are entered, the prog enters into an eternal/infinite loop; you will have to press [ON] and then “1:Quit” to end the loop.


“Text Report” may sometimes be difficult to read; if one of the values gets too big, the text may be pushed off of the screen.


“Change g” takes the absolute value of what is entered, multiplies it by -1 and then stores it to acceleration for the y-axis.


The graphs are done using a “path” style; that is, a ball is graphed followed by a solid line. It takes a little longer to graph, but it just looks so cool.


To use many of the functions like “View the graph”, or “Text Report”, you have to use the “2D Motion” sequence first. Each time the prog is exited (no matter the fashion), the record of the “2D Motion” sequence is erased.


This program is intended for AP Physics, although there are other projectile motion progs, non (that we have seen) are as extensive as this.


Features for later versions:

          in “Collision”, objects can be thrown at different times

          optimize the code (make it smaller, faster, more efficient)

          convert code for 86, 89/92

          utilize only list so that variables are not deleted


What might happen:

          support for negative Yi values

                solve the reverses (enter in range instead of θ, etc.) {I’ll probably use an extended version of Cramer’s rule}

          implementation of air resistance

          optimize the code

          convert into Z80 assembly


V) Contact
          large_nostril@mad.scientist.com