# Material functions | OpenStaad Python

> Material definitions (isotropic steel, concrete, aluminum, timber, or custom; 2D/3D orthotropic) — modulus, density, Poisson, thermal. Assigned to members, plates, and solids.

Source: https://www.openstaad.com/docs/material

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

## Create

### CreateIsotropicMaterialAluminum

**Description**

Creates the isotropic material aluminum.

**Parameters**

- `material_name` (str): material name.
- `elasticity_mod` (float): elasticity mod.
- `poisson` (float): poisson.
- `shear_mod` (float): shear mod.
- `density` (float): density.
- `thermal_exp` (float): thermal exp.
- `damping_ratio` (float): damping ratio.
- `physical_flag` (int): physical flag.

**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.CreateIsotropicMaterialAluminum("value", 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1)
print(result)
```

### CreateIsotropicMaterialConcrete

**Description**

Creates the isotropic material concrete.

**Parameters**

- `name` (str): name.
- `elasticity` (float): elasticity.
- `poisson` (float): poisson.
- `shear_modulus` (float): shear modulus.
- `density` (float): density.
- `alpha` (float): alpha.
- `damping_ratio` (float): damping ratio.
- `compressive_strength` (float): compressive strength.
- `physical` (int): physical.

**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.CreateIsotropicMaterialConcrete("value", 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1)
print(result)
```

### CreateIsotropicMaterialProperties

**Description**

Creates the isotropic material properties.

**Parameters**

- `material_name` (str): material name.
- `elasticity_mod` (float): elasticity mod.
- `poisson` (float): poisson.
- `shear_mod` (float): shear mod.
- `density` (float): density.
- `coef_thermal_exp` (float): coef thermal exp.
- `damp_ratio` (float): damp ratio.

**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.CreateIsotropicMaterialProperties("value", 1.0, 1.0, 1.0, 1.0, 1.0, 1.0)
print(result)
```

### CreateIsotropicMaterialPropertiesEx

**Description**

Creates the isotropic material properties ex.

**Parameters**

- `material_name` (str): material name.
- `elasiticity` (float): elasiticity.
- `poisson` (float): poisson.
- `shear_modulus` (float): shear modulus.
- `density` (float): density.
- `alpha` (float): alpha.
- `damping_ratio` (float): damping ratio.
- `fy` (float): fy.
- `fu` (float): fu.
- `ry` (float): ry.
- `rt` (float): rt.
- `fcu` (float): fcu.

**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.CreateIsotropicMaterialPropertiesEx("value", 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0)
print(result)
```

### CreateIsotropicMaterialSteel

**Description**

Creates the isotropic material steel.

**Parameters**

- `name` (str): name.
- `elasticity_mod` (float): elasticity mod.
- `poisson_ratio` (float): poisson ratio.
- `shear_modulus` (float): shear modulus.
- `density` (float): density.
- `thermal_expansion` (float): thermal expansion.
- `damping_ratio` (float): damping ratio.
- `tensile_strength` (float): tensile strength.
- `yield_strength` (float): yield strength.
- `tensile_ratio` (float): tensile ratio.
- `yield_ratio` (float): yield ratio.
- `is_physical` (int): is physical.

**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.CreateIsotropicMaterialSteel("value", 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1)
print(result)
```

### CreateIsotropicMaterialTimber

**Description**

Creates the isotropic material timber.

**Parameters**

- `material_name` (str): material name.
- `elasticity` (float): elasticity.
- `poisson` (float): poisson.
- `shear_modulus` (float): shear modulus.
- `density` (float): density.
- `thermal_expansion` (float): thermal expansion.
- `damping_ratio` (float): damping ratio.
- `physical_flag` (int): physical flag.

**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.CreateIsotropicMaterialTimber("value", 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1)
print(result)
```

## Get

### GetIsotropicMaterialCount

**Description**

Returns the isotropic material 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.GetIsotropicMaterialCount()
print(result)
```

### GetIsotropicMaterialProperties

**Description**

Returns the isotropic material properties.

**Parameters**

- `material_number` (int): material number.

**Returns**

tuple: A tuple of `(raw, raw)`.

**Example**

```python
from openstaad import ops

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

### GetIsotropicMaterialPropertiesAssigned

**Description**

Returns the isotropic material properties assigned.

**Parameters**

- `material_no` (int): material no.

**Returns**

tuple: A tuple of `(raw, raw, int)`.

**Example**

```python
from openstaad import ops

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

### GetIsotropicMaterialPropertiesEx

**Description**

Returns the isotropic material properties ex.

**Parameters**

- `material_number` (int): material number.

**Returns**

tuple: A tuple of `(raw, raw)`.

**Example**

```python
from openstaad import ops

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

### GetMaterialProperty

**Description**

Returns the material property.

**Parameters**

- `MaterialName` (str): material name.

**Returns**

tuple: five floats, `(E, poisson, density, alpha, damping)`.

| Slot | Value | Unit (Metric / English base) |
|---|---|---|
| 1 | Modulus of elasticity | `kN/m²` / `kip/in²` |
| 2 | Poisson's ratio | dimensionless |
| 3 | Density | `kN/m³` / `kip/in³` |
| 4 | Thermal expansion coefficient | unchanged by the base unit |
| 5 | Critical damping ratio | dimensionless |

See [Base Units](/guides/base_units).

**Example**

```python
from openstaad import ops

s = ops.connect()
result = s.GetMaterialProperty("value")
print(result)
```

### GetMaterialPropertyEx

**Description**

Returns the material property ex.

**Parameters**

- `material_name` (str): material name.

**Returns**

tuple: A tuple of `float` values, one per output slot.

**Example**

```python
from openstaad import ops

s = ops.connect()
result = s.GetMaterialPropertyEx("value")
print(result)
```

### GetOrthotropic2DMaterialCount

**Description**

Returns the orthotropic 2 d material 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.GetOrthotropic2DMaterialCount()
print(result)
```

### GetOrthotropic2DMaterialProperties

**Description**

Returns the orthotropic 2 d material properties.

**Parameters**

- `material_no` (int): material no.

**Returns**

tuple: A tuple of `float` values, one per output slot.

**Example**

```python
from openstaad import ops

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

### GetOrthotropic3DMaterialCount

**Description**

Returns the orthotropic 3 d material 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.GetOrthotropic3DMaterialCount()
print(result)
```

### GetOrthotropic3DMaterialProperties

**Description**

Returns the orthotropic 3 d material properties.

**Parameters**

- `material_no` (int): material no.

**Returns**

tuple: A tuple of `float` values, one per output slot.

**Example**

```python
from openstaad import ops

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

### GetTypeForIsotropicMaterial

**Description**

Returns the type for isotropic material.

**Parameters**

- `material_name` (str): material name.

**Returns**

int: An integer value returned by STAAD.Pro for this call.

**Example**

```python
from openstaad import ops

s = ops.connect()
result = s.GetTypeForIsotropicMaterial("value")
print(result)
```

## Set/Assign

### SetMaterialName

**Description**

Sets the material name.

**Parameters**

- `material_name` (str): material name.

**Returns**

None: This function does not return a value.

**Example**

```python
from openstaad import ops

s = ops.connect()
s.SetMaterialName("value")
```

### SetTypeToIsotropicMaterial

**Description**

Sets the type to isotropic material.

**Parameters**

- `material_name` (str): material name.
- `material_type` (int): material type.

**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.SetTypeToIsotropicMaterial("value", 1)
print(result)
```

## Delete

### DeleteMaterial

**Description**

Deletes the material.

**Parameters**

- `material_name` (str): material name.

**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.DeleteMaterial("value")
print(result)
```
