The attached test case crashes the mainline when modeling a high excitation PN with a 1/r2 density law outside the ionized region. It uses the DLAW command and the dense_fabden.cpp file is attached as well. An analysis by Ryan Porter yielded the following:
Here's where the problem stands then. At line 393 of rt_diffuse the below
assert values. The comment accompanying it may well provide the proper
hint:
/* nflux was reset upward in ConvInitSolution to encompass
possible line and continuum emission. this test should not possibly fail. It could if the ionization were to increase with depth This is important because the nflux cell in ConInterOut is used to carry out the unit integration, and if it gets clobbered by diffuse emission the code will declare insanity in PrtComment */
ASSERT( ip >= 0 && ip < rfield.nflux );
When the assert is thrown ip == 3146, rfield.nflux == 3141, nelem == 25, and
ion == 16.