svalinn / r2s-act

Rigorous 2 Step Activation Workflow
4 stars 7 forks source link

Zero volume voxels produce 'nan' and/or 'inf' flux values; breaks ALARA #59

Open erelson opened 11 years ago

erelson commented 11 years ago

The source of my issues with 150k voxel unstructured mesh calculation with R2S-ACT seems to have resulted from a bad voxel having zero volume (according to both mbsize, and calculating the volume with pytaps). Correspondingly it was observed that the entry in the generated alara_geom file was a machine rounding error

         5.48780285385e-31       zone_58289

And in the alara_fluxin file, the group-wise flux values (high to low) were 4x 'nan', and then 171x 'inf'.

Subsequently, ALARA calculated the activation in all voxels after the the 58289th (the zero volume one) incorrectly. (Symptomatically, the resulting phtn_src output looked like the truncation value was too low, but truncation was not the actual issue)

I have not had a chance to investigate/try fixing the mesh in Cubit, and instead replaced the fluxin file entries with 0.0 for this voxel.

My hypothesized best, easy workaround for this is to have write_alara_fluxin.py warn if values are 'nan' or 'inf', and replace these values with 0.0, so that the ALARA calculation isn't messed up.

Better yet might be that the unstructured mesh tally code should set voxels with zero volume to tally values of 0.0, instead of nan/inf.

elliottbiondo commented 11 years ago

On an oblique note I was looking carefully at write_alara_fluxin.py today and I am planning on refactoring/rewriting it. I can certainly add in the suggested 'nan'/'inf'. It looks like you have made some significant changes to write_alara_fluxin.py to accommodate unstructured meshes so I would like to chat with you about them first before I start moving stuff around.