sample

class AfterGenerator(gen, f_after=<function AfterGenerator.<lambda>>)[source]

Bases: BaseGenerator

cal_max_weight()[source]
generate(N)[source]
build_phsp_chain(decay_group)[source]

find common decay those mother particle mass is fixed

build_phsp_chain_sorted(st, final_mi, nodes)[source]

{A: [B,C, D], R: [B,C]} + {R: M} => ((mr, (mb, mc)), md)

create_cal_calangle(config, include_charge=False)[source]
gen_random_charge(N, random=True)[source]
generate_SDP(config, node, N=1000, include_charge=False, legacy=True)[source]
generate_SDP_p(config, node, N=1000, legacy=False)[source]
generate_phsp(config, N=1000, include_charge=False, cal_max=False)[source]
generate_phsp_p(config, N=1000, cal_max=False)[source]
generate_toy(config, N=1000, force=True, gen=None, gen_p=None, importance_f=None, max_N=100000, include_charge=False, cal_phsp_max=False)[source]

A more accurate method for generating toy data.

Parameters:
  • N – number of events.

  • force – if romove extra data generated.

  • gen – optional function for generate phase space, the return value is same as config.get_data.

  • gen_p – optional function for generate phase space, the return value is dict as {B: pb, C: pc, D: pd}.

  • max_N – max number of events for every try.

generate_toy2(config, *args, **kwargs)[source]
generate_toy_o(config, N=1000, force=True, max_N=100000)[source]
generate_toy_p(config, N=1000, force=True, gen_p=None, importance_f=None, max_N=100000, include_charge=False, cal_phsp_max=False)[source]

generate toy data momentum.

get_SDP_generator(config, node, include_charge=False, legacy=True)[source]
get_SDP_p_generator(config, node, legacy=True)[source]
get_SDP_p_generator_legacy(config, node)[source]
get_phsp_generator(config, include_charge=False, nodes=[])[source]
get_phsp_p_generator(config, nodes=[])[source]
perfer_node(struct, index, nodes)[source]

reorder struct to make node exisits in PhaseGenerator

single_sampling(phsp, amp, N)[source]
trans_node_order(struct, index, order_trans, level)[source]