¿Cuáles son las restricciones en el argumento del divisor de scipy.signal.deconvolve para asegurar la estabilidad numérica?

Aquí está mi problema: voy a procesar los datos provenientes de un sistema para el cual tendré una buena idea de la respuesta al impulso. Habiendo usado Python para algunos scripts básicos antes, estoy conociendo las funciones scipy.signal.convolve y scipy.signal.deconvolve. Para poder tener confianza en mi solución final, me gustaría comprender sus requisitos y limitaciones.

Utilicé la siguiente prueba:
1. Construí una señal básica hecha de dos gaussianos.
2. Construí una respuesta de impulso gaussiana.
3. Convolucioné mi señal inicial con esta respuesta de impulso.
4. Deconvolví esta señal convuelta.
5. Comparé esta última señal con la inicial.
El resultado de esta prueba dependió en gran medida de cómo definí mi respuesta al impulso: o logré recuperar mi señal inicial, o la señal descontaminada fue fuertemente divergente.

Aquí está el código:
Uso python 3.4.2, numpy 1.8.2 y scipy 0.14.0.

import numpy as np from scipy import signal def gauss(x, amp = 1, mean = 0, sigma = 1): return amp * np.exp(-(x - mean)**2 / (2 * sigma**2)) step = 0.1 x_os = np.arange(0, 200 + step, step) low = -5 # lower bound of the interval for the impulse response up = 5 # upper bound of the interval for the impulse response x_ir = np.arange(low, up + step, step) y_os1 = gauss(x_os, 160, 80, 5.0) y_os2 = gauss(x_os, 20, 20, 2.0) y_os = y_os1 + y_os2 # original signal y_ir = gauss(x_ir, 1 / (np.sqrt(2 * np.pi)), 0.0, 1.0) # impulse response y_c = signal.convolve(y_os, y_ir, 'full') # convoluted signal y_d, _ = signal.deconvolve(y_c, y_ir) # deconvoluted signal 

En el código anterior, el argumento de divisor de scipy.signal.deconvolve es y_ir. Jugué con los parámetros que definen el intervalo en el que se define y_ir, por ejemplo, [bajo, arriba, paso]. Para mostrarte lo que me desconcierta, déjanos tomar los siguientes tres conjuntos:
1) [-5, 5, 0.1] ,
2) [-2, 2, 0.1] ,
3) y [-2, 2, 0.5] (tenga en cuenta que el paso no se cambió en la definición de y_os).

Las siguientes imágenes le muestran la señal original junto con la señal descontaminada para los tres conjuntos mencionados anteriormente.
Señal original
Comparación de las señales deconvoluidas

¿Alguien puede explicar este comportamiento? ¿Hay algún requisito en el divisor que garantice el comportamiento adecuado de esta función?

Gracias de antemano.