Participer au site avec un Tip
Rechercher
 

Améliorations / Corrections

Vous avez des améliorations (ou des corrections) à proposer pour ce document : je vous remerçie par avance de m'en faire part, cela m'aide à améliorer le site.

Emplacement :

Description des améliorations :

Vous êtes un professionnel et vous avez besoin d'une formation ? Machine Learning
avec Scikit-Learn
Voir le programme détaillé
Classe « BPoly »

Méthode scipy.interpolate.BPoly.from_derivatives

Signature de la méthode from_derivatives

def from_derivatives(xi, yi, orders=None, extrapolate=None) 

Description

help(BPoly.from_derivatives)

Construct a piecewise polynomial in the Bernstein basis,
compatible with the specified values and derivatives at breakpoints.

Parameters
----------
xi : array_like
    sorted 1-D array of x-coordinates
yi : array_like or list of array_likes
    ``yi[i][j]`` is the ``j``\ th derivative known at ``xi[i]``
orders : None or int or array_like of ints. Default: None.
    Specifies the degree of local polynomials. If not None, some
    derivatives are ignored.
extrapolate : bool or 'periodic', optional
    If bool, determines whether to extrapolate to out-of-bounds points
    based on first and last intervals, or to return NaNs.
    If 'periodic', periodic extrapolation is used. Default is True.

Notes
-----
If ``k`` derivatives are specified at a breakpoint ``x``, the
constructed polynomial is exactly ``k`` times continuously
differentiable at ``x``, unless the ``order`` is provided explicitly.
In the latter case, the smoothness of the polynomial at
the breakpoint is controlled by the ``order``.

Deduces the number of derivatives to match at each end
from ``order`` and the number of derivatives available. If
possible it uses the same number of derivatives from
each end; if the number is odd it tries to take the
extra one from y2. In any case if not enough derivatives
are available at one end or another it draws enough to
make up the total from the other end.

If the order is too high and not enough derivatives are available,
an exception is raised.

Examples
--------

>>> from scipy.interpolate import BPoly
>>> BPoly.from_derivatives([0, 1], [[1, 2], [3, 4]])

Creates a polynomial `f(x)` of degree 3, defined on ``[0, 1]``
such that `f(0) = 1, df/dx(0) = 2, f(1) = 3, df/dx(1) = 4`

>>> BPoly.from_derivatives([0, 1, 2], [[0, 1], [0], [2]])

Creates a piecewise polynomial `f(x)`, such that
`f(0) = f(1) = 0`, `f(2) = 2`, and `df/dx(0) = 1`.
Based on the number of derivatives provided, the order of the
local polynomials is 2 on ``[0, 1]`` and 1 on ``[1, 2]``.
Notice that no restriction is imposed on the derivatives at
``x = 1`` and ``x = 2``.

Indeed, the explicit form of the polynomial is::

    f(x) = | x * (1 - x),  0 <= x < 1
           | 2 * (x - 1),  1 <= x <= 2

So that f'(1-0) = -1 and f'(1+0) = 2



Vous êtes un professionnel et vous avez besoin d'une formation ? Programmation Python
Les compléments
Voir le programme détaillé