MultiChannelIntegrand

class MultiChannelIntegrand : public madspace::FunctionGenerator

Evaluates several Integrand channels on one merged batch.

Partitions the batch by the per-channel counts, runs each Integrand on its slice and concatenates the results, the same pattern as MultiChannelMapping.

Arguments

  • the union of the channel integrands’ arguments, plus the per-channel batch sizes.

Returns

  • the concatenated per-event quantities, plus the per-channel sizes when return_sizes is set.

References

Public Functions

MultiChannelIntegrand(const std::vector<std::shared_ptr<Integrand>> &integrands, bool return_sizes = false)
Parameters:
  • integrands – The per-channel integrands.

  • return_sizes – If true, also return the per-channel batch sizes.