Free_ExtrudedAMRController Subroutine

public subroutine Free_ExtrudedAMRController(this)

Release the forest, the indicator and every mesh/geometry the controller emitted. The models' mesh and geometry pointers dangle afterwards if they were running on emitted ones, so free or stop using the models first.

Arguments

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

Calls

proc~~free_extrudedamrcontroller~~CallsGraph proc~free_extrudedamrcontroller Free_ExtrudedAMRController proc~releaseactive ReleaseActive proc~free_extrudedamrcontroller->proc~releaseactive

Contents


Source Code

  subroutine Free_ExtrudedAMRController(this)
    !! Release the forest, the indicator and every mesh/geometry the controller emitted. The
    !! models' mesh and geometry pointers dangle afterwards if they were running on emitted
    !! ones, so free or stop using the models first.
    implicit none
    class(ExtrudedAMRController),intent(inout) :: this

    call ReleaseActive(this)
    call this%forest%Free()
    call this%indicator%Free()
    if(allocated(this%energyWeights)) deallocate(this%energyWeights)
    if(allocated(this%winFirst)) deallocate(this%winFirst,this%winLast)
    if(allocated(this%winFirst3)) deallocate(this%winFirst3,this%winLast3)
    this%baseSurf => null()
    this%activeSurf => null()
    this%activeMesh => null()
    this%activeGeom => null()
    this%activeGeom2 => null()
    this%interp => null()
    this%levels => null()

  endsubroutine Free_ExtrudedAMRController