Interesting application!
Unfortunately (for this case), pbrt’s model of volumetric emission requires a non-zero absorption coefficient (more specifically, the emitted volumetric radiance is scaled by the absorption coefficient); that’s how the equations work out. (One way to think about is that there has to be some matter there that is emitting light.) So setting scale to 0 (or sigma_a) eliminates the emission..
Now, you might decide to work around that with a very small absorption cross-section (and correspondingly scaled emission), but then you’d run into the problem that pbrt’s volumetric Monte Carlo sampling routines sample according to the extinction cross-section (absorption + scattering), so you’d have high error since they wouldn’t do a good job of sampling the emission.
So your best bet would probably be to specify a low absorption coefficient and then modify the sampling routines to sample more frequently even in areas of low absorption. I haven’t tried this, but if you added a line like:
sigma_t *= 100000;
before line 330 in pbrt/media.h, that should cause it to sample emission much more frequently along rays. (You’d have to experiment with that scale factor to find something that gave a good balance of performance versus accuracy…