njoy / NJOY2016

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

Generating covariance matrix with > 1000 energy groups #183

Open nicoloabrate opened 3 years ago

nicoloabrate commented 3 years ago

Dear NJOY2016 developers, I am trying to process some covariance matrices from the ENDF-B/VIII.0 library using a large number of energy groups. With 1000 groups (equally spaced in lethargy) I am able to get the covariance matrices that I need. However, when I use an even finer energy grid, like the ECCO-1968, I am not able to get all the covariance files with the COVR module. What I get is a segmentation fault. The NJOY ouput is attached as "output".

I suspect that there is some memory issue related to the size of the output files... I attach you two examples. The first one, Pu-241, works perfectly fine, while the second one, Pu-239, gives me the "segmentation fault" issue. Please notice that for github limits I cannot provide you the ERRORR output file, so if you need it to spare time (the processing takes a while) I can send it to you via email.

I also tried to use NJOY21 but the error is basically the same. My version of NJOY2016 is the .55

Could you please help me? Thank you very much Nicolò

output.txt Pu-241.zip Pu-239.zip

whaeck commented 3 years ago

Hi Nicolo

ERRORR has an option in it to reduce the size of the output (should be the 4th entry on the second card). In the input file you sent, that option is set to 1 - which switches on maximum output. You can already try setting it to 0 to see if the problem goes away.

If it does not, I would also like to know what is being printed to the screen when the segmentation fault happens.

Now, that being said, I would also like to point out that calculating covariance matrices using a very fine structure may be a questionable practice. Depending on what you may want to use these matrices for, you may want to settle on a smaller structure that is closer to the evaluator's intent.

Best regards, Wim

nicoloabrate commented 3 years ago

Dear Wim, thanks for your prompt reply. I need to process the covariances with a very fine structure because I need to extract a set of energy-wise basis functions. I need these functions for a couple of reasons:

  1. sampling perturbed cross sections
  2. score Monte Carlo continous energy responses on this basis functions

I tried to minimise the output following your advise but this did not solve the problem. I also tried to process only the MTs I am interested in (MT18 and MT102): this reduces a lot the size of the ERRORR output (from 200 to 70 MB), but COVR still gives me the segmentation fault error.

Please find attached: The log from njoy2016, njoy16_out.log the output printed by njoy2016 output_njoy2016.txt the log from njoy21 njoy21_out.log and the ERRORR output (for the case with all MTs and minimum output option) outputERRORR.txt

If you need anything else please let me know! Thank you so much for your kind attention best regards Nicolo