SDDS ToolKit Programs and Libraries for C and Python
|
SDDS-format frequency-domain filter program.
This program applies various frequency-domain filters to SDDS-formatted data files. It supports multiple filtering options, including high-pass, low-pass, notch, bandpass, threshold, and file-based filters. Users can specify input and output files or use pipes for data processing.
Required | Description |
---|---|
-columns | Specifies columns to filter. |
Optional | Description |
---|---|
-pipe | Specifies input and/or output via pipes. |
-exclude | Specifies columns to exclude from filtering. |
-clipFrequencies | Clips frequencies outside the specified range. |
-threshold | Filters based on a threshold with optional range. |
-highpass | Applies a high-pass filter with a specified frequency range. |
-lowpass | Applies a low-pass filter with a specified frequency range. |
-notch | Applies a notch filter with specified characteristics. |
-bandpass | Applies a band-pass filter with specified characteristics. |
-filterFile | Specifies a filter based on external file data. |
-cascade | Specifies cascaded filter stages. |
-newColumns | Creates new columns for filtered data. |
-differenceColumns | Creates columns for differences between original and filtered data. |
-majorOrder | Specifies major order as either row or column . |
-cascade
must not precede filter definitions.-filterFile
:magnitude=<columnName>
real=<columnName>
and imaginary=<columnName>
Definition in file sddsfdfilter.c.
#include "mdb.h"
#include "SDDS.h"
#include "scan.h"
#include "fftpackC.h"
#include "SDDSutils.h"
#include <ctype.h>
Go to the source code of this file.
Functions | |
long | applyFilters (double *outputData, double *inputData, double *timeData, int64_t rows, FILTER_STAGE *filterStage, long filterStages) |
long | applyFilterStage (double *outputRI, double *inputRI, int64_t frequencies, double dfrequency, FILTER_STAGE *filterStage) |
void | addClipFilterOutput (double *outputRI, double *inputRI, int64_t frequencies, double dfrequency, CLIP_FILTER *filter) |
void | addThresholdFilterOutput (double *outputRI, double *inputRI, int64_t frequencies, double dfrequency, THRESHOLD_FILTER *filter) |
void | addHighPassFilterOutput (double *outputRI, double *inputRI, int64_t frequencies, double dfrequency, HILO_FILTER *filter) |
void | addLowPassFilterOutput (double *outputRI, double *inputRI, int64_t frequencies, double dfrequency, HILO_FILTER *filter) |
void | addNotchFilterOutput (double *outputRI, double *inputRI, int64_t frequencies, double dfrequency, NHBP_FILTER *filter) |
void | addBandPassFilterOutput (double *outputRI, double *inputRI, int64_t frequencies, double dfrequency, NHBP_FILTER *filter) |
void | addFileFilterOutput (double *outputRI, double *inputRI, int64_t frequencies, double dfrequency, FILE_FILTER *filter) |
int64_t | computeIndex (double value, double dfrequency, int64_t frequencies) |
void | addFilter (FILTER_STAGE *filterStage, long optionCode, SCANNED_ARG *scanned) |
int | main (int argc, char **argv) |
void addBandPassFilterOutput | ( | double * | outputRI, |
double * | inputRI, | ||
int64_t | frequencies, | ||
double | dfrequency, | ||
NHBP_FILTER * | filter ) |
Definition at line 648 of file sddsfdfilter.c.
void addClipFilterOutput | ( | double * | outputRI, |
double * | inputRI, | ||
int64_t | frequencies, | ||
double | dfrequency, | ||
CLIP_FILTER * | filter ) |
Definition at line 521 of file sddsfdfilter.c.
void addFileFilterOutput | ( | double * | outputRI, |
double * | inputRI, | ||
int64_t | frequencies, | ||
double | dfrequency, | ||
FILE_FILTER * | filter ) |
Definition at line 682 of file sddsfdfilter.c.
void addFilter | ( | FILTER_STAGE * | filterStage, |
long | optionCode, | ||
SCANNED_ARG * | scanned ) |
Definition at line 743 of file sddsfdfilter.c.
void addHighPassFilterOutput | ( | double * | outputRI, |
double * | inputRI, | ||
int64_t | frequencies, | ||
double | dfrequency, | ||
HILO_FILTER * | filter ) |
Definition at line 571 of file sddsfdfilter.c.
void addLowPassFilterOutput | ( | double * | outputRI, |
double * | inputRI, | ||
int64_t | frequencies, | ||
double | dfrequency, | ||
HILO_FILTER * | filter ) |
Definition at line 592 of file sddsfdfilter.c.
void addNotchFilterOutput | ( | double * | outputRI, |
double * | inputRI, | ||
int64_t | frequencies, | ||
double | dfrequency, | ||
NHBP_FILTER * | filter ) |
Definition at line 613 of file sddsfdfilter.c.
void addThresholdFilterOutput | ( | double * | outputRI, |
double * | inputRI, | ||
int64_t | frequencies, | ||
double | dfrequency, | ||
THRESHOLD_FILTER * | filter ) |
Definition at line 538 of file sddsfdfilter.c.
long applyFilters | ( | double * | outputData, |
double * | inputData, | ||
double * | timeData, | ||
int64_t | rows, | ||
FILTER_STAGE * | filterStage, | ||
long | filterStages ) |
Definition at line 439 of file sddsfdfilter.c.
long applyFilterStage | ( | double * | outputRI, |
double * | inputRI, | ||
int64_t | frequencies, | ||
double | dfrequency, | ||
FILTER_STAGE * | filterStage ) |
Definition at line 484 of file sddsfdfilter.c.
int64_t computeIndex | ( | double | value, |
double | dfrequency, | ||
int64_t | frequencies ) |
Definition at line 732 of file sddsfdfilter.c.
int main | ( | int | argc, |
char ** | argv ) |
Definition at line 198 of file sddsfdfilter.c.