bluemira.radiation_transport.neutronics.wires

Info about straight line wires and circles. Made to be simpler to modify than a whole BluemiraWire.

Classes

StraightLineInfo

Key information about a straight line

CircleInfo

Arc of a Circle, LESS THAN 180°

WireInfo

A tuple to store:

WireInfoList

A class to store info about a series of wires

Module Contents

class bluemira.radiation_transport.neutronics.wires.StraightLineInfo

Bases: NamedTuple

Inheritance diagram of bluemira.radiation_transport.neutronics.wires.StraightLineInfo

Key information about a straight line

start_point: collections.abc.Iterable[float]
end_point: collections.abc.Iterable[float]
reverse() StraightLineInfo

Flip the wire’s direction

Return type:

StraightLineInfo

class bluemira.radiation_transport.neutronics.wires.CircleInfo

Bases: NamedTuple

Inheritance diagram of bluemira.radiation_transport.neutronics.wires.CircleInfo

Arc of a Circle, LESS THAN 180°

start_point: collections.abc.Iterable[float]
end_point: collections.abc.Iterable[float]
center: collections.abc.Iterable[float]
radius: float
reverse() CircleInfo

Flip the wire’s direction

Return type:

CircleInfo

class bluemira.radiation_transport.neutronics.wires.WireInfo

A tuple to store: 1. the key points about this wire (and what kind of wire this is) 2. The tangent to that wire at the start and end 3. A copy of the wire itself

key_points: StraightLineInfo | CircleInfo
tangents: collections.abc.Sequence[collections.abc.Iterable[float]]
wire: bluemira.geometry.wire.BluemiraWire | None = None
reverse() WireInfo

Flip the wire’s direction

Return type:

WireInfo

classmethod from_2P(start_point: numpy.typing.NDArray[numpy.float64], end_point: numpy.typing.NDArray[numpy.float64]) WireInfo

Create the WireInfo for a straight line (i.e. one where the key_points is of instance StraightLineInfo) using only two points.

Returns:

A WireInfo representing the straight-line.

Parameters:
  • start_point (numpy.typing.NDArray[numpy.float64])

  • end_point (numpy.typing.NDArray[numpy.float64])

Return type:

WireInfo

class bluemira.radiation_transport.neutronics.wires.WireInfoList(info_list: collections.abc.Iterable[WireInfo])

A class to store info about a series of wires

Parameters:

info_list (collections.abc.Iterable[WireInfo])

info_list
__len__() int

Number of wire infos

Return type:

int

__getitem__(index_or_slice) list[WireInfo] | WireInfo

Get a WireInfo

Return type:

list[WireInfo] | WireInfo

__repr__() str

String representation

Return type:

str

pop(index: int) WireInfo

Pop one WireInfo out of the list.

Returns:

The required WireInfo instance popped out of the list.

Parameters:

index (int)

Return type:

WireInfo

get_3D_coordinates() numpy.typing.NDArray

Get the vertices (connecting point between each pair of adjacent wires) in the entire WireInfoList.

Returns:

A list of 3D-coordinates of the vertices. shape = (N+1, 3).

Return type:

numpy.typing.NDArray

property start_point

The start_point for the entire series of wires

property end_point

The end_point for the entire series of wires

reverse() WireInfoList

Flip this list of wires

Return type:

WireInfoList

restore_to_wire() bluemira.geometry.wire.BluemiraWire

Re-create a bluemira wire from a series of WireInfo.

Returns:

WireInfo reconstructed back into a bluemira wire.

Return type:

bluemira.geometry.wire.BluemiraWire