Xmipp
v3.23.11-Nereus
|
Functions | |
int | IirConvolveCanonicProgressive (double InputData[], double OutputData[], long SignalLength, double Kernel[], double RightInit[], long KernelLength) |
int | IirConvolveCanonicRegressive (double InputData[], double OutputData[], long SignalLength, double Kernel[], double LeftInit[], long KernelLength) |
int | IirConvolvePoles (double InputData[], double OutputData[], long SignalLength, double RealPoles[], long PoleNumber, enum TBoundaryConvention Convention, double Tolerance) |
int | IirConvolvePolesVolume (double *VolumeSource, double *VolumeDestination, long Nx, long Ny, long Nz, double RealPoles[], long PoleNumber, enum TBoundaryConvention Convention, double Tolerance, int *Status) |
int IirConvolveCanonicProgressive | ( | double | InputData[], |
double | OutputData[], | ||
long | SignalLength, | ||
double | Kernel[], | ||
double | RightInit[], | ||
long | KernelLength | ||
) |
Canonic progressive. Computes OutputData[i] = InputData[i] + SUM(k): OutputData[i + k + 1] * Kernel[k]. The input and the output have the same length. The kernel and the initial output values have the same length.
success: return(!ERROR); failure: return(ERROR)
int IirConvolveCanonicRegressive | ( | double | InputData[], |
double | OutputData[], | ||
long | SignalLength, | ||
double | Kernel[], | ||
double | LeftInit[], | ||
long | KernelLength | ||
) |
Canonic regressive. Computes OutputData[i] = InputData[i] + SUM(k): OutputData[i - k - 1] Kernel[k]. The input and the output have the same length. The kernel and the initial output values have the same length.
success: return(!ERROR); failure: return(ERROR)
int IirConvolvePoles | ( | double | InputData[], |
double | OutputData[], | ||
long | SignalLength, | ||
double | RealPoles[], | ||
long | PoleNumber, | ||
enum TBoundaryConvention | Convention, | ||
double | Tolerance | ||
) |
The filter is defined by its poles (1D). The input and the output have the same length. In-place processing is allowed. No more than two poles are allowed for a finite support boundary.
success: return(!ERROR); failure: return(ERROR)
int IirConvolvePolesVolume | ( | double * | VolumeSource, |
double * | VolumeDestination, | ||
long | Nx, | ||
long | Ny, | ||
long | Nz, | ||
double | RealPoles[], | ||
long | PoleNumber, | ||
enum TBoundaryConvention | Convention, | ||
double | Tolerance, | ||
int * | Status | ||
) |
The filter is defined by its poles (3D). No more than two poles are allowed for a finite support boundary. VolumeSource is a (double)volume of size (Nx x Ny x Nz). OutputData is a (double)volume of size (Nx x Ny x Nz).
success: return(!ERROR); failure: return(ERROR)