Next: bj0, Previous: bi1, Up: Internal Routines [Contents][Index]

`bisect([`

`x`,] `y`, `values` [, axis=`axis`,
pos=`pos`, width=`width`])

Calculates bisector positions in curves interpolated between data points
with coordinates `(`

, along the indicated
`x`,`y`)

(which, if specified, must be a single scalar) at the
indicated `axis`

. The `values`

coordinates must be
in ascending order, with one value for each value of `x`

along the indicated `y`

. Interpolation is done with
natural cubic splines. Here, a bisector is a curve that lies
horizontally midway between two branches straddling a local minimum of a
curve.
`axis`

If

is not specified, then the `axis`

is
treated as if it is a one-dimensional array.
`data`

If

is specified, then it must have a single element,
which indicates at what coordinate along the indicated `pos`

the search for the bisectors must begin. This is useful if a horizontal
line at the desired level intersects a curve from
`axis``(`

in more than two places, which means that there
are at least two bisectors: By specifying `x`,`y`)

you can
select which bisector to look for. If no `pos`

is specified,
then the search for the bisector is started at the location of the
absolute minimum.
`pos`

If

is specified, then the profile widths (the
distance between the two branches) corresponding to the bisector level
are returned in it.
`width`

Note: Bisectors are only sought *between* the data values: no
bisectors are found before the first or after the last element of each
treated profile. If no bisector is found at the sought level, then
-1 is returned for the bisector position and 0 for the bisector
width.

See also: cspline, Interpolation

Next: bj0, Previous: bi1, Up: Internal Routines [Contents][Index]