Fixed energy and energyout filters to support many bins.

This commit is contained in:
Paul Romano 2012-02-01 19:23:18 -05:00
parent 02ff6c6835
commit a7528339f8
3 changed files with 14 additions and 18 deletions

View file

@ -490,14 +490,14 @@ contains
! Write incoming energy filter
if (t % n_filter_bins(FILTER_ENERGYIN) > 0) then
dims(1) = t % n_filter_bins(FILTER_ENERGYIN)
dims(1) = t % n_filter_bins(FILTER_ENERGYIN) + 1
call h5ltmake_dataset_double_f(temp_group, "energy_in", 1, &
dims, t % energy_in, hdf5_err)
end if
! Write outgoing energy filter
if (t % n_filter_bins(FILTER_ENERGYOUT) > 0) then
dims(1) = t % n_filter_bins(FILTER_ENERGYOUT)
dims(1) = t % n_filter_bins(FILTER_ENERGYOUT) + 1
call h5ltmake_dataset_double_f(temp_group, "energy_out", 1, &
dims, t % energy_out, hdf5_err)
end if

View file

@ -855,26 +855,22 @@ contains
end if
! Read incoming energy filter bins
if (len_trim(tally_(i) % filters % energy) > 0) then
call split_string(tally_(i) % filters % energy, words, n_words)
allocate(t % energy_in(n_words))
do j = 1, n_words
t % energy_in(j) = str_to_real(words(j))
end do
t % n_filter_bins(FILTER_ENERGYIN) = n_words - 1
if (associated(tally_(i) % filters % energy)) then
n = size(tally_(i) % filters % energy)
allocate(t % energy_in(n))
t % energy_in = tally_(i) % filters % energy
t % n_filter_bins(FILTER_ENERGYIN) = n - 1
n_filters = n_filters + 1
filters(n_filters) = FILTER_ENERGYIN
end if
! Read outgoing energy filter bins
if (len_trim(tally_(i) % filters % energyout) > 0) then
call split_string(tally_(i) % filters % energyout, words, n_words)
allocate(t % energy_out(n_words))
do j = 1, n_words
t % energy_out(j) = str_to_real(words(j))
end do
t % n_filter_bins(FILTER_ENERGYOUT) = n_words - 1
if (associated(tally_(i) % filters % energyout)) then
n = size(tally_(i) % filters % energyout)
allocate(t % energy_out(n))
t % energy_out = tally_(i) % filters % energyout
t % n_filter_bins(FILTER_ENERGYOUT) = n - 1
! Set tally estimator to analog
t % estimator = ESTIMATOR_ANALOG

View file

@ -18,8 +18,8 @@
<component name="material" type="word" length="250" default="''" />
<component name="mesh" type="integer" default="0" />
<component name="cellborn" type="word" length="250" default="''" />
<component name="energy" type="word" length="250" default="''" />
<component name="energyout" type="word" length="250" default="''" />
<component name="energy" type="double-array" />
<component name="energyout" type="double-array" />
</typedef>
<typedef name="tally_xml">