destroy_5d Subroutine

private pure subroutine destroy_5d(me)

Destructor for bspline_5d class.

Type Bound

bspline_5d

Arguments

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

Called by

proc~~destroy_5d~~CalledByGraph proc~destroy_5d bspline_oo_module::bspline_5d%destroy_5d proc~finalize_5d bspline_oo_module::finalize_5d proc~finalize_5d->proc~destroy_5d proc~initialize_5d_auto_knots bspline_oo_module::bspline_5d%initialize_5d_auto_knots proc~initialize_5d_auto_knots->proc~destroy_5d proc~initialize_5d_specify_knots bspline_oo_module::bspline_5d%initialize_5d_specify_knots proc~initialize_5d_specify_knots->proc~destroy_5d proc~bspline_5d_constructor_auto_knots bspline_oo_module::bspline_5d_constructor_auto_knots proc~bspline_5d_constructor_auto_knots->proc~initialize_5d_auto_knots proc~bspline_5d_constructor_specify_knots bspline_oo_module::bspline_5d_constructor_specify_knots proc~bspline_5d_constructor_specify_knots->proc~initialize_5d_specify_knots interface~bspline_5d bspline_oo_module::bspline_5d interface~bspline_5d->proc~bspline_5d_constructor_auto_knots interface~bspline_5d->proc~bspline_5d_constructor_specify_knots

Source Code

    pure subroutine destroy_5d(me)

    implicit none

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

    me%nx    = 0_ip
    me%ny    = 0_ip
    me%nz    = 0_ip
    me%nq    = 0_ip
    me%nr    = 0_ip
    me%kx    = 0_ip
    me%ky    = 0_ip
    me%kz    = 0_ip
    me%kq    = 0_ip
    me%kr    = 0_ip
    me%inbvy = 1_ip
    me%inbvz = 1_ip
    me%inbvq = 1_ip
    me%inbvr = 1_ip
    me%iloy  = 1_ip
    me%iloz  = 1_ip
    me%iloq  = 1_ip
    me%ilor  = 1_ip
    if (allocated(me%bcoef))      deallocate(me%bcoef)
    if (allocated(me%tx))         deallocate(me%tx)
    if (allocated(me%ty))         deallocate(me%ty)
    if (allocated(me%tz))         deallocate(me%tz)
    if (allocated(me%tq))         deallocate(me%tq)
    if (allocated(me%tr))         deallocate(me%tr)
    if (allocated(me%work_val_1)) deallocate(me%work_val_1)
    if (allocated(me%work_val_2)) deallocate(me%work_val_2)
    if (allocated(me%work_val_3)) deallocate(me%work_val_3)
    if (allocated(me%work_val_4)) deallocate(me%work_val_4)
    if (allocated(me%work_val_5)) deallocate(me%work_val_5)

    end subroutine destroy_5d