destroy_4d Subroutine

private pure subroutine destroy_4d(me)

Destructor for bspline_4d class.

Type Bound

bspline_4d

Arguments

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

Called by

proc~~destroy_4d~~CalledByGraph proc~destroy_4d bspline_oo_module::bspline_4d%destroy_4d proc~finalize_4d bspline_oo_module::finalize_4d proc~finalize_4d->proc~destroy_4d proc~initialize_4d_auto_knots bspline_oo_module::bspline_4d%initialize_4d_auto_knots proc~initialize_4d_auto_knots->proc~destroy_4d proc~initialize_4d_specify_knots bspline_oo_module::bspline_4d%initialize_4d_specify_knots proc~initialize_4d_specify_knots->proc~destroy_4d proc~bspline_4d_constructor_auto_knots bspline_oo_module::bspline_4d_constructor_auto_knots proc~bspline_4d_constructor_auto_knots->proc~initialize_4d_auto_knots proc~bspline_4d_constructor_specify_knots bspline_oo_module::bspline_4d_constructor_specify_knots proc~bspline_4d_constructor_specify_knots->proc~initialize_4d_specify_knots interface~bspline_4d bspline_oo_module::bspline_4d interface~bspline_4d->proc~bspline_4d_constructor_auto_knots interface~bspline_4d->proc~bspline_4d_constructor_specify_knots

Source Code

    pure subroutine destroy_4d(me)

    implicit none

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

    me%nx    = 0_ip
    me%ny    = 0_ip
    me%nz    = 0_ip
    me%nq    = 0_ip
    me%kx    = 0_ip
    me%ky    = 0_ip
    me%kz    = 0_ip
    me%kq    = 0_ip
    me%inbvy = 1_ip
    me%inbvz = 1_ip
    me%inbvq = 1_ip
    me%iloy  = 1_ip
    me%iloz  = 1_ip
    me%iloq  = 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%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)

    end subroutine destroy_4d