pyprobe.analysis.base.differentiation_functions module#
Module containing functions for differentiating experimental data.
- get_x_sections(x)#
- Split the x data into uniformly sampled sections. - Parameters:
- x (NDArray[np.float64]) – The x values. 
- Returns:
- A list of slices representing the uniformly sampled sections. 
- Return type:
- List[slice] 
 
- get_dx(x)#
- Get the x sampling interval, assuming uniformly spaced x values. - Parameters:
- x (NDArray[np.float64]) – The x values. 
- Returns:
- The x sampling interval. 
- Return type:
- float 
- Raises:
- ValueError – If the x values are not uniformly spaced. 
 
- get_dy_and_counts(y, dy)#
- Get the y sampling interval, bin midpoints and counts. - Parameters:
- y (NDArray[np.float64]) – The y values. 
- dy (float) – The bin size. 
 
- Returns:
- The y sampling interval, bin midpoints and counts. 
- Return type:
- Tuple[float, NDArray[np.float64], NDArray[np.float64]] 
 
- y_sampling_interval(y)#
- Get the y sampling interval, \(\delta R\) in Feng et al.[1]. - Parameters:
- y (NDArray[np.float64]) – The y values. 
- Returns:
- The y sampling interval. 
- Return type:
- float 
 
- calc_gradient_with_LEAN(x, y, k, gradient)#
- Calculate the gradient of the data, assuming x is uniformly spaced. - Parameters:
- x (NDArray[np.float64]) – The x values. 
- y (NDArray[np.float64]) – The y values. 
- k (int) – The integer multiple to apply to the sampling interval for the bin size (\(\delta R\) in paper). 
- gradient (str) – The gradient to calculate, either ‘dydx’ or ‘dxdy’. 
 
- Returns:
- The x values, the y midpoints and the calculated gradient. 
- Return type:
- Tuple[NDArray[np.float64], NDArray[np.float64], NDArray[np.float64]] 
 
- smooth_gradient(gradient, alpha)#
- Smooth the calculated gradient. - Parameters:
- gradient (NDArray[np.float64]) – The gradient vector. 
- alpha (list[float]) – The smoothing coefficients. 
 
- Returns:
- The smoothed gradient vector. 
- Return type:
- NDArray[np.float64] 
 
References