예제 #1
0
def test_list_charge_conjugate_decays():
    p = DecFileParser(DIR / '../data/test_Bd2DmTauNu_Dm23PiPi0_Tau2MuNu.dec')
    p.parse()

    assert p.list_charge_conjugate_decays() == [
        'MyD+', 'MyTau+', 'Mya_1-', 'anti-B0sig'
    ]
예제 #2
0
def test_list_charge_conjugate_decays():
    p = DecFileParser(DIR / "../data/test_Bd2DmTauNu_Dm23PiPi0_Tau2MuNu.dec")
    p.parse()

    assert p.list_charge_conjugate_decays() == [
        "MyD+",
        "MyTau+",
        "Mya_1-",
        "anti-B0sig",
    ]
예제 #3
0
def test_with_missing_info():
    """
    This decay file misses a ChargeConj statement relating the particle aliases
    Xi_cc+sig and anti-Xi_cc-sig. As a consequence, only 3 decays are parsed
    and the following warning is issued:
    ``
    Corresponding 'Decay' statement for 'CDecay' statement(s) of following particle(s) not found:
    anti-Xi_cc-sig.
    Skipping creation of these charge-conjugate decay trees.
      warnings.warn(msg)
    ``
    """
    p = DecFileParser(DIR / '../data/test_Xicc2XicPiPi.dec')
    p.parse()

    # Decay of anti-Xi_cc-sig missing
    assert p.number_of_decays == 3
    assert 'anti-Xi_cc-sig' not in p.list_decay_mother_names()

    # CDecay statements
    assert 'anti-Xi_cc-sig' in p.list_charge_conjugate_decays()