We introduced a new postprocessing plot called "ERC" for calculation of emergency rating of cable systems or any transient step response of the temperatures of a cable system. The method uses state-space representation with cable and environment modeled as a lumped RC-ladder network.
Posted 2026-06-02
Categories:
New feature
, Plots
, User guides
The transient thermal response of a, mainly high-voltage, power cable system determines how much overload current it can safely carry during emergencies or contingency events. Unlike steady-state ampacity (which balances heat generation with continuous dissipation), emergency ratings rely on the cable's thermal mass. The insulation, conductor, and surrounding environment act as a buffer that absorbs heat before the conductor temperature climbs to dangerous levels.
This article presents the Emergency Rating of Cable systems (ERC) tool, a model that simulates the transient temperature rise of single- and multi-core cables in diverse installation environments: in free air, buried in soil and seabed, in ventilated tunnels and air-filled troughs. By solving the nonlinear heat diffusion equation with temperature-dependent conductor losses and realistic thermal coupling to the environment, ERC predicts the conductor temperature trajectory over minutes to hours, enabling accurate emergency ratings.
Free Air — Cable hangs or is mounted in unconditioned air. Change in heat loss from the cable causes a change in air film temperature which changes the thermal properties of the air and thus changes the thermal resistance of the air. In IEC 60287-2-1 this is calculated using iteratively a linearized formula. The same is done in our model with each time-step, which results in a dynamic air film temperature and therefore a variable boundary condition.
Buried — Cable is laid directly in homogeneous soil. The external resistance $R_{\text{ext}}$ becomes a multi-layer $R_{\text{soil}}$ consisting of at least 3 layers logarithmically distributed. The thermal resistance and capacitance is calculated for each layer depending on the given soil parameters and is constant during the transient.
Subsea — Similar to buried, but with seabed properties and the water is the equivalent to air above ground. ($R_{\text{soil}}$) is typically smaller than for onshore soil, enabling higher emergency ratings.
Tunnel — Cables are in a tunnel with mechanical ventilation at a prescribed air temperature (Cableizer or IEC method) and in tunnel without airflow (Heinhold method). The tunnel air provides a "near-ambient" boundary. The influence of change in tunnel wall temperature due to higher/lower losses is not considered, it is assumed that this is a constant bundary condition during the relatively short transient period.
Trough — Cables sit in an enclosed air-filled trough. The air inside warms due to all systems' losses, reducing this system's own surface-to-air temperature difference and lowering emergency ratings. The change in air temperature is considered in the same way as when installed in free air, in addition the thermal resistance between air and ambient through the trough itself is added. This resistance of the trough is actually temperature dependent but which is ignored in our model.
The cable and its environment are modeled as a lumped RC-ladder network, where each node represents a thermal mass. For simpler cables the model is reduced to three or even to two key thermal layers, capturing the dominant transient behavior without over-parameterization.
$$ \begin{align} \text{Cable Section:} \quad &\left[W_c \parallel C_1\right] \xrightarrow{R_1} \left[W_s \parallel C_2\right] \xrightarrow{R_2} \left[C_3\right] \xrightarrow{R_3} \left[W_{ar} \parallel C_4\right] \xrightarrow{R_4} \text{[Soil]} \\ \text{Soil Section:} \quad &R_{s0} \xrightarrow{} \left[R_{s1} \parallel C_{s1}\right] \xrightarrow{} \left[R_{s2} \parallel C_{s2}\right] \xrightarrow{} \cdots \xrightarrow{} \left[R_{sN} \parallel C_{sN}\right] \xrightarrow{} T_{\text{amb}} \end{align} $$For cables in free air there is a single layer $C_{\text{ext}}$ in place of the soil layers.
For cables in tunnels, it is assumed that the airspace is large enough such that the surface temperature of the inner tunnel wall remains basically constant over the short emergency period of a few hours and therefore there is only the air layer just like for cables in free air.
For cables in air-filled trough however, the $R_{\text{ext}}$ consists of two elements, namely the air layer plus the trough layer.
For tunnels, the model could be extended to include the tunnel wall as an additional layer analogue to the trough layer plus a multilayer soil could be added beyond the tunnel wall. However, this is not necessary for the short emergency rating period.
Thermal resistances
Thermal resistances of the cable, duct wall and soil layers are all constant. The thermal resistance of the air is temperature dependent and is updated through iteration. For simplicity, we keep the thermal tresistance of the duct air layer constant for the time being. This is also a conservative approach as the heat conductivity increases with higher temperature. We may include an update of the thermal resistance for each iteration in the future to improve the models accuracy.
Thermal capacitances
The thermal capacitances are considered to be constant which is true for the cable and soil layers but the air layers would be temperature dependent. However, as the thermal capacity of air is small anyhow we can simplify it by being constant.
State vector
The state vector $\theta(t)$ holds the temperature rise above ambient at each node. The dynamics are governed by:
$$\frac{d\theta}{dt} \;=\; A \cdot \theta \;+\; B \cdot W(t)$$
where $A$ is the state matrix, derived from the thermal resistances (per IEC 60287, 60853-2, own development) and capacitances of the cable layers and environment, and $W(t)$ is the heat-input vector, with conductor losses at node 1 and solar/boundary-shift contributions at the surface.
Temperature-dependent losses
Conductor ohmic losses scale with both current and temperature:
$$W_{\text{ohmic}}(T_c) \;=\; W_{I,2} \left[1 \;+\; \alpha_c(T_c - \theta_{c,1})\right] \;+\; W_{\text{const}}$$
where $W_{I,2}$ is the ohmic losses at the new current and reference temperature $\theta_{c,1}$, $\alpha_c$ is the conductor temperature coefficient (e.g., 0.004 K−1 for copper), and $W_{\text{const}}$ is the temperature-independent dielectric and protective-layer losses. This feedback loop creates a nonlinear system: hotter conductors dissipate more, which warms the cable further, modifying the convective heat shedding. The loop gain $k = \alpha_c \cdot W_{I,2} \cdot \Sigma R$ must remain $< 1$ for stability.
The losses are applied at the node where they occur which are most of all the ohmic losses $W_{c}$ in the conductor. If the cable has a screen and/or sheath layer the ohmic losses $W_{s}$ is calculated using the loss factor $\lambda_{1}$. The same applies in case of an existing armour layer with the ohmic losses $W_{ar}$ calculated with $\lambda_{2}$. The dielectric losses $W_{d}$ are split into two parts with half being applied to the conductor node and half to the screen/sheath node.
Multi-core cable aggregation
For a 2- or 3-core cable, all three conductors sit close together inside a shared jacket. Under symmetric loading (equal currents), they reach the same temperature. The model uses aggregated losses $W_{\text{total}} = n_{\text{cores}} \times W_{\text{per-core}}$, IEC 60287 multicore formulae for thermal resistances, and a single conductor node (no per-core resolution).
Variable thermal resistance of air
For cables in free air as well as in air-filled troughs, the thermal resistance per IEC 60287-2-1 is:
$$R_{\text{ext}}(\Delta\theta_s) \;=\; \frac{1}{\pi D_o h_{\text{bs}} (\Delta\theta_s)^{1/4}}$$
As the cable surface warms, $R_{\text{ext}}$ decreases, allowing more heat to escape. This temperature dependence is evaluated at each ODE step, providing a physically accurate coupling between surface temperature and convection. As inital value the result of $T_{4iii}$ from the steady-state calculation is used for cables in free air.
Thermal resistance and capacitance of air inside an enclosed air-space
For cables in air-filled troughs and in air-filled tunnels the resistance is calculated for air at the temperature as given by the steady-state calculation. The linearized formulas to calculate the air parameters from the air temperature are taken from IEC 60287.$$\text{Pr}_{air} \;=\; 0.715 - 2.5 \times 10^{-4} \cdot \theta_{air}$$ $$\nu_{air} \;=\; 1.32 \times 10^{-5} + 9.5 \times 10^{-8} \cdot \theta_{air}$$ $$k_{air} \;=\; 2.42 \times 10^{-2} + 7.2 \times 10^{-5} \cdot \theta_{air}$$ $$C_{v,air} \;=\; \frac{k_{air}}{\text{Pr}_{air} \cdot \nu_{air}}$$
The volume of the air is calculated depending on the dimensions of the trough or tunnel minus the space occupied by all the cables inside the air-space. Multiplying the resulting volume with the thermal conductivity $k_{air}$ results in the thermal resistance of the air $R_{air}$.
The thermal capacitance of the air $C_{air}$ is equal to the volumetric heat capacitance $C_{v,air}$ for cables in free air and in non-ventilated channels. In case of ventilated tunnels the volumetric heat capacitance needs to be multiplied with the air speed $V_{air}$.
Thermal resistance and capacitance of trough
For cables in air-filled trough, an additional layer with thermal resistance and capacitance of the trough is added to the circuit. The thermal resistance is taken as an input value $T_{tr}$ from the steady-state calculation. The thermal capacitance is calculated for the mass of the trough walls, floor and cover, under the assumption of it being made of concrete with a heat capacity of 1050 J/(g.K) and a density of 2400 kg/m3.
Thermal resistance and capacitance of backfill
Should the buried cables be inside a backfill the soil model is extended with an additional layer with dimension of the equivalent diameter of the backfill. Existing soil layers which are inside this diameter will now consider the same thermal resistivity as that of the backfill to determine the thermal resistance of those layers.
There is no extra input for the volumetric heat capacitance of the backfill material and so the same conditions are considered for both soil and backfill material when calculating the thermal capacitance of the soil layers.
As a baseline, we freeze conductor losses at the ambient temperature and solve the linearised eigenvalue problem:
$$\lambda_k = \text{eigenvalues of } A \quad \text{and} \quad \tau_k = -\frac{1}{\lambda_k} \quad \text{(time constants)}$$
This gives an analytical solution showing the step response as a sum of decaying exponentials. The dominant time constant ($\tau_{\text{dom}}$) characterises the cool-down transient.
The full nonlinear system is solved by Runge–Kutta 45 (scipy.integrate.solve_ivp), which handles temperature-dependent losses and variable convection at each step.
The steady state converges through a fixed-point iteration, capturing the final operating point where heat generation balances dissipation.
The matplotlib output generates a comprehensive temperature-vs-time chart over the simulation duration (typically 24 hours for emergency ratings). The plot displays:
The Y-axis spans temperature in °C with ticks every 10 °C. The X-axis shows time in hours (0 to 24) with major ticks every 1 hour. Light gridlines aid reading, and the legend is positioned to avoid obscuring curves. The title includes cable name, installation type, load factor, and peak conductor temperature achieved.
Interpretation Guide:
A steep initial rise (0–1 h) indicates insulation absorbing heat at the smallest time constant (~minutes).
The shoulder transition (1–4 h) shows sheath and outer layers heating with intermediate time constants active.
The asymptotic approach (4–24 h) marks all layers equilibrating toward steady state, governed by the slowest time constant.
If the conductor curve flattens below $\theta_{c,2}$, the emergency is safe. If it exceeds the threshold, the cable is unsafe at the given load/duration.
Each system in the ERC calculator requires a long list of parameters to model cable and duct, soil or air, ambient, and load which we group into System, Arrangement, and Load
1) System
Parameters of cable and duct and taken from the modelling or result of the ampacity calculation and therefore fixed for the ERC:
| Category | Parameter Name | Data type | Description |
|---|---|---|---|
| Cable | cable['n_c'] |
Int (constant) | Cable type defined by number of conductors, e.g. single-core, two-core, three-core cable |
cable['D_e'] |
Float (constant) | Outer diameter in mm | |
cable['alpha_c'] |
Float (constant) | Conductor temperature coefficient in K−1 (typical: 0.003–0.004 for copper) | |
cable['R_c1234'] |
Float (constant) | Thermal resistances (conductor layer, protective layer) in K·m/W, with a two to four-layer cable model with $R_{c1}$ to $R_{c4}$, depending on the cable type | |
cable['C_c1234'] |
Float (constant) | Thermal capacitance (conductor layer, protective layer) in J/(m·K), with a two to four-layer cable model with $C_{c1}$ to $C_{c4}$, depending on the cable type | |
cable['theta_c'], cable['theta_s'], cable['theta_ar'], cable['theta_e'] |
Float (constant) | Temperatures in °C of conductor, screen/sheath, armour (if available), outer sheath at the end of the rating calculation, defines initial condition | |
cable['lambda_1'], cable['lambda_2'] |
Float (constant) | Loss factors to calculate the ohmic losses in screen/sheath and armour depending on conductor current; values are kept constant | |
| Duct (optional) | duct['Do_d'], duct['Di_d'] |
Float (constant) | Duct outer/inner diameter in mm |
duct['T_4i'], duct['T_4ii'] |
Float (constant) | Thermal resistance of the air inside the duct and the duct wall (K·m/W) | |
duct['Q_di'], duct['Q_dii'] |
Float (constant) | Thermal capacitance of the air inside the duct and the duct wall (J/(m·K)); in normal designs the capacitance of the air inside the duct is very small and could be ignored. | |
cable['theta_dm'], cable['theta_di'], cable['theta_de'] |
Float (constant) | Temperatures in °C of air in duct, duct inner wall, duct outer wall at the end of the rating calculation, defines initial condition |
2) Arrangement
Some parameters are project-type specific and taken from the modelling or result of the ampacity calculation:
| Category | Parameter Name | Data type | Description |
|---|---|---|---|
| Ambient (all) | installation_type |
String (constant) | Installation environment: 'air', 'buried', 'subsea', 'tunnel', or 'trough' |
theta_a |
Float (constant) | Ambient temperature in °C (used as reference point for state vector) | |
theta_surf |
Float (variable) | Cable surface temperature at reference steady state (initialized from 1×I_rated) | |
R_ext |
Float (constant/variable) | External thermal resistance in K·m/W (computed from IEC formula for air; constant for buried/subsea and adaptive for air/tunnel/trough) | |
| Air (in air) | W_sun |
Float (constant) | Solar radiation heat input in W/m (typical: 0 - 50 W/m) |
| Soil (buried, subsea) | soil['rho_soil'], soil['c_p_soil'], soil['delta_soil'], soil['zeta_soil'] |
Float (constant) | Thermal resistivity in K·m/W, Volumetric heat capacity in J/(m³·K), thermal diffusivity in m$^2$/s), density of soil material in kg/m$^3$ |
R_soil, C_soil |
Float (constant) | Thermal resistance in K·m/W and thermal capacitance in J/(m³·K) calculated for a multilayer soil model around the cable/duct surface (minimum 3 layers) | |
| Trough | T_tr |
Float (constant) | Trough thermal resistance (trough air to outside) in K·m/W |
W_others |
Float (constant) | Heat generation from other systems in the trough in W/m | |
W_sum |
Float (variable) | Total heat generation (this system + others) in W/m; used for quasi-static trough-air rise; parameter is used to calculate the loss-depending ambient temperature increase for troughs (not yet implemented) |
3) Load
Of the parameters describing the load, those describing the precondition are taken from result of the ampacity calculation and fixed whereas the new load can be defined by load factor and current.
| Category | Parameter Name | Data type | Description |
|---|---|---|---|
| Existing load (precondition) | cable['I_c_1'] |
Float (constant) | Rated current per core in A |
cable['W_I_1'] |
Float (constant) | Ohmic losses at rated current, reference temp, per core in W/m (split into $W_c$, $W_s$, $W_{ar}$) | |
cable['W_d'] |
Float (constant) | Temperature-independent losses (dielectric) per core in W/m | |
| New load (emergency) | LF |
Float (input) | The load factor based on the quadratic mean method by Heinhold to calculate the losses, premissible input being 0.5–1.0 (50–100%) and with initial value taken from the rating calculation |
I_c_2 |
Float (input) | Emergency current in A, with initial value being I_c_1 |
|
theta_c_2 |
Float (input) | Target conductor temperature in °C (typical: 80–130, used as warning/limit threshold) |
Software-internal parameters include settings for solver.
method: ODE solver 'RK45' (default, adaptive) or 'RK23' (lower order)t_eval: Time vector in seconds, e.g. np.linspace(0, 24*3600, 4000) for 24 hoursrtol: Relative tolerance for adaptive step-size (default: 1e-6)atol: Absolute tolerance for adaptive step-size (default: 1e-9)Any arrangement can be modelled for cables being:
The calculation of cables/ducts in air-filled pipes is only an approximation. Here the thermal resistivity of the air inside the pipe is used to represent this airspace as a backfill. However, this values should be temperature-dependent. Furthermore, the significant thermal resistance of a polymeric protective pipe is not consider.
| Arrangement | Temperature step |
|---|
![]() |
![]() |
![]() |
The calculation can be made for all available arrangements.
| Arrangement | Temperature step | |
|---|---|---|
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |