Conductors

A coaxial formulation reads each terminal of a cable as a tubular conductor of inner radius $r_\mathrm{in}$ and outer radius $r_\mathrm{ex}$, a solid conductor when $r_\mathrm{in} = 0$. The internal impedance of the tube is the electromagnetic response inside the metal, given by three surface terms per unit length [1]: the inner surface impedance, the outer surface impedance and the transfer impedance through the wall. The loop recursion of the matrix formulation adds the outer surface impedance of a conductor and the inner surface impedance of the next conductor outward to the loop impedance of the conductor. The loop impedance less the transfer impedance adds to the entries between the conductor and each conductor inside it.

A stranded conductor or an armor enters as the equivalent tube of its terminal, which the data model builds: the tube spans the conductive regions and takes their direct-current resistance and geometric mean radius. A strand on a helix is longer than the cable by its overlength, so the resistance of the tube includes it, as Cable data model describes.

The resistivity of each conductor follows from its material at the operating temperature of the problem by the resistivity law, before the surface impedances are computed.

Internal impedance

LineCableModels.Engine.InternalImpedance — Module
LineCableModels.Engine.InternalImpedance

Compute the inner, outer, and transfer surface impedances of a tubular conductor.

Formulas

Formula{:schelkunoff1934}

Surface impedances of a homogeneous tubular conductor of inner radius $r_\mathrm{in}$ and outer radius $r_\mathrm{ex}$, from the cylindrical solution of the field inside the metal [1], with the modified Bessel functions $I_\nu$ and $K_\nu$:

\[\begin{aligned} z_\mathrm{inner} &= \frac{s \mu}{2 \pi w_\mathrm{in}} \frac{I_0(w_\mathrm{in}) K_1(w_\mathrm{ex}) + K_0(w_\mathrm{in}) I_1(w_\mathrm{ex})}{D}, \\ z_\mathrm{outer} &= \frac{s \mu}{2 \pi w_\mathrm{ex}} \frac{I_0(w_\mathrm{ex}) K_1(w_\mathrm{in}) + K_0(w_\mathrm{ex}) I_1(w_\mathrm{in})}{D}, \\ z_\mathrm{transfer} &= \frac{1}{2 \pi r_\mathrm{in} r_\mathrm{ex} \sigma D}, \end{aligned}\]

where $D = I_1(w_\mathrm{ex}) K_1(w_\mathrm{in}) - I_1(w_\mathrm{in}) K_1(w_\mathrm{ex})$, $w = m r$, $m = \sqrt{s \mu \sigma}$, $\mu = \mu_0 \mu_r$ and $\sigma = 1 / \rho$. Here $s$ is the complex frequency [1/s], $r$ is the radius of the corresponding conductor surface [m], $m$ is the radial wavenumber [1/m], $\sigma$ is the conductivity [S/m], $\rho$ is the resistivity [Ω·m], $\mu$ is the permeability [H/m] and $\mu_r$ is the relative permeability [dimensionless]. The constant $\mu_0$ is vacuum_permeability. The modified Bessel functions $I_\nu$ and $K_\nu$ have order $\nu$.

A solid conductor, with $r_\mathrm{in} = 0$, has no inner surface: its inner and transfer impedances are zero, and its outer impedance is $s \mu I_0(w_\mathrm{ex}) / (2 \pi w_\mathrm{ex} I_1(w_\mathrm{ex}))$. The implementation evaluates the Bessel functions in their exponentially scaled form.

source
LineCableModels.Engine.InternalImpedance.Formula — Type
struct Formula{ID, O<:LineCableModels.Commons.FormulationOptions} <: LineCableModels.Engine.AbstractInternalImpedance

Represent a formula for the surface impedances of a tubular conductor. Its options form a record of type FormulationOptions{Formula{ID}}, with ID the formula identifier.

  • options::LineCableModels.Commons.FormulationOptions: Options of the formula.
source
LineCableModels.Engine.InternalImpedance.Formula — Method
Formula(
    ::Val{ID};
    kw...
) -> LineCableModels.Engine.InternalImpedance.Formula

Build the formula named by ID with its declared defaults and supplied options.

Arguments

  • Val{ID}: formula identifier from FORMULAS.

Keywords

  • kw...: options declared by defaults for Formula{ID}.

Returns

  • A Formula with a typed option record.

Errors

  • Throws ArgumentError for an unknown identifier or option.
source
LineCableModels.Engine.impedance — Method
impedance(
    _::LineCableModels.Engine.InternalImpedance.Formula{:schelkunoff1934},
    r_in::Real,
    r_ex::Real,
    rho::Real,
    mu_r::Real,
    s::Complex{T<:Real}
) -> NamedTuple{(:inner, :outer, :transfer), <:Tuple{Any, Any, Any}}

Return the inner, outer, and transfer surface impedances of a tubular conductor by the formula Formula{:schelkunoff1934}, whose equations are in the section "Formulas" of InternalImpedance.

Arguments

  • Formula{:schelkunoff1934}: cylindrical surface-impedance formula.
  • r_in: inner radius [m].
  • r_ex: outer radius, in [m].
  • rho: resistivity [Ω·m].
  • mu_r: relative permeability [dimensionless].
  • s: complex frequency, j 2π f, in [1/s].

Returns

  • inner: impedance of the inner surface [Ω/m].
  • outer: impedance of the outer surface, in [Ω/m].
  • transfer: transfer impedance between the two surfaces [Ω/m].

Errors

  • Throws DomainError unless the radii are finite with 0 ≤ r_in < r_ex, rho and mu_r are positive and finite, and s is finite and nonzero.
source

Resistivity

LineCableModels.Engine.Resistivity — Module
LineCableModels.Engine.Resistivity

Compute conductor resistivity as a function of temperature.

Formulas

Formula{:linear}

Resistivity of a conductor at the temperature $\theta$, by the linear correction of its reference value [9]:

\[\rho(\theta) = \rho_0 \left[1 + \alpha (\theta - T_0)\right],\]

where $\rho_0$ is the resistivity rho of the material at the reference temperature $T_0$, the field T0 [°C], in [Ω·m], $\alpha$ is the temperature coefficient alpha [1/K], and $\theta$ is the conductor temperature [°C]. The law holds within 150 K of $T_0$ and returns an infinite resistivity unchanged.

source
LineCableModels.Engine.Resistivity.Formula — Type
struct Formula{ID, O<:LineCableModels.Commons.FormulationOptions} <: LineCableModels.Engine.AbstractResistivity

Represent a temperature law for conductor resistivity. Its options form a record of type FormulationOptions{Formula{ID}}, with ID the formula identifier.

  • options::LineCableModels.Commons.FormulationOptions: Options of the formula.
source
LineCableModels.Engine.Resistivity.Formula — Method
Formula(
    ::Val{ID};
    kw...
) -> LineCableModels.Engine.Resistivity.Formula

Build the formula named by ID with its declared defaults and supplied options.

Arguments

  • Val{ID}: formula identifier from FORMULAS.

Keywords

  • kw...: options declared by defaults for Formula{ID}.

Returns

  • A Formula with a typed option record.

Errors

  • Throws ArgumentError for an unknown identifier or option.
source
LineCableModels.Engine.resistivity — Method
resistivity(
    _::LineCableModels.Engine.Resistivity.Formula{:linear},
    material::Material{T<:Real},
    temperature::Real
) -> Any

Return the resistivity of material at temperature by the formula Formula{:linear}, whose equation is in the section "Formulas" of Resistivity.

Arguments

  • Formula{:linear}: linear temperature law.
  • material: material of the conductor.
  • temperature: temperature of the conductor [°C].

Returns

  • Resistivity [Ω·m].

Errors

  • Throws DomainError when the temperature difference from T0 is nonfinite or at least 150 K.
  • Throws DomainError when the factor in brackets is nonpositive or nonfinite.
source

Back to Contents