njoy / lipservice

Verification of legacy NJOY input parameters
https://www.njoy21.io
Other
0 stars 1 forks source link

Multiple ZA values on card 8a not allowed #20

Closed paulromano closed 4 years ago

paulromano commented 4 years ago

I'm trying to use NJOY21 to generate a thermal scattering ACE file for graphite (from ENDF/B-VII.1). On card 8a for ACER, I have the following:

6000 6012 6013 /

which is accepted fine by NJOY2016 (in fact njoy/NJOY2016#127 extended the number of acceptable ZA values beyond 3). However, it appears that lipservice only allows a single value. This is the output I get

[error] Encountered unexpected argument
[info] Error while parsing line 34

6000 6012 6013 /
~~~~~^

[info] Trouble while validating card 8a
[info] Trouble validating ACER input.
[info] Error while running NJOY21
jlconlin commented 4 years ago

Thanks @paulromano for the report. We made a change to NJOY2016 to allow this. I thought we had updated lipservice, but I guess I forgot to do this. Should be fairly straightforward.

jlconlin commented 4 years ago

A little check through our our source code and our Pull Requests indicates this was fixed in #11. @paulromano can you print out your signature (njoy21 --signature) and let post it here? I suspect you are using an older version of lipservice.

paulromano commented 4 years ago

I'm using the master branch, which I assume is the most up-to-date:

 {
"git": {
"NJOY21": "a3d5815985df1e5864017265792566dd036288b5",
"njoy": "b41e221c0752d5e03ed0a74d4cb6106023a59b99",
"dimwits": "19ba3167f06d6570599ef8aa0566d0504dd46245",
"hana-adapter": "f58e8973c9a614dc4f3720b5581a762c61bdbb40",
"header-utilities": "8d04c1fd2397e2de299dcfe75d09a6b999797736",
"njoy_c_bindings": "487beb0e84cce62ff1b4c0864a000ff7c1f7f5d3",
"ENDFtk": "e2b7f6d7bb869c898a686bc1247beb83fb898474",
"tclap-adapter": "4b2c1f3e70398d26d661772733a272208233c644",
"utility": "c97d057b3c27286021d3c69abd7dfafb7cf6089f",
"lipservice": "25b859cf76f209ff34a609a65e38a654bd0e6380",
"spdlog-adapter": "6293a82f2a8fedfb62a3f35e15d2dc2d24901f87",
"catch-adapter": "fb84b82ebf7a4789aa43cea560680cf745c6ee4f",
"disco": "c7d6661e962e2166de26f59a7fce50c720687ba1",
"fmt-adapter": "a6db6c8cf9534b028eb3dea4549934f7ae6abf9f",
"json-adapter": "3446af7471bb8b3a01326624d35f6dd1fe0ed508",
"range-v3-adapter": "e8b1fb8a3e0ca6834b90d1fe2ddd0be611e3d71c",
"Log": "0bdd885bb9da924d876db2e240157a420abf97f0"
}
}
jlconlin commented 4 years ago

That is the master branch of lipservice. Perhaps my tests are not doing what I expected. Time for some deeper investigation.

jlconlin commented 4 years ago

Can you share your full input deck and ENDF file? I'm struggling to reproduce this.

paulromano commented 4 years ago

Below is my deck. tape20 is n-006_C_000.endf from ENDF/B-VII.1 and tape21 is tsl-graphite.endf

reconr / %%%%%%%%%%%%%%%%%%% Reconstruct XS for neutrons %%%%%%%%%%%%%%%%%%%%%%%
20 22
'ENDF/B-7.1 PENDF for   6-C -  0 '/
600 2/
0.001/ err
'ENDF/B-7.1:   6-C -  0 '/
'Processed by NJOY'/
0/

broadr / %%%%%%%%%%%%%%%%%%%%%%% Doppler broaden XS %%%%%%%%%%%%%%%%%%%%%%%%%%%%
20 22 23
600 10 0 0 0. /
0.001/ errthn
296.0 400.0 500.0 600.0 700.0 800.0 1000.0 1200.0 1600.0 2000.0
0/

thermr / %%%%%%%%%%%%%%%% Add thermal scattering data (free gas) %%%%%%%%%%%%%%%
0 23 24
0 600 12 10 1 0 0 1 221 1/
296.0 400.0 500.0 600.0 700.0 800.0 1000.0 1200.0 1600.0 2000.0
0.001 2.024
thermr / %%%%%%%%%%%%%%%% Add thermal scattering data (bound) %%%%%%%%%%%%%%%%%%
21 24 25
31 600 16 10 2 1 0 1 222 1/
296.0 400.0 500.0 600.0 700.0 800.0 1000.0 1200.0 1600.0 2000.0
0.001 2.024

acer / %%%%%%%%%%%%%%%%%%%%%%%% Write out in ACE format %%%%%%%%%%%%%%%%%%%%%%%%
20 25 0 26 27
2 0 1 .01/
'ENDF/B-7.1:  graphite   processed by NJOY'/
600 296.0 'graph' /
6000 6012 6013 /
222 64 223 0 1 2.024 2/

acer / %%%%%%%%%%%%%%%%%%%%%%%% Write out in ACE format %%%%%%%%%%%%%%%%%%%%%%%%
20 25 0 28 29
2 0 1 .02/
'ENDF/B-7.1:  graphite   processed by NJOY'/
600 400.0 'graph' /
6000 6012 6013 /
222 64 223 0 1 2.024 2/

acer / %%%%%%%%%%%%%%%%%%%%%%%% Write out in ACE format %%%%%%%%%%%%%%%%%%%%%%%%
20 25 0 30 31
2 0 1 .03/
'ENDF/B-7.1:  graphite   processed by NJOY'/
600 500.0 'graph' /
6000 6012 6013 /
222 64 223 0 1 2.024 2/

acer / %%%%%%%%%%%%%%%%%%%%%%%% Write out in ACE format %%%%%%%%%%%%%%%%%%%%%%%%
20 25 0 32 33
2 0 1 .04/
'ENDF/B-7.1:  graphite   processed by NJOY'/
600 600.0 'graph' /
6000 6012 6013 /
222 64 223 0 1 2.024 2/

acer / %%%%%%%%%%%%%%%%%%%%%%%% Write out in ACE format %%%%%%%%%%%%%%%%%%%%%%%%
20 25 0 34 35
2 0 1 .05/
'ENDF/B-7.1:  graphite   processed by NJOY'/
600 700.0 'graph' /
6000 6012 6013 /
222 64 223 0 1 2.024 2/

acer / %%%%%%%%%%%%%%%%%%%%%%%% Write out in ACE format %%%%%%%%%%%%%%%%%%%%%%%%
20 25 0 36 37
2 0 1 .06/
'ENDF/B-7.1:  graphite   processed by NJOY'/
600 800.0 'graph' /
6000 6012 6013 /
222 64 223 0 1 2.024 2/

acer / %%%%%%%%%%%%%%%%%%%%%%%% Write out in ACE format %%%%%%%%%%%%%%%%%%%%%%%%
20 25 0 38 39
2 0 1 .07/
'ENDF/B-7.1:  graphite   processed by NJOY'/
600 1000.0 'graph' /
6000 6012 6013 /
222 64 223 0 1 2.024 2/

acer / %%%%%%%%%%%%%%%%%%%%%%%% Write out in ACE format %%%%%%%%%%%%%%%%%%%%%%%%
20 25 0 40 41
2 0 1 .08/
'ENDF/B-7.1:  graphite   processed by NJOY'/
600 1200.0 'graph' /
6000 6012 6013 /
222 64 223 0 1 2.024 2/

acer / %%%%%%%%%%%%%%%%%%%%%%%% Write out in ACE format %%%%%%%%%%%%%%%%%%%%%%%%
20 25 0 42 43
2 0 1 .09/
'ENDF/B-7.1:  graphite   processed by NJOY'/
600 1600.0 'graph' /
6000 6012 6013 /
222 64 223 0 1 2.024 2/

acer / %%%%%%%%%%%%%%%%%%%%%%%% Write out in ACE format %%%%%%%%%%%%%%%%%%%%%%%%
20 25 0 44 45
2 0 1 .10/
'ENDF/B-7.1:  graphite   processed by NJOY'/
600 2000.0 'graph' /
6000 6012 6013 /
222 64 223 0 1 2.024 2/
stop
jlconlin commented 4 years ago

Okay, I know what the problem is. It's with our documentation. The fourth (and last) entry on Card8 (NZA) needs to be the number of IZA values you are going to put on Card8a. This value defaults to 1 (although it should be 3). lipservice will read up to NZA values. If there are more values than that on Card8a, then it complains.

We actually have a (Pull Request)[https://github.com/njoy/NJOY2016-manual/pull/27] to fix the documentation. I guess we forgot about it. We'll get that fixed right away.

I also need to update lipservice to default to 3.

paulromano commented 4 years ago

Ah, ok. Yeah changing the default to 3 will fix the issue for me. Good to know about the new entry on card 8!