common_manybeams_mve

radio_beam.commonbeam.common_manybeams_mve(beams, tolerance=0.0001, nsamps=200, epsilon=0.0005, auto_increase_epsilon=True, max_epsilon=0.001, max_iter=10)[source]

Calculate a common beam size using the Khachiyan Algorithm to find the minimum enclosing ellipse from all beam edges.

Parameters:
beamsBeams

Beams object.

tolerancefloat, optional

Allowed error range in the Khachiyan Algorithm. Decreasing the tolerance by an order of magnitude requires an order of magnitude more iterations to converge.

nsampsint, optional

Number of edge points to sample from each beam.

epsilonfloat, optional

Increase the radii of each beam by a factor of 1 + epsilon to ensure the common beam can marginally be deconvolved for all beams. Small deviations result from the finite sampling of points and the choice of the tolerance.

auto_increase_epsilonbool, optional

Re-run the algorithm when the solution cannot quite be deconvolved from from all the beams. When True, epsilon is slightly increased with each iteration until the common beam can be deconvolved from all beams. Default is True.

max_epsilonfloat, optional

Maximum epsilon value that is acceptable. Reached with max_iter. Default is 1e-3.

max_iterint, optional

Maximum number of times to increase epsilon to try finding a valid common beam solution.

Returns:
com_beamBeam

The common beam for all beams in the set.