mirror of
https://github.com/openmc-dev/openmc.git
synced 2026-07-27 21:55:41 -04:00
Add temperature deriv test; total nuclide err msg
This commit is contained in:
parent
24b96ba354
commit
dc384f5c14
4 changed files with 148 additions and 82 deletions
|
|
@ -3876,6 +3876,23 @@ contains
|
|||
// trim(to_str(t % id)))
|
||||
end if
|
||||
end do
|
||||
|
||||
if (tally_derivs(t % deriv) % variable == DIFF_NUCLIDE_DENSITY &
|
||||
.or. tally_derivs(t % deriv) % variable == DIFF_TEMPERATURE) then
|
||||
if (any(t % nuclide_bins == -1)) then
|
||||
if (t % find_filter(FILTER_ENERGYOUT) > 0) then
|
||||
call fatal_error("Error on tally " // trim(to_str(t % id)) &
|
||||
// ": Cannot use a 'nuclide_density' or 'temperature' &
|
||||
&derivative on a tally with an outgoing energy filter and &
|
||||
&'total' nuclide rate. Instead, tally each nuclide in the &
|
||||
&material individually.")
|
||||
! Note that diff tallies with these characteristics would work
|
||||
! correctly if no tally events occur in the perturbed material
|
||||
! (e.g. pertrubing moderator but only tallying fuel), but this
|
||||
! case would be hard to check for by only reading inputs.
|
||||
end if
|
||||
end if
|
||||
end if
|
||||
end if
|
||||
|
||||
! If settings.xml trigger is turned on, create tally triggers
|
||||
|
|
|
|||
|
|
@ -1 +1 @@
|
|||
f6b3b603cd6ad74c25baf76b57fa222ca395763d0b0317558de8e80ec030af52cf8e266e921b7e36f147e25bcd9cd67cabafd906284a6053b4ca473f4e71252c
|
||||
7a33d6ea1df959736bf496316b31126523d0578b09a3e6c3440b9cb900e797f21009337e55bbaf90e24edfa6666c838615bc17be163eb062c85a7816fcaee4f9
|
||||
|
|
@ -1,97 +1,129 @@
|
|||
d_material,d_nuclide,d_variable,score,mean,std. dev.
|
||||
3,,density,flux,-5.53e+00,8.45e-01
|
||||
3,,density,flux,-9.96e+00,1.01e+00
|
||||
1,,density,flux,-2.97e-01,5.83e-02
|
||||
1,,density,flux,-3.05e-01,7.69e-02
|
||||
1,O16,nuclide_density,flux,-1.10e+01,9.63e+00
|
||||
1,O16,nuclide_density,flux,-8.07e+00,7.78e+00
|
||||
1,U235,nuclide_density,flux,-1.06e+03,1.30e+02
|
||||
1,U235,nuclide_density,flux,-9.28e+02,9.72e+01
|
||||
3,,density,total,-2.21e+00,4.04e-01
|
||||
3,,density,absorption,6.24e-03,1.37e-01
|
||||
3,,density,fission,5.89e-02,7.93e-02
|
||||
3,,density,nu-fission,1.47e-01,2.06e-01
|
||||
3,,density,total,3.36e-02,6.32e-02
|
||||
3,,density,absorption,5.67e-02,6.01e-02
|
||||
3,,density,fission,5.46e-02,5.03e-02
|
||||
3,,density,nu-fission,1.33e-01,1.23e-01
|
||||
3,,density,total,8.38e+00,1.33e+00
|
||||
3,,density,absorption,1.30e-01,1.97e-02
|
||||
1,,density,nu-fission,1.12e-02,5.75e-03
|
||||
1,,density,nu-fission,6.27e-03,1.86e-03
|
||||
1,,density,nu-fission,1.90e-02,9.78e-03
|
||||
1,,density,nu-fission,1.22e-02,5.45e-03
|
||||
1,,density,nu-fission,0.00e+00,0.00e+00
|
||||
1,,density,nu-fission,0.00e+00,0.00e+00
|
||||
1,,density,nu-fission,0.00e+00,0.00e+00
|
||||
1,,density,nu-fission,0.00e+00,0.00e+00
|
||||
1,O16,nuclide_density,nu-fission,3.71e-01,1.76e-01
|
||||
1,O16,nuclide_density,nu-fission,4.32e-01,7.01e-01
|
||||
1,O16,nuclide_density,nu-fission,0.00e+00,0.00e+00
|
||||
1,O16,nuclide_density,nu-fission,0.00e+00,0.00e+00
|
||||
1,U235,nuclide_density,nu-fission,2.03e+02,2.66e+01
|
||||
1,U235,nuclide_density,nu-fission,5.14e+02,1.31e+01
|
||||
1,U235,nuclide_density,nu-fission,0.00e+00,0.00e+00
|
||||
1,U235,nuclide_density,nu-fission,0.00e+00,0.00e+00
|
||||
1,,temperature,nu-fission,1.26e-05,1.05e-05
|
||||
1,,temperature,nu-fission,8.20e-06,7.06e-06
|
||||
1,,temperature,nu-fission,0.00e+00,0.00e+00
|
||||
1,,temperature,nu-fission,0.00e+00,0.00e+00
|
||||
3,,density,flux,-5.93e+00,8.02e-01
|
||||
3,,density,flux,-1.17e+01,1.10e+00
|
||||
1,,density,flux,-1.93e-01,5.38e-02
|
||||
1,,density,flux,-1.87e-01,6.13e-02
|
||||
1,O16,nuclide_density,flux,3.42e+00,6.84e+00
|
||||
1,O16,nuclide_density,flux,-4.63e+00,9.64e+00
|
||||
1,U235,nuclide_density,flux,-1.06e+03,1.25e+02
|
||||
1,U235,nuclide_density,flux,-9.00e+02,7.41e+01
|
||||
1,,temperature,flux,4.38e-05,1.90e-04
|
||||
1,,temperature,flux,1.99e-04,1.73e-04
|
||||
3,,density,total,-2.51e+00,3.83e-01
|
||||
3,,density,absorption,-7.85e-02,1.16e-01
|
||||
3,,density,fission,4.85e-02,6.57e-02
|
||||
3,,density,nu-fission,1.22e-01,1.73e-01
|
||||
3,,density,total,2.01e-02,4.42e-02
|
||||
3,,density,absorption,4.49e-02,4.26e-02
|
||||
3,,density,fission,4.30e-02,3.67e-02
|
||||
3,,density,nu-fission,1.05e-01,8.95e-02
|
||||
3,,density,total,7.29e+00,1.19e+00
|
||||
3,,density,absorption,1.39e-01,2.85e-02
|
||||
3,,density,fission,0.00e+00,0.00e+00
|
||||
3,,density,nu-fission,0.00e+00,0.00e+00
|
||||
3,,density,total,0.00e+00,0.00e+00
|
||||
3,,density,absorption,0.00e+00,0.00e+00
|
||||
3,,density,fission,0.00e+00,0.00e+00
|
||||
3,,density,nu-fission,0.00e+00,0.00e+00
|
||||
1,,density,total,3.84e-01,4.09e-02
|
||||
1,,density,absorption,1.77e-02,9.66e-03
|
||||
1,,density,fission,2.95e-03,4.95e-03
|
||||
1,,density,nu-fission,8.23e-03,1.30e-02
|
||||
1,,density,total,5.44e-03,4.18e-03
|
||||
1,,density,absorption,1.29e-03,3.79e-03
|
||||
1,,density,fission,2.91e-04,3.01e-03
|
||||
1,,density,nu-fission,7.52e-04,7.35e-03
|
||||
1,,density,total,-3.59e-01,8.82e-02
|
||||
1,,density,absorption,-7.04e-03,1.23e-03
|
||||
1,,density,total,4.53e-01,3.58e-02
|
||||
1,,density,absorption,3.35e-02,7.74e-03
|
||||
1,,density,fission,1.09e-02,3.66e-03
|
||||
1,,density,nu-fission,2.93e-02,9.64e-03
|
||||
1,,density,total,1.18e-02,2.90e-03
|
||||
1,,density,absorption,6.94e-03,2.59e-03
|
||||
1,,density,fission,4.63e-03,2.07e-03
|
||||
1,,density,nu-fission,1.13e-02,5.04e-03
|
||||
1,,density,total,-2.03e-01,5.89e-02
|
||||
1,,density,absorption,-4.86e-03,6.33e-04
|
||||
1,,density,fission,0.00e+00,0.00e+00
|
||||
1,,density,nu-fission,0.00e+00,0.00e+00
|
||||
1,,density,total,0.00e+00,0.00e+00
|
||||
1,,density,absorption,0.00e+00,0.00e+00
|
||||
1,,density,fission,0.00e+00,0.00e+00
|
||||
1,,density,nu-fission,0.00e+00,0.00e+00
|
||||
1,O16,nuclide_density,total,3.94e+01,5.38e+00
|
||||
1,O16,nuclide_density,absorption,9.23e-02,8.39e-01
|
||||
1,O16,nuclide_density,fission,-1.87e-01,4.17e-01
|
||||
1,O16,nuclide_density,nu-fission,-5.04e-01,1.09e+00
|
||||
1,O16,nuclide_density,total,-1.54e-01,3.77e-01
|
||||
1,O16,nuclide_density,absorption,-1.13e-01,3.27e-01
|
||||
1,O16,nuclide_density,fission,-8.48e-02,2.51e-01
|
||||
1,O16,nuclide_density,nu-fission,-2.07e-01,6.11e-01
|
||||
1,O16,nuclide_density,total,-5.63e+00,9.03e+00
|
||||
1,O16,nuclide_density,absorption,-1.65e-01,1.27e-01
|
||||
1,O16,nuclide_density,total,4.71e+01,3.78e+00
|
||||
1,O16,nuclide_density,absorption,9.64e-01,7.50e-01
|
||||
1,O16,nuclide_density,fission,3.09e-01,2.99e-01
|
||||
1,O16,nuclide_density,nu-fission,8.08e-01,7.82e-01
|
||||
1,O16,nuclide_density,total,3.23e-01,2.77e-01
|
||||
1,O16,nuclide_density,absorption,2.86e-01,2.44e-01
|
||||
1,O16,nuclide_density,fission,1.74e-01,1.89e-01
|
||||
1,O16,nuclide_density,nu-fission,4.24e-01,4.61e-01
|
||||
1,O16,nuclide_density,total,1.01e+00,1.06e+01
|
||||
1,O16,nuclide_density,absorption,6.41e-02,1.52e-01
|
||||
1,O16,nuclide_density,fission,0.00e+00,0.00e+00
|
||||
1,O16,nuclide_density,nu-fission,0.00e+00,0.00e+00
|
||||
1,O16,nuclide_density,total,0.00e+00,0.00e+00
|
||||
1,O16,nuclide_density,absorption,0.00e+00,0.00e+00
|
||||
1,O16,nuclide_density,fission,0.00e+00,0.00e+00
|
||||
1,O16,nuclide_density,nu-fission,0.00e+00,0.00e+00
|
||||
1,U235,nuclide_density,total,-1.95e+02,6.93e+01
|
||||
1,U235,nuclide_density,absorption,1.06e+02,2.33e+01
|
||||
1,U235,nuclide_density,fission,1.74e+02,1.67e+01
|
||||
1,U235,nuclide_density,nu-fission,3.84e+02,4.28e+01
|
||||
1,U235,nuclide_density,total,4.48e+02,1.64e+01
|
||||
1,U235,nuclide_density,absorption,3.37e+02,1.47e+01
|
||||
1,U235,nuclide_density,fission,2.66e+02,1.24e+01
|
||||
1,U235,nuclide_density,nu-fission,6.49e+02,3.02e+01
|
||||
1,U235,nuclide_density,total,-2.06e+03,2.21e+02
|
||||
1,U235,nuclide_density,absorption,-5.23e+01,6.36e+00
|
||||
1,U235,nuclide_density,total,-1.76e+02,5.81e+01
|
||||
1,U235,nuclide_density,absorption,1.33e+02,1.49e+01
|
||||
1,U235,nuclide_density,fission,1.97e+02,9.17e+00
|
||||
1,U235,nuclide_density,nu-fission,4.39e+02,2.36e+01
|
||||
1,U235,nuclide_density,total,4.79e+02,1.03e+01
|
||||
1,U235,nuclide_density,absorption,3.65e+02,8.53e+00
|
||||
1,U235,nuclide_density,fission,2.89e+02,6.85e+00
|
||||
1,U235,nuclide_density,nu-fission,7.05e+02,1.67e+01
|
||||
1,U235,nuclide_density,total,-1.74e+03,1.12e+02
|
||||
1,U235,nuclide_density,absorption,-4.22e+01,2.70e+00
|
||||
1,U235,nuclide_density,fission,0.00e+00,0.00e+00
|
||||
1,U235,nuclide_density,nu-fission,0.00e+00,0.00e+00
|
||||
1,U235,nuclide_density,total,0.00e+00,0.00e+00
|
||||
1,U235,nuclide_density,absorption,0.00e+00,0.00e+00
|
||||
1,U235,nuclide_density,fission,0.00e+00,0.00e+00
|
||||
1,U235,nuclide_density,nu-fission,0.00e+00,0.00e+00
|
||||
3,,density,absorption,-7.86e-03,9.22e-02
|
||||
3,,density,absorption,1.51e-01,2.10e-02
|
||||
1,,density,absorption,2.12e-02,6.60e-03
|
||||
1,,density,absorption,-4.94e-03,8.88e-04
|
||||
1,O16,nuclide_density,absorption,3.51e-01,6.90e-01
|
||||
1,O16,nuclide_density,absorption,1.74e-02,7.71e-02
|
||||
1,U235,nuclide_density,absorption,9.98e+01,2.40e+01
|
||||
1,U235,nuclide_density,absorption,-4.39e+01,7.07e+00
|
||||
3,,density,nu-fission,2.64e-02,7.36e-02
|
||||
3,,density,nu-fission,7.70e-02,1.28e-01
|
||||
1,,temperature,total,1.91e-04,1.38e-04
|
||||
1,,temperature,absorption,7.60e-05,4.02e-05
|
||||
1,,temperature,fission,1.60e-05,1.40e-05
|
||||
1,,temperature,nu-fission,4.22e-05,3.60e-05
|
||||
1,,temperature,total,1.12e-05,1.37e-05
|
||||
1,,temperature,absorption,1.08e-05,1.26e-05
|
||||
1,,temperature,fission,8.52e-06,1.02e-05
|
||||
1,,temperature,nu-fission,2.08e-05,2.50e-05
|
||||
1,,temperature,total,3.14e-04,2.80e-04
|
||||
1,,temperature,absorption,5.46e-06,6.04e-06
|
||||
1,,temperature,fission,0.00e+00,0.00e+00
|
||||
1,,temperature,nu-fission,0.00e+00,0.00e+00
|
||||
1,,temperature,total,0.00e+00,0.00e+00
|
||||
1,,temperature,absorption,0.00e+00,0.00e+00
|
||||
1,,temperature,fission,0.00e+00,0.00e+00
|
||||
1,,temperature,nu-fission,0.00e+00,0.00e+00
|
||||
3,,density,absorption,-9.85e-02,8.35e-02
|
||||
3,,density,absorption,9.34e-02,3.83e-02
|
||||
1,,density,absorption,2.98e-02,6.51e-03
|
||||
1,,density,absorption,-2.83e-03,1.44e-03
|
||||
1,O16,nuclide_density,absorption,1.34e+00,4.23e-01
|
||||
1,O16,nuclide_density,absorption,5.15e-02,8.53e-02
|
||||
1,U235,nuclide_density,absorption,1.25e+02,2.55e+01
|
||||
1,U235,nuclide_density,absorption,-4.14e+01,4.30e+00
|
||||
1,,temperature,absorption,4.95e-05,2.86e-05
|
||||
1,,temperature,absorption,-9.35e-07,6.79e-06
|
||||
3,,density,nu-fission,4.60e-02,5.96e-02
|
||||
3,,density,nu-fission,3.87e-02,3.71e-02
|
||||
3,,density,nu-fission,8.85e-02,9.69e-02
|
||||
3,,density,nu-fission,4.16e-02,5.47e-02
|
||||
3,,density,nu-fission,0.00e+00,0.00e+00
|
||||
3,,density,nu-fission,0.00e+00,0.00e+00
|
||||
3,,density,nu-fission,0.00e+00,0.00e+00
|
||||
3,,density,nu-fission,0.00e+00,0.00e+00
|
||||
1,,density,nu-fission,2.29e-03,4.63e-03
|
||||
1,,density,nu-fission,1.33e-02,1.06e-02
|
||||
1,,density,nu-fission,0.00e+00,0.00e+00
|
||||
1,,density,nu-fission,0.00e+00,0.00e+00
|
||||
1,O16,nuclide_density,nu-fission,-9.08e-02,5.90e-01
|
||||
1,O16,nuclide_density,nu-fission,1.48e-01,1.07e+00
|
||||
1,O16,nuclide_density,nu-fission,0.00e+00,0.00e+00
|
||||
1,O16,nuclide_density,nu-fission,0.00e+00,0.00e+00
|
||||
1,U235,nuclide_density,nu-fission,9.91e+01,2.80e+01
|
||||
1,U235,nuclide_density,nu-fission,2.64e+02,2.71e+01
|
||||
1,U235,nuclide_density,nu-fission,0.00e+00,0.00e+00
|
||||
1,U235,nuclide_density,nu-fission,0.00e+00,0.00e+00
|
||||
|
|
|
|||
|
|
@ -25,7 +25,7 @@ class DiffTallyTestHarness(PyAPITestHarness):
|
|||
self._input_set.settings.particles = 400
|
||||
self._input_set.settings.source = openmc.Source(space=openmc.stats.Box(
|
||||
[-160, -160, -183], [160, 160, 183]))
|
||||
self._input_set.settings.output = {'summary': True}
|
||||
self._input_set.settings.temperature['multipole'] = True
|
||||
|
||||
self._input_set.tallies = openmc.Tallies()
|
||||
|
||||
|
|
@ -55,18 +55,23 @@ class DiffTallyTestHarness(PyAPITestHarness):
|
|||
d4.material = 1
|
||||
d4.nuclide = 'U235'
|
||||
|
||||
derivs = [d1, d2, d3, d4]
|
||||
# Temperature derivatives.
|
||||
d5 = openmc.TallyDerivative(derivative_id=5)
|
||||
d5.variable = 'temperature'
|
||||
d5.material = 1
|
||||
|
||||
derivs = [d1, d2, d3, d4, d5]
|
||||
|
||||
# Cover the flux score.
|
||||
for i in range(4):
|
||||
for i in range(5):
|
||||
t = openmc.Tally()
|
||||
t.add_score('flux')
|
||||
t.add_filter(filt_mats)
|
||||
t.derivative = derivs[i]
|
||||
self._input_set.tallies.add_tally(t)
|
||||
self._input_set.tallies.append(t)
|
||||
|
||||
# Cover supported scores with a collision estimator.
|
||||
for i in range(4):
|
||||
for i in range(5):
|
||||
t = openmc.Tally()
|
||||
t.add_score('total')
|
||||
t.add_score('absorption')
|
||||
|
|
@ -76,25 +81,37 @@ class DiffTallyTestHarness(PyAPITestHarness):
|
|||
t.add_nuclide('total')
|
||||
t.add_nuclide('U235')
|
||||
t.derivative = derivs[i]
|
||||
self._input_set.tallies.add_tally(t)
|
||||
self._input_set.tallies.append(t)
|
||||
|
||||
# Cover an analog estimator.
|
||||
for i in range(4):
|
||||
for i in range(5):
|
||||
t = openmc.Tally()
|
||||
t.add_score('absorption')
|
||||
t.add_filter(filt_mats)
|
||||
t.estimator = 'analog'
|
||||
t.derivative = derivs[i]
|
||||
self._input_set.tallies.add_tally(t)
|
||||
self._input_set.tallies.append(t)
|
||||
|
||||
# And the special fission with energyout filter.
|
||||
for i in range(4):
|
||||
# Energyout filter and total nuclide for the density derivatives.
|
||||
for i in range(2):
|
||||
t = openmc.Tally()
|
||||
t.add_score('nu-fission')
|
||||
t.add_filter(filt_mats)
|
||||
t.add_filter(filt_eout)
|
||||
t.add_nuclide('total')
|
||||
t.add_nuclide('U235')
|
||||
t.derivative = derivs[i]
|
||||
self._input_set.tallies.add_tally(t)
|
||||
self._input_set.tallies.append(t)
|
||||
|
||||
# Energyout filter without total nuclide for other derivatives.
|
||||
for i in range(2, 5):
|
||||
t = openmc.Tally()
|
||||
t.add_score('nu-fission')
|
||||
t.add_filter(filt_mats)
|
||||
t.add_filter(filt_eout)
|
||||
t.add_nuclide('U235')
|
||||
t.derivative = derivs[i]
|
||||
self._input_set.tallies.append(t)
|
||||
|
||||
self._input_set.export()
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue