pymor.tools.plot

Module Contents

pymor.tools.plot.adaptive(f, a, b, initial_num=10, max_num=2000, angle_tol=2, min_rel_dist=0.01, aspect_ratio=4 / 3, xscale='linear', yscale='linear')[source]

Adaptive sampling of a NumPy array-valued function.

Samples the function such that the piecewise linear interpolation looks “smooth”.

If the function is complex-valued, it is assumed that the magnitude and phase should be plotted.

Parameters:
  • f – The function to sample.

  • a – The left bound.

  • b – The right bound.

  • initial_num – Initial number of linearly spaced sampling points.

  • max_num – Maximum number of sampling points.

  • angle_tol – Tolerance for the maximum pointwise angle in degrees away from 180°.

  • min_rel_dist – Minimum distance between two neighboring points relative to the width of the plot.

  • aspect_ratio – Ratio between width and height of the plot, used in calculating angles and distances.

  • xscale – Whether to use linear ('linear') or logarithmic ('log') scale in the x-axis.

  • yscale – Whether to use linear ('linear') or logarithmic ('log') scale in the y-axis. If the function is complex-valued, yscale only refers to the magnitude (phase is always assumed to be in a linear scale).

Returns: