�
H�g، � �� � G d � de � � Z G d� de� � Z G d� de� � Z G d� de� � Z G d� d e� � Z G d
� de � � Zedk rd
dlZ ej � � dS dS )c �$ � e Zd ZdZd� Zd� Zd� ZdS )�InverseLaplaceTransforma�
Inverse Laplace transform methods are implemented using this
class, in order to simplify the code and provide a common
infrastructure.
Implement a custom inverse Laplace transform algorithm by
subclassing :class:`InverseLaplaceTransform` and implementing the
appropriate methods. The subclass can then be used by
:func:`~mpmath.invertlaplace` by passing it as the *method*
argument.
c � � || _ d S �N)�ctx)�selfr s �n/home/asafur/pinokio/api/open-webui.git/app/env/lib/python3.11/site-packages/mpmath/calculus/inverselaplace.py�__init__z InverseLaplaceTransform.__init__ s
� ������ c � � t �)a
Determine the vector of Laplace parameter values needed for an
algorithm, this will depend on the choice of algorithm (de
Hoog is default), the algorithm-specific parameters passed (or
default ones), and desired time.
��NotImplementedError)r �t�kwargss r �calc_laplace_parameterz.InverseLaplaceTransform.calc_laplace_parameter �
� � "�!r
c � � t �)a
Compute the time domain solution, after computing the
Laplace-space function evaluations at the abscissa required
for the algorithm. Abscissa computed for one algorithm are
typically not useful for another algorithm.
r )r �fps r �calc_time_domain_solutionz1InverseLaplaceTransform.calc_time_domain_solution r r
N)�__name__�
__module__�__qualname__�__doc__r r r � r
r r r sK � � � � � �
�
�� � �"� "� "�"� "� "� "� "r
r c � � e Zd Zd� Zdd�ZdS )�FixedTalbotc � � | j � |� � | _ | j � |� d| j � � � � | _ d|v r|d | _ | j | _ nKt d| j j z � � | _ t dt d| j z � � � � | _ | j }| j j | _
| j | j _ |� d| j � dd� � |z � � | _ | j �
d | j j |d
z � � | _ | j � |d
� � | _ d| j d<