pyskyfire.regen.channel_placement.ChannelPlacement¶
- class pyskyfire.regen.channel_placement.ChannelPlacement(n_channel_positions: int, channel_width=None, occludes: bool = True)¶
Bases:
digraph inheritance55ac00c4e2 { bgcolor=transparent; rankdir=LR; size="8.0, 12.0"; "ABC" [URL="https://docs.python.org/3/library/abc.html#abc.ABC",fillcolor=white,fontname="Vera Sans, DejaVu Sans, Liberation Sans, Arial, Helvetica, sans",fontsize=10,height=0.25,shape=box,style="setlinewidth(0.5),filled",target="_top",tooltip="Helper class that provides a standard way to create an ABC using"]; "ChannelPlacement" [URL="ChannelPlacement.html#pyskyfire.regen.channel_placement.ChannelPlacement",fillcolor=white,fontname="Vera Sans, DejaVu Sans, Liberation Sans, Arial, Helvetica, sans",fontsize=10,height=0.25,shape=box,style="setlinewidth(0.5),filled",target="_top",tooltip="Abstract base class defining how coolant channels are positioned."]; "ABC" -> "ChannelPlacement" [arrowsize=0.5,style="setlinewidth(0.5)"]; }abc.ABCAbstract base class defining how coolant channels are positioned.
Subclasses implement different placement strategies (surface, internal) that compute the radial coordinate of the channel centerline.
- Parameters:
- n_channel_positions
int Number of circumferential channel locations (“leaves”).
- channel_width
callable()orNone,optional Function returning angular width [rad]. May be None if uniform.
- occludesbool,
optional Whether this placement blocks part of the wall from hot gas view.
- n_channel_positions
- Attributes:
- n_channel_positions
int Number of circumferential positions.
- channel_width
callable()orNone Angular width function or constant.
- occludesbool
Whether the placement occludes hot surface area.
- n_channel_positions
See also
SurfacePlacementInternalPlacement
- centerline_dtheta_dx(x: float, contour, flow_radius: float, flow_dr_dx: float) float¶
Return
dtheta/dxfor the actual coolant-flow centreline.
- abstractmethod compute_centerline_radius(x: float, contour) float¶
Return the section-reference radius
r(x)for this placement.For surface channels this is the hot-wall radius used by the cross-section models. The coolant-flow centre is obtained separately with
compute_flow_centerline_radius().
- compute_flow_centerline_radius(x: float, contour, wall_thickness: float, channel_height: float) float¶
Return the radius of the modeled coolant-flow centre [m].
Placements that already describe a flow centre need no offset. A surface placement overrides this because its section reference is the hot wall.