diff --git a/src/global.F90 b/src/global.F90 index a4c80daa79..1d8099630c 100644 --- a/src/global.F90 +++ b/src/global.F90 @@ -463,14 +463,7 @@ contains ! Deallocate tally-related arrays if (allocated(global_tallies)) deallocate(global_tallies) if (allocated(meshes)) deallocate(meshes) - if (allocated(tallies)) then - ! First call the clear routines - do i = 1, size(tallies) - call tallies(i) % clear() - end do - ! Now deallocate the tally array - deallocate(tallies) - end if + if (allocated(tallies)) deallocate(tallies) if (allocated(matching_bins)) deallocate(matching_bins) if (allocated(tally_maps)) deallocate(tally_maps) diff --git a/src/tally_header.F90 b/src/tally_header.F90 index 01dcd9bdb5..18b9219522 100644 --- a/src/tally_header.F90 +++ b/src/tally_header.F90 @@ -58,10 +58,6 @@ module tally_header integer :: offset = 0 ! Only used for distribcell filters integer, allocatable :: int_bins(:) real(8), allocatable :: real_bins(:) ! Only used for energy filters - - ! Type-Bound procedures - contains - procedure :: clear => tallyfilter_clear ! Deallocates TallyFilter end type TallyFilter !=============================================================================== @@ -129,81 +125,6 @@ module tally_header ! Tally precision triggers integer :: n_triggers = 0 ! # of triggers type(TriggerObject), allocatable :: triggers(:) ! Array of triggers - - ! Type-Bound procedures - contains - procedure :: clear => tallyobject_clear ! Deallocates TallyObject end type TallyObject - contains - -!=============================================================================== -! TALLYFILTER_CLEAR deallocates a TallyFilter element and sets it to its as -! initialized state. -!=============================================================================== - - subroutine tallyfilter_clear(this) - class(TallyFilter), intent(inout) :: this ! The TallyFilter to be cleared - - this % type = NONE - this % n_bins = 0 - if (allocated(this % int_bins)) & - deallocate(this % int_bins) - if (allocated(this % real_bins)) & - deallocate(this % real_bins) - - end subroutine tallyfilter_clear - -!=============================================================================== -! TALLYOBJECT_CLEAR deallocates a TallyObject element and sets it to its as -! initialized state. -!=============================================================================== - - subroutine tallyobject_clear(this) - class(TallyObject), intent(inout) :: this ! The TallyObject to be cleared - - integer :: i ! Loop Index - - ! This routine will go through each item in TallyObject and set the value - ! to its default, as-initialized values, including deallocations. - this % name = "" - - if (allocated(this % filters)) then - do i = 1, size(this % filters) - call this % filters(i) % clear() - end do - deallocate(this % filters) - end if - - if (allocated(this % stride)) & - deallocate(this % stride) - - this % find_filter = 0 - - this % n_nuclide_bins = 0 - if (allocated(this % nuclide_bins)) & - deallocate(this % nuclide_bins) - this % all_nuclides = .false. - - this % n_score_bins = 0 - if (allocated(this % score_bins)) & - deallocate(this % score_bins) - if (allocated(this % moment_order)) & - deallocate(this % moment_order) - this % n_user_score_bins = 0 - - if (allocated(this % results)) & - deallocate(this % results) - - this % reset = .false. - - this % n_realizations = 0 - - if (allocated(this % triggers)) & - deallocate (this % triggers) - - this % n_triggers = 0 - - end subroutine tallyobject_clear - end module tally_header