Program: Truss
By: Ben Axelrod

   This program will find the nodal displacements, reactions at the supports, stresses, 
and strains in all the axial force members of a 2D truss.  This is the third program of a
set of finite element modeling programs.  This program is great for classes like Statics,
Strength of Materials, any Finite Element Modeling class, and other similar engineering 
classes.  It can even do statically indeterminate trusses.  To use, follow the main menu.
 First select material, then nodes, then beams, and so on.  Detailed instructions are 
below.

MATERIAL:
   Enter the materials modulus of elasticity and cross-sectional area.  If you do not 
have the materials cross-sectional area, just make one up.  You will not be able to 
determine the displacements accurately, but the stresses, strains, and reactions will be 
correct.  

NODES:
   First enter the number of nodes you have.  Then you will have to enter the coordinates
of each node.  Do not put two nodes at the same location.  It is important to remember 
how you numbered your nodes, so write it down.  

BEAMS:
   Enter the number of beams you have.  Then enter the nodes at the ends of each beam.  
Quite a bit of pre-processing is done at this stage, so there will be a small wait 
between each beam.  It is important to remember how you numbered your beams, so write it 
down.

FORCES:
   First enter the number of forces you have.  Then enter at which node each force acts, 
and the X and Y components.

CONSTRAINTS:
   First enter the number of constraints you have.  This program can even do statically 
indeterminate trusses.  Then enter the node that the constraint is acting.  Next the 
program will ask constrained in the:  If you have a horizontal roller, enter Y because 
the support is constrained in the Y direction.  Same for the X direction.  If you have a 
pin type support that is constrained in both the X and Y directions, enter B.  B for 
both.  

SOLVE:
   Once you have completed all of the steps above, this will solve the problem.  The 
nodal displacements are saved in the list DISPL, and the reactions at the supports are 
saved in the list REACT.  These entries are listed in order of the node numbering, then 
in the X direction, then in the Y.  (Node 1 X displacement, Node 1 Y displacement, Node 2
X displacement, Node 2 Y displacement, and so on.)  To access these lists, press [2nd], 
[STAT].  The internal forces in each member are saved in the list FORCE, and the stresses
in each member are saved in the list STRES.  These are listed in order of the beam 
numbering.  (Beam 1, Beam 2, Beam 3, and so on.)  After the solution is complete, the 
program exits.  The matrices used for the program are not deleted.  This way you can 
reenter the program, change some parameters, and re-solve the system.  There are 
instructions below on reentering data.

EXIT:
   You can either choose to SAVE AND EXIT, or to CLEAR AND EXIT, or to go back to the 
main menu.  Clear and exit deletes matrices A through G and also deletes the DISPL, 
REACT, FORCE, and STRES lists.  Save and exit, quits the program without clearing the 
matrices used by the program.  Important, if you quit the program and wish to reenter it 
to solve the system later.  You must not save any values to the real numbers (A through 
Z).  This might cause the program to screw up.

NOTE:
   All numberings in this program start with the number 1.  (You cant have a node 0 or a
beam 0)  If you mess up entering your data, you can always go back and reenter it.  
However, if you have moved on to the next entry in the main menu, you should redo that 
one too.  (If you messed up with your nodes, and have already moved on to beams and 
forces.  You should redo nodes, beams, and forces.)   

If you have any questions or comments, please email me at: bmaxelro@syr.edu
