wjkaufman / rl_pulse

0 stars 1 forks source link

Discrepancy between fidelity calculations #11

Closed wjkaufman closed 3 years ago

wjkaufman commented 3 years ago

When running jobs on discovery, the candidate pulse sequences report higher fidelities than what I calculate on my laptop to re-check the sequences. Possible sources of error:

wjkaufman commented 3 years ago

After some debugging, it seems like the Hsys_ensemble and pulses_ensemble objects are being created identically, so I don't think that's the source of the problem. Could be in how propagators are being calculated? But I doubt it, because comparing fidelity calculations from get_reward (using stored propagators) and get_mean_fidelity (recalculating propagators from scratch using pulses_ensemble) gave the same results in debugging.

wjkaufman commented 3 years ago

Doesn't resolve previous issues, but I could save the QuTiP objects from each process, so at least I can verify after the fact that it's somewhat accurate? Or even save CS/dipolar coupling matrix, then recreate from there.

wjkaufman commented 3 years ago

Found the bug! For each PulseSequenceConfig object, the rotation error was not sampled for each system in the ensemble. Instead, a single rotation error was applied to all systems in the ensemble. So the high-performing pulse sequences were normally from ensembles with very small rotation error. Will link the commit that fixes it shortly.

wjkaufman commented 3 years ago

Fixed with 96b2349226762d63a91e9b1daeb2d853ee6ac370.