test_abort_spawn Function

public pure function test_abort_spawn(ilut_spwn, part_type) result(abort)

Arguments

Type IntentOptional Attributes Name
integer(kind=n_int), intent(in) :: ilut_spwn(0:IlutBits%len_bcast)
integer, intent(in) :: part_type

Return Value logical


Contents

Source Code


Source Code

    pure function test_abort_spawn(ilut_spwn, part_type) result(abort)

        ! Should this spawn be aborted (according to the initiator
        ! criterion).
        !
        ! This function accepts an initiator spawn with probability
        ! (1.0 - alpha(ilut_spwn, part_type)), which can be artibrarily
        ! complicated.

        integer(n_int), intent(in) :: ilut_spwn(0:IlutBits%len_bcast)
        integer, intent(in) :: part_type
        logical :: abort

        ! If a particle comes from a site marked as an initiator, then it can
        ! live
        ! same if the spawn matrix element was large enough
        abort = .not. test_flag(ilut_spwn, get_initiator_flag(part_type))
    end function test_abort_spawn