njoy / NJOY2016

Nuclear data processing with legacy NJOY
https://www.njoy21.io/NJOY2016
Other
97 stars 86 forks source link

Total neutron kerma without fission #52

Closed rtuom closed 6 years ago

rtuom commented 6 years ago

Hi!

We are currently developing new energy deposition treatment for the Monte Carlo code Serpent 2 and I would like generate total neutron kerma factors that don't include fission. Heating due to fission is handled separately in Serpent by using MT458 data from ENDF files. As a quick solution I have modified the heatr source code to exclude fission from the total kerma with the following if statements:

in nheat subroutine on line 1387 if (mtd.lt.18.or.(mtd.gt.21.and.mtd.ne.38)) c(2)=c(2)+h+ebal6

in gheat subroutine on line 5207 if (mtd.lt.18.or.(mtd.gt.21.and.mtd.ne.38)) c(2)=c(2)+h

in gheat subroutine on line 5242 if (mtd.lt.18.or.(mtd.gt.21.and.mtd.ne.38)) c(2)=c(2)+h

Is this doing the right thing? By looking at the heatr output it seems to be working. Also, is there a better way to exclude fission from the total kerma? I guess some source code modification is necessary in any case. As another option, fission kerma could be substracted from the total kerma (with fission) in Serpent, if fission kerma could be included in the ACE file, but I guess this is not possible at the moment.

Best regards, Riku Tuominen

jlconlin commented 6 years ago

We (@whaeck) are currently working on a patch to HEATR to handle the new ENDF format for MT458. I recommend holding off on making any changes until after that patch has been incorporated as it changes how KERMA is calculated.

rtuom commented 6 years ago

Thanks for the quick reply! I had a quick look into feature/heatr-endf8 and it seems that the changes affect only how the fission heating is calculated. Are there some changes for other reactions also? Concerning the modifications I made, could somebody comment on if the fission contribution to total kerma is excluded correctly?

whaeck commented 6 years ago

Hi Riku,

The kerma value for the current mt number is indeed stored in the h variable for the current energy in the loops inside these subroutines. By adding the if statement before each one of these lines, you explicitly exclude the h value for mt18, 19, 20, 21 and 38 which are all the fission mt numbers. In case of the first line you changed, the ebal6 variable for fission is actually equal to 0 so it boils down to excluding the h value from the total. From a logical point of view, your modifications appear to be correct.

However, your edits will actually change the significance of the total kerma value to total kerma without fission. For this reason, your mt301 will no longer be the real mt301 as it is defined in the ENDF format. Because of this, I would not do this type of processing by modifying NJOY because your total heating number will no longer be "legal" and the resulting ace file will not be "compatible" with a regular ace file.

In your case, I would simply leave the processing unchanged but modify Serpent to define an additional "partial" kerma defined as mt301 minus mt318 which you can read from the PENDF file coming out of heatr (as you remark, mt318 is not in the ace file, only mt301 is). This should give the same numbers as what you have tried to do with your modifications. Because you already read the original ENDF evaluation (which contains mf1 mt458) in Serpent anyway, you can add mf3 mt301 and mt318 to that file to get access to the data you need.

You will have to specify the partial fission kerma in the heatr input file to get the partial kerma in the pendf file, for example:

heatr -30 -32 -31 50 / 9437 7 0 0 0 2 / 302 303 304 318 442 443 444 /

In this case, tape31 will contain mt301, mt302, mt304, mt318, etc.

Modifying the ace format to include partial kermas is another possibility, but such an undertaking should not be taken lightly so I do not see this happening anytime soon.

Best regards, Wim

rtuom commented 6 years ago

Hi Whim,

thanks for the reply. I'll have a look into the PENDF file coming out of heatr.

Best regards, Riku

jlconlin commented 6 years ago

@rtuom Are you still seeing this issue?

rtuom commented 6 years ago

Hi!

I solved the issue by reading the partial fission kerma from the PENDF file coming out of heatr.

Best regards, Riku

whaeck commented 6 years ago

Good to hear :-)

We will close the issue now.

Best regards, Wim