Thanks for getting back to me, Ian, and thanks for agreeing this does not appear to be a trivial problem. (I've been battling it on and off for days.)
> That tells you that alp is defined at the point it is output, but it doesn't tell you what its state was at the time myadmbaselapse used it.
You are absolutely right. I just added a printf() statement outputting ADMBase::alp at iteration 192, at all points on the z=0 plane, inside the ADMBaseMcLachlanTester loop that sets myadmbaselapse=alp. Then I re-did the run with ADMBaseMcLachlanTester. After analyzing the output, I can confirm that there are no undefined (nan) values at iteration 192, and alp values from this printf() statement lie in the very reasonable range of 0.25 < alp < 0.995 for all points. Again, this is inconsistent with the data I observe in the myadmbaselapse IOASCII 2D file in the z=0 plane, where many undefined values are seen.
Thus I conclude that something bad is happening to myadmbaselapse after being set at CCTK_ANALYSIS in GLOBAL,LOOP-LOCAL mode at iteration 192, but before the data are written to file at the same iteration, causing perfectly reasonable values to suddenly become undefined. For some reason, the same behavior is not observed in ADMBase::alp...