# Environmental Loads functions | OpenStaad Python

> Wind, seismic, response-spectrum, notional, temperature, strain, and self-weight loads, with their definitions.

Source: https://www.openstaad.com/docs/environmental-loads

Every function is a method of the session `s = ops.connect()` (`from openstaad import ops`).

## Add

### AddNotionalLoad

**Description**

Adds the notional load.

**Parameters**

- `varPrimaryLoadCaseList` (list): var primary load case list.
- `varPLFactorList` (list): var PL factor list.
- `varPLDirectionList` (list): var PL direction list.
- `varReferenceLoadCaseList` (list): var reference load case list.
- `varRLFactorList` (list): var RL factor list.
- `varRLDirectionList` (list): var RL direction list.

**Returns**

bool: `True` if the call succeeded, `False` otherwise.

**Example**

```python
from openstaad import ops

s = ops.connect()
result = s.AddNotionalLoad([1, 2], [1, 2], [1, 2], [1, 2], [1, 2], [1, 2])
print(result)
```

### AddResponseSpectrumLoad

**Description**

Adds the response spectrum load.

**Parameters**

- `rsaCode` (int): rsa code.
- `rsaCombination` (int): rsa combination.
- `varSet1Names` (list): var set 1 names.
- `varSet1Vals` (list): var set 1 vals.
- `varSet2Names` (list): var set 2 names.
- `varSet2Vals` (list): var set 2 vals.
- `varDataPairs` (list): var data pairs.

**Returns**

raw: The raw return value from the underlying OpenSTAAD COM call. Refer to the official Bentley OpenSTAAD API reference for this method's exact return semantics.

**Example**

```python
from openstaad import ops

s = ops.connect()
result = s.AddResponseSpectrumLoad(1, 1, [1, 2], [1, 2], [1, 2], [1, 2], [1, 2])
print(result)
```

### AddSelfWeightInXYZ

**Description**

Adds the self weight in XYZ.

**Parameters**

- `varInDirection` (int): var in direction.
- `varLoadFactor` (float): var load factor.

**Returns**

raw: The raw return value from the underlying OpenSTAAD COM call. Refer to the official Bentley OpenSTAAD API reference for this method's exact return semantics.

**Example**

```python
from openstaad import ops

s = ops.connect()
result = s.AddSelfWeightInXYZ(1, 1.0)
print(result)
```

### AddSelfWeightInXYZToGeometry

**Description**

Adds the self weight in XYZ to geometry.

**Parameters**

- `varGeomNumberIDs` (list): var geom number i ds.
- `varInDirection` (int): var in direction.
- `varLoadFactor` (float): var load factor.

**Returns**

raw: The raw return value from the underlying OpenSTAAD COM call. Refer to the official Bentley OpenSTAAD API reference for this method's exact return semantics.

**Example**

```python
from openstaad import ops

s = ops.connect()
result = s.AddSelfWeightInXYZToGeometry([1, 2], 1, 1.0)
print(result)
```

### AddStrainLoad

**Description**

Adds the strain load.

**Parameters**

- `elementIds` (list): element ids.
- `varAxialElong` (float): var axial elong.

**Returns**

bool: `True` if the call succeeded, `False` otherwise.

**Example**

```python
from openstaad import ops

s = ops.connect()
result = s.AddStrainLoad([1, 2], 1.0)
print(result)
```

### AddTemperatureLoad

**Description**

Adds the temperature load.

**Parameters**

- `elementIds` (list): element ids.
- `varTempAxialElong` (float): var temp axial elong.
- `varTempDiffTopAndBtm` (float): var temp diff top and btm.
- `varTemDiffSide` (float): var tem diff side.

**Returns**

bool: `True` if the call succeeded, `False` otherwise.

**Example**

```python
from openstaad import ops

s = ops.connect()
result = s.AddTemperatureLoad([1, 2], 1.0, 1.0, 1.0)
print(result)
```

### AddWindDefinition

**Description**

Adds the wind definition.

**Parameters**

- `varTypeNo` (int): var type no.
- `varTypeName` (str): var type name.

**Returns**

bool: `True` if the call succeeded, `False` otherwise.

**Example**

```python
from openstaad import ops

s = ops.connect()
result = s.AddWindDefinition(1, "value")
print(result)
```

### AddWindDefinitionASCE7Parameters

**Description**

Adds the wind definition ASCE 7 parameters.

**Parameters**

- `varTypeNo` (int): var type no.
- `code` (int): code.
- `windSpeed` (float): wind speed.
- `heightAboveSeaLvl` (float): height above sea lvl.
- `bldgclass` (int): bldgclass.
- `bldgtype` (int): bldgtype.
- `expCat` (int): exp cat.
- `varEscarpment` (bool): var escarpment.
- `wallType` (int): wall type.
- `varIsFlexible` (bool): var is flexible.
- `varEscarpmentData` (list): var escarpment data.
- `varbldgData` (list): varbldg data.
- `varUnitsData` (list): var units data.
- `varFactorsUserInput` (list): var factors user input.
- `varFactors` (list): var factors.

**Returns**

bool: `True` if the call succeeded, `False` otherwise.

**Example**

```python
from openstaad import ops

s = ops.connect()
result = s.AddWindDefinitionASCE7Parameters(1, 1, 1.0, 1.0, 1, 1, 1, True, 1, True, [1, 2], [1, 2], [1, 2], [1, 2], [1, 2])
print(result)
```

### AddWindExposure

**Description**

Adds the wind exposure.

**Parameters**

- `varTypeNo` (int): var type no.
- `varExposureFactor` (float): var exposure factor.
- `varNodeArray` (list): var node array.

**Returns**

bool: `True` if the call succeeded, `False` otherwise.

**Example**

```python
from openstaad import ops

s = ops.connect()
result = s.AddWindExposure(1, 1.0, [1, 2])
print(result)
```

### AddWindIntensity

**Description**

Adds the wind intensity.

**Parameters**

- `varTypeNo` (int): var type no.
- `varIntensity` (list): var intensity.
- `varHeight` (list): var height.

**Returns**

bool: `True` if the call succeeded, `False` otherwise.

**Example**

```python
from openstaad import ops

s = ops.connect()
result = s.AddWindIntensity(1, [1, 2], [1, 2])
print(result)
```

### AddWindLoad

**Description**

Adds the wind load.

**Parameters**

- `varTypeNo` (int): var type no.
- `varDirection` (int): var direction.
- `dFraction` (float): d fraction.
- `varOpenStructure` (int): var open structure.
- `dYMIN` (float): d YMIN.
- `dYMAX` (float): d YMAX.
- `dZMIN` (float): d ZMIN.
- `dZMAX` (float): d ZMAX.
- `dXMIN` (float): d XMIN.
- `dXMAX` (float): d XMAX.

**Returns**

bool: `True` if the call succeeded, `False` otherwise.

**Example**

```python
from openstaad import ops

s = ops.connect()
result = s.AddWindLoad(1, 1, 1.0, 1, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0)
print(result)
```

## Get

### GetBasePressures

**Description**

Returns the base pressures.

**Parameters**

- `loadCaseNo` (int): load case no.
- `nodelist` (list): nodelist.

**Returns**

tuple: A tuple of `(list[float], list[float], list[float])`.

**Example**

```python
from openstaad import ops

s = ops.connect()
result = s.GetBasePressures(1, [1, 2])
print(result)
```

### GetNotionalLoadByIndex

**Description**

Returns the notional load by index.

**Parameters**

- `nIndex` (int): n index.

**Returns**

list: A list of values.

**Example**

```python
from openstaad import ops

s = ops.connect()
result = s.GetNotionalLoadByIndex(1)
print(result)
```

### GetNotionalLoadCount

**Description**

Returns the notional load count.

**Parameters**

None.

**Returns**

raw: The raw return value from the underlying OpenSTAAD COM call. Refer to the official Bentley OpenSTAAD API reference for this method's exact return semantics.

**Example**

```python
from openstaad import ops

s = ops.connect()
result = s.GetNotionalLoadCount()
print(result)
```

## Delete

### DeleteWindDefinition

**Description**

Deletes the wind definition.

**Parameters**

- `nTypeNo` (int): n type no.

**Returns**

bool: `True` if the call succeeded, `False` otherwise.

**Example**

```python
from openstaad import ops

s = ops.connect()
result = s.DeleteWindDefinition(1)
print(result)
```

## Execute

### PerformCableAnalysis

**Description**

Performs the cable analysis.

**Parameters**

- `NoOfIterations` (int): no of iterations.
- `PrintOption` (int): print option.

**Returns**

None: This function does not return a value.

**Example**

```python
from openstaad import ops

s = ops.connect()
s.PerformCableAnalysis(1, 1)
```

### PerformCableAnalysisEx

**Description**

Performs the cable analysis ex.

**Parameters**

- `AdvancedCableAnalysis` (int): advanced cable analysis.
- `AdvOptions` (list): adv options.
- `Params` (list): params.
- `PrintOption` (int): print option.

**Returns**

raw: The raw return value from the underlying OpenSTAAD COM call. Refer to the official Bentley OpenSTAAD API reference for this method's exact return semantics.

**Example**

```python
from openstaad import ops

s = ops.connect()
result = s.PerformCableAnalysisEx(1, [1, 2], [1, 2], 1)
print(result)
```
