Skip to content

Commit

Permalink
Merge pull request #89 from njoy/feature/broadr-endf8
Browse files Browse the repository at this point in the history
Feature/broadr endf8
  • Loading branch information
jlconlin authored Jun 21, 2018
2 parents 8acde2e + 3b14478 commit a378bbc
Show file tree
Hide file tree
Showing 11 changed files with 559 additions and 11 deletions.
2 changes: 0 additions & 2 deletions .travis.yml
Original file line number Diff line number Diff line change
Expand Up @@ -10,8 +10,6 @@ addons:
packages:
- gcc-6
- gfortran-6
- cmake
- cmake-data
language: c
compiler:
- gcc
Expand Down
10 changes: 10 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,7 +1,15 @@
# NJOY2016
[![Build Status](https://travis-ci.org/njoy/NJOY2016.svg?branch=master)](https://travis-ci.org/njoy/NJOY2016)

The NJOY Nuclear Data Processing System is a modular computer code designed to read evaluated data in ENDF format, transform the data in various ways, and output the results as libraries designed to be used in various applications. Each module performs a well defined processing task. The modules are essentially independent programs, and they communicate with each other using input and output files, plus a very few common variables.

## Documentation
The documentation for NJOY2016 is found in the [NJOY2016-manual](https://github.com/njoy/NJOY2016-manual) repository. There, you can find a [pre-compiled PDF](https://github.com/njoy/NJOY2016-manual/raw/master/njoy16.pdf) of the manual.

## Installation
Instructions for the installation of NJOY2016 are found on our page, [Obtaining and Installing NJOY](https://njoy.github.io/Build/index.html).

## Modules
+ `NJOY` directs the flow of data through the other modules and contains a library of common functions and subroutines used by the other modules.
+ `RECONR` reconstructs pointwise (energy-dependent) cross sections from ENDF resonance parameters and interpolation schemes.
+ `BROADR` Doppler broadens and thins pointwise cross sections.
Expand All @@ -27,3 +35,5 @@
+ `LEAPR` generates ENDF scattering-law files (File 7) for moderator materials in the thermal range. These scattering-law files can be used by `THERMR` to produce the corresponding cross sections.
+ `GASPR` generates gas-production cross sections in pointwise format from basic reaction data in an ENDF evaluation. These results can be converted to multigroup form using `GROUPR`, passed to `ACER`, or displayed using `PLOTR`.

## License and Copyright
This software is distributed and copyrighted according to the [LICENSE](LICENSE) file.
15 changes: 8 additions & 7 deletions src/broadr.f90
Original file line number Diff line number Diff line change
Expand Up @@ -1535,7 +1535,6 @@ subroutine bsigma(kn,en,sn,e,s,nx)
real(kr),parameter::two=2.e0_kr
real(kr),parameter::atop=4.e0_kr
real(kr),parameter::sigmin=1.e-15_kr

aamin=atop
aa=0

Expand All @@ -1547,9 +1546,11 @@ subroutine bsigma(kn,en,sn,e,s,nx)

!--search for panel containing en
k=kn
do while (en.ge.e(k+1))
k=k+1
enddo
if (e(k+1).ge.e(k)) then
do while (en.ge.e(k+1))
k=k+1
enddo
endif

!--compute desired cross sections
y=en
Expand Down Expand Up @@ -1691,8 +1692,8 @@ subroutine thinb(j,inew,bufn,e,s,nx)
real(kr)::denom,slope,sp
real(kr)::tt(ntt+1)
real(kr),parameter::stpmax=1.24e0_kr
real(kr),parameter::eps=1.e-5_kr
real(kr),parameter::zero=0

nmin=nlow+2
ilow=nlow+1

Expand Down Expand Up @@ -1720,7 +1721,7 @@ subroutine thinb(j,inew,bufn,e,s,nx)
if (e(k).ge.stpmax*tt(1)) go to 140
sp=tt(1+i)+slope*(e(k)-tt(1))
if (abs(sp-s(i,k)).gt.errthn*s(i,k)) go to 140
if (e(k).gt.thnmax) go to 140
if (e(k)*(1.+eps).gt.thnmax) go to 140
120 continue
130 continue
! all intervening points can be thinned
Expand All @@ -1734,7 +1735,7 @@ subroutine thinb(j,inew,bufn,e,s,nx)
do i=1,nreac
tt(1+i)=s(i,nm1)
enddo
if (tt(1).ge.thnmax) go to 180
if (tt(1)*(1.+eps).ge.thnmax) go to 180
call loada(j,tt,ntx,inew,bufn,nbuf)
! reset lower limit of interval that can be thinned
ilow=n
Expand Down
4 changes: 2 additions & 2 deletions src/vers.f90
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ module version
! These values are updated during the NJOY revision-control process.
implicit none
private
character(8),public::vers='2016.37'
character(8),public::vday='12Jun18'
character(8),public::vers='2016.38'
character(8),public::vday='18Jun18'
end module version

12 changes: 12 additions & 0 deletions tests/43/CMakeLists.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
configure_file("${CMAKE_CURRENT_SOURCE_DIR}/input"
"${CMAKE_CURRENT_BINARY_DIR}/input" COPYONLY )

configure_file("${CMAKE_CURRENT_SOURCE_DIR}/referenceTape35"
"${CMAKE_CURRENT_BINARY_DIR}/referenceTape35" COPYONLY )

configure_file("${RESOURCES}/n-001_H_001-ENDF8.0-Beta6.endf"
"${CMAKE_CURRENT_BINARY_DIR}/tape20" COPYONLY )

add_test( NAME "Test43"
COMMAND ${PYTHON_EXECUTABLE} "../execute.py"
WORKING_DIRECTORY "${CMAKE_CURRENT_BINARY_DIR}" )
20 changes: 20 additions & 0 deletions tests/43/input
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
-- broadr test with high thnmax and temperature equal to 0.0 K
-- note: reconstruction tolerances are high (1 %) for testing purposes
moder
20 -21
reconr
-21 -22 /
'reconr/pendf tape for 125'/
125 0 /
0.01 0.0 0.01 /
0 /
broadr
-21 -22 -23 /
125 1 0 0 0.0 /
0.01 -19500000.0 0.01 /
0.0 /
0 /
moder
-23 35
stop

151 changes: 151 additions & 0 deletions tests/43/referenceTape35
Original file line number Diff line number Diff line change
@@ -0,0 +1,151 @@
reconr/pendf tape for 125 1 0 0 0
1.001000+3 9.991673-1 2 0 0 0 125 1451 1
0.000000+0 0.000000+0 0 0 0 6 125 1451 2
1.000000+0 2.000000+7 0 0 10 8 125 1451 3
0.000000+0 1.000000-2 1 0 1 5 125 1451 4
125 1451 5
1 451 8 0 125 1451 6
2 151 4 0 125 1451 7
3 1 42 0 125 1451 8
3 2 42 0 125 1451 9
3 102 42 0 125 1451 10
125 1 099999
125 0 0 0
1.001000+3 9.991673-1 0 0 1 0 125 2151 1
1.001000+3 1.000000+0 0 0 1 0 125 2151 2
1.000000-5 2.000000+7 0 0 0 0 125 2151 3
5.000000-1 1.275246+0 0 0 0 0 125 2151 4
125 2 099999
125 0 0 0
1.001000+3 9.991673-1 0 99 0 0 125 3 1 1
0.000000+0 0.000000+0 0 0 1 116 125 3 1 2
116 2 125 3 1 3
1.000000-5 3.716477+1 1.250000-5 3.539868+1 1.625000-5 3.355914+1 125 3 1 4
2.187500-5 3.174674+1 2.750000-5 3.052386+1 3.500000-5 2.937794+1 125 3 1 5
4.625000-5 2.821476+1 6.250000-5 2.712756+1 8.125000-5 2.630489+1 125 3 1 6
1.125000-4 2.542361+1 1.500000-4 2.475541+1 2.000000-4 2.417673+1 125 3 1 7
2.562500-4 2.374077+1 3.500000-4 2.326375+1 4.625000-4 2.289592+1 125 3 1 8
6.250000-4 2.255211+1 8.125000-4 2.229196+1 1.125000-3 2.201328+1 125 3 1 9
1.500000-3 2.180197+1 2.000000-3 2.161898+1 2.562500-3 2.148111+1 125 3 1 10
3.500000-3 2.133027+1 4.625000-3 2.121395+1 6.250000-3 2.110523+1 125 3 1 11
8.125000-3 2.102296+1 1.125000-2 2.093483+1 1.500000-2 2.086801+1 125 3 1 12
2.000000-2 2.081014+1 2.530000-2 2.076866+1 3.147500-2 2.073426+1 125 3 1 13
4.073750-2 2.069818+1 5.625000-2 2.065913+1 7.500000-2 2.062924+1 125 3 1 14
1.000000-1 2.060336+1 1.250000-1 2.058570+1 1.625000-1 2.056729+1 125 3 1 15
2.187500-1 2.054916+1 2.750000-1 2.053692+1 3.500000-1 2.052545+1 125 3 1 16
4.250000-1 2.051717+1 5.625000-1 2.050653+1 7.500000-1 2.049706+1 125 3 1 17
1.000000+0 2.048885+1 1.250000+0 2.048324+1 1.500000+0 2.047907+1 125 3 1 18
2.000000+0 2.047322+1 2.750000+0 2.046761+1 3.500000+0 2.046389+1 125 3 1 19
4.250000+0 2.046117+1 5.625000+0 2.045763+1 7.500000+0 2.045439+1 125 3 1 20
1.000000+1 2.045146+1 1.250000+1 2.044936+1 1.500000+1 2.044772+1 125 3 1 21
2.000000+1 2.044522+1 2.750000+1 2.044247+1 3.500000+1 2.044031+1 125 3 1 22
4.250000+1 2.043847+1 5.625000+1 2.043556+1 7.500000+1 2.043210+1 125 3 1 23
1.000000+2 2.042792+1 1.250000+2 2.042400+1 1.500000+2 2.042022+1 125 3 1 24
2.000000+2 2.041293+1 2.750000+2 2.040233+1 3.500000+2 2.039193+1 125 3 1 25
4.250000+2 2.038163+1 5.625000+2 2.036293+1 7.500000+2 2.033768+1 125 3 1 26
1.000000+3 2.030414+1 1.250000+3 2.027106+1 1.500000+3 2.023803+1 125 3 1 27
2.000000+3 2.017204+1 2.500000+3 2.010708+1 3.000000+3 2.004215+1 125 3 1 28
4.000000+3 1.991424+1 5.000000+3 1.978822+1 6.000000+3 1.966405+1 125 3 1 29
8.000000+3 1.942101+1 1.000000+4 1.918480+1 1.200000+4 1.895511+1 125 3 1 30
1.600000+4 1.851424+1 2.000000+4 1.809640+1 2.600000+4 1.750902+1 125 3 1 31
3.000000+4 1.714141+1 3.500000+4 1.670645+1 4.500000+4 1.590960+1 125 3 1 32
5.500000+4 1.519718+1 7.000000+4 1.425946+1 8.500000+4 1.344994+1 125 3 1 33
1.000000+5 1.274378+1 1.200000+5 1.193120+1 1.500000+5 1.092508+1 125 3 1 34
1.800000+5 1.010893+1 2.200000+5 9.232457+0 2.600000+5 8.530226+0 125 3 1 35
3.200000+5 7.702670+0 4.000000+5 6.878637+0 5.000000+5 6.127876+0 125 3 1 36
6.500000+5 5.339645+0 8.500000+5 4.633237+0 1.100000+6 4.038494+0 125 3 1 37
1.400000+6 3.545810+0 1.800000+6 3.086753+0 2.400000+6 2.617003+0 125 3 1 38
3.000000+6 2.286895+0 3.800000+6 1.965823+0 4.800000+6 1.675591+0 125 3 1 39
6.000000+6 1.423007+0 7.500000+6 1.194724+0 9.500000+6 9.798437-1 125 3 1 40
1.200000+7 7.948986-1 1.450000+7 6.647646-1 1.750000+7 5.522144-1 125 3 1 41
1.950000+7 4.946221-1 2.000000+7 4.818679-1 125 3 1 42
125 3 099999
1.001000+3 9.991673-1 0 0 0 0 125 3 2 1
0.000000+0 0.000000+0 0 0 1 116 125 3 2 2
116 2 125 3 2 3
1.000000-5 2.043608+1 1.250000-5 2.043608+1 1.625000-5 2.043608+1 125 3 2 4
2.187500-5 2.043608+1 2.750000-5 2.043608+1 3.500000-5 2.043608+1 125 3 2 5
4.625000-5 2.043608+1 6.250000-5 2.043608+1 8.125000-5 2.043608+1 125 3 2 6
1.125000-4 2.043608+1 1.500000-4 2.043608+1 2.000000-4 2.043608+1 125 3 2 7
2.562500-4 2.043608+1 3.500000-4 2.043608+1 4.625000-4 2.043608+1 125 3 2 8
6.250000-4 2.043608+1 8.125000-4 2.043608+1 1.125000-3 2.043608+1 125 3 2 9
1.500000-3 2.043608+1 2.000000-3 2.043608+1 2.562500-3 2.043608+1 125 3 2 10
3.500000-3 2.043608+1 4.625000-3 2.043608+1 6.250000-3 2.043608+1 125 3 2 11
8.125000-3 2.043608+1 1.125000-2 2.043608+1 1.500000-2 2.043608+1 125 3 2 12
2.000000-2 2.043608+1 2.530000-2 2.043608+1 3.147500-2 2.043608+1 125 3 2 13
4.073750-2 2.043608+1 5.625000-2 2.043608+1 7.500000-2 2.043607+1 125 3 2 14
1.000000-1 2.043607+1 1.250000-1 2.043607+1 1.625000-1 2.043606+1 125 3 2 15
2.187500-1 2.043605+1 2.750000-1 2.043604+1 3.500000-1 2.043603+1 125 3 2 16
4.250000-1 2.043602+1 5.625000-1 2.043600+1 7.500000-1 2.043598+1 125 3 2 17
1.000000+0 2.043595+1 1.250000+0 2.043592+1 1.500000+0 2.043588+1 125 3 2 18
2.000000+0 2.043581+1 2.750000+0 2.043571+1 3.500000+0 2.043561+1 125 3 2 19
4.250000+0 2.043551+1 5.625000+0 2.043533+1 7.500000+0 2.043507+1 125 3 2 20
1.000000+1 2.043473+1 1.250000+1 2.043440+1 1.500000+1 2.043406+1 125 3 2 21
2.000000+1 2.043339+1 2.750000+1 2.043238+1 3.500000+1 2.043137+1 125 3 2 22
4.250000+1 2.043036+1 5.625000+1 2.042851+1 7.500000+1 2.042599+1 125 3 2 23
1.000000+2 2.042263+1 1.250000+2 2.041927+1 1.500000+2 2.041591+1 125 3 2 24
2.000000+2 2.040919+1 2.750000+2 2.039915+1 3.500000+2 2.038911+1 125 3 2 25
4.250000+2 2.037907+1 5.625000+2 2.036071+1 7.500000+2 2.033576+1 125 3 2 26
1.000000+3 2.030248+1 1.250000+3 2.026958+1 1.500000+3 2.023668+1 125 3 2 27
2.000000+3 2.017087+1 2.500000+3 2.010604+1 3.000000+3 2.004120+1 125 3 2 28
4.000000+3 1.991343+1 5.000000+3 1.978750+1 6.000000+3 1.966339+1 125 3 2 29
8.000000+3 1.942045+1 1.000000+4 1.918430+1 1.200000+4 1.895466+1 125 3 2 30
1.600000+4 1.851386+1 2.000000+4 1.809607+1 2.600000+4 1.750874+1 125 3 2 31
3.000000+4 1.714116+1 3.500000+4 1.670622+1 4.500000+4 1.590941+1 125 3 2 32
5.500000+4 1.519701+1 7.000000+4 1.425932+1 8.500000+4 1.344982+1 125 3 2 33
1.000000+5 1.274368+1 1.200000+5 1.193111+1 1.500000+5 1.092500+1 125 3 2 34
1.800000+5 1.010886+1 2.200000+5 9.232401+0 2.600000+5 8.530176+0 125 3 2 35
3.200000+5 7.702627+0 4.000000+5 6.878598+0 5.000000+5 6.127840+0 125 3 2 36
6.500000+5 5.339611+0 8.500000+5 4.633204+0 1.100000+6 4.038460+0 125 3 2 37
1.400000+6 3.545775+0 1.800000+6 3.086717+0 2.400000+6 2.616966+0 125 3 2 38
3.000000+6 2.286858+0 3.800000+6 1.965786+0 4.800000+6 1.675555+0 125 3 2 39
6.000000+6 1.422973+0 7.500000+6 1.194691+0 9.500000+6 9.798120-1 125 3 2 40
1.200000+7 7.948682-1 1.450000+7 6.647352-1 1.750000+7 5.521863-1 125 3 2 41
1.950000+7 4.945948-1 2.000000+7 4.818408-1 125 3 2 42
125 3 099999
1.001000+3 9.991673-1 0 0 0 0 125 3102 1
2.224648+6 2.224648+6 0 0 1 116 125 3102 2
116 2 125 3102 3
1.000000-5 1.672869+1 1.250000-5 1.496260+1 1.625000-5 1.312306+1 125 3102 4
2.187500-5 1.131066+1 2.750000-5 1.008778+1 3.500000-5 8.941862+0 125 3102 5
4.625000-5 7.778684+0 6.250000-5 6.691477+0 8.125000-5 5.868814+0 125 3102 6
1.125000-4 4.987532+0 1.500000-4 4.319330+0 2.000000-4 3.740649+0 125 3102 7
2.562500-4 3.304685+0 3.500000-4 2.827665+0 4.625000-4 2.459835+0 125 3102 8
6.250000-4 2.116030+0 8.125000-4 1.855882+0 1.125000-3 1.577196+0 125 3102 9
1.500000-3 1.365892+0 2.000000-3 1.182897+0 2.562500-3 1.045033+0 125 3102 10
3.500000-3 8.941861-1 4.625000-3 7.778683-1 6.250000-3 6.691477-1 125 3102 11
8.125000-3 5.868813-1 1.125000-2 4.987532-1 1.500000-2 4.319329-1 125 3102 12
2.000000-2 3.740649-1 2.530000-2 3.325842-1 3.147500-2 2.981803-1 125 3102 13
4.073750-2 2.620985-1 5.625000-2 2.230491-1 7.500000-2 1.931662-1 125 3102 14
1.000000-1 1.672868-1 1.250000-1 1.496259-1 1.625000-1 1.312305-1 125 3102 15
2.187500-1 1.131065-1 2.750000-1 1.008776-1 3.500000-1 8.941840-2 125 3102 16
4.250000-1 8.114583-2 5.625000-1 7.053408-2 7.500000-1 6.108421-2 125 3102 17
1.000000+0 5.290040-2 1.250000+0 4.731545-2 1.500000+0 4.319282-2 125 3102 18
2.000000+0 3.740597-2 2.750000+0 3.189969-2 3.500000+0 2.827590-2 125 3102 19
4.250000+0 2.565984-2 5.625000+0 2.230402-2 7.500000+0 1.931557-2 125 3102 20
1.000000+1 1.672753-2 1.250000+1 1.496122-2 1.500000+1 1.365742-2 125 3102 21
2.000000+1 1.182733-2 2.750000+1 1.008565-2 3.500000+1 8.939484-3 125 3102 22
4.250000+1 8.112091-3 5.625000+1 7.050573-3 7.500000+1 6.105096-3 125 3102 23
1.000000+2 5.286408-3 1.250000+2 4.727252-3 1.500000+2 4.314584-3 125 3102 24
2.000000+2 3.735465-3 2.750000+2 3.183319-3 3.500000+2 2.820170-3 125 3102 25
4.250000+2 2.558137-3 5.625000+2 2.221482-3 7.500000+2 1.921111-3 125 3102 26
1.000000+3 1.661353-3 1.250000+3 1.482689-3 1.500000+3 1.351069-3 125 3102 27
2.000000+3 1.166741-3 2.500000+3 1.039677-3 3.000000+3 9.462015-4 125 3102 28
4.000000+3 8.139461-4 5.000000+3 7.231833-4 6.000000+3 6.558304-4 125 3102 29
8.000000+3 5.606171-4 1.000000+4 4.950573-4 1.200000+4 4.462792-4 125 3102 30
1.600000+4 3.771411-4 2.000000+4 3.294414-4 2.600000+4 2.792827-4 125 3102 31
3.000000+4 2.544108-4 3.500000+4 2.294576-4 4.500000+4 1.926474-4 125 3102 32
5.500000+4 1.665254-4 7.000000+4 1.387839-4 8.500000+4 1.192289-4 125 3102 33
1.000000+5 1.046948-4 1.200000+5 9.030618-5 1.500000+5 7.532893-5 125 3102 34
1.800000+5 6.512232-5 2.200000+5 5.585212-5 2.600000+5 4.958603-5 125 3102 35
3.200000+5 4.346834-5 4.000000+5 3.873653-5 5.000000+5 3.566139-5 125 3102 36
6.500000+5 3.381641-5 8.500000+5 3.348555-5 1.100000+6 3.419283-5 125 3102 37
1.400000+6 3.531924-5 1.800000+6 3.649216-5 2.400000+6 3.728419-5 125 3102 38
3.000000+6 3.726422-5 3.800000+6 3.663785-5 4.800000+6 3.556769-5 125 3102 39
6.000000+6 3.432833-5 7.500000+6 3.304070-5 9.500000+6 3.171787-5 125 3102 40
1.200000+7 3.044214-5 1.450000+7 2.935670-5 1.750000+7 2.812894-5 125 3102 41
1.950000+7 2.731301-5 2.000000+7 2.710792-5 125 3102 42
125 3 099999
125 0 0 0
0 0 0 0
-1 0 0 0
12 changes: 12 additions & 0 deletions tests/44/CMakeLists.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
configure_file("${CMAKE_CURRENT_SOURCE_DIR}/input"
"${CMAKE_CURRENT_BINARY_DIR}/input" COPYONLY )

configure_file("${CMAKE_CURRENT_SOURCE_DIR}/referenceTape35"
"${CMAKE_CURRENT_BINARY_DIR}/referenceTape35" COPYONLY )

configure_file("${RESOURCES}/n-001_H_001-ENDF8.0-Beta6.endf"
"${CMAKE_CURRENT_BINARY_DIR}/tape20" COPYONLY )

add_test( NAME "Test44"
COMMAND ${PYTHON_EXECUTABLE} "../execute.py"
WORKING_DIRECTORY "${CMAKE_CURRENT_BINARY_DIR}" )
20 changes: 20 additions & 0 deletions tests/44/input
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
-- broadr test with high thnmax and temperature equal to 0.1 K
-- note: reconstruction tolerances are high (1 %) for testing purposes
moder
20 -21
reconr
-21 -22 /
'reconr/pendf tape for 125'/
125 0 /
0.01 0.0 0.01 /
0 /
broadr
-21 -22 -23 /
125 1 0 0 0.0 /
0.01 -19500000.0 0.01 /
0.1 /
0 /
moder
-23 35
stop

Loading

0 comments on commit a378bbc

Please sign in to comment.