On Wed, Nov 23, 2016 at 11:18 PM, Slichter, Daniel H. (Fed)
<[email protected]> wrote:
> If we're going to talk about "unaesthetic" code, I'd say this version is much
> worse than the three-line original code. From a logical standpoint, a Ramsey
> sequence consists of two rotations with a variable delay between them. While
> this 5-line code manages to create the desired sequence, it loses the logical
> flow that one has from reading code like the 3-line version -- much harder to
> tell from inspection that this is a Ramsey sequence.
Even more logically minded people would define a Ramsey sequence as "a
Rabi sequence symettrically interrupted by some free evolution". And
they would gladly disagree with you and prefer to write the code
reflecting that definition or as
with parallel:
ttl.pulse_on(t_pi + t)
with sequential:
delay(t_pi/2)
ttl.pulse_off(t)
> Is there another way to maintain or wrap the two back-to-back pulses so that
> you can accomplish your goals for DRTIO/DMA while not hurting the lexical
> clarity of the code on the physics level?
Stressing the "lexical clarity" is short-sighted. As I explained in
the reply to Raghu, the behavior is surprising and sprinkled with
details and corner cases. Take for example SAWG. You would think that
the same applies there: a spline knot can be "replaced" by another at
the same timestamp. While that might be well-defined for an amplitude
spline, it becomes hairy to do so for the phase or the frequency
because both can have cumulative side-effects: clearing/setting the
phase accumulator (or not doing so).
--
Robert Jördens.
_______________________________________________
ARTIQ mailing list
https://ssl.serverraum.org/lists/listinfo/artiq