pull_particle_from_particles_on_mype Subroutine

public subroutine pull_particle_from_particles_on_mype(ipart)

Arguments

Type IntentOptional Attributes Name
integer, intent(in) :: ipart

Called by

proc~~pull_particle_from_particles_on_mype~~CalledByGraph proc~pull_particle_from_particles_on_mype pull_particle_from_particles_on_mype proc~comm_particles comm_particles proc~comm_particles->proc~pull_particle_from_particles_on_mype proc~destroy_particles destroy_particles proc~comm_particles->proc~destroy_particles proc~comm_particles_global comm_particles_global proc~comm_particles_global->proc~pull_particle_from_particles_on_mype proc~destroy_particles->proc~pull_particle_from_particles_on_mype proc~advance_particles advance_particles proc~advance_particles->proc~comm_particles proc~handle_particles handle_particles proc~handle_particles->proc~comm_particles_global proc~handle_particles->proc~advance_particles proc~particles_finish particles_finish proc~particles_finish->proc~destroy_particles proc~read_particles_snapshot read_particles_snapshot proc~read_particles_snapshot->proc~comm_particles_global proc~advance advance proc~advance->proc~handle_particles proc~main main proc~main->proc~handle_particles proc~main->proc~read_particles_snapshot proc~timeintegration timeintegration proc~main->proc~timeintegration proc~timeintegration->proc~advance program~agile agile program~agile->proc~main

Source Code

  subroutine pull_particle_from_particles_on_mype(ipart)
    implicit none

    integer, intent(in)            :: ipart
    integer                        :: i

    do i=1,nparticles_on_mype
      if (particles_on_mype(i) == ipart) then
        particles_on_mype(i) = particles_on_mype(nparticles_on_mype)
        exit
      end if
    end do

    nparticles_on_mype = nparticles_on_mype - 1

  end subroutine pull_particle_from_particles_on_mype