destroy_6d Subroutine

private pure elemental subroutine destroy_6d(me)

Destructor for a linear_interp_6d class.

Type Bound

linear_interp_6d

Arguments

Type IntentOptional Attributes Name
class(linear_interp_6d), intent(inout) :: me

Called by

proc~~destroy_6d~~CalledByGraph proc~destroy_6d linear_interpolation_module::linear_interp_6d%destroy_6d proc~finalize_6d linear_interpolation_module::finalize_6d proc~finalize_6d->proc~destroy_6d proc~initialize_6d linear_interpolation_module::linear_interp_6d%initialize_6d proc~initialize_6d->proc~destroy_6d

Source Code

    pure elemental subroutine destroy_6d(me)

    implicit none

    class(linear_interp_6d),intent(inout) :: me

    if (allocated(me%f)) deallocate(me%f)
    if (allocated(me%x)) deallocate(me%x)
    if (allocated(me%y)) deallocate(me%y)
    if (allocated(me%z)) deallocate(me%z)
    if (allocated(me%q)) deallocate(me%q)
    if (allocated(me%r)) deallocate(me%r)
    if (allocated(me%s)) deallocate(me%s)
    me%ilox = 1
    me%iloy = 1
    me%iloz = 1
    me%iloq = 1
    me%ilor = 1
    me%ilos = 1
    me%initialized = .false.

    end subroutine destroy_6d