Free_Vector2D_t Subroutine

public subroutine Free_Vector2D_t(this)

Arguments

TypeIntentOptionalAttributesName
class(Vector2D_t), intent(inout) :: this

Called by

proc~~free_vector2d_t~~CalledByGraph proc~free_vector2d_t Free_Vector2D_t proc~free_vector2d Free_Vector2D proc~free_vector2d->proc~free_vector2d_t

Contents

Source Code


Source Code

  subroutine Free_Vector2D_t(this)
    implicit none
    class(Vector2D_t),intent(inout) :: this

    this%interp => null()
    this%nVar = 0
    this%nElem = 0

    ! The public arrays point into the pools rather than owning storage (AMR Stage 6b), so they
    ! are nullified and the pools released.
    this%interior => null()
    this%boundary => null()
    this%boundaryNormal => null()
    this%extBoundary => null()
    this%avgBoundary => null()
    if(associated(this%pool_interior)) deallocate(this%pool_interior)
    if(associated(this%pool_boundary)) deallocate(this%pool_boundary)
    if(associated(this%pool_boundaryNormal)) deallocate(this%pool_boundaryNormal)
    if(associated(this%pool_extBoundary)) deallocate(this%pool_extBoundary)
    if(associated(this%pool_avgBoundary)) deallocate(this%pool_avgBoundary)

    deallocate(this%meta)
    deallocate(this%eqn)

  endsubroutine Free_Vector2D_t