[FLASH-BUGS] Bug in iso7 reaction network

Chris Malone cmalone at scotty.ess.sunysb.edu
Thu Oct 4 10:28:07 CDT 2007


I was recently trying to modify the iso7 reaction network when I discovered a 
bug in the calculation of the dense jacobian element pertaining to the triple 
alpha reaction.  When calculating the change in composition we have:

dydt(ihe4) = -3.0e0 * y(ihe4) * y(ihe4) * y(ihe4) * ratdum(ir3a) + ...

The -3.0e0 is from the fact that we are losing 3 helium nuclei per triple alpha 
reaction and the reaction rate has already been divided by 3! = 6 to prevent 
double counting.  Now to calculte the dense jacobian matrix element, dfdy(ihe4, 
ihe4), in diso7 (in FLASH version 2) we should simply take the above expression 
and differentiate with respect to helium composition giving:

dfdy(ihe4, ihe4) = -9.0e0 * y(ihe4) * y(ihe4) * ratdum(ir3a) + ...

However, in the FLASH implementation of iso7 the coefficient is -6.0e0 not 
-9.0e0.  I brought this to the attention of Frank Timmes and he said indeed it 
was a bug and that he was not suprised that the bug propagated through to FLASH 
because the paper he wrote that describes this reaction network also had the 
error.

Frank also commented that the bug does not affect the results of the 
calculation for the change in helium abundance but rather the efficiency of the 
algorithm.

Chris


More information about the flash-bugs mailing list