Grouping#
- class pulserver.ir.Grouping[source]#
Bases:
objectRule by which the blocks of a repetition are grouped into virtual segments.
The repetition is cut into contiguous runs of blocks, each a virtual segment the interpreter prepares once and plays as segment instances. A boundary may fall between two blocks only where every gradient is within
boundary_gradient_hz_per_mof zero at the join. A boundary must fall where theNOROTorPMClabel changes, since the interpreter sets one prescription rotation per segment instance; conversion fails when such a change falls under a gradient. Thesplit_*attributes add boundaries.The default suits an interpreter that begins a segment by setting its gradients, so that a boundary falls only where they are at rest.
- Attributes:
boundary_gradient_hz_per_m (float) – Largest gradient amplitude at a join, in Hz/m, at which a boundary may fall. An interpreter that can begin a segment under a gradient states a large value.
split_by_pulses, split_by_readouts – Whether runs that play different RF events, or different ADC events, are different virtual segments.
split_navigators (bool) – Whether a navigator readout is a virtual segment of its own.
split_edge_delays (bool) – Whether a pure-delay block at the edge of a virtual segment is a virtual segment of its own. An interpreter that inserts transmit-to-receive switching time at every segment boundary needs as few segments as possible, and sets this False.
Methods
Return the rule as the extension takes it, in the order C declares it. |
Attributes