turbo_moc.deprecated.meshing.stator_structured_2d module#

Structured multi-block (O-H) 2D mesh of a stator blade passage.

TurboGrid-like topology on the same fluid domain as the unstructured mesh (stator_mesh_2d.stator_flow_domain): an O-grid around the blade carries the boundary layer – exactly num_layers cells at growth_ratio, first cell first_height – and five H-blocks fill the passage:

       inlet
+------------------+
|     upstream     |
+---------O--------+          O = LE' / TE': the O-grid's offset curve
| channel |channel |              at the blade's axial max / min, where
|  (one   O  (other|              pitchwise connectors start
|  side)  |   side)|
+---------O--------+
|    downstream    |
+------------------+
       outlet

Every block is a transfinite (TFI) quad patch, so the mesh is fully structured. Curves are split at block corners by exact knot insertion, so the geometry is the passage’s own B-splines (no resampling). The pitchwise connectors are horizontal (constant y): from the O-grid’s axial extremes they cannot cross the O-grid, and they meet each periodic side at the pitch-translated point of the other, keeping left/right periodic pieces exact translations.

Raises on anything it cannot build cleanly (offset self-intersection, inverted cells, …); stator_mesh_2d.mesh_sized_stator then falls back to the unstructured mesh.

class turbo_moc.deprecated.meshing.stator_structured_2d.Arc(centre, radius, a0, a1)[source]#

Bases: object

Circular arc from angle a0 to a1 (radians, signed sweep).

Methods

eval

reversed

samples

split

eval(u)[source]#
reversed()[source]#
samples(n=100)[source]#
split(u)[source]#
class turbo_moc.deprecated.meshing.stator_structured_2d.Bspl(spline)[source]#

Bases: object

Methods

eval

reversed

samples

split

eval(u)[source]#
reversed()[source]#
samples(n=400)[source]#
split(u)[source]#
class turbo_moc.deprecated.meshing.stator_structured_2d.Line(a, b)[source]#

Bases: object

Methods

eval

reversed

samples

split

eval(u)[source]#
reversed()[source]#
samples(n=400)[source]#
split(u)[source]#
turbo_moc.deprecated.meshing.stator_structured_2d.mesh_structured_passage(blade, curves, sizes)[source]#

Structured O-H mesh of one periodic stator passage (hub section, mm).

curves is stator_mesh_2d.stator_flow_domain(blade, …); sizes as in mesh_sized_stator (blade_size, domain_size, first_height, growth_ratio, num_layers, transition_ratio). Returns the same dict layout as mesh_sized_stator, with topology “structured”.

Blocks: the O-grid (two halves), upstream left/right (split by the stagnation line: the passage centreline shifted through the O-grid’s LE corner), the two blade-to-periodic channels, and downstream left/right (split by the wake line: the centreline shifted through the TE corner). Diagonal connectors leave the LE / TE corners at ~45 deg to the periodic sides, at one level per end so left and right pieces stay translations.