# Getting Started with OpenSees -- Gravity Loads
__NOTOC__
Gravity loads are independent of the type of lateral loading and here
they are considered part of the structural model.
<h2>Nodal Forces & Moments Calculations</h2>
Because the beam is an elastic element, the vertical load distributed
along the horizontal member can be represented by nodal forces and
moments. The nodal forces are distributed equally to the two end nodes.
The nodal bending moments are equal and opposite:
The nodal force is equal to one half of the superstructure
weight:
Force = (4000kip)/2 = 2000kip
the distributed load is calculated by dividing the total load by the
beam length:
DistributedLoad = (4000kip)/((42ft)*(12inch/ft))=7.94 kip/inch
The bending moment is then calculated from the distributed load:
Moment = (1/12)*(DistributedLoad)*(BeamLength)^2=(1/12)*(7.94
kip/inch)*(42*ft*12in/ft)^2 = 168074 kip-inch
<h2>Load-Pattern Definition</h2>
Like all loads in OpenSees, gravity loads require two steps. The
first step defines the load into a load pattern, the second applies the
load pattern and the associated gravity load. The plain pattern Command with a
linear time series is used in the load definition:
''pattern Plain $patternTag (TimeSeriesType arguments) {
-
load $nodeTag (ndf $LoadValues)
}''
```Tcl
pattern Plain 1 Linear { load 3 0.0 -2000
-168074 load 4 0.0 -2000 168074 }
```
<h2>Analysis Definition</h2>
- The constraints
Command is used to construct the ConstraintHandler object.
Constraints enforce a relationship between degrees-of-freedom. The
ConstraintHandler object determines how the constraint equations are
enforced in the analysis. The Transformation ContraintHadler is
recommended for transient analysis, but can be used in most
analyses.
```Tcl
constraints Transformation
```
- The numberer Command
is used to construct the DOF_Numberer object. The DOF_Numberer object
determines the mapping between equation numbers and degrees-of-freedom
-- how degrees-of-freedom are numbered. With the RCM numberer nodes are
assigned degrees-of-freedom using the Reverse Cuthill-McKee algorithm,
which makes the analysis more efficient for large models.
```Tcl
numberer RCM
```
- The system Command is
used to construct the LinearSOE and LinearSolver objects to store and
solve the system of equations in the analysis. The BandGeneral Command
is used to construct an un-symmetric banded system of equations object
which will be factored and solved during the analysis using the Lapack
band general solver
```Tcl
system BandGeneral
```
- The test Command is used
to construct a ConvergenceTest object. Certain SolutionAlgorithm objects
require a ConvergenceTest object to determine if convergence has been
achieved at the end of an iteration step. The convergence test is
applied to residual. The NormDispIncr test takes the followin input
format:
test NormDispIncr $tol $maxNumIter <$printFlag>
```Tcl
test NormDispIncr 1.0e-6 6
```
- The algorithm
Command is used to construct a SolutionAlgorithm object, which
determines the sequence of steps taken to solve the non-linear
equation.
```Tcl
algorithm Newton
```
- The integrator
Command is used to construct the Integrator object. The Integrator
object determines the meaning of the terms in the system of equation
object. The Integrator object is used for the following:
- determine the predictive step for time t+dt
- specify the tangent matrix and residual vector at any iteration
- determine the corrective step based on the displacement increment
dU
The type of integrator specified using the integrator Command is
dependent on whether it is a static analysis or transient analysis. The
gravity load is analyzed using the load-control integrator which takes
the following form: integrator LoadControl $dLambda1 <$Jd $minLambda
$maxLambda>
A load increment of 1/10 will be applied at each analysis step
```Tcl
integrator LoadControl 0.1
```
- The analysis Command
is used to construct the Analysis object. This analysis object is
constructed with the component objects previously created by the
analyst. All currently-available analysis objects employ incremental
solution strategies.
```Tcl
analysis Static
```
<h2>Analysis Execution</h2>
- The analyze Command
is used to apply the full gravity load in 10 steps with the load
increment defined above of 1/10.
- The loadConst
Command maintains the gravity load constant for the remainder of the
the analyses and resets the current time to zero.
The commands take the following formats:
analyze $numIncr <$dt> <$dtMin $dtMax $Jd>
<br> loadConst <-time $pseudoTime>
```Tcl
analyze 10 loadConst -time 0.0
```
Return to Getting Started with OpenSees