The types module#

class linerate.types.Conductor(core_diameter, conductor_diameter, outer_layer_strand_diameter, emissivity, solar_absorptivity, temperature1, temperature2, resistance_at_temperature1, resistance_at_temperature2, aluminium_cross_section_area, constant_magnetic_effect, current_density_proportional_magnetic_effect, max_magnetic_core_relative_resistance_increase, thermal_conductivity=None)[source]#

Container for conductor parameters.

core_diameter: Annotated[float | float64 | ndarray[Any, dtype[float64]], 'm']#

\(D_1~\left[\text{m}\right]\). Diameter of the steel core of the conductor.

conductor_diameter: Annotated[float | float64 | ndarray[Any, dtype[float64]], 'm']#

\(D~\left[\text{m}\right]\). Outer diameter of the conductor.

outer_layer_strand_diameter: Annotated[float | float64 | ndarray[Any, dtype[float64]], 'm']#

\(d~\left[\text{m}\right]\). The diameter of the strands in the outer layer of the conductor.

emissivity: Annotated[float | float64 | ndarray[Any, dtype[float64]], '']#

\(\epsilon_s\). The emmisivity of the conductor.

solar_absorptivity: Annotated[float | float64 | ndarray[Any, dtype[float64]], '']#

\(\alpha_s\). Material constant. According to [1], it starts at approximately 0.2 for new cables and reaches a constant value of approximately 0.9 after about one year.

temperature1: Annotated[float | float64 | ndarray[Any, dtype[float64]], '°C']#

\(T_1~\left[^\circ C\right]\). The first temperature with known resistance

temperature2: Annotated[float | float64 | ndarray[Any, dtype[float64]], '°C']#

\(T_2~\left[^\circ C\right]\). The second temperature with known resistance

resistance_at_temperature1: Annotated[float | float64 | ndarray[Any, dtype[float64]], 'Ω/m']#

\(R_1~\left[\Omega \text{m}^{-1}\right]\). (AC-)resistance at temperature \(T_1\)

resistance_at_temperature2: Annotated[float | float64 | ndarray[Any, dtype[float64]], 'Ω/m']#

\(R_2~\left[\Omega \text{m}^{-1}\right]\). (AC-)resistance at temperature \(T_2\)

aluminium_cross_section_area: Annotated[float | float64 | ndarray[Any, dtype[float64]], 'm²']#

\(A_{\text{Al}}~\left[\text{m}^2\right]\). The cross sectional area of the aluminium strands in the conductor. Used for correcting for magnetic core effects in ACSR conductors.

constant_magnetic_effect: Annotated[float | float64 | ndarray[Any, dtype[float64]], '']#

\(b\). The constant magnetic effect, most likely equal to 1. If None, then no correction is used (used for non-ACSR cables).

current_density_proportional_magnetic_effect: Annotated[float | float64 | ndarray[Any, dtype[float64]], 'm²/A']#

\(m\). The current density proportional magnetic effect. If None, then it is assumed equal to 0.

thermal_conductivity: Annotated[float | float64 | ndarray[Any, dtype[float64]], 'W/(m K)'] | None = None#

\(\lambda \left[\text{W}~\text{m}^{-1}~\text{K}^{-1}\right]\). The effective conductor thermal conductivity. It is usually between \(0.5\) and \(7~W~m^{-1}~K^{-1}\). Recommended values are \(0.7~\text{W}~\text{m}^{-1}~\text{K}^{-1}\) for conductors with no tension on the aluminium strands and \(1.5~\text{W}~\text{m}^{-1}~\text{K}^{-1}\) for conductors with aluminium strands under a tension of at least 40 N [1].

class linerate.types.Weather(air_temperature: Annotated[float | numpy.float64 | numpy.ndarray[Any, numpy.dtype[numpy.float64]], '°C'], wind_direction: Annotated[float | numpy.float64 | numpy.ndarray[Any, numpy.dtype[numpy.float64]], 'rad'], wind_speed: Annotated[float | numpy.float64 | numpy.ndarray[Any, numpy.dtype[numpy.float64]], 'm/s'], clearness_ratio: Annotated[float | numpy.float64 | numpy.ndarray[Any, numpy.dtype[numpy.float64]], ''] = 1)[source]#
air_temperature: Annotated[float | float64 | ndarray[Any, dtype[float64]], '°C']#

\(T_a~\left[^\circ C\right]\). The ambient air temperature.

wind_direction: Annotated[float | float64 | ndarray[Any, dtype[float64]], 'rad']#

\(\delta~\left[\text{radian}\right]\). Wind direction east of north.

wind_speed: Annotated[float | float64 | ndarray[Any, dtype[float64]], 'm/s']#

\(v~\left[\text{m}~\text{s}^{-1}\right]\). Wind velocity

clearness_ratio: Annotated[float | float64 | ndarray[Any, dtype[float64]], ''] = 1#

\(N_s\). The clearness ratio (or clearness number in [3, 4]).

class linerate.types.Tower(longitude, latitude, altitude)[source]#

Container for a tower (span end-point).

longitude: Annotated[float | float64 | ndarray[Any, dtype[float64]], '°']#

\(\phi~\left[^\circ\right]\). The tower’s longitude (east of the prime meridian).

latitude: Annotated[float | float64 | ndarray[Any, dtype[float64]], '°']#

The tower’s latitude (north-facing).

altitude: Annotated[float | float64 | ndarray[Any, dtype[float64]], 'm']#

\(y~\left[m\right]\). The tower’s altitude.

class linerate.types.Span(conductor, start_tower, end_tower, ground_albedo, num_conductors)[source]#

Container for a span.

Note

For more information about the albedo, see linerate.equations.solar_heating.compute_global_radiation_intensity() for a table of albedo values for different ground types.

conductor: Conductor#

Container for the conductor metadata

start_tower: Tower#

Container for the metadata of the first tower of the span

end_tower: Tower#

Container for the metadata of the second tower of the span

ground_albedo: Annotated[float | float64 | ndarray[Any, dtype[float64]], '']#

\(F\). The ground albedo.

num_conductors: Annotated[float | float64 | ndarray[Any, dtype[float64]], '']#

Number of conductors in the span. 1 for simplex, 2 for duplex and 3 for triplex.

property latitude: Annotated[float | float64 | ndarray[Any, dtype[float64]], '°']#

\(\phi~\left[^\circ\right]\). The latitude of the span midpoint.

property longitude: Annotated[float | float64 | ndarray[Any, dtype[float64]], '°']#

\(\left[^\circ\right]\). The longitude of the span midpoint.

property inclination: Annotated[float | float64 | ndarray[Any, dtype[float64]], 'rad']#

\(\beta~\left[\text{radian}\right]\). The inclination.

The inclination is computed from the difference in span altitude and the span length.

property conductor_azimuth: Annotated[float | float64 | ndarray[Any, dtype[float64]], 'rad']#

\(\gamma_c~\left[\text{radian}\right]\). Angle (east of north) the span is facing

property span_length: Annotated[float | float64 | ndarray[Any, dtype[float64]], 'm']#

\(\left[\text{km}\right]\). The span length.

The span length is computed with the haversine formula (assuming spherical earth).

property conductor_altitude: Annotated[float | float64 | ndarray[Any, dtype[float64]], 'm']#

\(y~\left[\text{m}\right]\). The span altitude.

The altitude is computes as the average of the tower altitudes.