# Getting Started with OpenSees -- Lateral Loads -- Cyclic Lateral Load
The following commands assume that the example.tcl and the gravityloads.tcl files have been run. The wipe command should be used at the beginning of the input to clear any previous OpenSees-objects definition:
```Tcl wipe source example.tcl source gravityloads.tcl ```
In this analysis, a lateral displacement cycle (positive and negative) of a prescribed amplitude is imposed at the free nodes (3 and 4). The imposed displacements are applied using a displacement-control integrator, where the load factors are scaled to reach the desired displacement (compared to an imposed-displacement analysis). This method is the most efficient when you have a non-strength-degrading system.
The first step is to define the load pattern. To do so, we create a new load pattern (ID tag 3) for the lateral loads
```Tcl pattern Plain 3 Linear { load 3 100.0 0.0 0.0 load 4 100.0 0.0 0.0 } ``` Most of the analysis features that were defined in the gravity analysis are still valid since this type of analysis is also static. The loads, however, are applied differently. While gravity was applied as a load, using the LoadControl integrator, the DisplacementControl integrator is used in this pushover. Similarly, while in the pushover analysis a single load increment was used, variable load increments are used to reverse the loading from positive to negative, and back to positive.
The load is applied to node 3, in the direction of DOF 1, with a displacement increment of 1 for the first rise to amplitude 1, -2 for the reversal to amplitude -1, and again positive 1 for the reversal back to amplitude zero:
```Tcl integrator DisplacementControl 3 1 0.1 analyze 10 integrator DisplacementControl 3 1 -0.2 analyze 10 integrator DisplacementControl 3 1 0.1 analyze 10 ``` this can be put into a foreach loop: ```Tcl foreach Dincr {0.1 -0.2 0.1} { integrator DisplacementControl 3 1 $Dincr analyze 10 } ```
Return to Getting Started with OpenSees