525 kV subsea armored cables in flat formation

This example demonstrates how to model a three-phase system composed of 525 kV subsea armored cables. Each cable consists of a solid copper core, inner and outer semicon screens, XLPE insulation, a water-blocking layer, a lead sheath, a polyethylene jacket, a bedding and an armor of 68 steel wires under an outer jacket. The cables are buried at 1 m depth in a flat formation, with a horizontal spacing of 1 m, in a homogeneous earth of 1000 Ω·m.

This example covers:

  1. Obtaining the resistivity of a solid core from its specified DC resistance.
  2. Computing the line parameters of the nine conductors of the system.
  3. Eliminating the sheaths and armors of a system with both grounded at both ends.
  4. Evaluating the effect of a prescribed longitudinal wavenumber on the series impedance.

Load the package:

using LineCableModels

Core resistivity from the DC resistance

The cable data specify the DC resistance of the core at 20 °C, 0.0072 Ω/km, and its diameter, 60 mm. The resistivity of a solid core with this resistance is the product of the resistance per unit length and the cross-section of the core.

DC resistance per unit length and equivalent resistivity of the core:

core_r20 = 0.0072 / 1_000 # core_r20 [Ω/km], in [Ω/m]
core_rho = core_r20 * π * (0.06 / 2)^2 # from core_diameter [m], in [Ω·m]
2.035752039526186e-8

Materials

The water-blocking layer is made of the same material as the outer semicon screen. The steel of the armor has a relative permeability of 10.

Conductor, semicon, insulation and armor materials:

copper = Material(:conductor, core_rho, 1.0, 1.0, 20.0, 0.00393) # [Ω·m], [°C], [1/°C]
semicon_inner = Material(:semicon, 1_000.0, 1_000.0) # [Ω·m]
semicon_outer = Material(:semicon, 500.0, 1_000.0) # [Ω·m]
xlpe = Material(:insulator, 1.0e14, 2.4) # [Ω·m]
lead = Material(:conductor, 2.14e-7, 1.0, 0.999983, 20.0, 0.004) # [Ω·m], [°C], [1/°C]
pe = Material(:insulator, 1.97e14, 2.5) # [Ω·m]
pp = Material(:insulator, 1.0e15, 2.8) # [Ω·m]
steel = Material(:conductor, 1.38e-7, 1.0, 10.0, 20.0, 0.0045) # [Ω·m], [°C], [1/°C]
Material{Float64, :conductor}(1.38e-7, 1.0, 10.0, 20.0, 0.0045, 0.0, 90.0, 0.0, 0.0)

Cable design

The cable has three terminals, namely the core, the lead sheath and the armor.

Build the cable design and inspect its outer radius:

design = @cable "cable_525kv_subsea_armoured" begin
    @terminal :core begin
        core(copper; r = 0.06 / 2, tag = :core_conductor) # core_diameter / 2 [m]
    end
    screen(semicon_inner; t = 2.0e-3, tag = :core_semicon_inner) # inner_semicon_thickness [m]
    insulation(xlpe; t = 26.0e-3, tag = :core_insulation) # insulation_thickness [m]
    screen(semicon_outer; t = 1.8e-3, tag = :core_semicon_outer) # outer_semicon_thickness [m]
    screen(semicon_outer; t = 0.6e-3, tag = :core_water_blocking) # water_blocking_thickness [m]
    @terminal :sheath begin
        sheath(lead; t = 3.2e-3, tag = :sheath_lead) # lead_sheath_thickness [m]
    end
    jacket(pe; t = 3.3e-3, tag = :sheath_inner_pe) # inner_pe_thickness [m]
    bedding(pp; t = 1.0e-3, tag = :sheath_bedding) # bedding_thickness [m]
    @terminal :armor begin
        armor(steel; shape = Circle(6.0e-3 / 2), n = 68, # armor_wire_diameter / 2 [m]
            lay = LayRatio(10.019920548139554), tag = :armor_wires) # armor_lay_ratio
    end
    jacket(pp; t = 6.6e-3, tag = :armor_jacket) # jacket_thickness [m]
end
r_ex(design.outer) # [m]
0.0805

Equivalent coaxial representation

The function LineCableModels.flatten returns one tubular conductor per terminal. The tube of the solid core retains the resistivity of the core, whereas the tube of the armor takes the resistance of the wires along their helices.

Equivalent conductors, with radii in m and resistivity in Ω·m:

blueprint = LineCableModels.flatten(design)
[(terminal = conductor.terminal, r_in = conductor.r_in, r_ex = conductor.r_ex,
     rho = conductor.material.rho, mu_r = conductor.material.mu_r)
 for conductor in blueprint.conductors] # [m], [m], [Ω·m], [dimensionless]
3-element Vector{@NamedTuple{terminal::Int64, r_in::Float64, r_ex::Float64, rho::Float64, mu_r::Float64}}:
 (terminal = 1, r_in = 0.0, r_ex = 0.03, rho = 2.0357520395261862e-8, mu_r = 1.0)
 (terminal = 2, r_in = 0.0604, r_ex = 0.0636, rho = 2.14e-7, mu_r = 0.999983000000009)
 (terminal = 3, r_in = 0.0679, r_ex = 0.07390000000000001, rho = 2.0105571764705898e-7, mu_r = 2.317103883870523)

Three-phase system in flat formation

The core, sheath and armor of cable i are connected to conductors 3i − 2, 3i − 1 and 3i, respectively.

Homogeneous earth model and frequency range:

earth = homogeneous(rho = 1_000.0, eps_r = 10.0) # [Ω·m]
frequencies = 10.0 .^ range(-1, 7; length = 101) # [Hz]
101-element Vector{Float64}:
 0.1
 0.12022644346174127
 0.14454397707459277
 0.17378008287493754
 0.20892961308540392
 0.251188643150958
 0.3019951720402016
 0.36307805477010135
 0.436515832240166
 0.5248074602497725
 ⋮
 2.2908676527677746e6
 2.754228703338169e6
 3.3113112148259077e6
 3.9810717055349695e6
 4.786300923226381e6
 5.754399373371567e6
 6.918309709189363e6
 8.317637711026709e6
 1.0e7

Cable positions and cable system for a line 20 km long:

placements = [Placement(x, -1.0) for x in (-1.0, 0.0, 1.0)] # [m]
system = build(CableSystem, fill(design, 3), placements;
    connections = [(core = 3i - 2, sheath = 3i - 1, armor = 3i) for i in 1:3],
    id = "cable_525kv_subsea_armoured_ac_flat", line_length = 20_000.0) # [m]
CableSystem{Float64, Vector{CableDesign{Float64, Stack{Vector{AbstractCablePart}}, Vector{LineCableModels.DataModel.PlacedRegion}, Circle{Float64}}}, Vector{LineCableModels.DataModel.PlacedRegion}}("cable_525kv_subsea_armoured_ac_flat", 20000.0, CableDesign{Float64, Stack{Vector{AbstractCablePart}}, Vector{LineCableModels.DataModel.PlacedRegion}, Circle{Float64}}[CableDesign{Float64, Stack{Vector{AbstractCablePart}}, Vector{LineCableModels.DataModel.PlacedRegion}, Circle{Float64}}("cable_525kv_subsea_armoured", Stack{Vector{AbstractCablePart}}(AbstractCablePart[Terminal{Stack{Vector{AbstractCablePart}}}(:core, Stack{Vector{AbstractCablePart}}(AbstractCablePart[Region{Circle{Float64}, Material{Float64, :conductor}}(:core_conductor, Circle{Float64}(0.03, Placement{Float64}(0.0, 0.0, 0.0)), Material{Float64, :conductor}(2.035752039526186e-8, 1.0, 1.0, 20.0, 0.00393, 0.0, 90.0, 0.0, 0.0))])), Region{Offset{Float64}, Material{Float64, :semicon}}(:core_semicon_inner, Offset{Float64}(0.002), Material{Float64, :semicon}(1000.0, 1000.0, 1.0, 20.0, 0.0, 0.0, 90.0, 0.0, 0.0)), Region{Offset{Float64}, Material{Float64, :insulator}}(:core_insulation, Offset{Float64}(0.026), Material{Float64, :insulator}(1.0e14, 2.4, 1.0, 20.0, 0.0, 0.0, 90.0, 0.0, 0.0)), Region{Offset{Float64}, Material{Float64, :semicon}}(:core_semicon_outer, Offset{Float64}(0.0018), Material{Float64, :semicon}(500.0, 1000.0, 1.0, 20.0, 0.0, 0.0, 90.0, 0.0, 0.0)), Region{Offset{Float64}, Material{Float64, :semicon}}(:core_water_blocking, Offset{Float64}(0.0006), Material{Float64, :semicon}(500.0, 1000.0, 1.0, 20.0, 0.0, 0.0, 90.0, 0.0, 0.0)), Terminal{Stack{Vector{AbstractCablePart}}}(:sheath, Stack{Vector{AbstractCablePart}}(AbstractCablePart[Region{Offset{Float64}, Material{Float64, :conductor}}(:sheath_lead, Offset{Float64}(0.0032), Material{Float64, :conductor}(2.14e-7, 1.0, 0.999983, 20.0, 0.004, 0.0, 90.0, 0.0, 0.0))])), Region{Offset{Float64}, Material{Float64, :insulator}}(:sheath_inner_pe, Offset{Float64}(0.0033), Material{Float64, :insulator}(1.97e14, 2.5, 1.0, 20.0, 0.0, 0.0, 90.0, 0.0, 0.0)), Region{Offset{Float64}, Material{Float64, :insulator}}(:sheath_bedding, Offset{Float64}(0.001), Material{Float64, :insulator}(1.0e15, 2.8, 1.0, 20.0, 0.0, 0.0, 90.0, 0.0, 0.0)), Terminal{Stack{Vector{AbstractCablePart}}}(:armor, Stack{Vector{AbstractCablePart}}(AbstractCablePart[Enclosure{Region{Offset{Float64}, Material{Float64, :insulator}}, Lay{Helix{LayRatio{Float64}, Float64}, Repeat{CircularPattern{Float64, Offset{Float64}}, Region{Circle{Float64}, Material{Float64, :conductor}}}}}(Region{Offset{Float64}, Material{Float64, :insulator}}(:armor_wires_fill, Offset{Float64}(0.006), Material{Float64, :insulator}(Inf, 1.0, 1.0, 20.0, 0.0, 0.0, 90.0, 0.0, 0.0)), Lay{Helix{LayRatio{Float64}, Float64}, Repeat{CircularPattern{Float64, Offset{Float64}}, Region{Circle{Float64}, Material{Float64, :conductor}}}}(Helix{LayRatio{Float64}, Float64}(LayRatio{Float64}(10.019920548139554), 1, 0.0), Repeat{CircularPattern{Float64, Offset{Float64}}, Region{Circle{Float64}, Material{Float64, :conductor}}}(CircularPattern{Float64, Offset{Float64}}(68, Offset{Float64}(0.0), 0.0, 6.283185307179586, 0.0), Region{Circle{Float64}, Material{Float64, :conductor}}(:armor_wires, Circle{Float64}(0.003, Placement{Float64}(0.0, 0.0, 0.0)), Material{Float64, :conductor}(1.38e-7, 1.0, 10.0, 20.0, 0.0045, 0.0, 90.0, 0.0, 0.0)))))])), Region{Offset{Float64}, Material{Float64, :insulator}}(:armor_jacket, Offset{Float64}(0.0066), Material{Float64, :insulator}(1.0e15, 2.8, 1.0, 20.0, 0.0, 0.0, 90.0, 0.0, 0.0))]), LineCableModels.DataModel.PlacedRegion[LineCableModels.DataModel.PlacedRegion{Region{Circle{Float64}, Material{Float64, :conductor}}, Circle{Float64}}(Region{Circle{Float64}, Material{Float64, :conductor}}(:core_conductor, Circle{Float64}(0.03, Placement{Float64}(0.0, 0.0, 0.0)), Material{Float64, :conductor}(2.035752039526186e-8, 1.0, 1.0, 20.0, 0.00393, 0.0, 90.0, 0.0, 0.0)), Circle{Float64}(0.03, Placement{Float64}(0.0, 0.0, 0.0))), LineCableModels.DataModel.PlacedRegion{Region{Offset{Float64}, Material{Float64, :semicon}}, Annulus{Float64}}(Region{Offset{Float64}, Material{Float64, :semicon}}(:core_semicon_inner, Offset{Float64}(0.002), Material{Float64, :semicon}(1000.0, 1000.0, 1.0, 20.0, 0.0, 0.0, 90.0, 0.0, 0.0)), Annulus{Float64}(0.03, 0.032, Placement{Float64}(0.0, 0.0, 0.0))), LineCableModels.DataModel.PlacedRegion{Region{Offset{Float64}, Material{Float64, :insulator}}, Annulus{Float64}}(Region{Offset{Float64}, Material{Float64, :insulator}}(:core_insulation, Offset{Float64}(0.026), Material{Float64, :insulator}(1.0e14, 2.4, 1.0, 20.0, 0.0, 0.0, 90.0, 0.0, 0.0)), Annulus{Float64}(0.032, 0.057999999999999996, Placement{Float64}(0.0, 0.0, 0.0))), LineCableModels.DataModel.PlacedRegion{Region{Offset{Float64}, Material{Float64, :semicon}}, Annulus{Float64}}(Region{Offset{Float64}, Material{Float64, :semicon}}(:core_semicon_outer, Offset{Float64}(0.0018), Material{Float64, :semicon}(500.0, 1000.0, 1.0, 20.0, 0.0, 0.0, 90.0, 0.0, 0.0)), Annulus{Float64}(0.057999999999999996, 0.0598, Placement{Float64}(0.0, 0.0, 0.0))), LineCableModels.DataModel.PlacedRegion{Region{Offset{Float64}, Material{Float64, :semicon}}, Annulus{Float64}}(Region{Offset{Float64}, Material{Float64, :semicon}}(:core_water_blocking, Offset{Float64}(0.0006), Material{Float64, :semicon}(500.0, 1000.0, 1.0, 20.0, 0.0, 0.0, 90.0, 0.0, 0.0)), Annulus{Float64}(0.0598, 0.0604, Placement{Float64}(0.0, 0.0, 0.0))), LineCableModels.DataModel.PlacedRegion{Region{Offset{Float64}, Material{Float64, :conductor}}, Annulus{Float64}}(Region{Offset{Float64}, Material{Float64, :conductor}}(:sheath_lead, Offset{Float64}(0.0032), Material{Float64, :conductor}(2.14e-7, 1.0, 0.999983, 20.0, 0.004, 0.0, 90.0, 0.0, 0.0)), Annulus{Float64}(0.0604, 0.0636, Placement{Float64}(0.0, 0.0, 0.0))), LineCableModels.DataModel.PlacedRegion{Region{Offset{Float64}, Material{Float64, :insulator}}, Annulus{Float64}}(Region{Offset{Float64}, Material{Float64, :insulator}}(:sheath_inner_pe, Offset{Float64}(0.0033), Material{Float64, :insulator}(1.97e14, 2.5, 1.0, 20.0, 0.0, 0.0, 90.0, 0.0, 0.0)), Annulus{Float64}(0.0636, 0.0669, Placement{Float64}(0.0, 0.0, 0.0))), LineCableModels.DataModel.PlacedRegion{Region{Offset{Float64}, Material{Float64, :insulator}}, Annulus{Float64}}(Region{Offset{Float64}, Material{Float64, :insulator}}(:sheath_bedding, Offset{Float64}(0.001), Material{Float64, :insulator}(1.0e15, 2.8, 1.0, 20.0, 0.0, 0.0, 90.0, 0.0, 0.0)), Annulus{Float64}(0.0669, 0.0679, Placement{Float64}(0.0, 0.0, 0.0))), LineCableModels.DataModel.PlacedRegion{Region{Circle{Float64}, Material{Float64, :conductor}}, Circle{Float64}}(Region{Circle{Float64}, Material{Float64, :conductor}}(:armor_wires, Circle{Float64}(0.003, Placement{Float64}(0.0, 0.0, 0.0)), Material{Float64, :conductor}(1.38e-7, 1.0, 10.0, 20.0, 0.0045, 0.0, 90.0, 0.0, 0.0)), Circle{Float64}(0.003, Placement{Float64}(0.0709, 0.0, 0.0))), LineCableModels.DataModel.PlacedRegion{Region{Circle{Float64}, Material{Float64, :conductor}}, Circle{Float64}}(Region{Circle{Float64}, Material{Float64, :conductor}}(:armor_wires, Circle{Float64}(0.003, Placement{Float64}(0.0, 0.0, 0.0)), Material{Float64, :conductor}(1.38e-7, 1.0, 10.0, 20.0, 0.0045, 0.0, 90.0, 0.0, 0.0)), Circle{Float64}(0.003, Placement{Float64}(0.07059755309931795, 0.006541826685948111, 0.09239978392911156)))  …  LineCableModels.DataModel.PlacedRegion{Region{Circle{Float64}, Material{Float64, :conductor}}, Circle{Float64}}(Region{Circle{Float64}, Material{Float64, :conductor}}(:armor_wires, Circle{Float64}(0.003, Placement{Float64}(0.0, 0.0, 0.0)), Material{Float64, :conductor}(1.38e-7, 1.0, 10.0, 20.0, 0.0045, 0.0, 90.0, 0.0, 0.0)), Circle{Float64}(0.003, Placement{Float64}(0.05239573223094474, -0.047765021134540904, 5.543987035746694))), LineCableModels.DataModel.PlacedRegion{Region{Circle{Float64}, Material{Float64, :conductor}}, Circle{Float64}}(Region{Circle{Float64}, Material{Float64, :conductor}}(:armor_wires, Circle{Float64}(0.003, Placement{Float64}(0.0, 0.0, 0.0)), Material{Float64, :conductor}(1.38e-7, 1.0, 10.0, 20.0, 0.0045, 0.0, 90.0, 0.0, 0.0)), Circle{Float64}(0.003, Placement{Float64}(0.056579421414168975, -0.04272679571928929, 5.636386819675805))), LineCableModels.DataModel.PlacedRegion{Region{Circle{Float64}, Material{Float64, :conductor}}, Circle{Float64}}(Region{Circle{Float64}, Material{Float64, :conductor}}(:armor_wires, Circle{Float64}(0.003, Placement{Float64}(0.0, 0.0, 0.0)), Material{Float64, :conductor}(1.38e-7, 1.0, 10.0, 20.0, 0.0045, 0.0, 90.0, 0.0, 0.0)), Circle{Float64}(0.003, Placement{Float64}(0.060280394923229626, -0.03732404034800455, 5.728786603604917))), LineCableModels.DataModel.PlacedRegion{Region{Circle{Float64}, Material{Float64, :conductor}}, Circle{Float64}}(Region{Circle{Float64}, Material{Float64, :conductor}}(:armor_wires, Circle{Float64}(0.003, Placement{Float64}(0.0, 0.0, 0.0)), Material{Float64, :conductor}(1.38e-7, 1.0, 10.0, 20.0, 0.0045, 0.0, 90.0, 0.0, 0.0)), Circle{Float64}(0.003, Placement{Float64}(0.06346707735707394, -0.03160284942455655, 5.821186387534029))), LineCableModels.DataModel.PlacedRegion{Region{Circle{Float64}, Material{Float64, :conductor}}, Circle{Float64}}(Region{Circle{Float64}, Material{Float64, :conductor}}(:armor_wires, Circle{Float64}(0.003, Placement{Float64}(0.0, 0.0, 0.0)), Material{Float64, :conductor}(1.38e-7, 1.0, 10.0, 20.0, 0.0045, 0.0, 90.0, 0.0, 0.0)), Circle{Float64}(0.003, Placement{Float64}(0.06611228106476884, -0.025612034132669152, 5.91358617146314))), LineCableModels.DataModel.PlacedRegion{Region{Circle{Float64}, Material{Float64, :conductor}}, Circle{Float64}}(Region{Circle{Float64}, Material{Float64, :conductor}}(:armor_wires, Circle{Float64}(0.003, Placement{Float64}(0.0, 0.0, 0.0)), Material{Float64, :conductor}(1.38e-7, 1.0, 10.0, 20.0, 0.0045, 0.0, 90.0, 0.0, 0.0)), Circle{Float64}(0.003, Placement{Float64}(0.06819343810095287, -0.019402705996110697, 6.005985955392251))), LineCableModels.DataModel.PlacedRegion{Region{Circle{Float64}, Material{Float64, :conductor}}, Circle{Float64}}(Region{Circle{Float64}, Material{Float64, :conductor}}(:armor_wires, Circle{Float64}(0.003, Placement{Float64}(0.0, 0.0, 0.0)), Material{Float64, :conductor}(1.38e-7, 1.0, 10.0, 20.0, 0.0045, 0.0, 90.0, 0.0, 0.0)), Circle{Float64}(0.003, Placement{Float64}(0.06969279276758863, -0.013027840813194818, 6.098385739321364))), LineCableModels.DataModel.PlacedRegion{Region{Circle{Float64}, Material{Float64, :conductor}}, Circle{Float64}}(Region{Circle{Float64}, Material{Float64, :conductor}}(:armor_wires, Circle{Float64}(0.003, Placement{Float64}(0.0, 0.0, 0.0)), Material{Float64, :conductor}(1.38e-7, 1.0, 10.0, 20.0, 0.0045, 0.0, 90.0, 0.0, 0.0)), Circle{Float64}(0.003, Placement{Float64}(0.07059755309931795, -0.0065418266859481105, 6.190785523250475))), LineCableModels.DataModel.PlacedRegion{Region{Offset{Float64}, Material{Float64, :insulator}}, LineCableModels.DataModel.DifferenceShape{Float64, Annulus{Float64}, Vector{Circle{Float64}}}}(Region{Offset{Float64}, Material{Float64, :insulator}}(:armor_wires_fill, Offset{Float64}(0.006), Material{Float64, :insulator}(Inf, 1.0, 1.0, 20.0, 0.0, 0.0, 90.0, 0.0, 0.0)), LineCableModels.DataModel.DifferenceShape{Float64, Annulus{Float64}, Vector{Circle{Float64}}}(Annulus{Float64}(0.0679, 0.07390000000000001, Placement{Float64}(0.0, 0.0, 0.0)), Circle{Float64}[Circle{Float64}(0.003, Placement{Float64}(0.0709, 0.0, 0.0)), Circle{Float64}(0.003, Placement{Float64}(0.07059755309931795, 0.006541826685948111, 0.09239978392911156)), Circle{Float64}(0.003, Placement{Float64}(0.06969279276758863, 0.013027840813194838, 0.18479956785822313)), Circle{Float64}(0.003, Placement{Float64}(0.06819343810095288, 0.019402705996110676, 0.2771993517873347)), Circle{Float64}(0.003, Placement{Float64}(0.06611228106476884, 0.025612034132669145, 0.36959913571644626)), Circle{Float64}(0.003, Placement{Float64}(0.06346707735707392, 0.031602849424556566, 0.46199891964555784)), Circle{Float64}(0.003, Placement{Float64}(0.060280394923229653, 0.037324040348004524, 0.5543987035746694)), Circle{Float64}(0.003, Placement{Float64}(0.05657942141416898, 0.04272679571928928, 0.646798487503781)), Circle{Float64}(0.003, Placement{Float64}(0.052395732230944736, 0.04776502113454091, 0.7391982714328925)), Circle{Float64}(0.003, Placement{Float64}(0.04776502113454091, 0.052395732230944736, 0.831598055362004))  …  Circle{Float64}(0.003, Placement{Float64}(0.042726795719289265, -0.056579421414169, 5.359187467888471)), Circle{Float64}(0.003, Placement{Float64}(0.047765021134540925, -0.052395732230944715, 5.451587251817583)), Circle{Float64}(0.003, Placement{Float64}(0.05239573223094474, -0.047765021134540904, 5.543987035746694)), Circle{Float64}(0.003, Placement{Float64}(0.056579421414168975, -0.04272679571928929, 5.636386819675805)), Circle{Float64}(0.003, Placement{Float64}(0.060280394923229626, -0.03732404034800455, 5.728786603604917)), Circle{Float64}(0.003, Placement{Float64}(0.06346707735707394, -0.03160284942455655, 5.821186387534029)), Circle{Float64}(0.003, Placement{Float64}(0.06611228106476884, -0.025612034132669152, 5.91358617146314)), Circle{Float64}(0.003, Placement{Float64}(0.06819343810095287, -0.019402705996110697, 6.005985955392251)), Circle{Float64}(0.003, Placement{Float64}(0.06969279276758863, -0.013027840813194818, 6.098385739321364)), Circle{Float64}(0.003, Placement{Float64}(0.07059755309931795, -0.0065418266859481105, 6.190785523250475))])), LineCableModels.DataModel.PlacedRegion{Region{Offset{Float64}, Material{Float64, :insulator}}, Annulus{Float64}}(Region{Offset{Float64}, Material{Float64, :insulator}}(:armor_jacket, Offset{Float64}(0.0066), Material{Float64, :insulator}(1.0e15, 2.8, 1.0, 20.0, 0.0, 0.0, 90.0, 0.0, 0.0)), Annulus{Float64}(0.07390000000000001, 0.0805, Placement{Float64}(0.0, 0.0, 0.0)))], Circle{Float64}(0.0805, Placement{Float64}(0.0, 0.0, 0.0)), [(name = :core, scope = @NamedTuple{repeat::Int64, copy::Int64}[], regions = [1]), (name = :sheath, scope = @NamedTuple{repeat::Int64, copy::Int64}[], regions = [6]), (name = :armor, scope = @NamedTuple{repeat::Int64, copy::Int64}[], regions = [9, 10, 11, 12, 13, 14, 15, 16, 17, 18  …  67, 68, 69, 70, 71, 72, 73, 74, 75, 76])], @NamedTuple{at::Placement{Float64}, regions::Vector{Int64}, members::Vector{Int64}}[(at = Placement{Float64}(0.0, 0.0, 0.0), regions = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10  …  69, 70, 71, 72, 73, 74, 75, 76, 77, 78], members = [])], @NamedTuple{placements::Vector{Placement{Float64}}, copies::Vector{UnitRange{Int64}}}[(placements = [Placement{Float64}(0.0709, 0.0, 0.0), Placement{Float64}(0.07059755309931795, 0.006541826685948111, 0.09239978392911156), Placement{Float64}(0.06969279276758863, 0.013027840813194838, 0.18479956785822313), Placement{Float64}(0.06819343810095288, 0.019402705996110676, 0.2771993517873347), Placement{Float64}(0.06611228106476884, 0.025612034132669145, 0.36959913571644626), Placement{Float64}(0.06346707735707392, 0.031602849424556566, 0.46199891964555784), Placement{Float64}(0.060280394923229653, 0.037324040348004524, 0.5543987035746694), Placement{Float64}(0.05657942141416898, 0.04272679571928928, 0.646798487503781), Placement{Float64}(0.052395732230944736, 0.04776502113454091, 0.7391982714328925), Placement{Float64}(0.04776502113454091, 0.052395732230944736, 0.831598055362004)  …  Placement{Float64}(0.042726795719289265, -0.056579421414169, 5.359187467888471), Placement{Float64}(0.047765021134540925, -0.052395732230944715, 5.451587251817583), Placement{Float64}(0.05239573223094474, -0.047765021134540904, 5.543987035746694), Placement{Float64}(0.056579421414168975, -0.04272679571928929, 5.636386819675805), Placement{Float64}(0.060280394923229626, -0.03732404034800455, 5.728786603604917), Placement{Float64}(0.06346707735707394, -0.03160284942455655, 5.821186387534029), Placement{Float64}(0.06611228106476884, -0.025612034132669152, 5.91358617146314), Placement{Float64}(0.06819343810095287, -0.019402705996110697, 6.005985955392251), Placement{Float64}(0.06969279276758863, -0.013027840813194818, 6.098385739321364), Placement{Float64}(0.07059755309931795, -0.0065418266859481105, 6.190785523250475)], copies = [9:9, 10:10, 11:11, 12:12, 13:13, 14:14, 15:15, 16:16, 17:17, 18:18  …  67:67, 68:68, 69:69, 70:70, 71:71, 72:72, 73:73, 74:74, 75:75, 76:76])], [(repeat = 1, radii = [0.0709, 0.0709, 0.0709, 0.0709, 0.0709, 0.0709, 0.0709, 0.0709, 0.0709, 0.0709  …  0.0709, 0.0709, 0.0709, 0.0709, 0.0709, 0.0709, 0.07090000000000002, 0.0709, 0.07089999999999999, 0.0709], pitches = [1.4208247337261888, 1.4208247337261888, 1.4208247337261888, 1.4208247337261888, 1.4208247337261888, 1.4208247337261888, 1.4208247337261888, 1.4208247337261888, 1.4208247337261888, 1.4208247337261888  …  1.4208247337261888, 1.4208247337261888, 1.4208247337261888, 1.4208247337261888, 1.4208247337261888, 1.4208247337261888, 1.4208247337261892, 1.4208247337261888, 1.4208247337261886, 1.4208247337261888], overlengths = [1.048, 1.048, 1.048, 1.048, 1.048, 1.048, 1.048, 1.048, 1.048, 1.048  …  1.048, 1.048, 1.048, 1.048, 1.048, 1.048, 1.048, 1.048, 1.048, 1.048], axis = (0.0, 0.0))], @NamedTuple{repeat::Int64, factor::Float64}[], [(region = 77, contents = [9, 10, 11, 12, 13, 14, 15, 16, 17, 18  …  67, 68, 69, 70, 71, 72, 73, 74, 75, 76])]), CableDesign{Float64, Stack{Vector{AbstractCablePart}}, Vector{LineCableModels.DataModel.PlacedRegion}, Circle{Float64}}("cable_525kv_subsea_armoured", Stack{Vector{AbstractCablePart}}(AbstractCablePart[Terminal{Stack{Vector{AbstractCablePart}}}(:core, Stack{Vector{AbstractCablePart}}(AbstractCablePart[Region{Circle{Float64}, Material{Float64, :conductor}}(:core_conductor, Circle{Float64}(0.03, Placement{Float64}(0.0, 0.0, 0.0)), Material{Float64, :conductor}(2.035752039526186e-8, 1.0, 1.0, 20.0, 0.00393, 0.0, 90.0, 0.0, 0.0))])), Region{Offset{Float64}, Material{Float64, :semicon}}(:core_semicon_inner, Offset{Float64}(0.002), Material{Float64, :semicon}(1000.0, 1000.0, 1.0, 20.0, 0.0, 0.0, 90.0, 0.0, 0.0)), Region{Offset{Float64}, Material{Float64, :insulator}}(:core_insulation, Offset{Float64}(0.026), Material{Float64, :insulator}(1.0e14, 2.4, 1.0, 20.0, 0.0, 0.0, 90.0, 0.0, 0.0)), Region{Offset{Float64}, Material{Float64, :semicon}}(:core_semicon_outer, Offset{Float64}(0.0018), Material{Float64, :semicon}(500.0, 1000.0, 1.0, 20.0, 0.0, 0.0, 90.0, 0.0, 0.0)), Region{Offset{Float64}, Material{Float64, :semicon}}(:core_water_blocking, Offset{Float64}(0.0006), Material{Float64, :semicon}(500.0, 1000.0, 1.0, 20.0, 0.0, 0.0, 90.0, 0.0, 0.0)), Terminal{Stack{Vector{AbstractCablePart}}}(:sheath, Stack{Vector{AbstractCablePart}}(AbstractCablePart[Region{Offset{Float64}, Material{Float64, :conductor}}(:sheath_lead, Offset{Float64}(0.0032), Material{Float64, :conductor}(2.14e-7, 1.0, 0.999983, 20.0, 0.004, 0.0, 90.0, 0.0, 0.0))])), Region{Offset{Float64}, Material{Float64, :insulator}}(:sheath_inner_pe, Offset{Float64}(0.0033), Material{Float64, :insulator}(1.97e14, 2.5, 1.0, 20.0, 0.0, 0.0, 90.0, 0.0, 0.0)), Region{Offset{Float64}, Material{Float64, :insulator}}(:sheath_bedding, Offset{Float64}(0.001), Material{Float64, :insulator}(1.0e15, 2.8, 1.0, 20.0, 0.0, 0.0, 90.0, 0.0, 0.0)), Terminal{Stack{Vector{AbstractCablePart}}}(:armor, Stack{Vector{AbstractCablePart}}(AbstractCablePart[Enclosure{Region{Offset{Float64}, Material{Float64, :insulator}}, Lay{Helix{LayRatio{Float64}, Float64}, Repeat{CircularPattern{Float64, Offset{Float64}}, Region{Circle{Float64}, Material{Float64, :conductor}}}}}(Region{Offset{Float64}, Material{Float64, :insulator}}(:armor_wires_fill, Offset{Float64}(0.006), Material{Float64, :insulator}(Inf, 1.0, 1.0, 20.0, 0.0, 0.0, 90.0, 0.0, 0.0)), Lay{Helix{LayRatio{Float64}, Float64}, Repeat{CircularPattern{Float64, Offset{Float64}}, Region{Circle{Float64}, Material{Float64, :conductor}}}}(Helix{LayRatio{Float64}, Float64}(LayRatio{Float64}(10.019920548139554), 1, 0.0), Repeat{CircularPattern{Float64, Offset{Float64}}, Region{Circle{Float64}, Material{Float64, :conductor}}}(CircularPattern{Float64, Offset{Float64}}(68, Offset{Float64}(0.0), 0.0, 6.283185307179586, 0.0), Region{Circle{Float64}, Material{Float64, :conductor}}(:armor_wires, Circle{Float64}(0.003, Placement{Float64}(0.0, 0.0, 0.0)), Material{Float64, :conductor}(1.38e-7, 1.0, 10.0, 20.0, 0.0045, 0.0, 90.0, 0.0, 0.0)))))])), Region{Offset{Float64}, Material{Float64, :insulator}}(:armor_jacket, Offset{Float64}(0.0066), Material{Float64, :insulator}(1.0e15, 2.8, 1.0, 20.0, 0.0, 0.0, 90.0, 0.0, 0.0))]), LineCableModels.DataModel.PlacedRegion[LineCableModels.DataModel.PlacedRegion{Region{Circle{Float64}, Material{Float64, :conductor}}, Circle{Float64}}(Region{Circle{Float64}, Material{Float64, :conductor}}(:core_conductor, Circle{Float64}(0.03, Placement{Float64}(0.0, 0.0, 0.0)), Material{Float64, :conductor}(2.035752039526186e-8, 1.0, 1.0, 20.0, 0.00393, 0.0, 90.0, 0.0, 0.0)), Circle{Float64}(0.03, Placement{Float64}(0.0, 0.0, 0.0))), LineCableModels.DataModel.PlacedRegion{Region{Offset{Float64}, Material{Float64, :semicon}}, Annulus{Float64}}(Region{Offset{Float64}, Material{Float64, :semicon}}(:core_semicon_inner, Offset{Float64}(0.002), Material{Float64, :semicon}(1000.0, 1000.0, 1.0, 20.0, 0.0, 0.0, 90.0, 0.0, 0.0)), Annulus{Float64}(0.03, 0.032, Placement{Float64}(0.0, 0.0, 0.0))), LineCableModels.DataModel.PlacedRegion{Region{Offset{Float64}, Material{Float64, :insulator}}, Annulus{Float64}}(Region{Offset{Float64}, Material{Float64, :insulator}}(:core_insulation, Offset{Float64}(0.026), Material{Float64, :insulator}(1.0e14, 2.4, 1.0, 20.0, 0.0, 0.0, 90.0, 0.0, 0.0)), Annulus{Float64}(0.032, 0.057999999999999996, Placement{Float64}(0.0, 0.0, 0.0))), LineCableModels.DataModel.PlacedRegion{Region{Offset{Float64}, Material{Float64, :semicon}}, Annulus{Float64}}(Region{Offset{Float64}, Material{Float64, :semicon}}(:core_semicon_outer, Offset{Float64}(0.0018), Material{Float64, :semicon}(500.0, 1000.0, 1.0, 20.0, 0.0, 0.0, 90.0, 0.0, 0.0)), Annulus{Float64}(0.057999999999999996, 0.0598, Placement{Float64}(0.0, 0.0, 0.0))), LineCableModels.DataModel.PlacedRegion{Region{Offset{Float64}, Material{Float64, :semicon}}, Annulus{Float64}}(Region{Offset{Float64}, Material{Float64, :semicon}}(:core_water_blocking, Offset{Float64}(0.0006), Material{Float64, :semicon}(500.0, 1000.0, 1.0, 20.0, 0.0, 0.0, 90.0, 0.0, 0.0)), Annulus{Float64}(0.0598, 0.0604, Placement{Float64}(0.0, 0.0, 0.0))), LineCableModels.DataModel.PlacedRegion{Region{Offset{Float64}, Material{Float64, :conductor}}, Annulus{Float64}}(Region{Offset{Float64}, Material{Float64, :conductor}}(:sheath_lead, Offset{Float64}(0.0032), Material{Float64, :conductor}(2.14e-7, 1.0, 0.999983, 20.0, 0.004, 0.0, 90.0, 0.0, 0.0)), Annulus{Float64}(0.0604, 0.0636, Placement{Float64}(0.0, 0.0, 0.0))), LineCableModels.DataModel.PlacedRegion{Region{Offset{Float64}, Material{Float64, :insulator}}, Annulus{Float64}}(Region{Offset{Float64}, Material{Float64, :insulator}}(:sheath_inner_pe, Offset{Float64}(0.0033), Material{Float64, :insulator}(1.97e14, 2.5, 1.0, 20.0, 0.0, 0.0, 90.0, 0.0, 0.0)), Annulus{Float64}(0.0636, 0.0669, Placement{Float64}(0.0, 0.0, 0.0))), LineCableModels.DataModel.PlacedRegion{Region{Offset{Float64}, Material{Float64, :insulator}}, Annulus{Float64}}(Region{Offset{Float64}, Material{Float64, :insulator}}(:sheath_bedding, Offset{Float64}(0.001), Material{Float64, :insulator}(1.0e15, 2.8, 1.0, 20.0, 0.0, 0.0, 90.0, 0.0, 0.0)), Annulus{Float64}(0.0669, 0.0679, Placement{Float64}(0.0, 0.0, 0.0))), LineCableModels.DataModel.PlacedRegion{Region{Circle{Float64}, Material{Float64, :conductor}}, Circle{Float64}}(Region{Circle{Float64}, Material{Float64, :conductor}}(:armor_wires, Circle{Float64}(0.003, Placement{Float64}(0.0, 0.0, 0.0)), Material{Float64, :conductor}(1.38e-7, 1.0, 10.0, 20.0, 0.0045, 0.0, 90.0, 0.0, 0.0)), Circle{Float64}(0.003, Placement{Float64}(0.0709, 0.0, 0.0))), LineCableModels.DataModel.PlacedRegion{Region{Circle{Float64}, Material{Float64, :conductor}}, Circle{Float64}}(Region{Circle{Float64}, Material{Float64, :conductor}}(:armor_wires, Circle{Float64}(0.003, Placement{Float64}(0.0, 0.0, 0.0)), Material{Float64, :conductor}(1.38e-7, 1.0, 10.0, 20.0, 0.0045, 0.0, 90.0, 0.0, 0.0)), Circle{Float64}(0.003, Placement{Float64}(0.07059755309931795, 0.006541826685948111, 0.09239978392911156)))  …  LineCableModels.DataModel.PlacedRegion{Region{Circle{Float64}, Material{Float64, :conductor}}, Circle{Float64}}(Region{Circle{Float64}, Material{Float64, :conductor}}(:armor_wires, Circle{Float64}(0.003, Placement{Float64}(0.0, 0.0, 0.0)), Material{Float64, :conductor}(1.38e-7, 1.0, 10.0, 20.0, 0.0045, 0.0, 90.0, 0.0, 0.0)), Circle{Float64}(0.003, Placement{Float64}(0.05239573223094474, -0.047765021134540904, 5.543987035746694))), LineCableModels.DataModel.PlacedRegion{Region{Circle{Float64}, Material{Float64, :conductor}}, Circle{Float64}}(Region{Circle{Float64}, Material{Float64, :conductor}}(:armor_wires, Circle{Float64}(0.003, Placement{Float64}(0.0, 0.0, 0.0)), Material{Float64, :conductor}(1.38e-7, 1.0, 10.0, 20.0, 0.0045, 0.0, 90.0, 0.0, 0.0)), Circle{Float64}(0.003, Placement{Float64}(0.056579421414168975, -0.04272679571928929, 5.636386819675805))), LineCableModels.DataModel.PlacedRegion{Region{Circle{Float64}, Material{Float64, :conductor}}, Circle{Float64}}(Region{Circle{Float64}, Material{Float64, :conductor}}(:armor_wires, Circle{Float64}(0.003, Placement{Float64}(0.0, 0.0, 0.0)), Material{Float64, :conductor}(1.38e-7, 1.0, 10.0, 20.0, 0.0045, 0.0, 90.0, 0.0, 0.0)), Circle{Float64}(0.003, Placement{Float64}(0.060280394923229626, -0.03732404034800455, 5.728786603604917))), LineCableModels.DataModel.PlacedRegion{Region{Circle{Float64}, Material{Float64, :conductor}}, Circle{Float64}}(Region{Circle{Float64}, Material{Float64, :conductor}}(:armor_wires, Circle{Float64}(0.003, Placement{Float64}(0.0, 0.0, 0.0)), Material{Float64, :conductor}(1.38e-7, 1.0, 10.0, 20.0, 0.0045, 0.0, 90.0, 0.0, 0.0)), Circle{Float64}(0.003, Placement{Float64}(0.06346707735707394, -0.03160284942455655, 5.821186387534029))), LineCableModels.DataModel.PlacedRegion{Region{Circle{Float64}, Material{Float64, :conductor}}, Circle{Float64}}(Region{Circle{Float64}, Material{Float64, :conductor}}(:armor_wires, Circle{Float64}(0.003, Placement{Float64}(0.0, 0.0, 0.0)), Material{Float64, :conductor}(1.38e-7, 1.0, 10.0, 20.0, 0.0045, 0.0, 90.0, 0.0, 0.0)), Circle{Float64}(0.003, Placement{Float64}(0.06611228106476884, -0.025612034132669152, 5.91358617146314))), LineCableModels.DataModel.PlacedRegion{Region{Circle{Float64}, Material{Float64, :conductor}}, Circle{Float64}}(Region{Circle{Float64}, Material{Float64, :conductor}}(:armor_wires, Circle{Float64}(0.003, Placement{Float64}(0.0, 0.0, 0.0)), Material{Float64, :conductor}(1.38e-7, 1.0, 10.0, 20.0, 0.0045, 0.0, 90.0, 0.0, 0.0)), Circle{Float64}(0.003, Placement{Float64}(0.06819343810095287, -0.019402705996110697, 6.005985955392251))), LineCableModels.DataModel.PlacedRegion{Region{Circle{Float64}, Material{Float64, :conductor}}, Circle{Float64}}(Region{Circle{Float64}, Material{Float64, :conductor}}(:armor_wires, Circle{Float64}(0.003, Placement{Float64}(0.0, 0.0, 0.0)), Material{Float64, :conductor}(1.38e-7, 1.0, 10.0, 20.0, 0.0045, 0.0, 90.0, 0.0, 0.0)), Circle{Float64}(0.003, Placement{Float64}(0.06969279276758863, -0.013027840813194818, 6.098385739321364))), LineCableModels.DataModel.PlacedRegion{Region{Circle{Float64}, Material{Float64, :conductor}}, Circle{Float64}}(Region{Circle{Float64}, Material{Float64, :conductor}}(:armor_wires, Circle{Float64}(0.003, Placement{Float64}(0.0, 0.0, 0.0)), Material{Float64, :conductor}(1.38e-7, 1.0, 10.0, 20.0, 0.0045, 0.0, 90.0, 0.0, 0.0)), Circle{Float64}(0.003, Placement{Float64}(0.07059755309931795, -0.0065418266859481105, 6.190785523250475))), LineCableModels.DataModel.PlacedRegion{Region{Offset{Float64}, Material{Float64, :insulator}}, LineCableModels.DataModel.DifferenceShape{Float64, Annulus{Float64}, Vector{Circle{Float64}}}}(Region{Offset{Float64}, Material{Float64, :insulator}}(:armor_wires_fill, Offset{Float64}(0.006), Material{Float64, :insulator}(Inf, 1.0, 1.0, 20.0, 0.0, 0.0, 90.0, 0.0, 0.0)), LineCableModels.DataModel.DifferenceShape{Float64, Annulus{Float64}, Vector{Circle{Float64}}}(Annulus{Float64}(0.0679, 0.07390000000000001, Placement{Float64}(0.0, 0.0, 0.0)), Circle{Float64}[Circle{Float64}(0.003, Placement{Float64}(0.0709, 0.0, 0.0)), Circle{Float64}(0.003, Placement{Float64}(0.07059755309931795, 0.006541826685948111, 0.09239978392911156)), Circle{Float64}(0.003, Placement{Float64}(0.06969279276758863, 0.013027840813194838, 0.18479956785822313)), Circle{Float64}(0.003, Placement{Float64}(0.06819343810095288, 0.019402705996110676, 0.2771993517873347)), Circle{Float64}(0.003, Placement{Float64}(0.06611228106476884, 0.025612034132669145, 0.36959913571644626)), Circle{Float64}(0.003, Placement{Float64}(0.06346707735707392, 0.031602849424556566, 0.46199891964555784)), Circle{Float64}(0.003, Placement{Float64}(0.060280394923229653, 0.037324040348004524, 0.5543987035746694)), Circle{Float64}(0.003, Placement{Float64}(0.05657942141416898, 0.04272679571928928, 0.646798487503781)), Circle{Float64}(0.003, Placement{Float64}(0.052395732230944736, 0.04776502113454091, 0.7391982714328925)), Circle{Float64}(0.003, Placement{Float64}(0.04776502113454091, 0.052395732230944736, 0.831598055362004))  …  Circle{Float64}(0.003, Placement{Float64}(0.042726795719289265, -0.056579421414169, 5.359187467888471)), Circle{Float64}(0.003, Placement{Float64}(0.047765021134540925, -0.052395732230944715, 5.451587251817583)), Circle{Float64}(0.003, Placement{Float64}(0.05239573223094474, -0.047765021134540904, 5.543987035746694)), Circle{Float64}(0.003, Placement{Float64}(0.056579421414168975, -0.04272679571928929, 5.636386819675805)), Circle{Float64}(0.003, Placement{Float64}(0.060280394923229626, -0.03732404034800455, 5.728786603604917)), Circle{Float64}(0.003, Placement{Float64}(0.06346707735707394, -0.03160284942455655, 5.821186387534029)), Circle{Float64}(0.003, Placement{Float64}(0.06611228106476884, -0.025612034132669152, 5.91358617146314)), Circle{Float64}(0.003, Placement{Float64}(0.06819343810095287, -0.019402705996110697, 6.005985955392251)), Circle{Float64}(0.003, Placement{Float64}(0.06969279276758863, -0.013027840813194818, 6.098385739321364)), Circle{Float64}(0.003, Placement{Float64}(0.07059755309931795, -0.0065418266859481105, 6.190785523250475))])), LineCableModels.DataModel.PlacedRegion{Region{Offset{Float64}, Material{Float64, :insulator}}, Annulus{Float64}}(Region{Offset{Float64}, Material{Float64, :insulator}}(:armor_jacket, Offset{Float64}(0.0066), Material{Float64, :insulator}(1.0e15, 2.8, 1.0, 20.0, 0.0, 0.0, 90.0, 0.0, 0.0)), Annulus{Float64}(0.07390000000000001, 0.0805, Placement{Float64}(0.0, 0.0, 0.0)))], Circle{Float64}(0.0805, Placement{Float64}(0.0, 0.0, 0.0)), [(name = :core, scope = @NamedTuple{repeat::Int64, copy::Int64}[], regions = [1]), (name = :sheath, scope = @NamedTuple{repeat::Int64, copy::Int64}[], regions = [6]), (name = :armor, scope = @NamedTuple{repeat::Int64, copy::Int64}[], regions = [9, 10, 11, 12, 13, 14, 15, 16, 17, 18  …  67, 68, 69, 70, 71, 72, 73, 74, 75, 76])], @NamedTuple{at::Placement{Float64}, regions::Vector{Int64}, members::Vector{Int64}}[(at = Placement{Float64}(0.0, 0.0, 0.0), regions = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10  …  69, 70, 71, 72, 73, 74, 75, 76, 77, 78], members = [])], @NamedTuple{placements::Vector{Placement{Float64}}, copies::Vector{UnitRange{Int64}}}[(placements = [Placement{Float64}(0.0709, 0.0, 0.0), Placement{Float64}(0.07059755309931795, 0.006541826685948111, 0.09239978392911156), Placement{Float64}(0.06969279276758863, 0.013027840813194838, 0.18479956785822313), Placement{Float64}(0.06819343810095288, 0.019402705996110676, 0.2771993517873347), Placement{Float64}(0.06611228106476884, 0.025612034132669145, 0.36959913571644626), Placement{Float64}(0.06346707735707392, 0.031602849424556566, 0.46199891964555784), Placement{Float64}(0.060280394923229653, 0.037324040348004524, 0.5543987035746694), Placement{Float64}(0.05657942141416898, 0.04272679571928928, 0.646798487503781), Placement{Float64}(0.052395732230944736, 0.04776502113454091, 0.7391982714328925), Placement{Float64}(0.04776502113454091, 0.052395732230944736, 0.831598055362004)  …  Placement{Float64}(0.042726795719289265, -0.056579421414169, 5.359187467888471), Placement{Float64}(0.047765021134540925, -0.052395732230944715, 5.451587251817583), Placement{Float64}(0.05239573223094474, -0.047765021134540904, 5.543987035746694), Placement{Float64}(0.056579421414168975, -0.04272679571928929, 5.636386819675805), Placement{Float64}(0.060280394923229626, -0.03732404034800455, 5.728786603604917), Placement{Float64}(0.06346707735707394, -0.03160284942455655, 5.821186387534029), Placement{Float64}(0.06611228106476884, -0.025612034132669152, 5.91358617146314), Placement{Float64}(0.06819343810095287, -0.019402705996110697, 6.005985955392251), Placement{Float64}(0.06969279276758863, -0.013027840813194818, 6.098385739321364), Placement{Float64}(0.07059755309931795, -0.0065418266859481105, 6.190785523250475)], copies = [9:9, 10:10, 11:11, 12:12, 13:13, 14:14, 15:15, 16:16, 17:17, 18:18  …  67:67, 68:68, 69:69, 70:70, 71:71, 72:72, 73:73, 74:74, 75:75, 76:76])], [(repeat = 1, radii = [0.0709, 0.0709, 0.0709, 0.0709, 0.0709, 0.0709, 0.0709, 0.0709, 0.0709, 0.0709  …  0.0709, 0.0709, 0.0709, 0.0709, 0.0709, 0.0709, 0.07090000000000002, 0.0709, 0.07089999999999999, 0.0709], pitches = [1.4208247337261888, 1.4208247337261888, 1.4208247337261888, 1.4208247337261888, 1.4208247337261888, 1.4208247337261888, 1.4208247337261888, 1.4208247337261888, 1.4208247337261888, 1.4208247337261888  …  1.4208247337261888, 1.4208247337261888, 1.4208247337261888, 1.4208247337261888, 1.4208247337261888, 1.4208247337261888, 1.4208247337261892, 1.4208247337261888, 1.4208247337261886, 1.4208247337261888], overlengths = [1.048, 1.048, 1.048, 1.048, 1.048, 1.048, 1.048, 1.048, 1.048, 1.048  …  1.048, 1.048, 1.048, 1.048, 1.048, 1.048, 1.048, 1.048, 1.048, 1.048], axis = (0.0, 0.0))], @NamedTuple{repeat::Int64, factor::Float64}[], [(region = 77, contents = [9, 10, 11, 12, 13, 14, 15, 16, 17, 18  …  67, 68, 69, 70, 71, 72, 73, 74, 75, 76])]), CableDesign{Float64, Stack{Vector{AbstractCablePart}}, Vector{LineCableModels.DataModel.PlacedRegion}, Circle{Float64}}("cable_525kv_subsea_armoured", Stack{Vector{AbstractCablePart}}(AbstractCablePart[Terminal{Stack{Vector{AbstractCablePart}}}(:core, Stack{Vector{AbstractCablePart}}(AbstractCablePart[Region{Circle{Float64}, Material{Float64, :conductor}}(:core_conductor, Circle{Float64}(0.03, Placement{Float64}(0.0, 0.0, 0.0)), Material{Float64, :conductor}(2.035752039526186e-8, 1.0, 1.0, 20.0, 0.00393, 0.0, 90.0, 0.0, 0.0))])), Region{Offset{Float64}, Material{Float64, :semicon}}(:core_semicon_inner, Offset{Float64}(0.002), Material{Float64, :semicon}(1000.0, 1000.0, 1.0, 20.0, 0.0, 0.0, 90.0, 0.0, 0.0)), Region{Offset{Float64}, Material{Float64, :insulator}}(:core_insulation, Offset{Float64}(0.026), Material{Float64, :insulator}(1.0e14, 2.4, 1.0, 20.0, 0.0, 0.0, 90.0, 0.0, 0.0)), Region{Offset{Float64}, Material{Float64, :semicon}}(:core_semicon_outer, Offset{Float64}(0.0018), Material{Float64, :semicon}(500.0, 1000.0, 1.0, 20.0, 0.0, 0.0, 90.0, 0.0, 0.0)), Region{Offset{Float64}, Material{Float64, :semicon}}(:core_water_blocking, Offset{Float64}(0.0006), Material{Float64, :semicon}(500.0, 1000.0, 1.0, 20.0, 0.0, 0.0, 90.0, 0.0, 0.0)), Terminal{Stack{Vector{AbstractCablePart}}}(:sheath, Stack{Vector{AbstractCablePart}}(AbstractCablePart[Region{Offset{Float64}, Material{Float64, :conductor}}(:sheath_lead, Offset{Float64}(0.0032), Material{Float64, :conductor}(2.14e-7, 1.0, 0.999983, 20.0, 0.004, 0.0, 90.0, 0.0, 0.0))])), Region{Offset{Float64}, Material{Float64, :insulator}}(:sheath_inner_pe, Offset{Float64}(0.0033), Material{Float64, :insulator}(1.97e14, 2.5, 1.0, 20.0, 0.0, 0.0, 90.0, 0.0, 0.0)), Region{Offset{Float64}, Material{Float64, :insulator}}(:sheath_bedding, Offset{Float64}(0.001), Material{Float64, :insulator}(1.0e15, 2.8, 1.0, 20.0, 0.0, 0.0, 90.0, 0.0, 0.0)), Terminal{Stack{Vector{AbstractCablePart}}}(:armor, Stack{Vector{AbstractCablePart}}(AbstractCablePart[Enclosure{Region{Offset{Float64}, Material{Float64, :insulator}}, Lay{Helix{LayRatio{Float64}, Float64}, Repeat{CircularPattern{Float64, Offset{Float64}}, Region{Circle{Float64}, Material{Float64, :conductor}}}}}(Region{Offset{Float64}, Material{Float64, :insulator}}(:armor_wires_fill, Offset{Float64}(0.006), Material{Float64, :insulator}(Inf, 1.0, 1.0, 20.0, 0.0, 0.0, 90.0, 0.0, 0.0)), Lay{Helix{LayRatio{Float64}, Float64}, Repeat{CircularPattern{Float64, Offset{Float64}}, Region{Circle{Float64}, Material{Float64, :conductor}}}}(Helix{LayRatio{Float64}, Float64}(LayRatio{Float64}(10.019920548139554), 1, 0.0), Repeat{CircularPattern{Float64, Offset{Float64}}, Region{Circle{Float64}, Material{Float64, :conductor}}}(CircularPattern{Float64, Offset{Float64}}(68, Offset{Float64}(0.0), 0.0, 6.283185307179586, 0.0), Region{Circle{Float64}, Material{Float64, :conductor}}(:armor_wires, Circle{Float64}(0.003, Placement{Float64}(0.0, 0.0, 0.0)), Material{Float64, :conductor}(1.38e-7, 1.0, 10.0, 20.0, 0.0045, 0.0, 90.0, 0.0, 0.0)))))])), Region{Offset{Float64}, Material{Float64, :insulator}}(:armor_jacket, Offset{Float64}(0.0066), Material{Float64, :insulator}(1.0e15, 2.8, 1.0, 20.0, 0.0, 0.0, 90.0, 0.0, 0.0))]), LineCableModels.DataModel.PlacedRegion[LineCableModels.DataModel.PlacedRegion{Region{Circle{Float64}, Material{Float64, :conductor}}, Circle{Float64}}(Region{Circle{Float64}, Material{Float64, :conductor}}(:core_conductor, Circle{Float64}(0.03, Placement{Float64}(0.0, 0.0, 0.0)), Material{Float64, :conductor}(2.035752039526186e-8, 1.0, 1.0, 20.0, 0.00393, 0.0, 90.0, 0.0, 0.0)), Circle{Float64}(0.03, Placement{Float64}(0.0, 0.0, 0.0))), LineCableModels.DataModel.PlacedRegion{Region{Offset{Float64}, Material{Float64, :semicon}}, Annulus{Float64}}(Region{Offset{Float64}, Material{Float64, :semicon}}(:core_semicon_inner, Offset{Float64}(0.002), Material{Float64, :semicon}(1000.0, 1000.0, 1.0, 20.0, 0.0, 0.0, 90.0, 0.0, 0.0)), Annulus{Float64}(0.03, 0.032, Placement{Float64}(0.0, 0.0, 0.0))), LineCableModels.DataModel.PlacedRegion{Region{Offset{Float64}, Material{Float64, :insulator}}, Annulus{Float64}}(Region{Offset{Float64}, Material{Float64, :insulator}}(:core_insulation, Offset{Float64}(0.026), Material{Float64, :insulator}(1.0e14, 2.4, 1.0, 20.0, 0.0, 0.0, 90.0, 0.0, 0.0)), Annulus{Float64}(0.032, 0.057999999999999996, Placement{Float64}(0.0, 0.0, 0.0))), LineCableModels.DataModel.PlacedRegion{Region{Offset{Float64}, Material{Float64, :semicon}}, Annulus{Float64}}(Region{Offset{Float64}, Material{Float64, :semicon}}(:core_semicon_outer, Offset{Float64}(0.0018), Material{Float64, :semicon}(500.0, 1000.0, 1.0, 20.0, 0.0, 0.0, 90.0, 0.0, 0.0)), Annulus{Float64}(0.057999999999999996, 0.0598, Placement{Float64}(0.0, 0.0, 0.0))), LineCableModels.DataModel.PlacedRegion{Region{Offset{Float64}, Material{Float64, :semicon}}, Annulus{Float64}}(Region{Offset{Float64}, Material{Float64, :semicon}}(:core_water_blocking, Offset{Float64}(0.0006), Material{Float64, :semicon}(500.0, 1000.0, 1.0, 20.0, 0.0, 0.0, 90.0, 0.0, 0.0)), Annulus{Float64}(0.0598, 0.0604, Placement{Float64}(0.0, 0.0, 0.0))), LineCableModels.DataModel.PlacedRegion{Region{Offset{Float64}, Material{Float64, :conductor}}, Annulus{Float64}}(Region{Offset{Float64}, Material{Float64, :conductor}}(:sheath_lead, Offset{Float64}(0.0032), Material{Float64, :conductor}(2.14e-7, 1.0, 0.999983, 20.0, 0.004, 0.0, 90.0, 0.0, 0.0)), Annulus{Float64}(0.0604, 0.0636, Placement{Float64}(0.0, 0.0, 0.0))), LineCableModels.DataModel.PlacedRegion{Region{Offset{Float64}, Material{Float64, :insulator}}, Annulus{Float64}}(Region{Offset{Float64}, Material{Float64, :insulator}}(:sheath_inner_pe, Offset{Float64}(0.0033), Material{Float64, :insulator}(1.97e14, 2.5, 1.0, 20.0, 0.0, 0.0, 90.0, 0.0, 0.0)), Annulus{Float64}(0.0636, 0.0669, Placement{Float64}(0.0, 0.0, 0.0))), LineCableModels.DataModel.PlacedRegion{Region{Offset{Float64}, Material{Float64, :insulator}}, Annulus{Float64}}(Region{Offset{Float64}, Material{Float64, :insulator}}(:sheath_bedding, Offset{Float64}(0.001), Material{Float64, :insulator}(1.0e15, 2.8, 1.0, 20.0, 0.0, 0.0, 90.0, 0.0, 0.0)), Annulus{Float64}(0.0669, 0.0679, Placement{Float64}(0.0, 0.0, 0.0))), LineCableModels.DataModel.PlacedRegion{Region{Circle{Float64}, Material{Float64, :conductor}}, Circle{Float64}}(Region{Circle{Float64}, Material{Float64, :conductor}}(:armor_wires, Circle{Float64}(0.003, Placement{Float64}(0.0, 0.0, 0.0)), Material{Float64, :conductor}(1.38e-7, 1.0, 10.0, 20.0, 0.0045, 0.0, 90.0, 0.0, 0.0)), Circle{Float64}(0.003, Placement{Float64}(0.0709, 0.0, 0.0))), LineCableModels.DataModel.PlacedRegion{Region{Circle{Float64}, Material{Float64, :conductor}}, Circle{Float64}}(Region{Circle{Float64}, Material{Float64, :conductor}}(:armor_wires, Circle{Float64}(0.003, Placement{Float64}(0.0, 0.0, 0.0)), Material{Float64, :conductor}(1.38e-7, 1.0, 10.0, 20.0, 0.0045, 0.0, 90.0, 0.0, 0.0)), Circle{Float64}(0.003, Placement{Float64}(0.07059755309931795, 0.006541826685948111, 0.09239978392911156)))  …  LineCableModels.DataModel.PlacedRegion{Region{Circle{Float64}, Material{Float64, :conductor}}, Circle{Float64}}(Region{Circle{Float64}, Material{Float64, :conductor}}(:armor_wires, Circle{Float64}(0.003, Placement{Float64}(0.0, 0.0, 0.0)), Material{Float64, :conductor}(1.38e-7, 1.0, 10.0, 20.0, 0.0045, 0.0, 90.0, 0.0, 0.0)), Circle{Float64}(0.003, Placement{Float64}(0.05239573223094474, -0.047765021134540904, 5.543987035746694))), LineCableModels.DataModel.PlacedRegion{Region{Circle{Float64}, Material{Float64, :conductor}}, Circle{Float64}}(Region{Circle{Float64}, Material{Float64, :conductor}}(:armor_wires, Circle{Float64}(0.003, Placement{Float64}(0.0, 0.0, 0.0)), Material{Float64, :conductor}(1.38e-7, 1.0, 10.0, 20.0, 0.0045, 0.0, 90.0, 0.0, 0.0)), Circle{Float64}(0.003, Placement{Float64}(0.056579421414168975, -0.04272679571928929, 5.636386819675805))), LineCableModels.DataModel.PlacedRegion{Region{Circle{Float64}, Material{Float64, :conductor}}, Circle{Float64}}(Region{Circle{Float64}, Material{Float64, :conductor}}(:armor_wires, Circle{Float64}(0.003, Placement{Float64}(0.0, 0.0, 0.0)), Material{Float64, :conductor}(1.38e-7, 1.0, 10.0, 20.0, 0.0045, 0.0, 90.0, 0.0, 0.0)), Circle{Float64}(0.003, Placement{Float64}(0.060280394923229626, -0.03732404034800455, 5.728786603604917))), LineCableModels.DataModel.PlacedRegion{Region{Circle{Float64}, Material{Float64, :conductor}}, Circle{Float64}}(Region{Circle{Float64}, Material{Float64, :conductor}}(:armor_wires, Circle{Float64}(0.003, Placement{Float64}(0.0, 0.0, 0.0)), Material{Float64, :conductor}(1.38e-7, 1.0, 10.0, 20.0, 0.0045, 0.0, 90.0, 0.0, 0.0)), Circle{Float64}(0.003, Placement{Float64}(0.06346707735707394, -0.03160284942455655, 5.821186387534029))), LineCableModels.DataModel.PlacedRegion{Region{Circle{Float64}, Material{Float64, :conductor}}, Circle{Float64}}(Region{Circle{Float64}, Material{Float64, :conductor}}(:armor_wires, Circle{Float64}(0.003, Placement{Float64}(0.0, 0.0, 0.0)), Material{Float64, :conductor}(1.38e-7, 1.0, 10.0, 20.0, 0.0045, 0.0, 90.0, 0.0, 0.0)), Circle{Float64}(0.003, Placement{Float64}(0.06611228106476884, -0.025612034132669152, 5.91358617146314))), LineCableModels.DataModel.PlacedRegion{Region{Circle{Float64}, Material{Float64, :conductor}}, Circle{Float64}}(Region{Circle{Float64}, Material{Float64, :conductor}}(:armor_wires, Circle{Float64}(0.003, Placement{Float64}(0.0, 0.0, 0.0)), Material{Float64, :conductor}(1.38e-7, 1.0, 10.0, 20.0, 0.0045, 0.0, 90.0, 0.0, 0.0)), Circle{Float64}(0.003, Placement{Float64}(0.06819343810095287, -0.019402705996110697, 6.005985955392251))), LineCableModels.DataModel.PlacedRegion{Region{Circle{Float64}, Material{Float64, :conductor}}, Circle{Float64}}(Region{Circle{Float64}, Material{Float64, :conductor}}(:armor_wires, Circle{Float64}(0.003, Placement{Float64}(0.0, 0.0, 0.0)), Material{Float64, :conductor}(1.38e-7, 1.0, 10.0, 20.0, 0.0045, 0.0, 90.0, 0.0, 0.0)), Circle{Float64}(0.003, Placement{Float64}(0.06969279276758863, -0.013027840813194818, 6.098385739321364))), LineCableModels.DataModel.PlacedRegion{Region{Circle{Float64}, Material{Float64, :conductor}}, Circle{Float64}}(Region{Circle{Float64}, Material{Float64, :conductor}}(:armor_wires, Circle{Float64}(0.003, Placement{Float64}(0.0, 0.0, 0.0)), Material{Float64, :conductor}(1.38e-7, 1.0, 10.0, 20.0, 0.0045, 0.0, 90.0, 0.0, 0.0)), Circle{Float64}(0.003, Placement{Float64}(0.07059755309931795, -0.0065418266859481105, 6.190785523250475))), LineCableModels.DataModel.PlacedRegion{Region{Offset{Float64}, Material{Float64, :insulator}}, LineCableModels.DataModel.DifferenceShape{Float64, Annulus{Float64}, Vector{Circle{Float64}}}}(Region{Offset{Float64}, Material{Float64, :insulator}}(:armor_wires_fill, Offset{Float64}(0.006), Material{Float64, :insulator}(Inf, 1.0, 1.0, 20.0, 0.0, 0.0, 90.0, 0.0, 0.0)), LineCableModels.DataModel.DifferenceShape{Float64, Annulus{Float64}, Vector{Circle{Float64}}}(Annulus{Float64}(0.0679, 0.07390000000000001, Placement{Float64}(0.0, 0.0, 0.0)), Circle{Float64}[Circle{Float64}(0.003, Placement{Float64}(0.0709, 0.0, 0.0)), Circle{Float64}(0.003, Placement{Float64}(0.07059755309931795, 0.006541826685948111, 0.09239978392911156)), Circle{Float64}(0.003, Placement{Float64}(0.06969279276758863, 0.013027840813194838, 0.18479956785822313)), Circle{Float64}(0.003, Placement{Float64}(0.06819343810095288, 0.019402705996110676, 0.2771993517873347)), Circle{Float64}(0.003, Placement{Float64}(0.06611228106476884, 0.025612034132669145, 0.36959913571644626)), Circle{Float64}(0.003, Placement{Float64}(0.06346707735707392, 0.031602849424556566, 0.46199891964555784)), Circle{Float64}(0.003, Placement{Float64}(0.060280394923229653, 0.037324040348004524, 0.5543987035746694)), Circle{Float64}(0.003, Placement{Float64}(0.05657942141416898, 0.04272679571928928, 0.646798487503781)), Circle{Float64}(0.003, Placement{Float64}(0.052395732230944736, 0.04776502113454091, 0.7391982714328925)), Circle{Float64}(0.003, Placement{Float64}(0.04776502113454091, 0.052395732230944736, 0.831598055362004))  …  Circle{Float64}(0.003, Placement{Float64}(0.042726795719289265, -0.056579421414169, 5.359187467888471)), Circle{Float64}(0.003, Placement{Float64}(0.047765021134540925, -0.052395732230944715, 5.451587251817583)), Circle{Float64}(0.003, Placement{Float64}(0.05239573223094474, -0.047765021134540904, 5.543987035746694)), Circle{Float64}(0.003, Placement{Float64}(0.056579421414168975, -0.04272679571928929, 5.636386819675805)), Circle{Float64}(0.003, Placement{Float64}(0.060280394923229626, -0.03732404034800455, 5.728786603604917)), Circle{Float64}(0.003, Placement{Float64}(0.06346707735707394, -0.03160284942455655, 5.821186387534029)), Circle{Float64}(0.003, Placement{Float64}(0.06611228106476884, -0.025612034132669152, 5.91358617146314)), Circle{Float64}(0.003, Placement{Float64}(0.06819343810095287, -0.019402705996110697, 6.005985955392251)), Circle{Float64}(0.003, Placement{Float64}(0.06969279276758863, -0.013027840813194818, 6.098385739321364)), Circle{Float64}(0.003, Placement{Float64}(0.07059755309931795, -0.0065418266859481105, 6.190785523250475))])), LineCableModels.DataModel.PlacedRegion{Region{Offset{Float64}, Material{Float64, :insulator}}, Annulus{Float64}}(Region{Offset{Float64}, Material{Float64, :insulator}}(:armor_jacket, Offset{Float64}(0.0066), Material{Float64, :insulator}(1.0e15, 2.8, 1.0, 20.0, 0.0, 0.0, 90.0, 0.0, 0.0)), Annulus{Float64}(0.07390000000000001, 0.0805, Placement{Float64}(0.0, 0.0, 0.0)))], Circle{Float64}(0.0805, Placement{Float64}(0.0, 0.0, 0.0)), [(name = :core, scope = @NamedTuple{repeat::Int64, copy::Int64}[], regions = [1]), (name = :sheath, scope = @NamedTuple{repeat::Int64, copy::Int64}[], regions = [6]), (name = :armor, scope = @NamedTuple{repeat::Int64, copy::Int64}[], regions = [9, 10, 11, 12, 13, 14, 15, 16, 17, 18  …  67, 68, 69, 70, 71, 72, 73, 74, 75, 76])], @NamedTuple{at::Placement{Float64}, regions::Vector{Int64}, members::Vector{Int64}}[(at = Placement{Float64}(0.0, 0.0, 0.0), regions = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10  …  69, 70, 71, 72, 73, 74, 75, 76, 77, 78], members = [])], @NamedTuple{placements::Vector{Placement{Float64}}, copies::Vector{UnitRange{Int64}}}[(placements = [Placement{Float64}(0.0709, 0.0, 0.0), Placement{Float64}(0.07059755309931795, 0.006541826685948111, 0.09239978392911156), Placement{Float64}(0.06969279276758863, 0.013027840813194838, 0.18479956785822313), Placement{Float64}(0.06819343810095288, 0.019402705996110676, 0.2771993517873347), Placement{Float64}(0.06611228106476884, 0.025612034132669145, 0.36959913571644626), Placement{Float64}(0.06346707735707392, 0.031602849424556566, 0.46199891964555784), Placement{Float64}(0.060280394923229653, 0.037324040348004524, 0.5543987035746694), Placement{Float64}(0.05657942141416898, 0.04272679571928928, 0.646798487503781), Placement{Float64}(0.052395732230944736, 0.04776502113454091, 0.7391982714328925), Placement{Float64}(0.04776502113454091, 0.052395732230944736, 0.831598055362004)  …  Placement{Float64}(0.042726795719289265, -0.056579421414169, 5.359187467888471), Placement{Float64}(0.047765021134540925, -0.052395732230944715, 5.451587251817583), Placement{Float64}(0.05239573223094474, -0.047765021134540904, 5.543987035746694), Placement{Float64}(0.056579421414168975, -0.04272679571928929, 5.636386819675805), Placement{Float64}(0.060280394923229626, -0.03732404034800455, 5.728786603604917), Placement{Float64}(0.06346707735707394, -0.03160284942455655, 5.821186387534029), Placement{Float64}(0.06611228106476884, -0.025612034132669152, 5.91358617146314), Placement{Float64}(0.06819343810095287, -0.019402705996110697, 6.005985955392251), Placement{Float64}(0.06969279276758863, -0.013027840813194818, 6.098385739321364), Placement{Float64}(0.07059755309931795, -0.0065418266859481105, 6.190785523250475)], copies = [9:9, 10:10, 11:11, 12:12, 13:13, 14:14, 15:15, 16:16, 17:17, 18:18  …  67:67, 68:68, 69:69, 70:70, 71:71, 72:72, 73:73, 74:74, 75:75, 76:76])], [(repeat = 1, radii = [0.0709, 0.0709, 0.0709, 0.0709, 0.0709, 0.0709, 0.0709, 0.0709, 0.0709, 0.0709  …  0.0709, 0.0709, 0.0709, 0.0709, 0.0709, 0.0709, 0.07090000000000002, 0.0709, 0.07089999999999999, 0.0709], pitches = [1.4208247337261888, 1.4208247337261888, 1.4208247337261888, 1.4208247337261888, 1.4208247337261888, 1.4208247337261888, 1.4208247337261888, 1.4208247337261888, 1.4208247337261888, 1.4208247337261888  …  1.4208247337261888, 1.4208247337261888, 1.4208247337261888, 1.4208247337261888, 1.4208247337261888, 1.4208247337261888, 1.4208247337261892, 1.4208247337261888, 1.4208247337261886, 1.4208247337261888], overlengths = [1.048, 1.048, 1.048, 1.048, 1.048, 1.048, 1.048, 1.048, 1.048, 1.048  …  1.048, 1.048, 1.048, 1.048, 1.048, 1.048, 1.048, 1.048, 1.048, 1.048], axis = (0.0, 0.0))], @NamedTuple{repeat::Int64, factor::Float64}[], [(region = 77, contents = [9, 10, 11, 12, 13, 14, 15, 16, 17, 18  …  67, 68, 69, 70, 71, 72, 73, 74, 75, 76])])], Placement{Float64}[Placement{Float64}(-1.0, -1.0, 0.0), Placement{Float64}(0.0, -1.0, 0.0), Placement{Float64}(1.0, -1.0, 0.0)], LineCableModels.DataModel.PlacedRegion[LineCableModels.DataModel.PlacedRegion{Region{Circle{Float64}, Material{Float64, :conductor}}, Circle{Float64}}(Region{Circle{Float64}, Material{Float64, :conductor}}(:core_conductor, Circle{Float64}(0.03, Placement{Float64}(0.0, 0.0, 0.0)), Material{Float64, :conductor}(2.035752039526186e-8, 1.0, 1.0, 20.0, 0.00393, 0.0, 90.0, 0.0, 0.0)), Circle{Float64}(0.03, Placement{Float64}(-1.0, -1.0, 0.0))), LineCableModels.DataModel.PlacedRegion{Region{Offset{Float64}, Material{Float64, :semicon}}, Annulus{Float64}}(Region{Offset{Float64}, Material{Float64, :semicon}}(:core_semicon_inner, Offset{Float64}(0.002), Material{Float64, :semicon}(1000.0, 1000.0, 1.0, 20.0, 0.0, 0.0, 90.0, 0.0, 0.0)), Annulus{Float64}(0.03, 0.032, Placement{Float64}(-1.0, -1.0, 0.0))), LineCableModels.DataModel.PlacedRegion{Region{Offset{Float64}, Material{Float64, :insulator}}, Annulus{Float64}}(Region{Offset{Float64}, Material{Float64, :insulator}}(:core_insulation, Offset{Float64}(0.026), Material{Float64, :insulator}(1.0e14, 2.4, 1.0, 20.0, 0.0, 0.0, 90.0, 0.0, 0.0)), Annulus{Float64}(0.032, 0.057999999999999996, Placement{Float64}(-1.0, -1.0, 0.0))), LineCableModels.DataModel.PlacedRegion{Region{Offset{Float64}, Material{Float64, :semicon}}, Annulus{Float64}}(Region{Offset{Float64}, Material{Float64, :semicon}}(:core_semicon_outer, Offset{Float64}(0.0018), Material{Float64, :semicon}(500.0, 1000.0, 1.0, 20.0, 0.0, 0.0, 90.0, 0.0, 0.0)), Annulus{Float64}(0.057999999999999996, 0.0598, Placement{Float64}(-1.0, -1.0, 0.0))), LineCableModels.DataModel.PlacedRegion{Region{Offset{Float64}, Material{Float64, :semicon}}, Annulus{Float64}}(Region{Offset{Float64}, Material{Float64, :semicon}}(:core_water_blocking, Offset{Float64}(0.0006), Material{Float64, :semicon}(500.0, 1000.0, 1.0, 20.0, 0.0, 0.0, 90.0, 0.0, 0.0)), Annulus{Float64}(0.0598, 0.0604, Placement{Float64}(-1.0, -1.0, 0.0))), LineCableModels.DataModel.PlacedRegion{Region{Offset{Float64}, Material{Float64, :conductor}}, Annulus{Float64}}(Region{Offset{Float64}, Material{Float64, :conductor}}(:sheath_lead, Offset{Float64}(0.0032), Material{Float64, :conductor}(2.14e-7, 1.0, 0.999983, 20.0, 0.004, 0.0, 90.0, 0.0, 0.0)), Annulus{Float64}(0.0604, 0.0636, Placement{Float64}(-1.0, -1.0, 0.0))), LineCableModels.DataModel.PlacedRegion{Region{Offset{Float64}, Material{Float64, :insulator}}, Annulus{Float64}}(Region{Offset{Float64}, Material{Float64, :insulator}}(:sheath_inner_pe, Offset{Float64}(0.0033), Material{Float64, :insulator}(1.97e14, 2.5, 1.0, 20.0, 0.0, 0.0, 90.0, 0.0, 0.0)), Annulus{Float64}(0.0636, 0.0669, Placement{Float64}(-1.0, -1.0, 0.0))), LineCableModels.DataModel.PlacedRegion{Region{Offset{Float64}, Material{Float64, :insulator}}, Annulus{Float64}}(Region{Offset{Float64}, Material{Float64, :insulator}}(:sheath_bedding, Offset{Float64}(0.001), Material{Float64, :insulator}(1.0e15, 2.8, 1.0, 20.0, 0.0, 0.0, 90.0, 0.0, 0.0)), Annulus{Float64}(0.0669, 0.0679, Placement{Float64}(-1.0, -1.0, 0.0))), LineCableModels.DataModel.PlacedRegion{Region{Circle{Float64}, Material{Float64, :conductor}}, Circle{Float64}}(Region{Circle{Float64}, Material{Float64, :conductor}}(:armor_wires, Circle{Float64}(0.003, Placement{Float64}(0.0, 0.0, 0.0)), Material{Float64, :conductor}(1.38e-7, 1.0, 10.0, 20.0, 0.0045, 0.0, 90.0, 0.0, 0.0)), Circle{Float64}(0.003, Placement{Float64}(-0.9291, -1.0, 0.0))), LineCableModels.DataModel.PlacedRegion{Region{Circle{Float64}, Material{Float64, :conductor}}, Circle{Float64}}(Region{Circle{Float64}, Material{Float64, :conductor}}(:armor_wires, Circle{Float64}(0.003, Placement{Float64}(0.0, 0.0, 0.0)), Material{Float64, :conductor}(1.38e-7, 1.0, 10.0, 20.0, 0.0045, 0.0, 90.0, 0.0, 0.0)), Circle{Float64}(0.003, Placement{Float64}(-0.9294024469006821, -0.9934581733140518, 0.09239978392911156)))  …  LineCableModels.DataModel.PlacedRegion{Region{Circle{Float64}, Material{Float64, :conductor}}, Circle{Float64}}(Region{Circle{Float64}, Material{Float64, :conductor}}(:armor_wires, Circle{Float64}(0.003, Placement{Float64}(0.0, 0.0, 0.0)), Material{Float64, :conductor}(1.38e-7, 1.0, 10.0, 20.0, 0.0045, 0.0, 90.0, 0.0, 0.0)), Circle{Float64}(0.003, Placement{Float64}(1.0523957322309447, -1.0477650211345408, 5.543987035746694))), LineCableModels.DataModel.PlacedRegion{Region{Circle{Float64}, Material{Float64, :conductor}}, Circle{Float64}}(Region{Circle{Float64}, Material{Float64, :conductor}}(:armor_wires, Circle{Float64}(0.003, Placement{Float64}(0.0, 0.0, 0.0)), Material{Float64, :conductor}(1.38e-7, 1.0, 10.0, 20.0, 0.0045, 0.0, 90.0, 0.0, 0.0)), Circle{Float64}(0.003, Placement{Float64}(1.056579421414169, -1.0427267957192894, 5.636386819675805))), LineCableModels.DataModel.PlacedRegion{Region{Circle{Float64}, Material{Float64, :conductor}}, Circle{Float64}}(Region{Circle{Float64}, Material{Float64, :conductor}}(:armor_wires, Circle{Float64}(0.003, Placement{Float64}(0.0, 0.0, 0.0)), Material{Float64, :conductor}(1.38e-7, 1.0, 10.0, 20.0, 0.0045, 0.0, 90.0, 0.0, 0.0)), Circle{Float64}(0.003, Placement{Float64}(1.0602803949232296, -1.0373240403480046, 5.728786603604917))), LineCableModels.DataModel.PlacedRegion{Region{Circle{Float64}, Material{Float64, :conductor}}, Circle{Float64}}(Region{Circle{Float64}, Material{Float64, :conductor}}(:armor_wires, Circle{Float64}(0.003, Placement{Float64}(0.0, 0.0, 0.0)), Material{Float64, :conductor}(1.38e-7, 1.0, 10.0, 20.0, 0.0045, 0.0, 90.0, 0.0, 0.0)), Circle{Float64}(0.003, Placement{Float64}(1.063467077357074, -1.0316028494245566, 5.821186387534029))), LineCableModels.DataModel.PlacedRegion{Region{Circle{Float64}, Material{Float64, :conductor}}, Circle{Float64}}(Region{Circle{Float64}, Material{Float64, :conductor}}(:armor_wires, Circle{Float64}(0.003, Placement{Float64}(0.0, 0.0, 0.0)), Material{Float64, :conductor}(1.38e-7, 1.0, 10.0, 20.0, 0.0045, 0.0, 90.0, 0.0, 0.0)), Circle{Float64}(0.003, Placement{Float64}(1.0661122810647687, -1.025612034132669, 5.91358617146314))), LineCableModels.DataModel.PlacedRegion{Region{Circle{Float64}, Material{Float64, :conductor}}, Circle{Float64}}(Region{Circle{Float64}, Material{Float64, :conductor}}(:armor_wires, Circle{Float64}(0.003, Placement{Float64}(0.0, 0.0, 0.0)), Material{Float64, :conductor}(1.38e-7, 1.0, 10.0, 20.0, 0.0045, 0.0, 90.0, 0.0, 0.0)), Circle{Float64}(0.003, Placement{Float64}(1.0681934381009528, -1.0194027059961106, 6.005985955392251))), LineCableModels.DataModel.PlacedRegion{Region{Circle{Float64}, Material{Float64, :conductor}}, Circle{Float64}}(Region{Circle{Float64}, Material{Float64, :conductor}}(:armor_wires, Circle{Float64}(0.003, Placement{Float64}(0.0, 0.0, 0.0)), Material{Float64, :conductor}(1.38e-7, 1.0, 10.0, 20.0, 0.0045, 0.0, 90.0, 0.0, 0.0)), Circle{Float64}(0.003, Placement{Float64}(1.0696927927675886, -1.0130278408131947, 6.098385739321364))), LineCableModels.DataModel.PlacedRegion{Region{Circle{Float64}, Material{Float64, :conductor}}, Circle{Float64}}(Region{Circle{Float64}, Material{Float64, :conductor}}(:armor_wires, Circle{Float64}(0.003, Placement{Float64}(0.0, 0.0, 0.0)), Material{Float64, :conductor}(1.38e-7, 1.0, 10.0, 20.0, 0.0045, 0.0, 90.0, 0.0, 0.0)), Circle{Float64}(0.003, Placement{Float64}(1.070597553099318, -1.006541826685948, 6.190785523250475))), LineCableModels.DataModel.PlacedRegion{Region{Offset{Float64}, Material{Float64, :insulator}}, LineCableModels.DataModel.DifferenceShape{Float64, Annulus{Float64}, Vector{Circle{Float64}}}}(Region{Offset{Float64}, Material{Float64, :insulator}}(:armor_wires_fill, Offset{Float64}(0.006), Material{Float64, :insulator}(Inf, 1.0, 1.0, 20.0, 0.0, 0.0, 90.0, 0.0, 0.0)), LineCableModels.DataModel.DifferenceShape{Float64, Annulus{Float64}, Vector{Circle{Float64}}}(Annulus{Float64}(0.0679, 0.07390000000000001, Placement{Float64}(1.0, -1.0, 0.0)), Circle{Float64}[Circle{Float64}(0.003, Placement{Float64}(1.0709, -1.0, 0.0)), Circle{Float64}(0.003, Placement{Float64}(1.070597553099318, -0.9934581733140518, 0.09239978392911156)), Circle{Float64}(0.003, Placement{Float64}(1.0696927927675886, -0.9869721591868051, 0.18479956785822313)), Circle{Float64}(0.003, Placement{Float64}(1.0681934381009528, -0.9805972940038893, 0.2771993517873347)), Circle{Float64}(0.003, Placement{Float64}(1.0661122810647687, -0.9743879658673309, 0.36959913571644626)), Circle{Float64}(0.003, Placement{Float64}(1.063467077357074, -0.9683971505754434, 0.46199891964555784)), Circle{Float64}(0.003, Placement{Float64}(1.0602803949232296, -0.9626759596519955, 0.5543987035746694)), Circle{Float64}(0.003, Placement{Float64}(1.056579421414169, -0.9572732042807107, 0.646798487503781)), Circle{Float64}(0.003, Placement{Float64}(1.0523957322309447, -0.952234978865459, 0.7391982714328925)), Circle{Float64}(0.003, Placement{Float64}(1.0477650211345408, -0.9476042677690553, 0.831598055362004))  …  Circle{Float64}(0.003, Placement{Float64}(1.0427267957192892, -1.056579421414169, 5.359187467888471)), Circle{Float64}(0.003, Placement{Float64}(1.0477650211345408, -1.0523957322309447, 5.451587251817583)), Circle{Float64}(0.003, Placement{Float64}(1.0523957322309447, -1.0477650211345408, 5.543987035746694)), Circle{Float64}(0.003, Placement{Float64}(1.056579421414169, -1.0427267957192894, 5.636386819675805)), Circle{Float64}(0.003, Placement{Float64}(1.0602803949232296, -1.0373240403480046, 5.728786603604917)), Circle{Float64}(0.003, Placement{Float64}(1.063467077357074, -1.0316028494245566, 5.821186387534029)), Circle{Float64}(0.003, Placement{Float64}(1.0661122810647687, -1.025612034132669, 5.91358617146314)), Circle{Float64}(0.003, Placement{Float64}(1.0681934381009528, -1.0194027059961106, 6.005985955392251)), Circle{Float64}(0.003, Placement{Float64}(1.0696927927675886, -1.0130278408131947, 6.098385739321364)), Circle{Float64}(0.003, Placement{Float64}(1.070597553099318, -1.006541826685948, 6.190785523250475))])), LineCableModels.DataModel.PlacedRegion{Region{Offset{Float64}, Material{Float64, :insulator}}, Annulus{Float64}}(Region{Offset{Float64}, Material{Float64, :insulator}}(:armor_jacket, Offset{Float64}(0.0066), Material{Float64, :insulator}(1.0e15, 2.8, 1.0, 20.0, 0.0, 0.0, 90.0, 0.0, 0.0)), Annulus{Float64}(0.07390000000000001, 0.0805, Placement{Float64}(1.0, -1.0, 0.0)))], [(cable = 1, terminal = 1, connection = 1, regions = [1]), (cable = 1, terminal = 2, connection = 2, regions = [6]), (cable = 1, terminal = 3, connection = 3, regions = [9, 10, 11, 12, 13, 14, 15, 16, 17, 18  …  67, 68, 69, 70, 71, 72, 73, 74, 75, 76]), (cable = 2, terminal = 1, connection = 4, regions = [79]), (cable = 2, terminal = 2, connection = 5, regions = [84]), (cable = 2, terminal = 3, connection = 6, regions = [87, 88, 89, 90, 91, 92, 93, 94, 95, 96  …  145, 146, 147, 148, 149, 150, 151, 152, 153, 154]), (cable = 3, terminal = 1, connection = 7, regions = [157]), (cable = 3, terminal = 2, connection = 8, regions = [162]), (cable = 3, terminal = 3, connection = 9, regions = [165, 166, 167, 168, 169, 170, 171, 172, 173, 174  …  223, 224, 225, 226, 227, 228, 229, 230, 231, 232])])

Line parameters problem at 70 °C:

problem = LineParametersProblem(system, earth; temperature = 70.0, frequencies) # [°C]
LineParametersProblem{Float64, CableSystem{Float64, Vector{CableDesign{Float64, Stack{Vector{AbstractCablePart}}, Vector{LineCableModels.DataModel.PlacedRegion}, Circle{Float64}}}, Vector{LineCableModels.DataModel.PlacedRegion}}, EarthModel{Float64, 2}}(CableSystem{Float64, Vector{CableDesign{Float64, Stack{Vector{AbstractCablePart}}, Vector{LineCableModels.DataModel.PlacedRegion}, Circle{Float64}}}, Vector{LineCableModels.DataModel.PlacedRegion}}("cable_525kv_subsea_armoured_ac_flat", 20000.0, CableDesign{Float64, Stack{Vector{AbstractCablePart}}, Vector{LineCableModels.DataModel.PlacedRegion}, Circle{Float64}}[CableDesign{Float64, Stack{Vector{AbstractCablePart}}, Vector{LineCableModels.DataModel.PlacedRegion}, Circle{Float64}}("cable_525kv_subsea_armoured", Stack{Vector{AbstractCablePart}}(AbstractCablePart[Terminal{Stack{Vector{AbstractCablePart}}}(:core, Stack{Vector{AbstractCablePart}}(AbstractCablePart[Region{Circle{Float64}, Material{Float64, :conductor}}(:core_conductor, Circle{Float64}(0.03, Placement{Float64}(0.0, 0.0, 0.0)), Material{Float64, :conductor}(2.035752039526186e-8, 1.0, 1.0, 20.0, 0.00393, 0.0, 90.0, 0.0, 0.0))])), Region{Offset{Float64}, Material{Float64, :semicon}}(:core_semicon_inner, Offset{Float64}(0.002), Material{Float64, :semicon}(1000.0, 1000.0, 1.0, 20.0, 0.0, 0.0, 90.0, 0.0, 0.0)), Region{Offset{Float64}, Material{Float64, :insulator}}(:core_insulation, Offset{Float64}(0.026), Material{Float64, :insulator}(1.0e14, 2.4, 1.0, 20.0, 0.0, 0.0, 90.0, 0.0, 0.0)), Region{Offset{Float64}, Material{Float64, :semicon}}(:core_semicon_outer, Offset{Float64}(0.0018), Material{Float64, :semicon}(500.0, 1000.0, 1.0, 20.0, 0.0, 0.0, 90.0, 0.0, 0.0)), Region{Offset{Float64}, Material{Float64, :semicon}}(:core_water_blocking, Offset{Float64}(0.0006), Material{Float64, :semicon}(500.0, 1000.0, 1.0, 20.0, 0.0, 0.0, 90.0, 0.0, 0.0)), Terminal{Stack{Vector{AbstractCablePart}}}(:sheath, Stack{Vector{AbstractCablePart}}(AbstractCablePart[Region{Offset{Float64}, Material{Float64, :conductor}}(:sheath_lead, Offset{Float64}(0.0032), Material{Float64, :conductor}(2.14e-7, 1.0, 0.999983, 20.0, 0.004, 0.0, 90.0, 0.0, 0.0))])), Region{Offset{Float64}, Material{Float64, :insulator}}(:sheath_inner_pe, Offset{Float64}(0.0033), Material{Float64, :insulator}(1.97e14, 2.5, 1.0, 20.0, 0.0, 0.0, 90.0, 0.0, 0.0)), Region{Offset{Float64}, Material{Float64, :insulator}}(:sheath_bedding, Offset{Float64}(0.001), Material{Float64, :insulator}(1.0e15, 2.8, 1.0, 20.0, 0.0, 0.0, 90.0, 0.0, 0.0)), Terminal{Stack{Vector{AbstractCablePart}}}(:armor, Stack{Vector{AbstractCablePart}}(AbstractCablePart[Enclosure{Region{Offset{Float64}, Material{Float64, :insulator}}, Lay{Helix{LayRatio{Float64}, Float64}, Repeat{CircularPattern{Float64, Offset{Float64}}, Region{Circle{Float64}, Material{Float64, :conductor}}}}}(Region{Offset{Float64}, Material{Float64, :insulator}}(:armor_wires_fill, Offset{Float64}(0.006), Material{Float64, :insulator}(Inf, 1.0, 1.0, 20.0, 0.0, 0.0, 90.0, 0.0, 0.0)), Lay{Helix{LayRatio{Float64}, Float64}, Repeat{CircularPattern{Float64, Offset{Float64}}, Region{Circle{Float64}, Material{Float64, :conductor}}}}(Helix{LayRatio{Float64}, Float64}(LayRatio{Float64}(10.019920548139554), 1, 0.0), Repeat{CircularPattern{Float64, Offset{Float64}}, Region{Circle{Float64}, Material{Float64, :conductor}}}(CircularPattern{Float64, Offset{Float64}}(68, Offset{Float64}(0.0), 0.0, 6.283185307179586, 0.0), Region{Circle{Float64}, Material{Float64, :conductor}}(:armor_wires, Circle{Float64}(0.003, Placement{Float64}(0.0, 0.0, 0.0)), Material{Float64, :conductor}(1.38e-7, 1.0, 10.0, 20.0, 0.0045, 0.0, 90.0, 0.0, 0.0)))))])), Region{Offset{Float64}, Material{Float64, :insulator}}(:armor_jacket, Offset{Float64}(0.0066), Material{Float64, :insulator}(1.0e15, 2.8, 1.0, 20.0, 0.0, 0.0, 90.0, 0.0, 0.0))]), LineCableModels.DataModel.PlacedRegion[LineCableModels.DataModel.PlacedRegion{Region{Circle{Float64}, Material{Float64, :conductor}}, Circle{Float64}}(Region{Circle{Float64}, Material{Float64, :conductor}}(:core_conductor, Circle{Float64}(0.03, Placement{Float64}(0.0, 0.0, 0.0)), Material{Float64, :conductor}(2.035752039526186e-8, 1.0, 1.0, 20.0, 0.00393, 0.0, 90.0, 0.0, 0.0)), Circle{Float64}(0.03, Placement{Float64}(0.0, 0.0, 0.0))), LineCableModels.DataModel.PlacedRegion{Region{Offset{Float64}, Material{Float64, :semicon}}, Annulus{Float64}}(Region{Offset{Float64}, Material{Float64, :semicon}}(:core_semicon_inner, Offset{Float64}(0.002), Material{Float64, :semicon}(1000.0, 1000.0, 1.0, 20.0, 0.0, 0.0, 90.0, 0.0, 0.0)), Annulus{Float64}(0.03, 0.032, Placement{Float64}(0.0, 0.0, 0.0))), LineCableModels.DataModel.PlacedRegion{Region{Offset{Float64}, Material{Float64, :insulator}}, Annulus{Float64}}(Region{Offset{Float64}, Material{Float64, :insulator}}(:core_insulation, Offset{Float64}(0.026), Material{Float64, :insulator}(1.0e14, 2.4, 1.0, 20.0, 0.0, 0.0, 90.0, 0.0, 0.0)), Annulus{Float64}(0.032, 0.057999999999999996, Placement{Float64}(0.0, 0.0, 0.0))), LineCableModels.DataModel.PlacedRegion{Region{Offset{Float64}, Material{Float64, :semicon}}, Annulus{Float64}}(Region{Offset{Float64}, Material{Float64, :semicon}}(:core_semicon_outer, Offset{Float64}(0.0018), Material{Float64, :semicon}(500.0, 1000.0, 1.0, 20.0, 0.0, 0.0, 90.0, 0.0, 0.0)), Annulus{Float64}(0.057999999999999996, 0.0598, Placement{Float64}(0.0, 0.0, 0.0))), LineCableModels.DataModel.PlacedRegion{Region{Offset{Float64}, Material{Float64, :semicon}}, Annulus{Float64}}(Region{Offset{Float64}, Material{Float64, :semicon}}(:core_water_blocking, Offset{Float64}(0.0006), Material{Float64, :semicon}(500.0, 1000.0, 1.0, 20.0, 0.0, 0.0, 90.0, 0.0, 0.0)), Annulus{Float64}(0.0598, 0.0604, Placement{Float64}(0.0, 0.0, 0.0))), LineCableModels.DataModel.PlacedRegion{Region{Offset{Float64}, Material{Float64, :conductor}}, Annulus{Float64}}(Region{Offset{Float64}, Material{Float64, :conductor}}(:sheath_lead, Offset{Float64}(0.0032), Material{Float64, :conductor}(2.14e-7, 1.0, 0.999983, 20.0, 0.004, 0.0, 90.0, 0.0, 0.0)), Annulus{Float64}(0.0604, 0.0636, Placement{Float64}(0.0, 0.0, 0.0))), LineCableModels.DataModel.PlacedRegion{Region{Offset{Float64}, Material{Float64, :insulator}}, Annulus{Float64}}(Region{Offset{Float64}, Material{Float64, :insulator}}(:sheath_inner_pe, Offset{Float64}(0.0033), Material{Float64, :insulator}(1.97e14, 2.5, 1.0, 20.0, 0.0, 0.0, 90.0, 0.0, 0.0)), Annulus{Float64}(0.0636, 0.0669, Placement{Float64}(0.0, 0.0, 0.0))), LineCableModels.DataModel.PlacedRegion{Region{Offset{Float64}, Material{Float64, :insulator}}, Annulus{Float64}}(Region{Offset{Float64}, Material{Float64, :insulator}}(:sheath_bedding, Offset{Float64}(0.001), Material{Float64, :insulator}(1.0e15, 2.8, 1.0, 20.0, 0.0, 0.0, 90.0, 0.0, 0.0)), Annulus{Float64}(0.0669, 0.0679, Placement{Float64}(0.0, 0.0, 0.0))), LineCableModels.DataModel.PlacedRegion{Region{Circle{Float64}, Material{Float64, :conductor}}, Circle{Float64}}(Region{Circle{Float64}, Material{Float64, :conductor}}(:armor_wires, Circle{Float64}(0.003, Placement{Float64}(0.0, 0.0, 0.0)), Material{Float64, :conductor}(1.38e-7, 1.0, 10.0, 20.0, 0.0045, 0.0, 90.0, 0.0, 0.0)), Circle{Float64}(0.003, Placement{Float64}(0.0709, 0.0, 0.0))), LineCableModels.DataModel.PlacedRegion{Region{Circle{Float64}, Material{Float64, :conductor}}, Circle{Float64}}(Region{Circle{Float64}, Material{Float64, :conductor}}(:armor_wires, Circle{Float64}(0.003, Placement{Float64}(0.0, 0.0, 0.0)), Material{Float64, :conductor}(1.38e-7, 1.0, 10.0, 20.0, 0.0045, 0.0, 90.0, 0.0, 0.0)), Circle{Float64}(0.003, Placement{Float64}(0.07059755309931795, 0.006541826685948111, 0.09239978392911156)))  …  LineCableModels.DataModel.PlacedRegion{Region{Circle{Float64}, Material{Float64, :conductor}}, Circle{Float64}}(Region{Circle{Float64}, Material{Float64, :conductor}}(:armor_wires, Circle{Float64}(0.003, Placement{Float64}(0.0, 0.0, 0.0)), Material{Float64, :conductor}(1.38e-7, 1.0, 10.0, 20.0, 0.0045, 0.0, 90.0, 0.0, 0.0)), Circle{Float64}(0.003, Placement{Float64}(0.05239573223094474, -0.047765021134540904, 5.543987035746694))), LineCableModels.DataModel.PlacedRegion{Region{Circle{Float64}, Material{Float64, :conductor}}, Circle{Float64}}(Region{Circle{Float64}, Material{Float64, :conductor}}(:armor_wires, Circle{Float64}(0.003, Placement{Float64}(0.0, 0.0, 0.0)), Material{Float64, :conductor}(1.38e-7, 1.0, 10.0, 20.0, 0.0045, 0.0, 90.0, 0.0, 0.0)), Circle{Float64}(0.003, Placement{Float64}(0.056579421414168975, -0.04272679571928929, 5.636386819675805))), LineCableModels.DataModel.PlacedRegion{Region{Circle{Float64}, Material{Float64, :conductor}}, Circle{Float64}}(Region{Circle{Float64}, Material{Float64, :conductor}}(:armor_wires, Circle{Float64}(0.003, Placement{Float64}(0.0, 0.0, 0.0)), Material{Float64, :conductor}(1.38e-7, 1.0, 10.0, 20.0, 0.0045, 0.0, 90.0, 0.0, 0.0)), Circle{Float64}(0.003, Placement{Float64}(0.060280394923229626, -0.03732404034800455, 5.728786603604917))), LineCableModels.DataModel.PlacedRegion{Region{Circle{Float64}, Material{Float64, :conductor}}, Circle{Float64}}(Region{Circle{Float64}, Material{Float64, :conductor}}(:armor_wires, Circle{Float64}(0.003, Placement{Float64}(0.0, 0.0, 0.0)), Material{Float64, :conductor}(1.38e-7, 1.0, 10.0, 20.0, 0.0045, 0.0, 90.0, 0.0, 0.0)), Circle{Float64}(0.003, Placement{Float64}(0.06346707735707394, -0.03160284942455655, 5.821186387534029))), LineCableModels.DataModel.PlacedRegion{Region{Circle{Float64}, Material{Float64, :conductor}}, Circle{Float64}}(Region{Circle{Float64}, Material{Float64, :conductor}}(:armor_wires, Circle{Float64}(0.003, Placement{Float64}(0.0, 0.0, 0.0)), Material{Float64, :conductor}(1.38e-7, 1.0, 10.0, 20.0, 0.0045, 0.0, 90.0, 0.0, 0.0)), Circle{Float64}(0.003, Placement{Float64}(0.06611228106476884, -0.025612034132669152, 5.91358617146314))), LineCableModels.DataModel.PlacedRegion{Region{Circle{Float64}, Material{Float64, :conductor}}, Circle{Float64}}(Region{Circle{Float64}, Material{Float64, :conductor}}(:armor_wires, Circle{Float64}(0.003, Placement{Float64}(0.0, 0.0, 0.0)), Material{Float64, :conductor}(1.38e-7, 1.0, 10.0, 20.0, 0.0045, 0.0, 90.0, 0.0, 0.0)), Circle{Float64}(0.003, Placement{Float64}(0.06819343810095287, -0.019402705996110697, 6.005985955392251))), LineCableModels.DataModel.PlacedRegion{Region{Circle{Float64}, Material{Float64, :conductor}}, Circle{Float64}}(Region{Circle{Float64}, Material{Float64, :conductor}}(:armor_wires, Circle{Float64}(0.003, Placement{Float64}(0.0, 0.0, 0.0)), Material{Float64, :conductor}(1.38e-7, 1.0, 10.0, 20.0, 0.0045, 0.0, 90.0, 0.0, 0.0)), Circle{Float64}(0.003, Placement{Float64}(0.06969279276758863, -0.013027840813194818, 6.098385739321364))), LineCableModels.DataModel.PlacedRegion{Region{Circle{Float64}, Material{Float64, :conductor}}, Circle{Float64}}(Region{Circle{Float64}, Material{Float64, :conductor}}(:armor_wires, Circle{Float64}(0.003, Placement{Float64}(0.0, 0.0, 0.0)), Material{Float64, :conductor}(1.38e-7, 1.0, 10.0, 20.0, 0.0045, 0.0, 90.0, 0.0, 0.0)), Circle{Float64}(0.003, Placement{Float64}(0.07059755309931795, -0.0065418266859481105, 6.190785523250475))), LineCableModels.DataModel.PlacedRegion{Region{Offset{Float64}, Material{Float64, :insulator}}, LineCableModels.DataModel.DifferenceShape{Float64, Annulus{Float64}, Vector{Circle{Float64}}}}(Region{Offset{Float64}, Material{Float64, :insulator}}(:armor_wires_fill, Offset{Float64}(0.006), Material{Float64, :insulator}(Inf, 1.0, 1.0, 20.0, 0.0, 0.0, 90.0, 0.0, 0.0)), LineCableModels.DataModel.DifferenceShape{Float64, Annulus{Float64}, Vector{Circle{Float64}}}(Annulus{Float64}(0.0679, 0.07390000000000001, Placement{Float64}(0.0, 0.0, 0.0)), Circle{Float64}[Circle{Float64}(0.003, Placement{Float64}(0.0709, 0.0, 0.0)), Circle{Float64}(0.003, Placement{Float64}(0.07059755309931795, 0.006541826685948111, 0.09239978392911156)), Circle{Float64}(0.003, Placement{Float64}(0.06969279276758863, 0.013027840813194838, 0.18479956785822313)), Circle{Float64}(0.003, Placement{Float64}(0.06819343810095288, 0.019402705996110676, 0.2771993517873347)), Circle{Float64}(0.003, Placement{Float64}(0.06611228106476884, 0.025612034132669145, 0.36959913571644626)), Circle{Float64}(0.003, Placement{Float64}(0.06346707735707392, 0.031602849424556566, 0.46199891964555784)), Circle{Float64}(0.003, Placement{Float64}(0.060280394923229653, 0.037324040348004524, 0.5543987035746694)), Circle{Float64}(0.003, Placement{Float64}(0.05657942141416898, 0.04272679571928928, 0.646798487503781)), Circle{Float64}(0.003, Placement{Float64}(0.052395732230944736, 0.04776502113454091, 0.7391982714328925)), Circle{Float64}(0.003, Placement{Float64}(0.04776502113454091, 0.052395732230944736, 0.831598055362004))  …  Circle{Float64}(0.003, Placement{Float64}(0.042726795719289265, -0.056579421414169, 5.359187467888471)), Circle{Float64}(0.003, Placement{Float64}(0.047765021134540925, -0.052395732230944715, 5.451587251817583)), Circle{Float64}(0.003, Placement{Float64}(0.05239573223094474, -0.047765021134540904, 5.543987035746694)), Circle{Float64}(0.003, Placement{Float64}(0.056579421414168975, -0.04272679571928929, 5.636386819675805)), Circle{Float64}(0.003, Placement{Float64}(0.060280394923229626, -0.03732404034800455, 5.728786603604917)), Circle{Float64}(0.003, Placement{Float64}(0.06346707735707394, -0.03160284942455655, 5.821186387534029)), Circle{Float64}(0.003, Placement{Float64}(0.06611228106476884, -0.025612034132669152, 5.91358617146314)), Circle{Float64}(0.003, Placement{Float64}(0.06819343810095287, -0.019402705996110697, 6.005985955392251)), Circle{Float64}(0.003, Placement{Float64}(0.06969279276758863, -0.013027840813194818, 6.098385739321364)), Circle{Float64}(0.003, Placement{Float64}(0.07059755309931795, -0.0065418266859481105, 6.190785523250475))])), LineCableModels.DataModel.PlacedRegion{Region{Offset{Float64}, Material{Float64, :insulator}}, Annulus{Float64}}(Region{Offset{Float64}, Material{Float64, :insulator}}(:armor_jacket, Offset{Float64}(0.0066), Material{Float64, :insulator}(1.0e15, 2.8, 1.0, 20.0, 0.0, 0.0, 90.0, 0.0, 0.0)), Annulus{Float64}(0.07390000000000001, 0.0805, Placement{Float64}(0.0, 0.0, 0.0)))], Circle{Float64}(0.0805, Placement{Float64}(0.0, 0.0, 0.0)), [(name = :core, scope = @NamedTuple{repeat::Int64, copy::Int64}[], regions = [1]), (name = :sheath, scope = @NamedTuple{repeat::Int64, copy::Int64}[], regions = [6]), (name = :armor, scope = @NamedTuple{repeat::Int64, copy::Int64}[], regions = [9, 10, 11, 12, 13, 14, 15, 16, 17, 18  …  67, 68, 69, 70, 71, 72, 73, 74, 75, 76])], @NamedTuple{at::Placement{Float64}, regions::Vector{Int64}, members::Vector{Int64}}[(at = Placement{Float64}(0.0, 0.0, 0.0), regions = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10  …  69, 70, 71, 72, 73, 74, 75, 76, 77, 78], members = [])], @NamedTuple{placements::Vector{Placement{Float64}}, copies::Vector{UnitRange{Int64}}}[(placements = [Placement{Float64}(0.0709, 0.0, 0.0), Placement{Float64}(0.07059755309931795, 0.006541826685948111, 0.09239978392911156), Placement{Float64}(0.06969279276758863, 0.013027840813194838, 0.18479956785822313), Placement{Float64}(0.06819343810095288, 0.019402705996110676, 0.2771993517873347), Placement{Float64}(0.06611228106476884, 0.025612034132669145, 0.36959913571644626), Placement{Float64}(0.06346707735707392, 0.031602849424556566, 0.46199891964555784), Placement{Float64}(0.060280394923229653, 0.037324040348004524, 0.5543987035746694), Placement{Float64}(0.05657942141416898, 0.04272679571928928, 0.646798487503781), Placement{Float64}(0.052395732230944736, 0.04776502113454091, 0.7391982714328925), Placement{Float64}(0.04776502113454091, 0.052395732230944736, 0.831598055362004)  …  Placement{Float64}(0.042726795719289265, -0.056579421414169, 5.359187467888471), Placement{Float64}(0.047765021134540925, -0.052395732230944715, 5.451587251817583), Placement{Float64}(0.05239573223094474, -0.047765021134540904, 5.543987035746694), Placement{Float64}(0.056579421414168975, -0.04272679571928929, 5.636386819675805), Placement{Float64}(0.060280394923229626, -0.03732404034800455, 5.728786603604917), Placement{Float64}(0.06346707735707394, -0.03160284942455655, 5.821186387534029), Placement{Float64}(0.06611228106476884, -0.025612034132669152, 5.91358617146314), Placement{Float64}(0.06819343810095287, -0.019402705996110697, 6.005985955392251), Placement{Float64}(0.06969279276758863, -0.013027840813194818, 6.098385739321364), Placement{Float64}(0.07059755309931795, -0.0065418266859481105, 6.190785523250475)], copies = [9:9, 10:10, 11:11, 12:12, 13:13, 14:14, 15:15, 16:16, 17:17, 18:18  …  67:67, 68:68, 69:69, 70:70, 71:71, 72:72, 73:73, 74:74, 75:75, 76:76])], [(repeat = 1, radii = [0.0709, 0.0709, 0.0709, 0.0709, 0.0709, 0.0709, 0.0709, 0.0709, 0.0709, 0.0709  …  0.0709, 0.0709, 0.0709, 0.0709, 0.0709, 0.0709, 0.07090000000000002, 0.0709, 0.07089999999999999, 0.0709], pitches = [1.4208247337261888, 1.4208247337261888, 1.4208247337261888, 1.4208247337261888, 1.4208247337261888, 1.4208247337261888, 1.4208247337261888, 1.4208247337261888, 1.4208247337261888, 1.4208247337261888  …  1.4208247337261888, 1.4208247337261888, 1.4208247337261888, 1.4208247337261888, 1.4208247337261888, 1.4208247337261888, 1.4208247337261892, 1.4208247337261888, 1.4208247337261886, 1.4208247337261888], overlengths = [1.048, 1.048, 1.048, 1.048, 1.048, 1.048, 1.048, 1.048, 1.048, 1.048  …  1.048, 1.048, 1.048, 1.048, 1.048, 1.048, 1.048, 1.048, 1.048, 1.048], axis = (0.0, 0.0))], @NamedTuple{repeat::Int64, factor::Float64}[], [(region = 77, contents = [9, 10, 11, 12, 13, 14, 15, 16, 17, 18  …  67, 68, 69, 70, 71, 72, 73, 74, 75, 76])]), CableDesign{Float64, Stack{Vector{AbstractCablePart}}, Vector{LineCableModels.DataModel.PlacedRegion}, Circle{Float64}}("cable_525kv_subsea_armoured", Stack{Vector{AbstractCablePart}}(AbstractCablePart[Terminal{Stack{Vector{AbstractCablePart}}}(:core, Stack{Vector{AbstractCablePart}}(AbstractCablePart[Region{Circle{Float64}, Material{Float64, :conductor}}(:core_conductor, Circle{Float64}(0.03, Placement{Float64}(0.0, 0.0, 0.0)), Material{Float64, :conductor}(2.035752039526186e-8, 1.0, 1.0, 20.0, 0.00393, 0.0, 90.0, 0.0, 0.0))])), Region{Offset{Float64}, Material{Float64, :semicon}}(:core_semicon_inner, Offset{Float64}(0.002), Material{Float64, :semicon}(1000.0, 1000.0, 1.0, 20.0, 0.0, 0.0, 90.0, 0.0, 0.0)), Region{Offset{Float64}, Material{Float64, :insulator}}(:core_insulation, Offset{Float64}(0.026), Material{Float64, :insulator}(1.0e14, 2.4, 1.0, 20.0, 0.0, 0.0, 90.0, 0.0, 0.0)), Region{Offset{Float64}, Material{Float64, :semicon}}(:core_semicon_outer, Offset{Float64}(0.0018), Material{Float64, :semicon}(500.0, 1000.0, 1.0, 20.0, 0.0, 0.0, 90.0, 0.0, 0.0)), Region{Offset{Float64}, Material{Float64, :semicon}}(:core_water_blocking, Offset{Float64}(0.0006), Material{Float64, :semicon}(500.0, 1000.0, 1.0, 20.0, 0.0, 0.0, 90.0, 0.0, 0.0)), Terminal{Stack{Vector{AbstractCablePart}}}(:sheath, Stack{Vector{AbstractCablePart}}(AbstractCablePart[Region{Offset{Float64}, Material{Float64, :conductor}}(:sheath_lead, Offset{Float64}(0.0032), Material{Float64, :conductor}(2.14e-7, 1.0, 0.999983, 20.0, 0.004, 0.0, 90.0, 0.0, 0.0))])), Region{Offset{Float64}, Material{Float64, :insulator}}(:sheath_inner_pe, Offset{Float64}(0.0033), Material{Float64, :insulator}(1.97e14, 2.5, 1.0, 20.0, 0.0, 0.0, 90.0, 0.0, 0.0)), Region{Offset{Float64}, Material{Float64, :insulator}}(:sheath_bedding, Offset{Float64}(0.001), Material{Float64, :insulator}(1.0e15, 2.8, 1.0, 20.0, 0.0, 0.0, 90.0, 0.0, 0.0)), Terminal{Stack{Vector{AbstractCablePart}}}(:armor, Stack{Vector{AbstractCablePart}}(AbstractCablePart[Enclosure{Region{Offset{Float64}, Material{Float64, :insulator}}, Lay{Helix{LayRatio{Float64}, Float64}, Repeat{CircularPattern{Float64, Offset{Float64}}, Region{Circle{Float64}, Material{Float64, :conductor}}}}}(Region{Offset{Float64}, Material{Float64, :insulator}}(:armor_wires_fill, Offset{Float64}(0.006), Material{Float64, :insulator}(Inf, 1.0, 1.0, 20.0, 0.0, 0.0, 90.0, 0.0, 0.0)), Lay{Helix{LayRatio{Float64}, Float64}, Repeat{CircularPattern{Float64, Offset{Float64}}, Region{Circle{Float64}, Material{Float64, :conductor}}}}(Helix{LayRatio{Float64}, Float64}(LayRatio{Float64}(10.019920548139554), 1, 0.0), Repeat{CircularPattern{Float64, Offset{Float64}}, Region{Circle{Float64}, Material{Float64, :conductor}}}(CircularPattern{Float64, Offset{Float64}}(68, Offset{Float64}(0.0), 0.0, 6.283185307179586, 0.0), Region{Circle{Float64}, Material{Float64, :conductor}}(:armor_wires, Circle{Float64}(0.003, Placement{Float64}(0.0, 0.0, 0.0)), Material{Float64, :conductor}(1.38e-7, 1.0, 10.0, 20.0, 0.0045, 0.0, 90.0, 0.0, 0.0)))))])), Region{Offset{Float64}, Material{Float64, :insulator}}(:armor_jacket, Offset{Float64}(0.0066), Material{Float64, :insulator}(1.0e15, 2.8, 1.0, 20.0, 0.0, 0.0, 90.0, 0.0, 0.0))]), LineCableModels.DataModel.PlacedRegion[LineCableModels.DataModel.PlacedRegion{Region{Circle{Float64}, Material{Float64, :conductor}}, Circle{Float64}}(Region{Circle{Float64}, Material{Float64, :conductor}}(:core_conductor, Circle{Float64}(0.03, Placement{Float64}(0.0, 0.0, 0.0)), Material{Float64, :conductor}(2.035752039526186e-8, 1.0, 1.0, 20.0, 0.00393, 0.0, 90.0, 0.0, 0.0)), Circle{Float64}(0.03, Placement{Float64}(0.0, 0.0, 0.0))), LineCableModels.DataModel.PlacedRegion{Region{Offset{Float64}, Material{Float64, :semicon}}, Annulus{Float64}}(Region{Offset{Float64}, Material{Float64, :semicon}}(:core_semicon_inner, Offset{Float64}(0.002), Material{Float64, :semicon}(1000.0, 1000.0, 1.0, 20.0, 0.0, 0.0, 90.0, 0.0, 0.0)), Annulus{Float64}(0.03, 0.032, Placement{Float64}(0.0, 0.0, 0.0))), LineCableModels.DataModel.PlacedRegion{Region{Offset{Float64}, Material{Float64, :insulator}}, Annulus{Float64}}(Region{Offset{Float64}, Material{Float64, :insulator}}(:core_insulation, Offset{Float64}(0.026), Material{Float64, :insulator}(1.0e14, 2.4, 1.0, 20.0, 0.0, 0.0, 90.0, 0.0, 0.0)), Annulus{Float64}(0.032, 0.057999999999999996, Placement{Float64}(0.0, 0.0, 0.0))), LineCableModels.DataModel.PlacedRegion{Region{Offset{Float64}, Material{Float64, :semicon}}, Annulus{Float64}}(Region{Offset{Float64}, Material{Float64, :semicon}}(:core_semicon_outer, Offset{Float64}(0.0018), Material{Float64, :semicon}(500.0, 1000.0, 1.0, 20.0, 0.0, 0.0, 90.0, 0.0, 0.0)), Annulus{Float64}(0.057999999999999996, 0.0598, Placement{Float64}(0.0, 0.0, 0.0))), LineCableModels.DataModel.PlacedRegion{Region{Offset{Float64}, Material{Float64, :semicon}}, Annulus{Float64}}(Region{Offset{Float64}, Material{Float64, :semicon}}(:core_water_blocking, Offset{Float64}(0.0006), Material{Float64, :semicon}(500.0, 1000.0, 1.0, 20.0, 0.0, 0.0, 90.0, 0.0, 0.0)), Annulus{Float64}(0.0598, 0.0604, Placement{Float64}(0.0, 0.0, 0.0))), LineCableModels.DataModel.PlacedRegion{Region{Offset{Float64}, Material{Float64, :conductor}}, Annulus{Float64}}(Region{Offset{Float64}, Material{Float64, :conductor}}(:sheath_lead, Offset{Float64}(0.0032), Material{Float64, :conductor}(2.14e-7, 1.0, 0.999983, 20.0, 0.004, 0.0, 90.0, 0.0, 0.0)), Annulus{Float64}(0.0604, 0.0636, Placement{Float64}(0.0, 0.0, 0.0))), LineCableModels.DataModel.PlacedRegion{Region{Offset{Float64}, Material{Float64, :insulator}}, Annulus{Float64}}(Region{Offset{Float64}, Material{Float64, :insulator}}(:sheath_inner_pe, Offset{Float64}(0.0033), Material{Float64, :insulator}(1.97e14, 2.5, 1.0, 20.0, 0.0, 0.0, 90.0, 0.0, 0.0)), Annulus{Float64}(0.0636, 0.0669, Placement{Float64}(0.0, 0.0, 0.0))), LineCableModels.DataModel.PlacedRegion{Region{Offset{Float64}, Material{Float64, :insulator}}, Annulus{Float64}}(Region{Offset{Float64}, Material{Float64, :insulator}}(:sheath_bedding, Offset{Float64}(0.001), Material{Float64, :insulator}(1.0e15, 2.8, 1.0, 20.0, 0.0, 0.0, 90.0, 0.0, 0.0)), Annulus{Float64}(0.0669, 0.0679, Placement{Float64}(0.0, 0.0, 0.0))), LineCableModels.DataModel.PlacedRegion{Region{Circle{Float64}, Material{Float64, :conductor}}, Circle{Float64}}(Region{Circle{Float64}, Material{Float64, :conductor}}(:armor_wires, Circle{Float64}(0.003, Placement{Float64}(0.0, 0.0, 0.0)), Material{Float64, :conductor}(1.38e-7, 1.0, 10.0, 20.0, 0.0045, 0.0, 90.0, 0.0, 0.0)), Circle{Float64}(0.003, Placement{Float64}(0.0709, 0.0, 0.0))), LineCableModels.DataModel.PlacedRegion{Region{Circle{Float64}, Material{Float64, :conductor}}, Circle{Float64}}(Region{Circle{Float64}, Material{Float64, :conductor}}(:armor_wires, Circle{Float64}(0.003, Placement{Float64}(0.0, 0.0, 0.0)), Material{Float64, :conductor}(1.38e-7, 1.0, 10.0, 20.0, 0.0045, 0.0, 90.0, 0.0, 0.0)), Circle{Float64}(0.003, Placement{Float64}(0.07059755309931795, 0.006541826685948111, 0.09239978392911156)))  …  LineCableModels.DataModel.PlacedRegion{Region{Circle{Float64}, Material{Float64, :conductor}}, Circle{Float64}}(Region{Circle{Float64}, Material{Float64, :conductor}}(:armor_wires, Circle{Float64}(0.003, Placement{Float64}(0.0, 0.0, 0.0)), Material{Float64, :conductor}(1.38e-7, 1.0, 10.0, 20.0, 0.0045, 0.0, 90.0, 0.0, 0.0)), Circle{Float64}(0.003, Placement{Float64}(0.05239573223094474, -0.047765021134540904, 5.543987035746694))), LineCableModels.DataModel.PlacedRegion{Region{Circle{Float64}, Material{Float64, :conductor}}, Circle{Float64}}(Region{Circle{Float64}, Material{Float64, :conductor}}(:armor_wires, Circle{Float64}(0.003, Placement{Float64}(0.0, 0.0, 0.0)), Material{Float64, :conductor}(1.38e-7, 1.0, 10.0, 20.0, 0.0045, 0.0, 90.0, 0.0, 0.0)), Circle{Float64}(0.003, Placement{Float64}(0.056579421414168975, -0.04272679571928929, 5.636386819675805))), LineCableModels.DataModel.PlacedRegion{Region{Circle{Float64}, Material{Float64, :conductor}}, Circle{Float64}}(Region{Circle{Float64}, Material{Float64, :conductor}}(:armor_wires, Circle{Float64}(0.003, Placement{Float64}(0.0, 0.0, 0.0)), Material{Float64, :conductor}(1.38e-7, 1.0, 10.0, 20.0, 0.0045, 0.0, 90.0, 0.0, 0.0)), Circle{Float64}(0.003, Placement{Float64}(0.060280394923229626, -0.03732404034800455, 5.728786603604917))), LineCableModels.DataModel.PlacedRegion{Region{Circle{Float64}, Material{Float64, :conductor}}, Circle{Float64}}(Region{Circle{Float64}, Material{Float64, :conductor}}(:armor_wires, Circle{Float64}(0.003, Placement{Float64}(0.0, 0.0, 0.0)), Material{Float64, :conductor}(1.38e-7, 1.0, 10.0, 20.0, 0.0045, 0.0, 90.0, 0.0, 0.0)), Circle{Float64}(0.003, Placement{Float64}(0.06346707735707394, -0.03160284942455655, 5.821186387534029))), LineCableModels.DataModel.PlacedRegion{Region{Circle{Float64}, Material{Float64, :conductor}}, Circle{Float64}}(Region{Circle{Float64}, Material{Float64, :conductor}}(:armor_wires, Circle{Float64}(0.003, Placement{Float64}(0.0, 0.0, 0.0)), Material{Float64, :conductor}(1.38e-7, 1.0, 10.0, 20.0, 0.0045, 0.0, 90.0, 0.0, 0.0)), Circle{Float64}(0.003, Placement{Float64}(0.06611228106476884, -0.025612034132669152, 5.91358617146314))), LineCableModels.DataModel.PlacedRegion{Region{Circle{Float64}, Material{Float64, :conductor}}, Circle{Float64}}(Region{Circle{Float64}, Material{Float64, :conductor}}(:armor_wires, Circle{Float64}(0.003, Placement{Float64}(0.0, 0.0, 0.0)), Material{Float64, :conductor}(1.38e-7, 1.0, 10.0, 20.0, 0.0045, 0.0, 90.0, 0.0, 0.0)), Circle{Float64}(0.003, Placement{Float64}(0.06819343810095287, -0.019402705996110697, 6.005985955392251))), LineCableModels.DataModel.PlacedRegion{Region{Circle{Float64}, Material{Float64, :conductor}}, Circle{Float64}}(Region{Circle{Float64}, Material{Float64, :conductor}}(:armor_wires, Circle{Float64}(0.003, Placement{Float64}(0.0, 0.0, 0.0)), Material{Float64, :conductor}(1.38e-7, 1.0, 10.0, 20.0, 0.0045, 0.0, 90.0, 0.0, 0.0)), Circle{Float64}(0.003, Placement{Float64}(0.06969279276758863, -0.013027840813194818, 6.098385739321364))), LineCableModels.DataModel.PlacedRegion{Region{Circle{Float64}, Material{Float64, :conductor}}, Circle{Float64}}(Region{Circle{Float64}, Material{Float64, :conductor}}(:armor_wires, Circle{Float64}(0.003, Placement{Float64}(0.0, 0.0, 0.0)), Material{Float64, :conductor}(1.38e-7, 1.0, 10.0, 20.0, 0.0045, 0.0, 90.0, 0.0, 0.0)), Circle{Float64}(0.003, Placement{Float64}(0.07059755309931795, -0.0065418266859481105, 6.190785523250475))), LineCableModels.DataModel.PlacedRegion{Region{Offset{Float64}, Material{Float64, :insulator}}, LineCableModels.DataModel.DifferenceShape{Float64, Annulus{Float64}, Vector{Circle{Float64}}}}(Region{Offset{Float64}, Material{Float64, :insulator}}(:armor_wires_fill, Offset{Float64}(0.006), Material{Float64, :insulator}(Inf, 1.0, 1.0, 20.0, 0.0, 0.0, 90.0, 0.0, 0.0)), LineCableModels.DataModel.DifferenceShape{Float64, Annulus{Float64}, Vector{Circle{Float64}}}(Annulus{Float64}(0.0679, 0.07390000000000001, Placement{Float64}(0.0, 0.0, 0.0)), Circle{Float64}[Circle{Float64}(0.003, Placement{Float64}(0.0709, 0.0, 0.0)), Circle{Float64}(0.003, Placement{Float64}(0.07059755309931795, 0.006541826685948111, 0.09239978392911156)), Circle{Float64}(0.003, Placement{Float64}(0.06969279276758863, 0.013027840813194838, 0.18479956785822313)), Circle{Float64}(0.003, Placement{Float64}(0.06819343810095288, 0.019402705996110676, 0.2771993517873347)), Circle{Float64}(0.003, Placement{Float64}(0.06611228106476884, 0.025612034132669145, 0.36959913571644626)), Circle{Float64}(0.003, Placement{Float64}(0.06346707735707392, 0.031602849424556566, 0.46199891964555784)), Circle{Float64}(0.003, Placement{Float64}(0.060280394923229653, 0.037324040348004524, 0.5543987035746694)), Circle{Float64}(0.003, Placement{Float64}(0.05657942141416898, 0.04272679571928928, 0.646798487503781)), Circle{Float64}(0.003, Placement{Float64}(0.052395732230944736, 0.04776502113454091, 0.7391982714328925)), Circle{Float64}(0.003, Placement{Float64}(0.04776502113454091, 0.052395732230944736, 0.831598055362004))  …  Circle{Float64}(0.003, Placement{Float64}(0.042726795719289265, -0.056579421414169, 5.359187467888471)), Circle{Float64}(0.003, Placement{Float64}(0.047765021134540925, -0.052395732230944715, 5.451587251817583)), Circle{Float64}(0.003, Placement{Float64}(0.05239573223094474, -0.047765021134540904, 5.543987035746694)), Circle{Float64}(0.003, Placement{Float64}(0.056579421414168975, -0.04272679571928929, 5.636386819675805)), Circle{Float64}(0.003, Placement{Float64}(0.060280394923229626, -0.03732404034800455, 5.728786603604917)), Circle{Float64}(0.003, Placement{Float64}(0.06346707735707394, -0.03160284942455655, 5.821186387534029)), Circle{Float64}(0.003, Placement{Float64}(0.06611228106476884, -0.025612034132669152, 5.91358617146314)), Circle{Float64}(0.003, Placement{Float64}(0.06819343810095287, -0.019402705996110697, 6.005985955392251)), Circle{Float64}(0.003, Placement{Float64}(0.06969279276758863, -0.013027840813194818, 6.098385739321364)), Circle{Float64}(0.003, Placement{Float64}(0.07059755309931795, -0.0065418266859481105, 6.190785523250475))])), LineCableModels.DataModel.PlacedRegion{Region{Offset{Float64}, Material{Float64, :insulator}}, Annulus{Float64}}(Region{Offset{Float64}, Material{Float64, :insulator}}(:armor_jacket, Offset{Float64}(0.0066), Material{Float64, :insulator}(1.0e15, 2.8, 1.0, 20.0, 0.0, 0.0, 90.0, 0.0, 0.0)), Annulus{Float64}(0.07390000000000001, 0.0805, Placement{Float64}(0.0, 0.0, 0.0)))], Circle{Float64}(0.0805, Placement{Float64}(0.0, 0.0, 0.0)), [(name = :core, scope = @NamedTuple{repeat::Int64, copy::Int64}[], regions = [1]), (name = :sheath, scope = @NamedTuple{repeat::Int64, copy::Int64}[], regions = [6]), (name = :armor, scope = @NamedTuple{repeat::Int64, copy::Int64}[], regions = [9, 10, 11, 12, 13, 14, 15, 16, 17, 18  …  67, 68, 69, 70, 71, 72, 73, 74, 75, 76])], @NamedTuple{at::Placement{Float64}, regions::Vector{Int64}, members::Vector{Int64}}[(at = Placement{Float64}(0.0, 0.0, 0.0), regions = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10  …  69, 70, 71, 72, 73, 74, 75, 76, 77, 78], members = [])], @NamedTuple{placements::Vector{Placement{Float64}}, copies::Vector{UnitRange{Int64}}}[(placements = [Placement{Float64}(0.0709, 0.0, 0.0), Placement{Float64}(0.07059755309931795, 0.006541826685948111, 0.09239978392911156), Placement{Float64}(0.06969279276758863, 0.013027840813194838, 0.18479956785822313), Placement{Float64}(0.06819343810095288, 0.019402705996110676, 0.2771993517873347), Placement{Float64}(0.06611228106476884, 0.025612034132669145, 0.36959913571644626), Placement{Float64}(0.06346707735707392, 0.031602849424556566, 0.46199891964555784), Placement{Float64}(0.060280394923229653, 0.037324040348004524, 0.5543987035746694), Placement{Float64}(0.05657942141416898, 0.04272679571928928, 0.646798487503781), Placement{Float64}(0.052395732230944736, 0.04776502113454091, 0.7391982714328925), Placement{Float64}(0.04776502113454091, 0.052395732230944736, 0.831598055362004)  …  Placement{Float64}(0.042726795719289265, -0.056579421414169, 5.359187467888471), Placement{Float64}(0.047765021134540925, -0.052395732230944715, 5.451587251817583), Placement{Float64}(0.05239573223094474, -0.047765021134540904, 5.543987035746694), Placement{Float64}(0.056579421414168975, -0.04272679571928929, 5.636386819675805), Placement{Float64}(0.060280394923229626, -0.03732404034800455, 5.728786603604917), Placement{Float64}(0.06346707735707394, -0.03160284942455655, 5.821186387534029), Placement{Float64}(0.06611228106476884, -0.025612034132669152, 5.91358617146314), Placement{Float64}(0.06819343810095287, -0.019402705996110697, 6.005985955392251), Placement{Float64}(0.06969279276758863, -0.013027840813194818, 6.098385739321364), Placement{Float64}(0.07059755309931795, -0.0065418266859481105, 6.190785523250475)], copies = [9:9, 10:10, 11:11, 12:12, 13:13, 14:14, 15:15, 16:16, 17:17, 18:18  …  67:67, 68:68, 69:69, 70:70, 71:71, 72:72, 73:73, 74:74, 75:75, 76:76])], [(repeat = 1, radii = [0.0709, 0.0709, 0.0709, 0.0709, 0.0709, 0.0709, 0.0709, 0.0709, 0.0709, 0.0709  …  0.0709, 0.0709, 0.0709, 0.0709, 0.0709, 0.0709, 0.07090000000000002, 0.0709, 0.07089999999999999, 0.0709], pitches = [1.4208247337261888, 1.4208247337261888, 1.4208247337261888, 1.4208247337261888, 1.4208247337261888, 1.4208247337261888, 1.4208247337261888, 1.4208247337261888, 1.4208247337261888, 1.4208247337261888  …  1.4208247337261888, 1.4208247337261888, 1.4208247337261888, 1.4208247337261888, 1.4208247337261888, 1.4208247337261888, 1.4208247337261892, 1.4208247337261888, 1.4208247337261886, 1.4208247337261888], overlengths = [1.048, 1.048, 1.048, 1.048, 1.048, 1.048, 1.048, 1.048, 1.048, 1.048  …  1.048, 1.048, 1.048, 1.048, 1.048, 1.048, 1.048, 1.048, 1.048, 1.048], axis = (0.0, 0.0))], @NamedTuple{repeat::Int64, factor::Float64}[], [(region = 77, contents = [9, 10, 11, 12, 13, 14, 15, 16, 17, 18  …  67, 68, 69, 70, 71, 72, 73, 74, 75, 76])]), CableDesign{Float64, Stack{Vector{AbstractCablePart}}, Vector{LineCableModels.DataModel.PlacedRegion}, Circle{Float64}}("cable_525kv_subsea_armoured", Stack{Vector{AbstractCablePart}}(AbstractCablePart[Terminal{Stack{Vector{AbstractCablePart}}}(:core, Stack{Vector{AbstractCablePart}}(AbstractCablePart[Region{Circle{Float64}, Material{Float64, :conductor}}(:core_conductor, Circle{Float64}(0.03, Placement{Float64}(0.0, 0.0, 0.0)), Material{Float64, :conductor}(2.035752039526186e-8, 1.0, 1.0, 20.0, 0.00393, 0.0, 90.0, 0.0, 0.0))])), Region{Offset{Float64}, Material{Float64, :semicon}}(:core_semicon_inner, Offset{Float64}(0.002), Material{Float64, :semicon}(1000.0, 1000.0, 1.0, 20.0, 0.0, 0.0, 90.0, 0.0, 0.0)), Region{Offset{Float64}, Material{Float64, :insulator}}(:core_insulation, Offset{Float64}(0.026), Material{Float64, :insulator}(1.0e14, 2.4, 1.0, 20.0, 0.0, 0.0, 90.0, 0.0, 0.0)), Region{Offset{Float64}, Material{Float64, :semicon}}(:core_semicon_outer, Offset{Float64}(0.0018), Material{Float64, :semicon}(500.0, 1000.0, 1.0, 20.0, 0.0, 0.0, 90.0, 0.0, 0.0)), Region{Offset{Float64}, Material{Float64, :semicon}}(:core_water_blocking, Offset{Float64}(0.0006), Material{Float64, :semicon}(500.0, 1000.0, 1.0, 20.0, 0.0, 0.0, 90.0, 0.0, 0.0)), Terminal{Stack{Vector{AbstractCablePart}}}(:sheath, Stack{Vector{AbstractCablePart}}(AbstractCablePart[Region{Offset{Float64}, Material{Float64, :conductor}}(:sheath_lead, Offset{Float64}(0.0032), Material{Float64, :conductor}(2.14e-7, 1.0, 0.999983, 20.0, 0.004, 0.0, 90.0, 0.0, 0.0))])), Region{Offset{Float64}, Material{Float64, :insulator}}(:sheath_inner_pe, Offset{Float64}(0.0033), Material{Float64, :insulator}(1.97e14, 2.5, 1.0, 20.0, 0.0, 0.0, 90.0, 0.0, 0.0)), Region{Offset{Float64}, Material{Float64, :insulator}}(:sheath_bedding, Offset{Float64}(0.001), Material{Float64, :insulator}(1.0e15, 2.8, 1.0, 20.0, 0.0, 0.0, 90.0, 0.0, 0.0)), Terminal{Stack{Vector{AbstractCablePart}}}(:armor, Stack{Vector{AbstractCablePart}}(AbstractCablePart[Enclosure{Region{Offset{Float64}, Material{Float64, :insulator}}, Lay{Helix{LayRatio{Float64}, Float64}, Repeat{CircularPattern{Float64, Offset{Float64}}, Region{Circle{Float64}, Material{Float64, :conductor}}}}}(Region{Offset{Float64}, Material{Float64, :insulator}}(:armor_wires_fill, Offset{Float64}(0.006), Material{Float64, :insulator}(Inf, 1.0, 1.0, 20.0, 0.0, 0.0, 90.0, 0.0, 0.0)), Lay{Helix{LayRatio{Float64}, Float64}, Repeat{CircularPattern{Float64, Offset{Float64}}, Region{Circle{Float64}, Material{Float64, :conductor}}}}(Helix{LayRatio{Float64}, Float64}(LayRatio{Float64}(10.019920548139554), 1, 0.0), Repeat{CircularPattern{Float64, Offset{Float64}}, Region{Circle{Float64}, Material{Float64, :conductor}}}(CircularPattern{Float64, Offset{Float64}}(68, Offset{Float64}(0.0), 0.0, 6.283185307179586, 0.0), Region{Circle{Float64}, Material{Float64, :conductor}}(:armor_wires, Circle{Float64}(0.003, Placement{Float64}(0.0, 0.0, 0.0)), Material{Float64, :conductor}(1.38e-7, 1.0, 10.0, 20.0, 0.0045, 0.0, 90.0, 0.0, 0.0)))))])), Region{Offset{Float64}, Material{Float64, :insulator}}(:armor_jacket, Offset{Float64}(0.0066), Material{Float64, :insulator}(1.0e15, 2.8, 1.0, 20.0, 0.0, 0.0, 90.0, 0.0, 0.0))]), LineCableModels.DataModel.PlacedRegion[LineCableModels.DataModel.PlacedRegion{Region{Circle{Float64}, Material{Float64, :conductor}}, Circle{Float64}}(Region{Circle{Float64}, Material{Float64, :conductor}}(:core_conductor, Circle{Float64}(0.03, Placement{Float64}(0.0, 0.0, 0.0)), Material{Float64, :conductor}(2.035752039526186e-8, 1.0, 1.0, 20.0, 0.00393, 0.0, 90.0, 0.0, 0.0)), Circle{Float64}(0.03, Placement{Float64}(0.0, 0.0, 0.0))), LineCableModels.DataModel.PlacedRegion{Region{Offset{Float64}, Material{Float64, :semicon}}, Annulus{Float64}}(Region{Offset{Float64}, Material{Float64, :semicon}}(:core_semicon_inner, Offset{Float64}(0.002), Material{Float64, :semicon}(1000.0, 1000.0, 1.0, 20.0, 0.0, 0.0, 90.0, 0.0, 0.0)), Annulus{Float64}(0.03, 0.032, Placement{Float64}(0.0, 0.0, 0.0))), LineCableModels.DataModel.PlacedRegion{Region{Offset{Float64}, Material{Float64, :insulator}}, Annulus{Float64}}(Region{Offset{Float64}, Material{Float64, :insulator}}(:core_insulation, Offset{Float64}(0.026), Material{Float64, :insulator}(1.0e14, 2.4, 1.0, 20.0, 0.0, 0.0, 90.0, 0.0, 0.0)), Annulus{Float64}(0.032, 0.057999999999999996, Placement{Float64}(0.0, 0.0, 0.0))), LineCableModels.DataModel.PlacedRegion{Region{Offset{Float64}, Material{Float64, :semicon}}, Annulus{Float64}}(Region{Offset{Float64}, Material{Float64, :semicon}}(:core_semicon_outer, Offset{Float64}(0.0018), Material{Float64, :semicon}(500.0, 1000.0, 1.0, 20.0, 0.0, 0.0, 90.0, 0.0, 0.0)), Annulus{Float64}(0.057999999999999996, 0.0598, Placement{Float64}(0.0, 0.0, 0.0))), LineCableModels.DataModel.PlacedRegion{Region{Offset{Float64}, Material{Float64, :semicon}}, Annulus{Float64}}(Region{Offset{Float64}, Material{Float64, :semicon}}(:core_water_blocking, Offset{Float64}(0.0006), Material{Float64, :semicon}(500.0, 1000.0, 1.0, 20.0, 0.0, 0.0, 90.0, 0.0, 0.0)), Annulus{Float64}(0.0598, 0.0604, Placement{Float64}(0.0, 0.0, 0.0))), LineCableModels.DataModel.PlacedRegion{Region{Offset{Float64}, Material{Float64, :conductor}}, Annulus{Float64}}(Region{Offset{Float64}, Material{Float64, :conductor}}(:sheath_lead, Offset{Float64}(0.0032), Material{Float64, :conductor}(2.14e-7, 1.0, 0.999983, 20.0, 0.004, 0.0, 90.0, 0.0, 0.0)), Annulus{Float64}(0.0604, 0.0636, Placement{Float64}(0.0, 0.0, 0.0))), LineCableModels.DataModel.PlacedRegion{Region{Offset{Float64}, Material{Float64, :insulator}}, Annulus{Float64}}(Region{Offset{Float64}, Material{Float64, :insulator}}(:sheath_inner_pe, Offset{Float64}(0.0033), Material{Float64, :insulator}(1.97e14, 2.5, 1.0, 20.0, 0.0, 0.0, 90.0, 0.0, 0.0)), Annulus{Float64}(0.0636, 0.0669, Placement{Float64}(0.0, 0.0, 0.0))), LineCableModels.DataModel.PlacedRegion{Region{Offset{Float64}, Material{Float64, :insulator}}, Annulus{Float64}}(Region{Offset{Float64}, Material{Float64, :insulator}}(:sheath_bedding, Offset{Float64}(0.001), Material{Float64, :insulator}(1.0e15, 2.8, 1.0, 20.0, 0.0, 0.0, 90.0, 0.0, 0.0)), Annulus{Float64}(0.0669, 0.0679, Placement{Float64}(0.0, 0.0, 0.0))), LineCableModels.DataModel.PlacedRegion{Region{Circle{Float64}, Material{Float64, :conductor}}, Circle{Float64}}(Region{Circle{Float64}, Material{Float64, :conductor}}(:armor_wires, Circle{Float64}(0.003, Placement{Float64}(0.0, 0.0, 0.0)), Material{Float64, :conductor}(1.38e-7, 1.0, 10.0, 20.0, 0.0045, 0.0, 90.0, 0.0, 0.0)), Circle{Float64}(0.003, Placement{Float64}(0.0709, 0.0, 0.0))), LineCableModels.DataModel.PlacedRegion{Region{Circle{Float64}, Material{Float64, :conductor}}, Circle{Float64}}(Region{Circle{Float64}, Material{Float64, :conductor}}(:armor_wires, Circle{Float64}(0.003, Placement{Float64}(0.0, 0.0, 0.0)), Material{Float64, :conductor}(1.38e-7, 1.0, 10.0, 20.0, 0.0045, 0.0, 90.0, 0.0, 0.0)), Circle{Float64}(0.003, Placement{Float64}(0.07059755309931795, 0.006541826685948111, 0.09239978392911156)))  …  LineCableModels.DataModel.PlacedRegion{Region{Circle{Float64}, Material{Float64, :conductor}}, Circle{Float64}}(Region{Circle{Float64}, Material{Float64, :conductor}}(:armor_wires, Circle{Float64}(0.003, Placement{Float64}(0.0, 0.0, 0.0)), Material{Float64, :conductor}(1.38e-7, 1.0, 10.0, 20.0, 0.0045, 0.0, 90.0, 0.0, 0.0)), Circle{Float64}(0.003, Placement{Float64}(0.05239573223094474, -0.047765021134540904, 5.543987035746694))), LineCableModels.DataModel.PlacedRegion{Region{Circle{Float64}, Material{Float64, :conductor}}, Circle{Float64}}(Region{Circle{Float64}, Material{Float64, :conductor}}(:armor_wires, Circle{Float64}(0.003, Placement{Float64}(0.0, 0.0, 0.0)), Material{Float64, :conductor}(1.38e-7, 1.0, 10.0, 20.0, 0.0045, 0.0, 90.0, 0.0, 0.0)), Circle{Float64}(0.003, Placement{Float64}(0.056579421414168975, -0.04272679571928929, 5.636386819675805))), LineCableModels.DataModel.PlacedRegion{Region{Circle{Float64}, Material{Float64, :conductor}}, Circle{Float64}}(Region{Circle{Float64}, Material{Float64, :conductor}}(:armor_wires, Circle{Float64}(0.003, Placement{Float64}(0.0, 0.0, 0.0)), Material{Float64, :conductor}(1.38e-7, 1.0, 10.0, 20.0, 0.0045, 0.0, 90.0, 0.0, 0.0)), Circle{Float64}(0.003, Placement{Float64}(0.060280394923229626, -0.03732404034800455, 5.728786603604917))), LineCableModels.DataModel.PlacedRegion{Region{Circle{Float64}, Material{Float64, :conductor}}, Circle{Float64}}(Region{Circle{Float64}, Material{Float64, :conductor}}(:armor_wires, Circle{Float64}(0.003, Placement{Float64}(0.0, 0.0, 0.0)), Material{Float64, :conductor}(1.38e-7, 1.0, 10.0, 20.0, 0.0045, 0.0, 90.0, 0.0, 0.0)), Circle{Float64}(0.003, Placement{Float64}(0.06346707735707394, -0.03160284942455655, 5.821186387534029))), LineCableModels.DataModel.PlacedRegion{Region{Circle{Float64}, Material{Float64, :conductor}}, Circle{Float64}}(Region{Circle{Float64}, Material{Float64, :conductor}}(:armor_wires, Circle{Float64}(0.003, Placement{Float64}(0.0, 0.0, 0.0)), Material{Float64, :conductor}(1.38e-7, 1.0, 10.0, 20.0, 0.0045, 0.0, 90.0, 0.0, 0.0)), Circle{Float64}(0.003, Placement{Float64}(0.06611228106476884, -0.025612034132669152, 5.91358617146314))), LineCableModels.DataModel.PlacedRegion{Region{Circle{Float64}, Material{Float64, :conductor}}, Circle{Float64}}(Region{Circle{Float64}, Material{Float64, :conductor}}(:armor_wires, Circle{Float64}(0.003, Placement{Float64}(0.0, 0.0, 0.0)), Material{Float64, :conductor}(1.38e-7, 1.0, 10.0, 20.0, 0.0045, 0.0, 90.0, 0.0, 0.0)), Circle{Float64}(0.003, Placement{Float64}(0.06819343810095287, -0.019402705996110697, 6.005985955392251))), LineCableModels.DataModel.PlacedRegion{Region{Circle{Float64}, Material{Float64, :conductor}}, Circle{Float64}}(Region{Circle{Float64}, Material{Float64, :conductor}}(:armor_wires, Circle{Float64}(0.003, Placement{Float64}(0.0, 0.0, 0.0)), Material{Float64, :conductor}(1.38e-7, 1.0, 10.0, 20.0, 0.0045, 0.0, 90.0, 0.0, 0.0)), Circle{Float64}(0.003, Placement{Float64}(0.06969279276758863, -0.013027840813194818, 6.098385739321364))), LineCableModels.DataModel.PlacedRegion{Region{Circle{Float64}, Material{Float64, :conductor}}, Circle{Float64}}(Region{Circle{Float64}, Material{Float64, :conductor}}(:armor_wires, Circle{Float64}(0.003, Placement{Float64}(0.0, 0.0, 0.0)), Material{Float64, :conductor}(1.38e-7, 1.0, 10.0, 20.0, 0.0045, 0.0, 90.0, 0.0, 0.0)), Circle{Float64}(0.003, Placement{Float64}(0.07059755309931795, -0.0065418266859481105, 6.190785523250475))), LineCableModels.DataModel.PlacedRegion{Region{Offset{Float64}, Material{Float64, :insulator}}, LineCableModels.DataModel.DifferenceShape{Float64, Annulus{Float64}, Vector{Circle{Float64}}}}(Region{Offset{Float64}, Material{Float64, :insulator}}(:armor_wires_fill, Offset{Float64}(0.006), Material{Float64, :insulator}(Inf, 1.0, 1.0, 20.0, 0.0, 0.0, 90.0, 0.0, 0.0)), LineCableModels.DataModel.DifferenceShape{Float64, Annulus{Float64}, Vector{Circle{Float64}}}(Annulus{Float64}(0.0679, 0.07390000000000001, Placement{Float64}(0.0, 0.0, 0.0)), Circle{Float64}[Circle{Float64}(0.003, Placement{Float64}(0.0709, 0.0, 0.0)), Circle{Float64}(0.003, Placement{Float64}(0.07059755309931795, 0.006541826685948111, 0.09239978392911156)), Circle{Float64}(0.003, Placement{Float64}(0.06969279276758863, 0.013027840813194838, 0.18479956785822313)), Circle{Float64}(0.003, Placement{Float64}(0.06819343810095288, 0.019402705996110676, 0.2771993517873347)), Circle{Float64}(0.003, Placement{Float64}(0.06611228106476884, 0.025612034132669145, 0.36959913571644626)), Circle{Float64}(0.003, Placement{Float64}(0.06346707735707392, 0.031602849424556566, 0.46199891964555784)), Circle{Float64}(0.003, Placement{Float64}(0.060280394923229653, 0.037324040348004524, 0.5543987035746694)), Circle{Float64}(0.003, Placement{Float64}(0.05657942141416898, 0.04272679571928928, 0.646798487503781)), Circle{Float64}(0.003, Placement{Float64}(0.052395732230944736, 0.04776502113454091, 0.7391982714328925)), Circle{Float64}(0.003, Placement{Float64}(0.04776502113454091, 0.052395732230944736, 0.831598055362004))  …  Circle{Float64}(0.003, Placement{Float64}(0.042726795719289265, -0.056579421414169, 5.359187467888471)), Circle{Float64}(0.003, Placement{Float64}(0.047765021134540925, -0.052395732230944715, 5.451587251817583)), Circle{Float64}(0.003, Placement{Float64}(0.05239573223094474, -0.047765021134540904, 5.543987035746694)), Circle{Float64}(0.003, Placement{Float64}(0.056579421414168975, -0.04272679571928929, 5.636386819675805)), Circle{Float64}(0.003, Placement{Float64}(0.060280394923229626, -0.03732404034800455, 5.728786603604917)), Circle{Float64}(0.003, Placement{Float64}(0.06346707735707394, -0.03160284942455655, 5.821186387534029)), Circle{Float64}(0.003, Placement{Float64}(0.06611228106476884, -0.025612034132669152, 5.91358617146314)), Circle{Float64}(0.003, Placement{Float64}(0.06819343810095287, -0.019402705996110697, 6.005985955392251)), Circle{Float64}(0.003, Placement{Float64}(0.06969279276758863, -0.013027840813194818, 6.098385739321364)), Circle{Float64}(0.003, Placement{Float64}(0.07059755309931795, -0.0065418266859481105, 6.190785523250475))])), LineCableModels.DataModel.PlacedRegion{Region{Offset{Float64}, Material{Float64, :insulator}}, Annulus{Float64}}(Region{Offset{Float64}, Material{Float64, :insulator}}(:armor_jacket, Offset{Float64}(0.0066), Material{Float64, :insulator}(1.0e15, 2.8, 1.0, 20.0, 0.0, 0.0, 90.0, 0.0, 0.0)), Annulus{Float64}(0.07390000000000001, 0.0805, Placement{Float64}(0.0, 0.0, 0.0)))], Circle{Float64}(0.0805, Placement{Float64}(0.0, 0.0, 0.0)), [(name = :core, scope = @NamedTuple{repeat::Int64, copy::Int64}[], regions = [1]), (name = :sheath, scope = @NamedTuple{repeat::Int64, copy::Int64}[], regions = [6]), (name = :armor, scope = @NamedTuple{repeat::Int64, copy::Int64}[], regions = [9, 10, 11, 12, 13, 14, 15, 16, 17, 18  …  67, 68, 69, 70, 71, 72, 73, 74, 75, 76])], @NamedTuple{at::Placement{Float64}, regions::Vector{Int64}, members::Vector{Int64}}[(at = Placement{Float64}(0.0, 0.0, 0.0), regions = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10  …  69, 70, 71, 72, 73, 74, 75, 76, 77, 78], members = [])], @NamedTuple{placements::Vector{Placement{Float64}}, copies::Vector{UnitRange{Int64}}}[(placements = [Placement{Float64}(0.0709, 0.0, 0.0), Placement{Float64}(0.07059755309931795, 0.006541826685948111, 0.09239978392911156), Placement{Float64}(0.06969279276758863, 0.013027840813194838, 0.18479956785822313), Placement{Float64}(0.06819343810095288, 0.019402705996110676, 0.2771993517873347), Placement{Float64}(0.06611228106476884, 0.025612034132669145, 0.36959913571644626), Placement{Float64}(0.06346707735707392, 0.031602849424556566, 0.46199891964555784), Placement{Float64}(0.060280394923229653, 0.037324040348004524, 0.5543987035746694), Placement{Float64}(0.05657942141416898, 0.04272679571928928, 0.646798487503781), Placement{Float64}(0.052395732230944736, 0.04776502113454091, 0.7391982714328925), Placement{Float64}(0.04776502113454091, 0.052395732230944736, 0.831598055362004)  …  Placement{Float64}(0.042726795719289265, -0.056579421414169, 5.359187467888471), Placement{Float64}(0.047765021134540925, -0.052395732230944715, 5.451587251817583), Placement{Float64}(0.05239573223094474, -0.047765021134540904, 5.543987035746694), Placement{Float64}(0.056579421414168975, -0.04272679571928929, 5.636386819675805), Placement{Float64}(0.060280394923229626, -0.03732404034800455, 5.728786603604917), Placement{Float64}(0.06346707735707394, -0.03160284942455655, 5.821186387534029), Placement{Float64}(0.06611228106476884, -0.025612034132669152, 5.91358617146314), Placement{Float64}(0.06819343810095287, -0.019402705996110697, 6.005985955392251), Placement{Float64}(0.06969279276758863, -0.013027840813194818, 6.098385739321364), Placement{Float64}(0.07059755309931795, -0.0065418266859481105, 6.190785523250475)], copies = [9:9, 10:10, 11:11, 12:12, 13:13, 14:14, 15:15, 16:16, 17:17, 18:18  …  67:67, 68:68, 69:69, 70:70, 71:71, 72:72, 73:73, 74:74, 75:75, 76:76])], [(repeat = 1, radii = [0.0709, 0.0709, 0.0709, 0.0709, 0.0709, 0.0709, 0.0709, 0.0709, 0.0709, 0.0709  …  0.0709, 0.0709, 0.0709, 0.0709, 0.0709, 0.0709, 0.07090000000000002, 0.0709, 0.07089999999999999, 0.0709], pitches = [1.4208247337261888, 1.4208247337261888, 1.4208247337261888, 1.4208247337261888, 1.4208247337261888, 1.4208247337261888, 1.4208247337261888, 1.4208247337261888, 1.4208247337261888, 1.4208247337261888  …  1.4208247337261888, 1.4208247337261888, 1.4208247337261888, 1.4208247337261888, 1.4208247337261888, 1.4208247337261888, 1.4208247337261892, 1.4208247337261888, 1.4208247337261886, 1.4208247337261888], overlengths = [1.048, 1.048, 1.048, 1.048, 1.048, 1.048, 1.048, 1.048, 1.048, 1.048  …  1.048, 1.048, 1.048, 1.048, 1.048, 1.048, 1.048, 1.048, 1.048, 1.048], axis = (0.0, 0.0))], @NamedTuple{repeat::Int64, factor::Float64}[], [(region = 77, contents = [9, 10, 11, 12, 13, 14, 15, 16, 17, 18  …  67, 68, 69, 70, 71, 72, 73, 74, 75, 76])])], Placement{Float64}[Placement{Float64}(-1.0, -1.0, 0.0), Placement{Float64}(0.0, -1.0, 0.0), Placement{Float64}(1.0, -1.0, 0.0)], LineCableModels.DataModel.PlacedRegion[LineCableModels.DataModel.PlacedRegion{Region{Circle{Float64}, Material{Float64, :conductor}}, Circle{Float64}}(Region{Circle{Float64}, Material{Float64, :conductor}}(:core_conductor, Circle{Float64}(0.03, Placement{Float64}(0.0, 0.0, 0.0)), Material{Float64, :conductor}(2.035752039526186e-8, 1.0, 1.0, 20.0, 0.00393, 0.0, 90.0, 0.0, 0.0)), Circle{Float64}(0.03, Placement{Float64}(-1.0, -1.0, 0.0))), LineCableModels.DataModel.PlacedRegion{Region{Offset{Float64}, Material{Float64, :semicon}}, Annulus{Float64}}(Region{Offset{Float64}, Material{Float64, :semicon}}(:core_semicon_inner, Offset{Float64}(0.002), Material{Float64, :semicon}(1000.0, 1000.0, 1.0, 20.0, 0.0, 0.0, 90.0, 0.0, 0.0)), Annulus{Float64}(0.03, 0.032, Placement{Float64}(-1.0, -1.0, 0.0))), LineCableModels.DataModel.PlacedRegion{Region{Offset{Float64}, Material{Float64, :insulator}}, Annulus{Float64}}(Region{Offset{Float64}, Material{Float64, :insulator}}(:core_insulation, Offset{Float64}(0.026), Material{Float64, :insulator}(1.0e14, 2.4, 1.0, 20.0, 0.0, 0.0, 90.0, 0.0, 0.0)), Annulus{Float64}(0.032, 0.057999999999999996, Placement{Float64}(-1.0, -1.0, 0.0))), LineCableModels.DataModel.PlacedRegion{Region{Offset{Float64}, Material{Float64, :semicon}}, Annulus{Float64}}(Region{Offset{Float64}, Material{Float64, :semicon}}(:core_semicon_outer, Offset{Float64}(0.0018), Material{Float64, :semicon}(500.0, 1000.0, 1.0, 20.0, 0.0, 0.0, 90.0, 0.0, 0.0)), Annulus{Float64}(0.057999999999999996, 0.0598, Placement{Float64}(-1.0, -1.0, 0.0))), LineCableModels.DataModel.PlacedRegion{Region{Offset{Float64}, Material{Float64, :semicon}}, Annulus{Float64}}(Region{Offset{Float64}, Material{Float64, :semicon}}(:core_water_blocking, Offset{Float64}(0.0006), Material{Float64, :semicon}(500.0, 1000.0, 1.0, 20.0, 0.0, 0.0, 90.0, 0.0, 0.0)), Annulus{Float64}(0.0598, 0.0604, Placement{Float64}(-1.0, -1.0, 0.0))), LineCableModels.DataModel.PlacedRegion{Region{Offset{Float64}, Material{Float64, :conductor}}, Annulus{Float64}}(Region{Offset{Float64}, Material{Float64, :conductor}}(:sheath_lead, Offset{Float64}(0.0032), Material{Float64, :conductor}(2.14e-7, 1.0, 0.999983, 20.0, 0.004, 0.0, 90.0, 0.0, 0.0)), Annulus{Float64}(0.0604, 0.0636, Placement{Float64}(-1.0, -1.0, 0.0))), LineCableModels.DataModel.PlacedRegion{Region{Offset{Float64}, Material{Float64, :insulator}}, Annulus{Float64}}(Region{Offset{Float64}, Material{Float64, :insulator}}(:sheath_inner_pe, Offset{Float64}(0.0033), Material{Float64, :insulator}(1.97e14, 2.5, 1.0, 20.0, 0.0, 0.0, 90.0, 0.0, 0.0)), Annulus{Float64}(0.0636, 0.0669, Placement{Float64}(-1.0, -1.0, 0.0))), LineCableModels.DataModel.PlacedRegion{Region{Offset{Float64}, Material{Float64, :insulator}}, Annulus{Float64}}(Region{Offset{Float64}, Material{Float64, :insulator}}(:sheath_bedding, Offset{Float64}(0.001), Material{Float64, :insulator}(1.0e15, 2.8, 1.0, 20.0, 0.0, 0.0, 90.0, 0.0, 0.0)), Annulus{Float64}(0.0669, 0.0679, Placement{Float64}(-1.0, -1.0, 0.0))), LineCableModels.DataModel.PlacedRegion{Region{Circle{Float64}, Material{Float64, :conductor}}, Circle{Float64}}(Region{Circle{Float64}, Material{Float64, :conductor}}(:armor_wires, Circle{Float64}(0.003, Placement{Float64}(0.0, 0.0, 0.0)), Material{Float64, :conductor}(1.38e-7, 1.0, 10.0, 20.0, 0.0045, 0.0, 90.0, 0.0, 0.0)), Circle{Float64}(0.003, Placement{Float64}(-0.9291, -1.0, 0.0))), LineCableModels.DataModel.PlacedRegion{Region{Circle{Float64}, Material{Float64, :conductor}}, Circle{Float64}}(Region{Circle{Float64}, Material{Float64, :conductor}}(:armor_wires, Circle{Float64}(0.003, Placement{Float64}(0.0, 0.0, 0.0)), Material{Float64, :conductor}(1.38e-7, 1.0, 10.0, 20.0, 0.0045, 0.0, 90.0, 0.0, 0.0)), Circle{Float64}(0.003, Placement{Float64}(-0.9294024469006821, -0.9934581733140518, 0.09239978392911156)))  …  LineCableModels.DataModel.PlacedRegion{Region{Circle{Float64}, Material{Float64, :conductor}}, Circle{Float64}}(Region{Circle{Float64}, Material{Float64, :conductor}}(:armor_wires, Circle{Float64}(0.003, Placement{Float64}(0.0, 0.0, 0.0)), Material{Float64, :conductor}(1.38e-7, 1.0, 10.0, 20.0, 0.0045, 0.0, 90.0, 0.0, 0.0)), Circle{Float64}(0.003, Placement{Float64}(1.0523957322309447, -1.0477650211345408, 5.543987035746694))), LineCableModels.DataModel.PlacedRegion{Region{Circle{Float64}, Material{Float64, :conductor}}, Circle{Float64}}(Region{Circle{Float64}, Material{Float64, :conductor}}(:armor_wires, Circle{Float64}(0.003, Placement{Float64}(0.0, 0.0, 0.0)), Material{Float64, :conductor}(1.38e-7, 1.0, 10.0, 20.0, 0.0045, 0.0, 90.0, 0.0, 0.0)), Circle{Float64}(0.003, Placement{Float64}(1.056579421414169, -1.0427267957192894, 5.636386819675805))), LineCableModels.DataModel.PlacedRegion{Region{Circle{Float64}, Material{Float64, :conductor}}, Circle{Float64}}(Region{Circle{Float64}, Material{Float64, :conductor}}(:armor_wires, Circle{Float64}(0.003, Placement{Float64}(0.0, 0.0, 0.0)), Material{Float64, :conductor}(1.38e-7, 1.0, 10.0, 20.0, 0.0045, 0.0, 90.0, 0.0, 0.0)), Circle{Float64}(0.003, Placement{Float64}(1.0602803949232296, -1.0373240403480046, 5.728786603604917))), LineCableModels.DataModel.PlacedRegion{Region{Circle{Float64}, Material{Float64, :conductor}}, Circle{Float64}}(Region{Circle{Float64}, Material{Float64, :conductor}}(:armor_wires, Circle{Float64}(0.003, Placement{Float64}(0.0, 0.0, 0.0)), Material{Float64, :conductor}(1.38e-7, 1.0, 10.0, 20.0, 0.0045, 0.0, 90.0, 0.0, 0.0)), Circle{Float64}(0.003, Placement{Float64}(1.063467077357074, -1.0316028494245566, 5.821186387534029))), LineCableModels.DataModel.PlacedRegion{Region{Circle{Float64}, Material{Float64, :conductor}}, Circle{Float64}}(Region{Circle{Float64}, Material{Float64, :conductor}}(:armor_wires, Circle{Float64}(0.003, Placement{Float64}(0.0, 0.0, 0.0)), Material{Float64, :conductor}(1.38e-7, 1.0, 10.0, 20.0, 0.0045, 0.0, 90.0, 0.0, 0.0)), Circle{Float64}(0.003, Placement{Float64}(1.0661122810647687, -1.025612034132669, 5.91358617146314))), LineCableModels.DataModel.PlacedRegion{Region{Circle{Float64}, Material{Float64, :conductor}}, Circle{Float64}}(Region{Circle{Float64}, Material{Float64, :conductor}}(:armor_wires, Circle{Float64}(0.003, Placement{Float64}(0.0, 0.0, 0.0)), Material{Float64, :conductor}(1.38e-7, 1.0, 10.0, 20.0, 0.0045, 0.0, 90.0, 0.0, 0.0)), Circle{Float64}(0.003, Placement{Float64}(1.0681934381009528, -1.0194027059961106, 6.005985955392251))), LineCableModels.DataModel.PlacedRegion{Region{Circle{Float64}, Material{Float64, :conductor}}, Circle{Float64}}(Region{Circle{Float64}, Material{Float64, :conductor}}(:armor_wires, Circle{Float64}(0.003, Placement{Float64}(0.0, 0.0, 0.0)), Material{Float64, :conductor}(1.38e-7, 1.0, 10.0, 20.0, 0.0045, 0.0, 90.0, 0.0, 0.0)), Circle{Float64}(0.003, Placement{Float64}(1.0696927927675886, -1.0130278408131947, 6.098385739321364))), LineCableModels.DataModel.PlacedRegion{Region{Circle{Float64}, Material{Float64, :conductor}}, Circle{Float64}}(Region{Circle{Float64}, Material{Float64, :conductor}}(:armor_wires, Circle{Float64}(0.003, Placement{Float64}(0.0, 0.0, 0.0)), Material{Float64, :conductor}(1.38e-7, 1.0, 10.0, 20.0, 0.0045, 0.0, 90.0, 0.0, 0.0)), Circle{Float64}(0.003, Placement{Float64}(1.070597553099318, -1.006541826685948, 6.190785523250475))), LineCableModels.DataModel.PlacedRegion{Region{Offset{Float64}, Material{Float64, :insulator}}, LineCableModels.DataModel.DifferenceShape{Float64, Annulus{Float64}, Vector{Circle{Float64}}}}(Region{Offset{Float64}, Material{Float64, :insulator}}(:armor_wires_fill, Offset{Float64}(0.006), Material{Float64, :insulator}(Inf, 1.0, 1.0, 20.0, 0.0, 0.0, 90.0, 0.0, 0.0)), LineCableModels.DataModel.DifferenceShape{Float64, Annulus{Float64}, Vector{Circle{Float64}}}(Annulus{Float64}(0.0679, 0.07390000000000001, Placement{Float64}(1.0, -1.0, 0.0)), Circle{Float64}[Circle{Float64}(0.003, Placement{Float64}(1.0709, -1.0, 0.0)), Circle{Float64}(0.003, Placement{Float64}(1.070597553099318, -0.9934581733140518, 0.09239978392911156)), Circle{Float64}(0.003, Placement{Float64}(1.0696927927675886, -0.9869721591868051, 0.18479956785822313)), Circle{Float64}(0.003, Placement{Float64}(1.0681934381009528, -0.9805972940038893, 0.2771993517873347)), Circle{Float64}(0.003, Placement{Float64}(1.0661122810647687, -0.9743879658673309, 0.36959913571644626)), Circle{Float64}(0.003, Placement{Float64}(1.063467077357074, -0.9683971505754434, 0.46199891964555784)), Circle{Float64}(0.003, Placement{Float64}(1.0602803949232296, -0.9626759596519955, 0.5543987035746694)), Circle{Float64}(0.003, Placement{Float64}(1.056579421414169, -0.9572732042807107, 0.646798487503781)), Circle{Float64}(0.003, Placement{Float64}(1.0523957322309447, -0.952234978865459, 0.7391982714328925)), Circle{Float64}(0.003, Placement{Float64}(1.0477650211345408, -0.9476042677690553, 0.831598055362004))  …  Circle{Float64}(0.003, Placement{Float64}(1.0427267957192892, -1.056579421414169, 5.359187467888471)), Circle{Float64}(0.003, Placement{Float64}(1.0477650211345408, -1.0523957322309447, 5.451587251817583)), Circle{Float64}(0.003, Placement{Float64}(1.0523957322309447, -1.0477650211345408, 5.543987035746694)), Circle{Float64}(0.003, Placement{Float64}(1.056579421414169, -1.0427267957192894, 5.636386819675805)), Circle{Float64}(0.003, Placement{Float64}(1.0602803949232296, -1.0373240403480046, 5.728786603604917)), Circle{Float64}(0.003, Placement{Float64}(1.063467077357074, -1.0316028494245566, 5.821186387534029)), Circle{Float64}(0.003, Placement{Float64}(1.0661122810647687, -1.025612034132669, 5.91358617146314)), Circle{Float64}(0.003, Placement{Float64}(1.0681934381009528, -1.0194027059961106, 6.005985955392251)), Circle{Float64}(0.003, Placement{Float64}(1.0696927927675886, -1.0130278408131947, 6.098385739321364)), Circle{Float64}(0.003, Placement{Float64}(1.070597553099318, -1.006541826685948, 6.190785523250475))])), LineCableModels.DataModel.PlacedRegion{Region{Offset{Float64}, Material{Float64, :insulator}}, Annulus{Float64}}(Region{Offset{Float64}, Material{Float64, :insulator}}(:armor_jacket, Offset{Float64}(0.0066), Material{Float64, :insulator}(1.0e15, 2.8, 1.0, 20.0, 0.0, 0.0, 90.0, 0.0, 0.0)), Annulus{Float64}(0.07390000000000001, 0.0805, Placement{Float64}(1.0, -1.0, 0.0)))], [(cable = 1, terminal = 1, connection = 1, regions = [1]), (cable = 1, terminal = 2, connection = 2, regions = [6]), (cable = 1, terminal = 3, connection = 3, regions = [9, 10, 11, 12, 13, 14, 15, 16, 17, 18  …  67, 68, 69, 70, 71, 72, 73, 74, 75, 76]), (cable = 2, terminal = 1, connection = 4, regions = [79]), (cable = 2, terminal = 2, connection = 5, regions = [84]), (cable = 2, terminal = 3, connection = 6, regions = [87, 88, 89, 90, 91, 92, 93, 94, 95, 96  …  145, 146, 147, 148, 149, 150, 151, 152, 153, 154]), (cable = 3, terminal = 1, connection = 7, regions = [157]), (cable = 3, terminal = 2, connection = 8, regions = [162]), (cable = 3, terminal = 3, connection = 9, regions = [165, 166, 167, 168, 169, 170, 171, 172, 173, 174  …  223, 224, 225, 226, 227, 228, 229, 230, 231, 232])]), EarthModel{Float64, 2}((EarthLayer{Float64}(Inf, 1.0, 1.0, Inf), EarthLayer{Float64}(1000.0, 10.0, 1.0, Inf))), 70.0, [0.1, 0.12022644346174127, 0.14454397707459277, 0.17378008287493754, 0.20892961308540392, 0.251188643150958, 0.3019951720402016, 0.36307805477010135, 0.436515832240166, 0.5248074602497725  …  1.9054607179632483e6, 2.2908676527677746e6, 2.754228703338169e6, 3.3113112148259077e6, 3.9810717055349695e6, 4.786300923226381e6, 5.754399373371567e6, 6.918309709189363e6, 8.317637711026709e6, 1.0e7])

Compute the line parameters and inspect the row labels:

result = compute(problem, CoaxialFormulation())
result.terminals
9-element Vector{String}:
 "cable:1:core"
 "cable:1:sheath"
 "cable:1:armor"
 "cable:2:core"
 "cable:2:sheath"
 "cable:2:armor"
 "cable:3:core"
 "cable:3:sheath"
 "cable:3:armor"

Line parameters at power frequency

Since no two terminals share an index and no terminal has the index zero, the bundle and Kron reductions leave the nine conductors unchanged. The matrices at the frequency closest to 50 Hz are presented below, with Z in Ω/km and Y in µS/km, rounded.

Frequency closest to 50 Hz:

k = argmin(abs.(result.frequencies .- 50.0))
result.frequencies[k] # [Hz]
52.48074602497726

Series resistance matrix:

round.(real(result.Z[:, :, k]) .* 1e3; digits = 4) # [Ω/km]
9×9 Matrix{Float64}:
 0.0662  0.052   0.0519  0.0518  0.0518  0.0518  0.0518  0.0518  0.0518
 0.052   0.258   0.0519  0.0518  0.0518  0.0518  0.0518  0.0518  0.0518
 0.0519  0.0519  0.144   0.0518  0.0518  0.0518  0.0518  0.0518  0.0518
 0.0518  0.0518  0.0518  0.0662  0.052   0.0519  0.0518  0.0518  0.0518
 0.0518  0.0518  0.0518  0.052   0.258   0.0519  0.0518  0.0518  0.0518
 0.0518  0.0518  0.0518  0.0519  0.0519  0.144   0.0518  0.0518  0.0518
 0.0518  0.0518  0.0518  0.0518  0.0518  0.0518  0.0662  0.052   0.0519
 0.0518  0.0518  0.0518  0.0518  0.0518  0.0518  0.052   0.258   0.0519
 0.0518  0.0518  0.0518  0.0518  0.0518  0.0518  0.0519  0.0519  0.144

Series reactance matrix:

round.(imag(result.Z[:, :, k]) .* 1e3; digits = 4) # [Ω/km]
9×9 Matrix{Float64}:
 0.776   0.7166  0.7039  0.5252  0.5252  0.5252  0.4795  0.4795  0.4795
 0.7166  0.716   0.7039  0.5252  0.5252  0.5252  0.4795  0.4795  0.4795
 0.7039  0.7039  0.7018  0.5252  0.5252  0.5252  0.4795  0.4795  0.4795
 0.5252  0.5252  0.5252  0.776   0.7166  0.7039  0.5252  0.5252  0.5252
 0.5252  0.5252  0.5252  0.7166  0.716   0.7039  0.5252  0.5252  0.5252
 0.5252  0.5252  0.5252  0.7039  0.7039  0.7018  0.5252  0.5252  0.5252
 0.4795  0.4795  0.4795  0.5252  0.5252  0.5252  0.776   0.7166  0.7039
 0.4795  0.4795  0.4795  0.5252  0.5252  0.5252  0.7166  0.716   0.7039
 0.4795  0.4795  0.4795  0.5252  0.5252  0.5252  0.7039  0.7039  0.7018

Shunt conductance matrix:

round.(real(result.Y[:, :, k]) .* 1e9; digits = 4) # [µS/km]
9×9 Matrix{Float64}:
 -0.0   0.0  -0.0      0.0   0.0  -0.0     -0.0  -0.0   0.0
 -0.0   0.0  -0.0     -0.0  -0.0   0.0     -0.0   0.0  -0.0
  0.0  -0.0   0.9606  -0.0   0.0   0.8096  -0.0   0.0   0.7564
  0.0  -0.0  -0.0     -0.0   0.0   0.0      0.0  -0.0  -0.0
 -0.0   0.0   0.0      0.0  -0.0  -0.0     -0.0   0.0   0.0
  0.0   0.0   0.8096  -0.0   0.0   0.9606  -0.0  -0.0   0.8096
 -0.0   0.0  -0.0      0.0  -0.0  -0.0     -0.0   0.0  -0.0
 -0.0   0.0   0.0      0.0  -0.0   0.0     -0.0   0.0  -0.0
  0.0  -0.0   0.7564  -0.0   0.0   0.8096   0.0  -0.0   0.9606

Shunt susceptance matrix:

round.(imag(result.Y[:, :, k]) .* 1e9; digits = 1) # [µS/km]
9×9 Matrix{Float64}:
  74.0   -74.0    -0.0    0.0    -0.0     0.0    0.0     0.0     0.0
 -74.0   792.5  -718.5    0.0     0.0    -0.0    0.0    -0.0    -0.0
   0.0  -718.5  1318.8    0.0    -0.0    -0.1    0.0    -0.0    -0.1
   0.0     0.0     0.0   74.0   -74.0     0.0   -0.0     0.0    -0.0
  -0.0    -0.0    -0.0  -74.0   792.5  -718.5    0.0     0.0     0.0
  -0.0     0.0    -0.1   -0.0  -718.5  1318.8    0.0    -0.0    -0.1
   0.0    -0.0     0.0    0.0     0.0     0.0   74.0   -74.0     0.0
  -0.0     0.0    -0.0   -0.0    -0.0    -0.0  -74.0   792.5  -718.5
  -0.0     0.0    -0.1    0.0    -0.0    -0.1    0.0  -718.5  1318.8

Sheaths and armors grounded at both ends

The sheath and the armor of each cable are connected to the index 0, and the Kron reduction eliminates them from the matrices. The resulting system retains the three cores.

Cable system with grounded sheaths and armors:

grounded = build(CableSystem, fill(design, 3), placements;
    connections = [(core = i, sheath = 0, armor = 0) for i in 1:3],
    id = "cable_525kv_grounded_screens", line_length = 20_000.0) # [m]
grounded_problem = LineParametersProblem(grounded, earth; temperature = 70.0, frequencies)
LineParametersProblem{Float64, CableSystem{Float64, Vector{CableDesign{Float64, Stack{Vector{AbstractCablePart}}, Vector{LineCableModels.DataModel.PlacedRegion}, Circle{Float64}}}, Vector{LineCableModels.DataModel.PlacedRegion}}, EarthModel{Float64, 2}}(CableSystem{Float64, Vector{CableDesign{Float64, Stack{Vector{AbstractCablePart}}, Vector{LineCableModels.DataModel.PlacedRegion}, Circle{Float64}}}, Vector{LineCableModels.DataModel.PlacedRegion}}("cable_525kv_grounded_screens", 20000.0, CableDesign{Float64, Stack{Vector{AbstractCablePart}}, Vector{LineCableModels.DataModel.PlacedRegion}, Circle{Float64}}[CableDesign{Float64, Stack{Vector{AbstractCablePart}}, Vector{LineCableModels.DataModel.PlacedRegion}, Circle{Float64}}("cable_525kv_subsea_armoured", Stack{Vector{AbstractCablePart}}(AbstractCablePart[Terminal{Stack{Vector{AbstractCablePart}}}(:core, Stack{Vector{AbstractCablePart}}(AbstractCablePart[Region{Circle{Float64}, Material{Float64, :conductor}}(:core_conductor, Circle{Float64}(0.03, Placement{Float64}(0.0, 0.0, 0.0)), Material{Float64, :conductor}(2.035752039526186e-8, 1.0, 1.0, 20.0, 0.00393, 0.0, 90.0, 0.0, 0.0))])), Region{Offset{Float64}, Material{Float64, :semicon}}(:core_semicon_inner, Offset{Float64}(0.002), Material{Float64, :semicon}(1000.0, 1000.0, 1.0, 20.0, 0.0, 0.0, 90.0, 0.0, 0.0)), Region{Offset{Float64}, Material{Float64, :insulator}}(:core_insulation, Offset{Float64}(0.026), Material{Float64, :insulator}(1.0e14, 2.4, 1.0, 20.0, 0.0, 0.0, 90.0, 0.0, 0.0)), Region{Offset{Float64}, Material{Float64, :semicon}}(:core_semicon_outer, Offset{Float64}(0.0018), Material{Float64, :semicon}(500.0, 1000.0, 1.0, 20.0, 0.0, 0.0, 90.0, 0.0, 0.0)), Region{Offset{Float64}, Material{Float64, :semicon}}(:core_water_blocking, Offset{Float64}(0.0006), Material{Float64, :semicon}(500.0, 1000.0, 1.0, 20.0, 0.0, 0.0, 90.0, 0.0, 0.0)), Terminal{Stack{Vector{AbstractCablePart}}}(:sheath, Stack{Vector{AbstractCablePart}}(AbstractCablePart[Region{Offset{Float64}, Material{Float64, :conductor}}(:sheath_lead, Offset{Float64}(0.0032), Material{Float64, :conductor}(2.14e-7, 1.0, 0.999983, 20.0, 0.004, 0.0, 90.0, 0.0, 0.0))])), Region{Offset{Float64}, Material{Float64, :insulator}}(:sheath_inner_pe, Offset{Float64}(0.0033), Material{Float64, :insulator}(1.97e14, 2.5, 1.0, 20.0, 0.0, 0.0, 90.0, 0.0, 0.0)), Region{Offset{Float64}, Material{Float64, :insulator}}(:sheath_bedding, Offset{Float64}(0.001), Material{Float64, :insulator}(1.0e15, 2.8, 1.0, 20.0, 0.0, 0.0, 90.0, 0.0, 0.0)), Terminal{Stack{Vector{AbstractCablePart}}}(:armor, Stack{Vector{AbstractCablePart}}(AbstractCablePart[Enclosure{Region{Offset{Float64}, Material{Float64, :insulator}}, Lay{Helix{LayRatio{Float64}, Float64}, Repeat{CircularPattern{Float64, Offset{Float64}}, Region{Circle{Float64}, Material{Float64, :conductor}}}}}(Region{Offset{Float64}, Material{Float64, :insulator}}(:armor_wires_fill, Offset{Float64}(0.006), Material{Float64, :insulator}(Inf, 1.0, 1.0, 20.0, 0.0, 0.0, 90.0, 0.0, 0.0)), Lay{Helix{LayRatio{Float64}, Float64}, Repeat{CircularPattern{Float64, Offset{Float64}}, Region{Circle{Float64}, Material{Float64, :conductor}}}}(Helix{LayRatio{Float64}, Float64}(LayRatio{Float64}(10.019920548139554), 1, 0.0), Repeat{CircularPattern{Float64, Offset{Float64}}, Region{Circle{Float64}, Material{Float64, :conductor}}}(CircularPattern{Float64, Offset{Float64}}(68, Offset{Float64}(0.0), 0.0, 6.283185307179586, 0.0), Region{Circle{Float64}, Material{Float64, :conductor}}(:armor_wires, Circle{Float64}(0.003, Placement{Float64}(0.0, 0.0, 0.0)), Material{Float64, :conductor}(1.38e-7, 1.0, 10.0, 20.0, 0.0045, 0.0, 90.0, 0.0, 0.0)))))])), Region{Offset{Float64}, Material{Float64, :insulator}}(:armor_jacket, Offset{Float64}(0.0066), Material{Float64, :insulator}(1.0e15, 2.8, 1.0, 20.0, 0.0, 0.0, 90.0, 0.0, 0.0))]), LineCableModels.DataModel.PlacedRegion[LineCableModels.DataModel.PlacedRegion{Region{Circle{Float64}, Material{Float64, :conductor}}, Circle{Float64}}(Region{Circle{Float64}, Material{Float64, :conductor}}(:core_conductor, Circle{Float64}(0.03, Placement{Float64}(0.0, 0.0, 0.0)), Material{Float64, :conductor}(2.035752039526186e-8, 1.0, 1.0, 20.0, 0.00393, 0.0, 90.0, 0.0, 0.0)), Circle{Float64}(0.03, Placement{Float64}(0.0, 0.0, 0.0))), LineCableModels.DataModel.PlacedRegion{Region{Offset{Float64}, Material{Float64, :semicon}}, Annulus{Float64}}(Region{Offset{Float64}, Material{Float64, :semicon}}(:core_semicon_inner, Offset{Float64}(0.002), Material{Float64, :semicon}(1000.0, 1000.0, 1.0, 20.0, 0.0, 0.0, 90.0, 0.0, 0.0)), Annulus{Float64}(0.03, 0.032, Placement{Float64}(0.0, 0.0, 0.0))), LineCableModels.DataModel.PlacedRegion{Region{Offset{Float64}, Material{Float64, :insulator}}, Annulus{Float64}}(Region{Offset{Float64}, Material{Float64, :insulator}}(:core_insulation, Offset{Float64}(0.026), Material{Float64, :insulator}(1.0e14, 2.4, 1.0, 20.0, 0.0, 0.0, 90.0, 0.0, 0.0)), Annulus{Float64}(0.032, 0.057999999999999996, Placement{Float64}(0.0, 0.0, 0.0))), LineCableModels.DataModel.PlacedRegion{Region{Offset{Float64}, Material{Float64, :semicon}}, Annulus{Float64}}(Region{Offset{Float64}, Material{Float64, :semicon}}(:core_semicon_outer, Offset{Float64}(0.0018), Material{Float64, :semicon}(500.0, 1000.0, 1.0, 20.0, 0.0, 0.0, 90.0, 0.0, 0.0)), Annulus{Float64}(0.057999999999999996, 0.0598, Placement{Float64}(0.0, 0.0, 0.0))), LineCableModels.DataModel.PlacedRegion{Region{Offset{Float64}, Material{Float64, :semicon}}, Annulus{Float64}}(Region{Offset{Float64}, Material{Float64, :semicon}}(:core_water_blocking, Offset{Float64}(0.0006), Material{Float64, :semicon}(500.0, 1000.0, 1.0, 20.0, 0.0, 0.0, 90.0, 0.0, 0.0)), Annulus{Float64}(0.0598, 0.0604, Placement{Float64}(0.0, 0.0, 0.0))), LineCableModels.DataModel.PlacedRegion{Region{Offset{Float64}, Material{Float64, :conductor}}, Annulus{Float64}}(Region{Offset{Float64}, Material{Float64, :conductor}}(:sheath_lead, Offset{Float64}(0.0032), Material{Float64, :conductor}(2.14e-7, 1.0, 0.999983, 20.0, 0.004, 0.0, 90.0, 0.0, 0.0)), Annulus{Float64}(0.0604, 0.0636, Placement{Float64}(0.0, 0.0, 0.0))), LineCableModels.DataModel.PlacedRegion{Region{Offset{Float64}, Material{Float64, :insulator}}, Annulus{Float64}}(Region{Offset{Float64}, Material{Float64, :insulator}}(:sheath_inner_pe, Offset{Float64}(0.0033), Material{Float64, :insulator}(1.97e14, 2.5, 1.0, 20.0, 0.0, 0.0, 90.0, 0.0, 0.0)), Annulus{Float64}(0.0636, 0.0669, Placement{Float64}(0.0, 0.0, 0.0))), LineCableModels.DataModel.PlacedRegion{Region{Offset{Float64}, Material{Float64, :insulator}}, Annulus{Float64}}(Region{Offset{Float64}, Material{Float64, :insulator}}(:sheath_bedding, Offset{Float64}(0.001), Material{Float64, :insulator}(1.0e15, 2.8, 1.0, 20.0, 0.0, 0.0, 90.0, 0.0, 0.0)), Annulus{Float64}(0.0669, 0.0679, Placement{Float64}(0.0, 0.0, 0.0))), LineCableModels.DataModel.PlacedRegion{Region{Circle{Float64}, Material{Float64, :conductor}}, Circle{Float64}}(Region{Circle{Float64}, Material{Float64, :conductor}}(:armor_wires, Circle{Float64}(0.003, Placement{Float64}(0.0, 0.0, 0.0)), Material{Float64, :conductor}(1.38e-7, 1.0, 10.0, 20.0, 0.0045, 0.0, 90.0, 0.0, 0.0)), Circle{Float64}(0.003, Placement{Float64}(0.0709, 0.0, 0.0))), LineCableModels.DataModel.PlacedRegion{Region{Circle{Float64}, Material{Float64, :conductor}}, Circle{Float64}}(Region{Circle{Float64}, Material{Float64, :conductor}}(:armor_wires, Circle{Float64}(0.003, Placement{Float64}(0.0, 0.0, 0.0)), Material{Float64, :conductor}(1.38e-7, 1.0, 10.0, 20.0, 0.0045, 0.0, 90.0, 0.0, 0.0)), Circle{Float64}(0.003, Placement{Float64}(0.07059755309931795, 0.006541826685948111, 0.09239978392911156)))  …  LineCableModels.DataModel.PlacedRegion{Region{Circle{Float64}, Material{Float64, :conductor}}, Circle{Float64}}(Region{Circle{Float64}, Material{Float64, :conductor}}(:armor_wires, Circle{Float64}(0.003, Placement{Float64}(0.0, 0.0, 0.0)), Material{Float64, :conductor}(1.38e-7, 1.0, 10.0, 20.0, 0.0045, 0.0, 90.0, 0.0, 0.0)), Circle{Float64}(0.003, Placement{Float64}(0.05239573223094474, -0.047765021134540904, 5.543987035746694))), LineCableModels.DataModel.PlacedRegion{Region{Circle{Float64}, Material{Float64, :conductor}}, Circle{Float64}}(Region{Circle{Float64}, Material{Float64, :conductor}}(:armor_wires, Circle{Float64}(0.003, Placement{Float64}(0.0, 0.0, 0.0)), Material{Float64, :conductor}(1.38e-7, 1.0, 10.0, 20.0, 0.0045, 0.0, 90.0, 0.0, 0.0)), Circle{Float64}(0.003, Placement{Float64}(0.056579421414168975, -0.04272679571928929, 5.636386819675805))), LineCableModels.DataModel.PlacedRegion{Region{Circle{Float64}, Material{Float64, :conductor}}, Circle{Float64}}(Region{Circle{Float64}, Material{Float64, :conductor}}(:armor_wires, Circle{Float64}(0.003, Placement{Float64}(0.0, 0.0, 0.0)), Material{Float64, :conductor}(1.38e-7, 1.0, 10.0, 20.0, 0.0045, 0.0, 90.0, 0.0, 0.0)), Circle{Float64}(0.003, Placement{Float64}(0.060280394923229626, -0.03732404034800455, 5.728786603604917))), LineCableModels.DataModel.PlacedRegion{Region{Circle{Float64}, Material{Float64, :conductor}}, Circle{Float64}}(Region{Circle{Float64}, Material{Float64, :conductor}}(:armor_wires, Circle{Float64}(0.003, Placement{Float64}(0.0, 0.0, 0.0)), Material{Float64, :conductor}(1.38e-7, 1.0, 10.0, 20.0, 0.0045, 0.0, 90.0, 0.0, 0.0)), Circle{Float64}(0.003, Placement{Float64}(0.06346707735707394, -0.03160284942455655, 5.821186387534029))), LineCableModels.DataModel.PlacedRegion{Region{Circle{Float64}, Material{Float64, :conductor}}, Circle{Float64}}(Region{Circle{Float64}, Material{Float64, :conductor}}(:armor_wires, Circle{Float64}(0.003, Placement{Float64}(0.0, 0.0, 0.0)), Material{Float64, :conductor}(1.38e-7, 1.0, 10.0, 20.0, 0.0045, 0.0, 90.0, 0.0, 0.0)), Circle{Float64}(0.003, Placement{Float64}(0.06611228106476884, -0.025612034132669152, 5.91358617146314))), LineCableModels.DataModel.PlacedRegion{Region{Circle{Float64}, Material{Float64, :conductor}}, Circle{Float64}}(Region{Circle{Float64}, Material{Float64, :conductor}}(:armor_wires, Circle{Float64}(0.003, Placement{Float64}(0.0, 0.0, 0.0)), Material{Float64, :conductor}(1.38e-7, 1.0, 10.0, 20.0, 0.0045, 0.0, 90.0, 0.0, 0.0)), Circle{Float64}(0.003, Placement{Float64}(0.06819343810095287, -0.019402705996110697, 6.005985955392251))), LineCableModels.DataModel.PlacedRegion{Region{Circle{Float64}, Material{Float64, :conductor}}, Circle{Float64}}(Region{Circle{Float64}, Material{Float64, :conductor}}(:armor_wires, Circle{Float64}(0.003, Placement{Float64}(0.0, 0.0, 0.0)), Material{Float64, :conductor}(1.38e-7, 1.0, 10.0, 20.0, 0.0045, 0.0, 90.0, 0.0, 0.0)), Circle{Float64}(0.003, Placement{Float64}(0.06969279276758863, -0.013027840813194818, 6.098385739321364))), LineCableModels.DataModel.PlacedRegion{Region{Circle{Float64}, Material{Float64, :conductor}}, Circle{Float64}}(Region{Circle{Float64}, Material{Float64, :conductor}}(:armor_wires, Circle{Float64}(0.003, Placement{Float64}(0.0, 0.0, 0.0)), Material{Float64, :conductor}(1.38e-7, 1.0, 10.0, 20.0, 0.0045, 0.0, 90.0, 0.0, 0.0)), Circle{Float64}(0.003, Placement{Float64}(0.07059755309931795, -0.0065418266859481105, 6.190785523250475))), LineCableModels.DataModel.PlacedRegion{Region{Offset{Float64}, Material{Float64, :insulator}}, LineCableModels.DataModel.DifferenceShape{Float64, Annulus{Float64}, Vector{Circle{Float64}}}}(Region{Offset{Float64}, Material{Float64, :insulator}}(:armor_wires_fill, Offset{Float64}(0.006), Material{Float64, :insulator}(Inf, 1.0, 1.0, 20.0, 0.0, 0.0, 90.0, 0.0, 0.0)), LineCableModels.DataModel.DifferenceShape{Float64, Annulus{Float64}, Vector{Circle{Float64}}}(Annulus{Float64}(0.0679, 0.07390000000000001, Placement{Float64}(0.0, 0.0, 0.0)), Circle{Float64}[Circle{Float64}(0.003, Placement{Float64}(0.0709, 0.0, 0.0)), Circle{Float64}(0.003, Placement{Float64}(0.07059755309931795, 0.006541826685948111, 0.09239978392911156)), Circle{Float64}(0.003, Placement{Float64}(0.06969279276758863, 0.013027840813194838, 0.18479956785822313)), Circle{Float64}(0.003, Placement{Float64}(0.06819343810095288, 0.019402705996110676, 0.2771993517873347)), Circle{Float64}(0.003, Placement{Float64}(0.06611228106476884, 0.025612034132669145, 0.36959913571644626)), Circle{Float64}(0.003, Placement{Float64}(0.06346707735707392, 0.031602849424556566, 0.46199891964555784)), Circle{Float64}(0.003, Placement{Float64}(0.060280394923229653, 0.037324040348004524, 0.5543987035746694)), Circle{Float64}(0.003, Placement{Float64}(0.05657942141416898, 0.04272679571928928, 0.646798487503781)), Circle{Float64}(0.003, Placement{Float64}(0.052395732230944736, 0.04776502113454091, 0.7391982714328925)), Circle{Float64}(0.003, Placement{Float64}(0.04776502113454091, 0.052395732230944736, 0.831598055362004))  …  Circle{Float64}(0.003, Placement{Float64}(0.042726795719289265, -0.056579421414169, 5.359187467888471)), Circle{Float64}(0.003, Placement{Float64}(0.047765021134540925, -0.052395732230944715, 5.451587251817583)), Circle{Float64}(0.003, Placement{Float64}(0.05239573223094474, -0.047765021134540904, 5.543987035746694)), Circle{Float64}(0.003, Placement{Float64}(0.056579421414168975, -0.04272679571928929, 5.636386819675805)), Circle{Float64}(0.003, Placement{Float64}(0.060280394923229626, -0.03732404034800455, 5.728786603604917)), Circle{Float64}(0.003, Placement{Float64}(0.06346707735707394, -0.03160284942455655, 5.821186387534029)), Circle{Float64}(0.003, Placement{Float64}(0.06611228106476884, -0.025612034132669152, 5.91358617146314)), Circle{Float64}(0.003, Placement{Float64}(0.06819343810095287, -0.019402705996110697, 6.005985955392251)), Circle{Float64}(0.003, Placement{Float64}(0.06969279276758863, -0.013027840813194818, 6.098385739321364)), Circle{Float64}(0.003, Placement{Float64}(0.07059755309931795, -0.0065418266859481105, 6.190785523250475))])), LineCableModels.DataModel.PlacedRegion{Region{Offset{Float64}, Material{Float64, :insulator}}, Annulus{Float64}}(Region{Offset{Float64}, Material{Float64, :insulator}}(:armor_jacket, Offset{Float64}(0.0066), Material{Float64, :insulator}(1.0e15, 2.8, 1.0, 20.0, 0.0, 0.0, 90.0, 0.0, 0.0)), Annulus{Float64}(0.07390000000000001, 0.0805, Placement{Float64}(0.0, 0.0, 0.0)))], Circle{Float64}(0.0805, Placement{Float64}(0.0, 0.0, 0.0)), [(name = :core, scope = @NamedTuple{repeat::Int64, copy::Int64}[], regions = [1]), (name = :sheath, scope = @NamedTuple{repeat::Int64, copy::Int64}[], regions = [6]), (name = :armor, scope = @NamedTuple{repeat::Int64, copy::Int64}[], regions = [9, 10, 11, 12, 13, 14, 15, 16, 17, 18  …  67, 68, 69, 70, 71, 72, 73, 74, 75, 76])], @NamedTuple{at::Placement{Float64}, regions::Vector{Int64}, members::Vector{Int64}}[(at = Placement{Float64}(0.0, 0.0, 0.0), regions = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10  …  69, 70, 71, 72, 73, 74, 75, 76, 77, 78], members = [])], @NamedTuple{placements::Vector{Placement{Float64}}, copies::Vector{UnitRange{Int64}}}[(placements = [Placement{Float64}(0.0709, 0.0, 0.0), Placement{Float64}(0.07059755309931795, 0.006541826685948111, 0.09239978392911156), Placement{Float64}(0.06969279276758863, 0.013027840813194838, 0.18479956785822313), Placement{Float64}(0.06819343810095288, 0.019402705996110676, 0.2771993517873347), Placement{Float64}(0.06611228106476884, 0.025612034132669145, 0.36959913571644626), Placement{Float64}(0.06346707735707392, 0.031602849424556566, 0.46199891964555784), Placement{Float64}(0.060280394923229653, 0.037324040348004524, 0.5543987035746694), Placement{Float64}(0.05657942141416898, 0.04272679571928928, 0.646798487503781), Placement{Float64}(0.052395732230944736, 0.04776502113454091, 0.7391982714328925), Placement{Float64}(0.04776502113454091, 0.052395732230944736, 0.831598055362004)  …  Placement{Float64}(0.042726795719289265, -0.056579421414169, 5.359187467888471), Placement{Float64}(0.047765021134540925, -0.052395732230944715, 5.451587251817583), Placement{Float64}(0.05239573223094474, -0.047765021134540904, 5.543987035746694), Placement{Float64}(0.056579421414168975, -0.04272679571928929, 5.636386819675805), Placement{Float64}(0.060280394923229626, -0.03732404034800455, 5.728786603604917), Placement{Float64}(0.06346707735707394, -0.03160284942455655, 5.821186387534029), Placement{Float64}(0.06611228106476884, -0.025612034132669152, 5.91358617146314), Placement{Float64}(0.06819343810095287, -0.019402705996110697, 6.005985955392251), Placement{Float64}(0.06969279276758863, -0.013027840813194818, 6.098385739321364), Placement{Float64}(0.07059755309931795, -0.0065418266859481105, 6.190785523250475)], copies = [9:9, 10:10, 11:11, 12:12, 13:13, 14:14, 15:15, 16:16, 17:17, 18:18  …  67:67, 68:68, 69:69, 70:70, 71:71, 72:72, 73:73, 74:74, 75:75, 76:76])], [(repeat = 1, radii = [0.0709, 0.0709, 0.0709, 0.0709, 0.0709, 0.0709, 0.0709, 0.0709, 0.0709, 0.0709  …  0.0709, 0.0709, 0.0709, 0.0709, 0.0709, 0.0709, 0.07090000000000002, 0.0709, 0.07089999999999999, 0.0709], pitches = [1.4208247337261888, 1.4208247337261888, 1.4208247337261888, 1.4208247337261888, 1.4208247337261888, 1.4208247337261888, 1.4208247337261888, 1.4208247337261888, 1.4208247337261888, 1.4208247337261888  …  1.4208247337261888, 1.4208247337261888, 1.4208247337261888, 1.4208247337261888, 1.4208247337261888, 1.4208247337261888, 1.4208247337261892, 1.4208247337261888, 1.4208247337261886, 1.4208247337261888], overlengths = [1.048, 1.048, 1.048, 1.048, 1.048, 1.048, 1.048, 1.048, 1.048, 1.048  …  1.048, 1.048, 1.048, 1.048, 1.048, 1.048, 1.048, 1.048, 1.048, 1.048], axis = (0.0, 0.0))], @NamedTuple{repeat::Int64, factor::Float64}[], [(region = 77, contents = [9, 10, 11, 12, 13, 14, 15, 16, 17, 18  …  67, 68, 69, 70, 71, 72, 73, 74, 75, 76])]), CableDesign{Float64, Stack{Vector{AbstractCablePart}}, Vector{LineCableModels.DataModel.PlacedRegion}, Circle{Float64}}("cable_525kv_subsea_armoured", Stack{Vector{AbstractCablePart}}(AbstractCablePart[Terminal{Stack{Vector{AbstractCablePart}}}(:core, Stack{Vector{AbstractCablePart}}(AbstractCablePart[Region{Circle{Float64}, Material{Float64, :conductor}}(:core_conductor, Circle{Float64}(0.03, Placement{Float64}(0.0, 0.0, 0.0)), Material{Float64, :conductor}(2.035752039526186e-8, 1.0, 1.0, 20.0, 0.00393, 0.0, 90.0, 0.0, 0.0))])), Region{Offset{Float64}, Material{Float64, :semicon}}(:core_semicon_inner, Offset{Float64}(0.002), Material{Float64, :semicon}(1000.0, 1000.0, 1.0, 20.0, 0.0, 0.0, 90.0, 0.0, 0.0)), Region{Offset{Float64}, Material{Float64, :insulator}}(:core_insulation, Offset{Float64}(0.026), Material{Float64, :insulator}(1.0e14, 2.4, 1.0, 20.0, 0.0, 0.0, 90.0, 0.0, 0.0)), Region{Offset{Float64}, Material{Float64, :semicon}}(:core_semicon_outer, Offset{Float64}(0.0018), Material{Float64, :semicon}(500.0, 1000.0, 1.0, 20.0, 0.0, 0.0, 90.0, 0.0, 0.0)), Region{Offset{Float64}, Material{Float64, :semicon}}(:core_water_blocking, Offset{Float64}(0.0006), Material{Float64, :semicon}(500.0, 1000.0, 1.0, 20.0, 0.0, 0.0, 90.0, 0.0, 0.0)), Terminal{Stack{Vector{AbstractCablePart}}}(:sheath, Stack{Vector{AbstractCablePart}}(AbstractCablePart[Region{Offset{Float64}, Material{Float64, :conductor}}(:sheath_lead, Offset{Float64}(0.0032), Material{Float64, :conductor}(2.14e-7, 1.0, 0.999983, 20.0, 0.004, 0.0, 90.0, 0.0, 0.0))])), Region{Offset{Float64}, Material{Float64, :insulator}}(:sheath_inner_pe, Offset{Float64}(0.0033), Material{Float64, :insulator}(1.97e14, 2.5, 1.0, 20.0, 0.0, 0.0, 90.0, 0.0, 0.0)), Region{Offset{Float64}, Material{Float64, :insulator}}(:sheath_bedding, Offset{Float64}(0.001), Material{Float64, :insulator}(1.0e15, 2.8, 1.0, 20.0, 0.0, 0.0, 90.0, 0.0, 0.0)), Terminal{Stack{Vector{AbstractCablePart}}}(:armor, Stack{Vector{AbstractCablePart}}(AbstractCablePart[Enclosure{Region{Offset{Float64}, Material{Float64, :insulator}}, Lay{Helix{LayRatio{Float64}, Float64}, Repeat{CircularPattern{Float64, Offset{Float64}}, Region{Circle{Float64}, Material{Float64, :conductor}}}}}(Region{Offset{Float64}, Material{Float64, :insulator}}(:armor_wires_fill, Offset{Float64}(0.006), Material{Float64, :insulator}(Inf, 1.0, 1.0, 20.0, 0.0, 0.0, 90.0, 0.0, 0.0)), Lay{Helix{LayRatio{Float64}, Float64}, Repeat{CircularPattern{Float64, Offset{Float64}}, Region{Circle{Float64}, Material{Float64, :conductor}}}}(Helix{LayRatio{Float64}, Float64}(LayRatio{Float64}(10.019920548139554), 1, 0.0), Repeat{CircularPattern{Float64, Offset{Float64}}, Region{Circle{Float64}, Material{Float64, :conductor}}}(CircularPattern{Float64, Offset{Float64}}(68, Offset{Float64}(0.0), 0.0, 6.283185307179586, 0.0), Region{Circle{Float64}, Material{Float64, :conductor}}(:armor_wires, Circle{Float64}(0.003, Placement{Float64}(0.0, 0.0, 0.0)), Material{Float64, :conductor}(1.38e-7, 1.0, 10.0, 20.0, 0.0045, 0.0, 90.0, 0.0, 0.0)))))])), Region{Offset{Float64}, Material{Float64, :insulator}}(:armor_jacket, Offset{Float64}(0.0066), Material{Float64, :insulator}(1.0e15, 2.8, 1.0, 20.0, 0.0, 0.0, 90.0, 0.0, 0.0))]), LineCableModels.DataModel.PlacedRegion[LineCableModels.DataModel.PlacedRegion{Region{Circle{Float64}, Material{Float64, :conductor}}, Circle{Float64}}(Region{Circle{Float64}, Material{Float64, :conductor}}(:core_conductor, Circle{Float64}(0.03, Placement{Float64}(0.0, 0.0, 0.0)), Material{Float64, :conductor}(2.035752039526186e-8, 1.0, 1.0, 20.0, 0.00393, 0.0, 90.0, 0.0, 0.0)), Circle{Float64}(0.03, Placement{Float64}(0.0, 0.0, 0.0))), LineCableModels.DataModel.PlacedRegion{Region{Offset{Float64}, Material{Float64, :semicon}}, Annulus{Float64}}(Region{Offset{Float64}, Material{Float64, :semicon}}(:core_semicon_inner, Offset{Float64}(0.002), Material{Float64, :semicon}(1000.0, 1000.0, 1.0, 20.0, 0.0, 0.0, 90.0, 0.0, 0.0)), Annulus{Float64}(0.03, 0.032, Placement{Float64}(0.0, 0.0, 0.0))), LineCableModels.DataModel.PlacedRegion{Region{Offset{Float64}, Material{Float64, :insulator}}, Annulus{Float64}}(Region{Offset{Float64}, Material{Float64, :insulator}}(:core_insulation, Offset{Float64}(0.026), Material{Float64, :insulator}(1.0e14, 2.4, 1.0, 20.0, 0.0, 0.0, 90.0, 0.0, 0.0)), Annulus{Float64}(0.032, 0.057999999999999996, Placement{Float64}(0.0, 0.0, 0.0))), LineCableModels.DataModel.PlacedRegion{Region{Offset{Float64}, Material{Float64, :semicon}}, Annulus{Float64}}(Region{Offset{Float64}, Material{Float64, :semicon}}(:core_semicon_outer, Offset{Float64}(0.0018), Material{Float64, :semicon}(500.0, 1000.0, 1.0, 20.0, 0.0, 0.0, 90.0, 0.0, 0.0)), Annulus{Float64}(0.057999999999999996, 0.0598, Placement{Float64}(0.0, 0.0, 0.0))), LineCableModels.DataModel.PlacedRegion{Region{Offset{Float64}, Material{Float64, :semicon}}, Annulus{Float64}}(Region{Offset{Float64}, Material{Float64, :semicon}}(:core_water_blocking, Offset{Float64}(0.0006), Material{Float64, :semicon}(500.0, 1000.0, 1.0, 20.0, 0.0, 0.0, 90.0, 0.0, 0.0)), Annulus{Float64}(0.0598, 0.0604, Placement{Float64}(0.0, 0.0, 0.0))), LineCableModels.DataModel.PlacedRegion{Region{Offset{Float64}, Material{Float64, :conductor}}, Annulus{Float64}}(Region{Offset{Float64}, Material{Float64, :conductor}}(:sheath_lead, Offset{Float64}(0.0032), Material{Float64, :conductor}(2.14e-7, 1.0, 0.999983, 20.0, 0.004, 0.0, 90.0, 0.0, 0.0)), Annulus{Float64}(0.0604, 0.0636, Placement{Float64}(0.0, 0.0, 0.0))), LineCableModels.DataModel.PlacedRegion{Region{Offset{Float64}, Material{Float64, :insulator}}, Annulus{Float64}}(Region{Offset{Float64}, Material{Float64, :insulator}}(:sheath_inner_pe, Offset{Float64}(0.0033), Material{Float64, :insulator}(1.97e14, 2.5, 1.0, 20.0, 0.0, 0.0, 90.0, 0.0, 0.0)), Annulus{Float64}(0.0636, 0.0669, Placement{Float64}(0.0, 0.0, 0.0))), LineCableModels.DataModel.PlacedRegion{Region{Offset{Float64}, Material{Float64, :insulator}}, Annulus{Float64}}(Region{Offset{Float64}, Material{Float64, :insulator}}(:sheath_bedding, Offset{Float64}(0.001), Material{Float64, :insulator}(1.0e15, 2.8, 1.0, 20.0, 0.0, 0.0, 90.0, 0.0, 0.0)), Annulus{Float64}(0.0669, 0.0679, Placement{Float64}(0.0, 0.0, 0.0))), LineCableModels.DataModel.PlacedRegion{Region{Circle{Float64}, Material{Float64, :conductor}}, Circle{Float64}}(Region{Circle{Float64}, Material{Float64, :conductor}}(:armor_wires, Circle{Float64}(0.003, Placement{Float64}(0.0, 0.0, 0.0)), Material{Float64, :conductor}(1.38e-7, 1.0, 10.0, 20.0, 0.0045, 0.0, 90.0, 0.0, 0.0)), Circle{Float64}(0.003, Placement{Float64}(0.0709, 0.0, 0.0))), LineCableModels.DataModel.PlacedRegion{Region{Circle{Float64}, Material{Float64, :conductor}}, Circle{Float64}}(Region{Circle{Float64}, Material{Float64, :conductor}}(:armor_wires, Circle{Float64}(0.003, Placement{Float64}(0.0, 0.0, 0.0)), Material{Float64, :conductor}(1.38e-7, 1.0, 10.0, 20.0, 0.0045, 0.0, 90.0, 0.0, 0.0)), Circle{Float64}(0.003, Placement{Float64}(0.07059755309931795, 0.006541826685948111, 0.09239978392911156)))  …  LineCableModels.DataModel.PlacedRegion{Region{Circle{Float64}, Material{Float64, :conductor}}, Circle{Float64}}(Region{Circle{Float64}, Material{Float64, :conductor}}(:armor_wires, Circle{Float64}(0.003, Placement{Float64}(0.0, 0.0, 0.0)), Material{Float64, :conductor}(1.38e-7, 1.0, 10.0, 20.0, 0.0045, 0.0, 90.0, 0.0, 0.0)), Circle{Float64}(0.003, Placement{Float64}(0.05239573223094474, -0.047765021134540904, 5.543987035746694))), LineCableModels.DataModel.PlacedRegion{Region{Circle{Float64}, Material{Float64, :conductor}}, Circle{Float64}}(Region{Circle{Float64}, Material{Float64, :conductor}}(:armor_wires, Circle{Float64}(0.003, Placement{Float64}(0.0, 0.0, 0.0)), Material{Float64, :conductor}(1.38e-7, 1.0, 10.0, 20.0, 0.0045, 0.0, 90.0, 0.0, 0.0)), Circle{Float64}(0.003, Placement{Float64}(0.056579421414168975, -0.04272679571928929, 5.636386819675805))), LineCableModels.DataModel.PlacedRegion{Region{Circle{Float64}, Material{Float64, :conductor}}, Circle{Float64}}(Region{Circle{Float64}, Material{Float64, :conductor}}(:armor_wires, Circle{Float64}(0.003, Placement{Float64}(0.0, 0.0, 0.0)), Material{Float64, :conductor}(1.38e-7, 1.0, 10.0, 20.0, 0.0045, 0.0, 90.0, 0.0, 0.0)), Circle{Float64}(0.003, Placement{Float64}(0.060280394923229626, -0.03732404034800455, 5.728786603604917))), LineCableModels.DataModel.PlacedRegion{Region{Circle{Float64}, Material{Float64, :conductor}}, Circle{Float64}}(Region{Circle{Float64}, Material{Float64, :conductor}}(:armor_wires, Circle{Float64}(0.003, Placement{Float64}(0.0, 0.0, 0.0)), Material{Float64, :conductor}(1.38e-7, 1.0, 10.0, 20.0, 0.0045, 0.0, 90.0, 0.0, 0.0)), Circle{Float64}(0.003, Placement{Float64}(0.06346707735707394, -0.03160284942455655, 5.821186387534029))), LineCableModels.DataModel.PlacedRegion{Region{Circle{Float64}, Material{Float64, :conductor}}, Circle{Float64}}(Region{Circle{Float64}, Material{Float64, :conductor}}(:armor_wires, Circle{Float64}(0.003, Placement{Float64}(0.0, 0.0, 0.0)), Material{Float64, :conductor}(1.38e-7, 1.0, 10.0, 20.0, 0.0045, 0.0, 90.0, 0.0, 0.0)), Circle{Float64}(0.003, Placement{Float64}(0.06611228106476884, -0.025612034132669152, 5.91358617146314))), LineCableModels.DataModel.PlacedRegion{Region{Circle{Float64}, Material{Float64, :conductor}}, Circle{Float64}}(Region{Circle{Float64}, Material{Float64, :conductor}}(:armor_wires, Circle{Float64}(0.003, Placement{Float64}(0.0, 0.0, 0.0)), Material{Float64, :conductor}(1.38e-7, 1.0, 10.0, 20.0, 0.0045, 0.0, 90.0, 0.0, 0.0)), Circle{Float64}(0.003, Placement{Float64}(0.06819343810095287, -0.019402705996110697, 6.005985955392251))), LineCableModels.DataModel.PlacedRegion{Region{Circle{Float64}, Material{Float64, :conductor}}, Circle{Float64}}(Region{Circle{Float64}, Material{Float64, :conductor}}(:armor_wires, Circle{Float64}(0.003, Placement{Float64}(0.0, 0.0, 0.0)), Material{Float64, :conductor}(1.38e-7, 1.0, 10.0, 20.0, 0.0045, 0.0, 90.0, 0.0, 0.0)), Circle{Float64}(0.003, Placement{Float64}(0.06969279276758863, -0.013027840813194818, 6.098385739321364))), LineCableModels.DataModel.PlacedRegion{Region{Circle{Float64}, Material{Float64, :conductor}}, Circle{Float64}}(Region{Circle{Float64}, Material{Float64, :conductor}}(:armor_wires, Circle{Float64}(0.003, Placement{Float64}(0.0, 0.0, 0.0)), Material{Float64, :conductor}(1.38e-7, 1.0, 10.0, 20.0, 0.0045, 0.0, 90.0, 0.0, 0.0)), Circle{Float64}(0.003, Placement{Float64}(0.07059755309931795, -0.0065418266859481105, 6.190785523250475))), LineCableModels.DataModel.PlacedRegion{Region{Offset{Float64}, Material{Float64, :insulator}}, LineCableModels.DataModel.DifferenceShape{Float64, Annulus{Float64}, Vector{Circle{Float64}}}}(Region{Offset{Float64}, Material{Float64, :insulator}}(:armor_wires_fill, Offset{Float64}(0.006), Material{Float64, :insulator}(Inf, 1.0, 1.0, 20.0, 0.0, 0.0, 90.0, 0.0, 0.0)), LineCableModels.DataModel.DifferenceShape{Float64, Annulus{Float64}, Vector{Circle{Float64}}}(Annulus{Float64}(0.0679, 0.07390000000000001, Placement{Float64}(0.0, 0.0, 0.0)), Circle{Float64}[Circle{Float64}(0.003, Placement{Float64}(0.0709, 0.0, 0.0)), Circle{Float64}(0.003, Placement{Float64}(0.07059755309931795, 0.006541826685948111, 0.09239978392911156)), Circle{Float64}(0.003, Placement{Float64}(0.06969279276758863, 0.013027840813194838, 0.18479956785822313)), Circle{Float64}(0.003, Placement{Float64}(0.06819343810095288, 0.019402705996110676, 0.2771993517873347)), Circle{Float64}(0.003, Placement{Float64}(0.06611228106476884, 0.025612034132669145, 0.36959913571644626)), Circle{Float64}(0.003, Placement{Float64}(0.06346707735707392, 0.031602849424556566, 0.46199891964555784)), Circle{Float64}(0.003, Placement{Float64}(0.060280394923229653, 0.037324040348004524, 0.5543987035746694)), Circle{Float64}(0.003, Placement{Float64}(0.05657942141416898, 0.04272679571928928, 0.646798487503781)), Circle{Float64}(0.003, Placement{Float64}(0.052395732230944736, 0.04776502113454091, 0.7391982714328925)), Circle{Float64}(0.003, Placement{Float64}(0.04776502113454091, 0.052395732230944736, 0.831598055362004))  …  Circle{Float64}(0.003, Placement{Float64}(0.042726795719289265, -0.056579421414169, 5.359187467888471)), Circle{Float64}(0.003, Placement{Float64}(0.047765021134540925, -0.052395732230944715, 5.451587251817583)), Circle{Float64}(0.003, Placement{Float64}(0.05239573223094474, -0.047765021134540904, 5.543987035746694)), Circle{Float64}(0.003, Placement{Float64}(0.056579421414168975, -0.04272679571928929, 5.636386819675805)), Circle{Float64}(0.003, Placement{Float64}(0.060280394923229626, -0.03732404034800455, 5.728786603604917)), Circle{Float64}(0.003, Placement{Float64}(0.06346707735707394, -0.03160284942455655, 5.821186387534029)), Circle{Float64}(0.003, Placement{Float64}(0.06611228106476884, -0.025612034132669152, 5.91358617146314)), Circle{Float64}(0.003, Placement{Float64}(0.06819343810095287, -0.019402705996110697, 6.005985955392251)), Circle{Float64}(0.003, Placement{Float64}(0.06969279276758863, -0.013027840813194818, 6.098385739321364)), Circle{Float64}(0.003, Placement{Float64}(0.07059755309931795, -0.0065418266859481105, 6.190785523250475))])), LineCableModels.DataModel.PlacedRegion{Region{Offset{Float64}, Material{Float64, :insulator}}, Annulus{Float64}}(Region{Offset{Float64}, Material{Float64, :insulator}}(:armor_jacket, Offset{Float64}(0.0066), Material{Float64, :insulator}(1.0e15, 2.8, 1.0, 20.0, 0.0, 0.0, 90.0, 0.0, 0.0)), Annulus{Float64}(0.07390000000000001, 0.0805, Placement{Float64}(0.0, 0.0, 0.0)))], Circle{Float64}(0.0805, Placement{Float64}(0.0, 0.0, 0.0)), [(name = :core, scope = @NamedTuple{repeat::Int64, copy::Int64}[], regions = [1]), (name = :sheath, scope = @NamedTuple{repeat::Int64, copy::Int64}[], regions = [6]), (name = :armor, scope = @NamedTuple{repeat::Int64, copy::Int64}[], regions = [9, 10, 11, 12, 13, 14, 15, 16, 17, 18  …  67, 68, 69, 70, 71, 72, 73, 74, 75, 76])], @NamedTuple{at::Placement{Float64}, regions::Vector{Int64}, members::Vector{Int64}}[(at = Placement{Float64}(0.0, 0.0, 0.0), regions = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10  …  69, 70, 71, 72, 73, 74, 75, 76, 77, 78], members = [])], @NamedTuple{placements::Vector{Placement{Float64}}, copies::Vector{UnitRange{Int64}}}[(placements = [Placement{Float64}(0.0709, 0.0, 0.0), Placement{Float64}(0.07059755309931795, 0.006541826685948111, 0.09239978392911156), Placement{Float64}(0.06969279276758863, 0.013027840813194838, 0.18479956785822313), Placement{Float64}(0.06819343810095288, 0.019402705996110676, 0.2771993517873347), Placement{Float64}(0.06611228106476884, 0.025612034132669145, 0.36959913571644626), Placement{Float64}(0.06346707735707392, 0.031602849424556566, 0.46199891964555784), Placement{Float64}(0.060280394923229653, 0.037324040348004524, 0.5543987035746694), Placement{Float64}(0.05657942141416898, 0.04272679571928928, 0.646798487503781), Placement{Float64}(0.052395732230944736, 0.04776502113454091, 0.7391982714328925), Placement{Float64}(0.04776502113454091, 0.052395732230944736, 0.831598055362004)  …  Placement{Float64}(0.042726795719289265, -0.056579421414169, 5.359187467888471), Placement{Float64}(0.047765021134540925, -0.052395732230944715, 5.451587251817583), Placement{Float64}(0.05239573223094474, -0.047765021134540904, 5.543987035746694), Placement{Float64}(0.056579421414168975, -0.04272679571928929, 5.636386819675805), Placement{Float64}(0.060280394923229626, -0.03732404034800455, 5.728786603604917), Placement{Float64}(0.06346707735707394, -0.03160284942455655, 5.821186387534029), Placement{Float64}(0.06611228106476884, -0.025612034132669152, 5.91358617146314), Placement{Float64}(0.06819343810095287, -0.019402705996110697, 6.005985955392251), Placement{Float64}(0.06969279276758863, -0.013027840813194818, 6.098385739321364), Placement{Float64}(0.07059755309931795, -0.0065418266859481105, 6.190785523250475)], copies = [9:9, 10:10, 11:11, 12:12, 13:13, 14:14, 15:15, 16:16, 17:17, 18:18  …  67:67, 68:68, 69:69, 70:70, 71:71, 72:72, 73:73, 74:74, 75:75, 76:76])], [(repeat = 1, radii = [0.0709, 0.0709, 0.0709, 0.0709, 0.0709, 0.0709, 0.0709, 0.0709, 0.0709, 0.0709  …  0.0709, 0.0709, 0.0709, 0.0709, 0.0709, 0.0709, 0.07090000000000002, 0.0709, 0.07089999999999999, 0.0709], pitches = [1.4208247337261888, 1.4208247337261888, 1.4208247337261888, 1.4208247337261888, 1.4208247337261888, 1.4208247337261888, 1.4208247337261888, 1.4208247337261888, 1.4208247337261888, 1.4208247337261888  …  1.4208247337261888, 1.4208247337261888, 1.4208247337261888, 1.4208247337261888, 1.4208247337261888, 1.4208247337261888, 1.4208247337261892, 1.4208247337261888, 1.4208247337261886, 1.4208247337261888], overlengths = [1.048, 1.048, 1.048, 1.048, 1.048, 1.048, 1.048, 1.048, 1.048, 1.048  …  1.048, 1.048, 1.048, 1.048, 1.048, 1.048, 1.048, 1.048, 1.048, 1.048], axis = (0.0, 0.0))], @NamedTuple{repeat::Int64, factor::Float64}[], [(region = 77, contents = [9, 10, 11, 12, 13, 14, 15, 16, 17, 18  …  67, 68, 69, 70, 71, 72, 73, 74, 75, 76])]), CableDesign{Float64, Stack{Vector{AbstractCablePart}}, Vector{LineCableModels.DataModel.PlacedRegion}, Circle{Float64}}("cable_525kv_subsea_armoured", Stack{Vector{AbstractCablePart}}(AbstractCablePart[Terminal{Stack{Vector{AbstractCablePart}}}(:core, Stack{Vector{AbstractCablePart}}(AbstractCablePart[Region{Circle{Float64}, Material{Float64, :conductor}}(:core_conductor, Circle{Float64}(0.03, Placement{Float64}(0.0, 0.0, 0.0)), Material{Float64, :conductor}(2.035752039526186e-8, 1.0, 1.0, 20.0, 0.00393, 0.0, 90.0, 0.0, 0.0))])), Region{Offset{Float64}, Material{Float64, :semicon}}(:core_semicon_inner, Offset{Float64}(0.002), Material{Float64, :semicon}(1000.0, 1000.0, 1.0, 20.0, 0.0, 0.0, 90.0, 0.0, 0.0)), Region{Offset{Float64}, Material{Float64, :insulator}}(:core_insulation, Offset{Float64}(0.026), Material{Float64, :insulator}(1.0e14, 2.4, 1.0, 20.0, 0.0, 0.0, 90.0, 0.0, 0.0)), Region{Offset{Float64}, Material{Float64, :semicon}}(:core_semicon_outer, Offset{Float64}(0.0018), Material{Float64, :semicon}(500.0, 1000.0, 1.0, 20.0, 0.0, 0.0, 90.0, 0.0, 0.0)), Region{Offset{Float64}, Material{Float64, :semicon}}(:core_water_blocking, Offset{Float64}(0.0006), Material{Float64, :semicon}(500.0, 1000.0, 1.0, 20.0, 0.0, 0.0, 90.0, 0.0, 0.0)), Terminal{Stack{Vector{AbstractCablePart}}}(:sheath, Stack{Vector{AbstractCablePart}}(AbstractCablePart[Region{Offset{Float64}, Material{Float64, :conductor}}(:sheath_lead, Offset{Float64}(0.0032), Material{Float64, :conductor}(2.14e-7, 1.0, 0.999983, 20.0, 0.004, 0.0, 90.0, 0.0, 0.0))])), Region{Offset{Float64}, Material{Float64, :insulator}}(:sheath_inner_pe, Offset{Float64}(0.0033), Material{Float64, :insulator}(1.97e14, 2.5, 1.0, 20.0, 0.0, 0.0, 90.0, 0.0, 0.0)), Region{Offset{Float64}, Material{Float64, :insulator}}(:sheath_bedding, Offset{Float64}(0.001), Material{Float64, :insulator}(1.0e15, 2.8, 1.0, 20.0, 0.0, 0.0, 90.0, 0.0, 0.0)), Terminal{Stack{Vector{AbstractCablePart}}}(:armor, Stack{Vector{AbstractCablePart}}(AbstractCablePart[Enclosure{Region{Offset{Float64}, Material{Float64, :insulator}}, Lay{Helix{LayRatio{Float64}, Float64}, Repeat{CircularPattern{Float64, Offset{Float64}}, Region{Circle{Float64}, Material{Float64, :conductor}}}}}(Region{Offset{Float64}, Material{Float64, :insulator}}(:armor_wires_fill, Offset{Float64}(0.006), Material{Float64, :insulator}(Inf, 1.0, 1.0, 20.0, 0.0, 0.0, 90.0, 0.0, 0.0)), Lay{Helix{LayRatio{Float64}, Float64}, Repeat{CircularPattern{Float64, Offset{Float64}}, Region{Circle{Float64}, Material{Float64, :conductor}}}}(Helix{LayRatio{Float64}, Float64}(LayRatio{Float64}(10.019920548139554), 1, 0.0), Repeat{CircularPattern{Float64, Offset{Float64}}, Region{Circle{Float64}, Material{Float64, :conductor}}}(CircularPattern{Float64, Offset{Float64}}(68, Offset{Float64}(0.0), 0.0, 6.283185307179586, 0.0), Region{Circle{Float64}, Material{Float64, :conductor}}(:armor_wires, Circle{Float64}(0.003, Placement{Float64}(0.0, 0.0, 0.0)), Material{Float64, :conductor}(1.38e-7, 1.0, 10.0, 20.0, 0.0045, 0.0, 90.0, 0.0, 0.0)))))])), Region{Offset{Float64}, Material{Float64, :insulator}}(:armor_jacket, Offset{Float64}(0.0066), Material{Float64, :insulator}(1.0e15, 2.8, 1.0, 20.0, 0.0, 0.0, 90.0, 0.0, 0.0))]), LineCableModels.DataModel.PlacedRegion[LineCableModels.DataModel.PlacedRegion{Region{Circle{Float64}, Material{Float64, :conductor}}, Circle{Float64}}(Region{Circle{Float64}, Material{Float64, :conductor}}(:core_conductor, Circle{Float64}(0.03, Placement{Float64}(0.0, 0.0, 0.0)), Material{Float64, :conductor}(2.035752039526186e-8, 1.0, 1.0, 20.0, 0.00393, 0.0, 90.0, 0.0, 0.0)), Circle{Float64}(0.03, Placement{Float64}(0.0, 0.0, 0.0))), LineCableModels.DataModel.PlacedRegion{Region{Offset{Float64}, Material{Float64, :semicon}}, Annulus{Float64}}(Region{Offset{Float64}, Material{Float64, :semicon}}(:core_semicon_inner, Offset{Float64}(0.002), Material{Float64, :semicon}(1000.0, 1000.0, 1.0, 20.0, 0.0, 0.0, 90.0, 0.0, 0.0)), Annulus{Float64}(0.03, 0.032, Placement{Float64}(0.0, 0.0, 0.0))), LineCableModels.DataModel.PlacedRegion{Region{Offset{Float64}, Material{Float64, :insulator}}, Annulus{Float64}}(Region{Offset{Float64}, Material{Float64, :insulator}}(:core_insulation, Offset{Float64}(0.026), Material{Float64, :insulator}(1.0e14, 2.4, 1.0, 20.0, 0.0, 0.0, 90.0, 0.0, 0.0)), Annulus{Float64}(0.032, 0.057999999999999996, Placement{Float64}(0.0, 0.0, 0.0))), LineCableModels.DataModel.PlacedRegion{Region{Offset{Float64}, Material{Float64, :semicon}}, Annulus{Float64}}(Region{Offset{Float64}, Material{Float64, :semicon}}(:core_semicon_outer, Offset{Float64}(0.0018), Material{Float64, :semicon}(500.0, 1000.0, 1.0, 20.0, 0.0, 0.0, 90.0, 0.0, 0.0)), Annulus{Float64}(0.057999999999999996, 0.0598, Placement{Float64}(0.0, 0.0, 0.0))), LineCableModels.DataModel.PlacedRegion{Region{Offset{Float64}, Material{Float64, :semicon}}, Annulus{Float64}}(Region{Offset{Float64}, Material{Float64, :semicon}}(:core_water_blocking, Offset{Float64}(0.0006), Material{Float64, :semicon}(500.0, 1000.0, 1.0, 20.0, 0.0, 0.0, 90.0, 0.0, 0.0)), Annulus{Float64}(0.0598, 0.0604, Placement{Float64}(0.0, 0.0, 0.0))), LineCableModels.DataModel.PlacedRegion{Region{Offset{Float64}, Material{Float64, :conductor}}, Annulus{Float64}}(Region{Offset{Float64}, Material{Float64, :conductor}}(:sheath_lead, Offset{Float64}(0.0032), Material{Float64, :conductor}(2.14e-7, 1.0, 0.999983, 20.0, 0.004, 0.0, 90.0, 0.0, 0.0)), Annulus{Float64}(0.0604, 0.0636, Placement{Float64}(0.0, 0.0, 0.0))), LineCableModels.DataModel.PlacedRegion{Region{Offset{Float64}, Material{Float64, :insulator}}, Annulus{Float64}}(Region{Offset{Float64}, Material{Float64, :insulator}}(:sheath_inner_pe, Offset{Float64}(0.0033), Material{Float64, :insulator}(1.97e14, 2.5, 1.0, 20.0, 0.0, 0.0, 90.0, 0.0, 0.0)), Annulus{Float64}(0.0636, 0.0669, Placement{Float64}(0.0, 0.0, 0.0))), LineCableModels.DataModel.PlacedRegion{Region{Offset{Float64}, Material{Float64, :insulator}}, Annulus{Float64}}(Region{Offset{Float64}, Material{Float64, :insulator}}(:sheath_bedding, Offset{Float64}(0.001), Material{Float64, :insulator}(1.0e15, 2.8, 1.0, 20.0, 0.0, 0.0, 90.0, 0.0, 0.0)), Annulus{Float64}(0.0669, 0.0679, Placement{Float64}(0.0, 0.0, 0.0))), LineCableModels.DataModel.PlacedRegion{Region{Circle{Float64}, Material{Float64, :conductor}}, Circle{Float64}}(Region{Circle{Float64}, Material{Float64, :conductor}}(:armor_wires, Circle{Float64}(0.003, Placement{Float64}(0.0, 0.0, 0.0)), Material{Float64, :conductor}(1.38e-7, 1.0, 10.0, 20.0, 0.0045, 0.0, 90.0, 0.0, 0.0)), Circle{Float64}(0.003, Placement{Float64}(0.0709, 0.0, 0.0))), LineCableModels.DataModel.PlacedRegion{Region{Circle{Float64}, Material{Float64, :conductor}}, Circle{Float64}}(Region{Circle{Float64}, Material{Float64, :conductor}}(:armor_wires, Circle{Float64}(0.003, Placement{Float64}(0.0, 0.0, 0.0)), Material{Float64, :conductor}(1.38e-7, 1.0, 10.0, 20.0, 0.0045, 0.0, 90.0, 0.0, 0.0)), Circle{Float64}(0.003, Placement{Float64}(0.07059755309931795, 0.006541826685948111, 0.09239978392911156)))  …  LineCableModels.DataModel.PlacedRegion{Region{Circle{Float64}, Material{Float64, :conductor}}, Circle{Float64}}(Region{Circle{Float64}, Material{Float64, :conductor}}(:armor_wires, Circle{Float64}(0.003, Placement{Float64}(0.0, 0.0, 0.0)), Material{Float64, :conductor}(1.38e-7, 1.0, 10.0, 20.0, 0.0045, 0.0, 90.0, 0.0, 0.0)), Circle{Float64}(0.003, Placement{Float64}(0.05239573223094474, -0.047765021134540904, 5.543987035746694))), LineCableModels.DataModel.PlacedRegion{Region{Circle{Float64}, Material{Float64, :conductor}}, Circle{Float64}}(Region{Circle{Float64}, Material{Float64, :conductor}}(:armor_wires, Circle{Float64}(0.003, Placement{Float64}(0.0, 0.0, 0.0)), Material{Float64, :conductor}(1.38e-7, 1.0, 10.0, 20.0, 0.0045, 0.0, 90.0, 0.0, 0.0)), Circle{Float64}(0.003, Placement{Float64}(0.056579421414168975, -0.04272679571928929, 5.636386819675805))), LineCableModels.DataModel.PlacedRegion{Region{Circle{Float64}, Material{Float64, :conductor}}, Circle{Float64}}(Region{Circle{Float64}, Material{Float64, :conductor}}(:armor_wires, Circle{Float64}(0.003, Placement{Float64}(0.0, 0.0, 0.0)), Material{Float64, :conductor}(1.38e-7, 1.0, 10.0, 20.0, 0.0045, 0.0, 90.0, 0.0, 0.0)), Circle{Float64}(0.003, Placement{Float64}(0.060280394923229626, -0.03732404034800455, 5.728786603604917))), LineCableModels.DataModel.PlacedRegion{Region{Circle{Float64}, Material{Float64, :conductor}}, Circle{Float64}}(Region{Circle{Float64}, Material{Float64, :conductor}}(:armor_wires, Circle{Float64}(0.003, Placement{Float64}(0.0, 0.0, 0.0)), Material{Float64, :conductor}(1.38e-7, 1.0, 10.0, 20.0, 0.0045, 0.0, 90.0, 0.0, 0.0)), Circle{Float64}(0.003, Placement{Float64}(0.06346707735707394, -0.03160284942455655, 5.821186387534029))), LineCableModels.DataModel.PlacedRegion{Region{Circle{Float64}, Material{Float64, :conductor}}, Circle{Float64}}(Region{Circle{Float64}, Material{Float64, :conductor}}(:armor_wires, Circle{Float64}(0.003, Placement{Float64}(0.0, 0.0, 0.0)), Material{Float64, :conductor}(1.38e-7, 1.0, 10.0, 20.0, 0.0045, 0.0, 90.0, 0.0, 0.0)), Circle{Float64}(0.003, Placement{Float64}(0.06611228106476884, -0.025612034132669152, 5.91358617146314))), LineCableModels.DataModel.PlacedRegion{Region{Circle{Float64}, Material{Float64, :conductor}}, Circle{Float64}}(Region{Circle{Float64}, Material{Float64, :conductor}}(:armor_wires, Circle{Float64}(0.003, Placement{Float64}(0.0, 0.0, 0.0)), Material{Float64, :conductor}(1.38e-7, 1.0, 10.0, 20.0, 0.0045, 0.0, 90.0, 0.0, 0.0)), Circle{Float64}(0.003, Placement{Float64}(0.06819343810095287, -0.019402705996110697, 6.005985955392251))), LineCableModels.DataModel.PlacedRegion{Region{Circle{Float64}, Material{Float64, :conductor}}, Circle{Float64}}(Region{Circle{Float64}, Material{Float64, :conductor}}(:armor_wires, Circle{Float64}(0.003, Placement{Float64}(0.0, 0.0, 0.0)), Material{Float64, :conductor}(1.38e-7, 1.0, 10.0, 20.0, 0.0045, 0.0, 90.0, 0.0, 0.0)), Circle{Float64}(0.003, Placement{Float64}(0.06969279276758863, -0.013027840813194818, 6.098385739321364))), LineCableModels.DataModel.PlacedRegion{Region{Circle{Float64}, Material{Float64, :conductor}}, Circle{Float64}}(Region{Circle{Float64}, Material{Float64, :conductor}}(:armor_wires, Circle{Float64}(0.003, Placement{Float64}(0.0, 0.0, 0.0)), Material{Float64, :conductor}(1.38e-7, 1.0, 10.0, 20.0, 0.0045, 0.0, 90.0, 0.0, 0.0)), Circle{Float64}(0.003, Placement{Float64}(0.07059755309931795, -0.0065418266859481105, 6.190785523250475))), LineCableModels.DataModel.PlacedRegion{Region{Offset{Float64}, Material{Float64, :insulator}}, LineCableModels.DataModel.DifferenceShape{Float64, Annulus{Float64}, Vector{Circle{Float64}}}}(Region{Offset{Float64}, Material{Float64, :insulator}}(:armor_wires_fill, Offset{Float64}(0.006), Material{Float64, :insulator}(Inf, 1.0, 1.0, 20.0, 0.0, 0.0, 90.0, 0.0, 0.0)), LineCableModels.DataModel.DifferenceShape{Float64, Annulus{Float64}, Vector{Circle{Float64}}}(Annulus{Float64}(0.0679, 0.07390000000000001, Placement{Float64}(0.0, 0.0, 0.0)), Circle{Float64}[Circle{Float64}(0.003, Placement{Float64}(0.0709, 0.0, 0.0)), Circle{Float64}(0.003, Placement{Float64}(0.07059755309931795, 0.006541826685948111, 0.09239978392911156)), Circle{Float64}(0.003, Placement{Float64}(0.06969279276758863, 0.013027840813194838, 0.18479956785822313)), Circle{Float64}(0.003, Placement{Float64}(0.06819343810095288, 0.019402705996110676, 0.2771993517873347)), Circle{Float64}(0.003, Placement{Float64}(0.06611228106476884, 0.025612034132669145, 0.36959913571644626)), Circle{Float64}(0.003, Placement{Float64}(0.06346707735707392, 0.031602849424556566, 0.46199891964555784)), Circle{Float64}(0.003, Placement{Float64}(0.060280394923229653, 0.037324040348004524, 0.5543987035746694)), Circle{Float64}(0.003, Placement{Float64}(0.05657942141416898, 0.04272679571928928, 0.646798487503781)), Circle{Float64}(0.003, Placement{Float64}(0.052395732230944736, 0.04776502113454091, 0.7391982714328925)), Circle{Float64}(0.003, Placement{Float64}(0.04776502113454091, 0.052395732230944736, 0.831598055362004))  …  Circle{Float64}(0.003, Placement{Float64}(0.042726795719289265, -0.056579421414169, 5.359187467888471)), Circle{Float64}(0.003, Placement{Float64}(0.047765021134540925, -0.052395732230944715, 5.451587251817583)), Circle{Float64}(0.003, Placement{Float64}(0.05239573223094474, -0.047765021134540904, 5.543987035746694)), Circle{Float64}(0.003, Placement{Float64}(0.056579421414168975, -0.04272679571928929, 5.636386819675805)), Circle{Float64}(0.003, Placement{Float64}(0.060280394923229626, -0.03732404034800455, 5.728786603604917)), Circle{Float64}(0.003, Placement{Float64}(0.06346707735707394, -0.03160284942455655, 5.821186387534029)), Circle{Float64}(0.003, Placement{Float64}(0.06611228106476884, -0.025612034132669152, 5.91358617146314)), Circle{Float64}(0.003, Placement{Float64}(0.06819343810095287, -0.019402705996110697, 6.005985955392251)), Circle{Float64}(0.003, Placement{Float64}(0.06969279276758863, -0.013027840813194818, 6.098385739321364)), Circle{Float64}(0.003, Placement{Float64}(0.07059755309931795, -0.0065418266859481105, 6.190785523250475))])), LineCableModels.DataModel.PlacedRegion{Region{Offset{Float64}, Material{Float64, :insulator}}, Annulus{Float64}}(Region{Offset{Float64}, Material{Float64, :insulator}}(:armor_jacket, Offset{Float64}(0.0066), Material{Float64, :insulator}(1.0e15, 2.8, 1.0, 20.0, 0.0, 0.0, 90.0, 0.0, 0.0)), Annulus{Float64}(0.07390000000000001, 0.0805, Placement{Float64}(0.0, 0.0, 0.0)))], Circle{Float64}(0.0805, Placement{Float64}(0.0, 0.0, 0.0)), [(name = :core, scope = @NamedTuple{repeat::Int64, copy::Int64}[], regions = [1]), (name = :sheath, scope = @NamedTuple{repeat::Int64, copy::Int64}[], regions = [6]), (name = :armor, scope = @NamedTuple{repeat::Int64, copy::Int64}[], regions = [9, 10, 11, 12, 13, 14, 15, 16, 17, 18  …  67, 68, 69, 70, 71, 72, 73, 74, 75, 76])], @NamedTuple{at::Placement{Float64}, regions::Vector{Int64}, members::Vector{Int64}}[(at = Placement{Float64}(0.0, 0.0, 0.0), regions = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10  …  69, 70, 71, 72, 73, 74, 75, 76, 77, 78], members = [])], @NamedTuple{placements::Vector{Placement{Float64}}, copies::Vector{UnitRange{Int64}}}[(placements = [Placement{Float64}(0.0709, 0.0, 0.0), Placement{Float64}(0.07059755309931795, 0.006541826685948111, 0.09239978392911156), Placement{Float64}(0.06969279276758863, 0.013027840813194838, 0.18479956785822313), Placement{Float64}(0.06819343810095288, 0.019402705996110676, 0.2771993517873347), Placement{Float64}(0.06611228106476884, 0.025612034132669145, 0.36959913571644626), Placement{Float64}(0.06346707735707392, 0.031602849424556566, 0.46199891964555784), Placement{Float64}(0.060280394923229653, 0.037324040348004524, 0.5543987035746694), Placement{Float64}(0.05657942141416898, 0.04272679571928928, 0.646798487503781), Placement{Float64}(0.052395732230944736, 0.04776502113454091, 0.7391982714328925), Placement{Float64}(0.04776502113454091, 0.052395732230944736, 0.831598055362004)  …  Placement{Float64}(0.042726795719289265, -0.056579421414169, 5.359187467888471), Placement{Float64}(0.047765021134540925, -0.052395732230944715, 5.451587251817583), Placement{Float64}(0.05239573223094474, -0.047765021134540904, 5.543987035746694), Placement{Float64}(0.056579421414168975, -0.04272679571928929, 5.636386819675805), Placement{Float64}(0.060280394923229626, -0.03732404034800455, 5.728786603604917), Placement{Float64}(0.06346707735707394, -0.03160284942455655, 5.821186387534029), Placement{Float64}(0.06611228106476884, -0.025612034132669152, 5.91358617146314), Placement{Float64}(0.06819343810095287, -0.019402705996110697, 6.005985955392251), Placement{Float64}(0.06969279276758863, -0.013027840813194818, 6.098385739321364), Placement{Float64}(0.07059755309931795, -0.0065418266859481105, 6.190785523250475)], copies = [9:9, 10:10, 11:11, 12:12, 13:13, 14:14, 15:15, 16:16, 17:17, 18:18  …  67:67, 68:68, 69:69, 70:70, 71:71, 72:72, 73:73, 74:74, 75:75, 76:76])], [(repeat = 1, radii = [0.0709, 0.0709, 0.0709, 0.0709, 0.0709, 0.0709, 0.0709, 0.0709, 0.0709, 0.0709  …  0.0709, 0.0709, 0.0709, 0.0709, 0.0709, 0.0709, 0.07090000000000002, 0.0709, 0.07089999999999999, 0.0709], pitches = [1.4208247337261888, 1.4208247337261888, 1.4208247337261888, 1.4208247337261888, 1.4208247337261888, 1.4208247337261888, 1.4208247337261888, 1.4208247337261888, 1.4208247337261888, 1.4208247337261888  …  1.4208247337261888, 1.4208247337261888, 1.4208247337261888, 1.4208247337261888, 1.4208247337261888, 1.4208247337261888, 1.4208247337261892, 1.4208247337261888, 1.4208247337261886, 1.4208247337261888], overlengths = [1.048, 1.048, 1.048, 1.048, 1.048, 1.048, 1.048, 1.048, 1.048, 1.048  …  1.048, 1.048, 1.048, 1.048, 1.048, 1.048, 1.048, 1.048, 1.048, 1.048], axis = (0.0, 0.0))], @NamedTuple{repeat::Int64, factor::Float64}[], [(region = 77, contents = [9, 10, 11, 12, 13, 14, 15, 16, 17, 18  …  67, 68, 69, 70, 71, 72, 73, 74, 75, 76])])], Placement{Float64}[Placement{Float64}(-1.0, -1.0, 0.0), Placement{Float64}(0.0, -1.0, 0.0), Placement{Float64}(1.0, -1.0, 0.0)], LineCableModels.DataModel.PlacedRegion[LineCableModels.DataModel.PlacedRegion{Region{Circle{Float64}, Material{Float64, :conductor}}, Circle{Float64}}(Region{Circle{Float64}, Material{Float64, :conductor}}(:core_conductor, Circle{Float64}(0.03, Placement{Float64}(0.0, 0.0, 0.0)), Material{Float64, :conductor}(2.035752039526186e-8, 1.0, 1.0, 20.0, 0.00393, 0.0, 90.0, 0.0, 0.0)), Circle{Float64}(0.03, Placement{Float64}(-1.0, -1.0, 0.0))), LineCableModels.DataModel.PlacedRegion{Region{Offset{Float64}, Material{Float64, :semicon}}, Annulus{Float64}}(Region{Offset{Float64}, Material{Float64, :semicon}}(:core_semicon_inner, Offset{Float64}(0.002), Material{Float64, :semicon}(1000.0, 1000.0, 1.0, 20.0, 0.0, 0.0, 90.0, 0.0, 0.0)), Annulus{Float64}(0.03, 0.032, Placement{Float64}(-1.0, -1.0, 0.0))), LineCableModels.DataModel.PlacedRegion{Region{Offset{Float64}, Material{Float64, :insulator}}, Annulus{Float64}}(Region{Offset{Float64}, Material{Float64, :insulator}}(:core_insulation, Offset{Float64}(0.026), Material{Float64, :insulator}(1.0e14, 2.4, 1.0, 20.0, 0.0, 0.0, 90.0, 0.0, 0.0)), Annulus{Float64}(0.032, 0.057999999999999996, Placement{Float64}(-1.0, -1.0, 0.0))), LineCableModels.DataModel.PlacedRegion{Region{Offset{Float64}, Material{Float64, :semicon}}, Annulus{Float64}}(Region{Offset{Float64}, Material{Float64, :semicon}}(:core_semicon_outer, Offset{Float64}(0.0018), Material{Float64, :semicon}(500.0, 1000.0, 1.0, 20.0, 0.0, 0.0, 90.0, 0.0, 0.0)), Annulus{Float64}(0.057999999999999996, 0.0598, Placement{Float64}(-1.0, -1.0, 0.0))), LineCableModels.DataModel.PlacedRegion{Region{Offset{Float64}, Material{Float64, :semicon}}, Annulus{Float64}}(Region{Offset{Float64}, Material{Float64, :semicon}}(:core_water_blocking, Offset{Float64}(0.0006), Material{Float64, :semicon}(500.0, 1000.0, 1.0, 20.0, 0.0, 0.0, 90.0, 0.0, 0.0)), Annulus{Float64}(0.0598, 0.0604, Placement{Float64}(-1.0, -1.0, 0.0))), LineCableModels.DataModel.PlacedRegion{Region{Offset{Float64}, Material{Float64, :conductor}}, Annulus{Float64}}(Region{Offset{Float64}, Material{Float64, :conductor}}(:sheath_lead, Offset{Float64}(0.0032), Material{Float64, :conductor}(2.14e-7, 1.0, 0.999983, 20.0, 0.004, 0.0, 90.0, 0.0, 0.0)), Annulus{Float64}(0.0604, 0.0636, Placement{Float64}(-1.0, -1.0, 0.0))), LineCableModels.DataModel.PlacedRegion{Region{Offset{Float64}, Material{Float64, :insulator}}, Annulus{Float64}}(Region{Offset{Float64}, Material{Float64, :insulator}}(:sheath_inner_pe, Offset{Float64}(0.0033), Material{Float64, :insulator}(1.97e14, 2.5, 1.0, 20.0, 0.0, 0.0, 90.0, 0.0, 0.0)), Annulus{Float64}(0.0636, 0.0669, Placement{Float64}(-1.0, -1.0, 0.0))), LineCableModels.DataModel.PlacedRegion{Region{Offset{Float64}, Material{Float64, :insulator}}, Annulus{Float64}}(Region{Offset{Float64}, Material{Float64, :insulator}}(:sheath_bedding, Offset{Float64}(0.001), Material{Float64, :insulator}(1.0e15, 2.8, 1.0, 20.0, 0.0, 0.0, 90.0, 0.0, 0.0)), Annulus{Float64}(0.0669, 0.0679, Placement{Float64}(-1.0, -1.0, 0.0))), LineCableModels.DataModel.PlacedRegion{Region{Circle{Float64}, Material{Float64, :conductor}}, Circle{Float64}}(Region{Circle{Float64}, Material{Float64, :conductor}}(:armor_wires, Circle{Float64}(0.003, Placement{Float64}(0.0, 0.0, 0.0)), Material{Float64, :conductor}(1.38e-7, 1.0, 10.0, 20.0, 0.0045, 0.0, 90.0, 0.0, 0.0)), Circle{Float64}(0.003, Placement{Float64}(-0.9291, -1.0, 0.0))), LineCableModels.DataModel.PlacedRegion{Region{Circle{Float64}, Material{Float64, :conductor}}, Circle{Float64}}(Region{Circle{Float64}, Material{Float64, :conductor}}(:armor_wires, Circle{Float64}(0.003, Placement{Float64}(0.0, 0.0, 0.0)), Material{Float64, :conductor}(1.38e-7, 1.0, 10.0, 20.0, 0.0045, 0.0, 90.0, 0.0, 0.0)), Circle{Float64}(0.003, Placement{Float64}(-0.9294024469006821, -0.9934581733140518, 0.09239978392911156)))  …  LineCableModels.DataModel.PlacedRegion{Region{Circle{Float64}, Material{Float64, :conductor}}, Circle{Float64}}(Region{Circle{Float64}, Material{Float64, :conductor}}(:armor_wires, Circle{Float64}(0.003, Placement{Float64}(0.0, 0.0, 0.0)), Material{Float64, :conductor}(1.38e-7, 1.0, 10.0, 20.0, 0.0045, 0.0, 90.0, 0.0, 0.0)), Circle{Float64}(0.003, Placement{Float64}(1.0523957322309447, -1.0477650211345408, 5.543987035746694))), LineCableModels.DataModel.PlacedRegion{Region{Circle{Float64}, Material{Float64, :conductor}}, Circle{Float64}}(Region{Circle{Float64}, Material{Float64, :conductor}}(:armor_wires, Circle{Float64}(0.003, Placement{Float64}(0.0, 0.0, 0.0)), Material{Float64, :conductor}(1.38e-7, 1.0, 10.0, 20.0, 0.0045, 0.0, 90.0, 0.0, 0.0)), Circle{Float64}(0.003, Placement{Float64}(1.056579421414169, -1.0427267957192894, 5.636386819675805))), LineCableModels.DataModel.PlacedRegion{Region{Circle{Float64}, Material{Float64, :conductor}}, Circle{Float64}}(Region{Circle{Float64}, Material{Float64, :conductor}}(:armor_wires, Circle{Float64}(0.003, Placement{Float64}(0.0, 0.0, 0.0)), Material{Float64, :conductor}(1.38e-7, 1.0, 10.0, 20.0, 0.0045, 0.0, 90.0, 0.0, 0.0)), Circle{Float64}(0.003, Placement{Float64}(1.0602803949232296, -1.0373240403480046, 5.728786603604917))), LineCableModels.DataModel.PlacedRegion{Region{Circle{Float64}, Material{Float64, :conductor}}, Circle{Float64}}(Region{Circle{Float64}, Material{Float64, :conductor}}(:armor_wires, Circle{Float64}(0.003, Placement{Float64}(0.0, 0.0, 0.0)), Material{Float64, :conductor}(1.38e-7, 1.0, 10.0, 20.0, 0.0045, 0.0, 90.0, 0.0, 0.0)), Circle{Float64}(0.003, Placement{Float64}(1.063467077357074, -1.0316028494245566, 5.821186387534029))), LineCableModels.DataModel.PlacedRegion{Region{Circle{Float64}, Material{Float64, :conductor}}, Circle{Float64}}(Region{Circle{Float64}, Material{Float64, :conductor}}(:armor_wires, Circle{Float64}(0.003, Placement{Float64}(0.0, 0.0, 0.0)), Material{Float64, :conductor}(1.38e-7, 1.0, 10.0, 20.0, 0.0045, 0.0, 90.0, 0.0, 0.0)), Circle{Float64}(0.003, Placement{Float64}(1.0661122810647687, -1.025612034132669, 5.91358617146314))), LineCableModels.DataModel.PlacedRegion{Region{Circle{Float64}, Material{Float64, :conductor}}, Circle{Float64}}(Region{Circle{Float64}, Material{Float64, :conductor}}(:armor_wires, Circle{Float64}(0.003, Placement{Float64}(0.0, 0.0, 0.0)), Material{Float64, :conductor}(1.38e-7, 1.0, 10.0, 20.0, 0.0045, 0.0, 90.0, 0.0, 0.0)), Circle{Float64}(0.003, Placement{Float64}(1.0681934381009528, -1.0194027059961106, 6.005985955392251))), LineCableModels.DataModel.PlacedRegion{Region{Circle{Float64}, Material{Float64, :conductor}}, Circle{Float64}}(Region{Circle{Float64}, Material{Float64, :conductor}}(:armor_wires, Circle{Float64}(0.003, Placement{Float64}(0.0, 0.0, 0.0)), Material{Float64, :conductor}(1.38e-7, 1.0, 10.0, 20.0, 0.0045, 0.0, 90.0, 0.0, 0.0)), Circle{Float64}(0.003, Placement{Float64}(1.0696927927675886, -1.0130278408131947, 6.098385739321364))), LineCableModels.DataModel.PlacedRegion{Region{Circle{Float64}, Material{Float64, :conductor}}, Circle{Float64}}(Region{Circle{Float64}, Material{Float64, :conductor}}(:armor_wires, Circle{Float64}(0.003, Placement{Float64}(0.0, 0.0, 0.0)), Material{Float64, :conductor}(1.38e-7, 1.0, 10.0, 20.0, 0.0045, 0.0, 90.0, 0.0, 0.0)), Circle{Float64}(0.003, Placement{Float64}(1.070597553099318, -1.006541826685948, 6.190785523250475))), LineCableModels.DataModel.PlacedRegion{Region{Offset{Float64}, Material{Float64, :insulator}}, LineCableModels.DataModel.DifferenceShape{Float64, Annulus{Float64}, Vector{Circle{Float64}}}}(Region{Offset{Float64}, Material{Float64, :insulator}}(:armor_wires_fill, Offset{Float64}(0.006), Material{Float64, :insulator}(Inf, 1.0, 1.0, 20.0, 0.0, 0.0, 90.0, 0.0, 0.0)), LineCableModels.DataModel.DifferenceShape{Float64, Annulus{Float64}, Vector{Circle{Float64}}}(Annulus{Float64}(0.0679, 0.07390000000000001, Placement{Float64}(1.0, -1.0, 0.0)), Circle{Float64}[Circle{Float64}(0.003, Placement{Float64}(1.0709, -1.0, 0.0)), Circle{Float64}(0.003, Placement{Float64}(1.070597553099318, -0.9934581733140518, 0.09239978392911156)), Circle{Float64}(0.003, Placement{Float64}(1.0696927927675886, -0.9869721591868051, 0.18479956785822313)), Circle{Float64}(0.003, Placement{Float64}(1.0681934381009528, -0.9805972940038893, 0.2771993517873347)), Circle{Float64}(0.003, Placement{Float64}(1.0661122810647687, -0.9743879658673309, 0.36959913571644626)), Circle{Float64}(0.003, Placement{Float64}(1.063467077357074, -0.9683971505754434, 0.46199891964555784)), Circle{Float64}(0.003, Placement{Float64}(1.0602803949232296, -0.9626759596519955, 0.5543987035746694)), Circle{Float64}(0.003, Placement{Float64}(1.056579421414169, -0.9572732042807107, 0.646798487503781)), Circle{Float64}(0.003, Placement{Float64}(1.0523957322309447, -0.952234978865459, 0.7391982714328925)), Circle{Float64}(0.003, Placement{Float64}(1.0477650211345408, -0.9476042677690553, 0.831598055362004))  …  Circle{Float64}(0.003, Placement{Float64}(1.0427267957192892, -1.056579421414169, 5.359187467888471)), Circle{Float64}(0.003, Placement{Float64}(1.0477650211345408, -1.0523957322309447, 5.451587251817583)), Circle{Float64}(0.003, Placement{Float64}(1.0523957322309447, -1.0477650211345408, 5.543987035746694)), Circle{Float64}(0.003, Placement{Float64}(1.056579421414169, -1.0427267957192894, 5.636386819675805)), Circle{Float64}(0.003, Placement{Float64}(1.0602803949232296, -1.0373240403480046, 5.728786603604917)), Circle{Float64}(0.003, Placement{Float64}(1.063467077357074, -1.0316028494245566, 5.821186387534029)), Circle{Float64}(0.003, Placement{Float64}(1.0661122810647687, -1.025612034132669, 5.91358617146314)), Circle{Float64}(0.003, Placement{Float64}(1.0681934381009528, -1.0194027059961106, 6.005985955392251)), Circle{Float64}(0.003, Placement{Float64}(1.0696927927675886, -1.0130278408131947, 6.098385739321364)), Circle{Float64}(0.003, Placement{Float64}(1.070597553099318, -1.006541826685948, 6.190785523250475))])), LineCableModels.DataModel.PlacedRegion{Region{Offset{Float64}, Material{Float64, :insulator}}, Annulus{Float64}}(Region{Offset{Float64}, Material{Float64, :insulator}}(:armor_jacket, Offset{Float64}(0.0066), Material{Float64, :insulator}(1.0e15, 2.8, 1.0, 20.0, 0.0, 0.0, 90.0, 0.0, 0.0)), Annulus{Float64}(0.07390000000000001, 0.0805, Placement{Float64}(1.0, -1.0, 0.0)))], [(cable = 1, terminal = 1, connection = 1, regions = [1]), (cable = 1, terminal = 2, connection = 0, regions = [6]), (cable = 1, terminal = 3, connection = 0, regions = [9, 10, 11, 12, 13, 14, 15, 16, 17, 18  …  67, 68, 69, 70, 71, 72, 73, 74, 75, 76]), (cable = 2, terminal = 1, connection = 2, regions = [79]), (cable = 2, terminal = 2, connection = 0, regions = [84]), (cable = 2, terminal = 3, connection = 0, regions = [87, 88, 89, 90, 91, 92, 93, 94, 95, 96  …  145, 146, 147, 148, 149, 150, 151, 152, 153, 154]), (cable = 3, terminal = 1, connection = 3, regions = [157]), (cable = 3, terminal = 2, connection = 0, regions = [162]), (cable = 3, terminal = 3, connection = 0, regions = [165, 166, 167, 168, 169, 170, 171, 172, 173, 174  …  223, 224, 225, 226, 227, 228, 229, 230, 231, 232])]), EarthModel{Float64, 2}((EarthLayer{Float64}(Inf, 1.0, 1.0, Inf), EarthLayer{Float64}(1000.0, 10.0, 1.0, Inf))), 70.0, [0.1, 0.12022644346174127, 0.14454397707459277, 0.17378008287493754, 0.20892961308540392, 0.251188643150958, 0.3019951720402016, 0.36307805477010135, 0.436515832240166, 0.5248074602497725  …  1.9054607179632483e6, 2.2908676527677746e6, 2.754228703338169e6, 3.3113112148259077e6, 3.9810717055349695e6, 4.786300923226381e6, 5.754399373371567e6, 6.918309709189363e6, 8.317637711026709e6, 1.0e7])

Compute the line parameters and inspect the row labels:

grounded_result = compute(grounded_problem, CoaxialFormulation())
grounded_result.terminals
3-element Vector{String}:
 "cable:1:core"
 "cable:2:core"
 "cable:3:core"

Series impedance of the three cores:

grounded_result.Z[:, :, k] # [Ω/m]
3×3 Matrix{ComplexF64}:
 7.56618e-5+7.75449e-5im  1.95001e-6-6.72985e-6im  3.42323e-7-3.93416e-6im
 1.95001e-6-6.72985e-6im  7.42795e-5+7.97771e-5im  1.95001e-6-6.72985e-6im
 3.42323e-7-3.93416e-6im  1.95001e-6-6.72985e-6im  7.56618e-5+7.75449e-5im

Shunt admittance of the three cores:

grounded_result.Y[:, :, k] # [S/m]
3×3 Matrix{ComplexF64}:
  0.0+7.40001e-8im           0.0+0.0im          0.0+0.0im
 -0.0+0.0im         -1.93328e-27+7.40001e-8im  -0.0+0.0im
  0.0+0.0im          1.26269e-47-4.8332e-28im   0.0+7.40001e-8im

Prescribed longitudinal wavenumber

The unified earth-return formula takes the longitudinal wavenumber Γ of the fields along the line as an input, equal to zero by default. A nonzero Γ represents fields that propagate along the line, in this case slightly slower than light in vacuum, with one value per frequency. The system of nine conductors is computed again with this value of Γ.

Longitudinal wavenumber and the resulting series impedance of the cores:

Γ = im .* 1.01 .* 2π .* frequencies ./ 299792458 # [1/m]
gamma_result = compute(problem, CoaxialFormulation(Γ = Γ))
gamma_result.Z[1:3, 1:3, k] # [Ω/m]
3×3 Matrix{ComplexF64}:
 6.61704e-5+0.000775993im  …   5.19143e-5+0.000703936im
 5.19939e-5+0.000716575im      5.19143e-5+0.000703936im
 5.19143e-5+0.000703936im     0.000144025+0.000701782im

At each frequency, change is the largest absolute change of Z, relative to the largest entry computed with Γ = 0. The value at 50 Hz, the largest value over the frequency range and the frequency at which it occurs are computed below.

Relative change of the series impedance due to Γ:

change = [maximum(abs, gamma_result.Z[:, :, j] - result.Z[:, :, j]) /
          maximum(abs, result.Z[:, :, j]) for j in eachindex(frequencies)]
(at_50Hz = change[k], largest = maximum(change),
    frequency = frequencies[argmax(change)]) # [Hz]
(at_50Hz = 2.527941632351991e-6, largest = 0.049808983811604604, frequency = 1.0e7)

Size of the impedance array and number of frequencies:

size(result.Z), length(result.frequencies)
((9, 9, 101), 101)

Conclusion

This example has demonstrated how to:

  1. Obtain the resistivity of a solid core from its specified DC resistance.
  2. Compute the line parameters of a three-phase system of armored cables.
  3. Eliminate grounded sheaths and armors with the Kron reduction.
  4. Evaluate the effect of a prescribed longitudinal wavenumber on the series impedance.