deformation
DeformationRte
DeformationRte(
tension_mean: ndarray,
cable_length: ndarray,
cable_section_area: float64,
linear_weight: float64,
young_modulus: float64,
dilatation_coefficient: float64,
temperature_reference: float64,
polynomial_conductor: Polynomial,
sagging_temperature: ndarray,
max_stress: ndarray | None = None,
**_,
)
Bases: IDeformation
This class implements the deformation model used by RTE.
Source code in src/mechaphlowers/core/models/cable/deformation.py
25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 | |
epsilon_mecha_polynomial
epsilon_mecha_polynomial() -> ndarray
Computes epsilon when the stress-strain relation is polynomial
Source code in src/mechaphlowers/core/models/cable/deformation.py
136 137 138 139 140 141 142 143 144 145 146 | |
epsilon_plastic
epsilon_plastic() -> ndarray
Computes elastic permanent strain.
Source code in src/mechaphlowers/core/models/cable/deformation.py
148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 | |
find_smallest_real_positive_root
find_smallest_real_positive_root(
poly_to_resolve: ndarray,
) -> ndarray
Find the smallest root that is real and positive for each polynomial
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
|
ndarray
|
array of polynomials to solve |
required |
Raises:
| Type | Description |
|---|---|
ValueError
|
if no real positive root has been found for at least one polynomial. |
Returns:
| Type | Description |
|---|---|
ndarray
|
np.ndarray: array of the roots (one per polynomial) |
Source code in src/mechaphlowers/core/models/cable/deformation.py
176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 | |
resolve_stress_strain_equation
resolve_stress_strain_equation(
highest_constraint: ndarray,
) -> ndarray
Solves \(\sigma = Polynomial(\varepsilon)\)
Source code in src/mechaphlowers/core/models/cable/deformation.py
166 167 168 169 170 171 172 173 174 | |
IDeformation
IDeformation(
tension_mean: ndarray,
cable_length: ndarray,
cable_section_area: float64,
linear_weight: float64,
young_modulus: float64,
dilatation_coefficient: float64,
temperature_reference: float64,
polynomial_conductor: Polynomial,
sagging_temperature: ndarray,
max_stress: ndarray | None = None,
**_,
)
Bases: ABC
This abstract class is a base class for models to compute relative cable deformations.
Source code in src/mechaphlowers/core/models/cable/deformation.py
25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 | |
L_0
abstractmethod
L_0() -> ndarray
Unstressed cable length, at a chosen reference temperature, whrer temperature_reference = 0°C
Source code in src/mechaphlowers/core/models/cable/deformation.py
74 75 76 | |
L_ref
abstractmethod
L_ref() -> ndarray
Unstressed cable length, at a chosen reference temperature, compared to the temperature reference
Source code in src/mechaphlowers/core/models/cable/deformation.py
70 71 72 | |
epsilon
abstractmethod
epsilon() -> ndarray
Total relative strain of the cable.
Source code in src/mechaphlowers/core/models/cable/deformation.py
78 79 80 | |
epsilon_mecha
abstractmethod
epsilon_mecha() -> ndarray
Mechanical part of the relative strain of the cable.
Source code in src/mechaphlowers/core/models/cable/deformation.py
82 83 84 | |
epsilon_therm
abstractmethod
epsilon_therm() -> ndarray
Thermal part of the relative deformation of the cable, compared to a temperature_reference.
Source code in src/mechaphlowers/core/models/cable/deformation.py
86 87 88 | |
epsilon_therm_0
abstractmethod
epsilon_therm_0() -> ndarray
Thermal part of the relative deformation of the cable, where temperature_reference = 0.
Source code in src/mechaphlowers/core/models/cable/deformation.py
90 91 92 | |