📄 analysis.h
字号:
double imaginary;
} NIComplexNumber;
#define _NIComplexNumber
#endif
#define ComplexNum NIComplexNumber
/* FFT table used by FFT, spectrum related functions */
typedef void* PFFTTable;
/*- Signal Generation --------------------------------------------------------*/
AnalysisLibErrType CVIFUNC Impulse (int n, double amp, int index, double x[]);
AnalysisLibErrType CVIFUNC Pulse (int n, double amp, int delay,
int width, double pulsePattern[]);
AnalysisLibErrType CVIFUNC Ramp (int n, double first, double last,
double rampvals[]);
AnalysisLibErrType CVIFUNC Triangle (int n, double amp, double tri[]);
AnalysisLibErrType CVIFUNC SinePattern (int n, double amp, double phase,
double cycles, double sine[]);
AnalysisLibErrType CVIFUNC Uniform (int n, int seed, double x[]);
AnalysisLibErrType CVIFUNC WhiteNoise (int n, double amp, int seed,
double noise[]);
AnalysisLibErrType CVIFUNC GaussNoise (int n, double sDev, int seed,
double noise[]);
AnalysisLibErrType CVIFUNC ArbitraryWave(int n, double amp, double f,
double *phase, const double wavetable[],
int wavesize, int wavetype, double x[]);
AnalysisLibErrType CVIFUNC Chirp (int n, double amp, double f1,
double f2, double x[]);
AnalysisLibErrType CVIFUNC SawtoothWave (int n, double amp, double f,
double *phase, double x[]);
AnalysisLibErrType CVIFUNC Sinc (int n, double amp, double delay,
double dt, double x[]);
AnalysisLibErrType CVIFUNC SineWave (int n, double amp, double f,
double *phase, double x[]);
AnalysisLibErrType CVIFUNC SquareWave (int n, double amp, double f,
double *phase, double duty, double x[]);
AnalysisLibErrType CVIFUNC TriangleWave (int n, double amp, double f,
double *phase, double x[]);
/*- 1-D Array Operations -----------------------------------------------------*/
AnalysisLibErrType CVIFUNC Clear1D (double x[], int n);
AnalysisLibErrType CVIFUNC Set1D (double x[], int n, double a);
AnalysisLibErrType CVIFUNC Copy1D (const double x[], int n, double y[]);
AnalysisLibErrType CVIFUNC Add1D (const double x[], const double y[], int n,
double z[]);
AnalysisLibErrType CVIFUNC Sub1D (const double x[], const double y[], int n,
double z[]);
AnalysisLibErrType CVIFUNC Mul1D (const double x[], const double y[], int n,
double z[]);
AnalysisLibErrType CVIFUNC Div1D (const double x[], const double y[], int n,
double z[]);
AnalysisLibErrType CVIFUNC Abs1D (const double x[], int n, double y[]);
AnalysisLibErrType CVIFUNC Neg1D (const double x[], int n, double y[]);
AnalysisLibErrType CVIFUNC LinEv1D (const double x[], int n, double a,
double b, double y[]);
AnalysisLibErrType CVIFUNC PolyEv1D (const double x[], int n,
const double coef[], int k, double y[]);
AnalysisLibErrType CVIFUNC Scale1D (const double x[], int n, double y[],
double *offset, double *scale);
AnalysisLibErrType CVIFUNC QScale1D (const double x[], int n, double y[],
double *scale);
AnalysisLibErrType CVIFUNC MaxMin1D (const double x[], int n, double *max,
int *imax, double *min, int *imin);
AnalysisLibErrType CVIFUNC Sum1D (const double x[], int n, double *sum);
AnalysisLibErrType CVIFUNC Prod1D (const double x[], int n, double *prod);
AnalysisLibErrType CVIFUNC Subset1D (const double x[], int n, int index,
int length, double y[]);
AnalysisLibErrType CVIFUNC Normal1D (const double x[], int n, double y[],
double *ave, double *sDev);
AnalysisLibErrType CVIFUNC Reverse (const double x[], int n, double y[]);
AnalysisLibErrType CVIFUNC Shift (const double x[], int n, int shifts,
double y[]);
AnalysisLibErrType CVIFUNC Clip (const double x[], int n, double upper,
double lower, double y[]);
AnalysisLibErrType CVIFUNC Sort (const double x[], int n, int direction,
double y[]);
/*- 2-D Array Operations -----------------------------------------------------*/
AnalysisLibErrType CVIFUNC Add2D (const void *x, const void *y, int n, int m,
void *z);
AnalysisLibErrType CVIFUNC Sub2D (const void *x, const void *y, int n, int m,
void *z);
AnalysisLibErrType CVIFUNC Mul2D (const void *x, const void *y, int n, int m,
void *z);
AnalysisLibErrType CVIFUNC Div2D (const void *x, const void *y, int n, int m,
void *z);
AnalysisLibErrType CVIFUNC LinEv2D (const void *x, int n, int m, double a,
double b, void *y);
AnalysisLibErrType CVIFUNC PolyEv2D (const void *x, int n, int m, double coef[],
int k, void *y);
AnalysisLibErrType CVIFUNC Scale2D (const void *x, int n, int m, void *y,
double *offset, double *scale);
AnalysisLibErrType CVIFUNC QScale2D (const void *x, int n, int m, void *y,
double *scale);
AnalysisLibErrType CVIFUNC MaxMin2D (const void *x, int n, int m, double *max,
int *imax, int *jmax, double *min,
int *imin, int *jmin);
AnalysisLibErrType CVIFUNC Sum2D (const void *x, int n, int m, double *sum);
AnalysisLibErrType CVIFUNC Normal2D (const void *x, int n, int m, void *y,
double *ave, double *sDev);
/*- Complex Number Operations ------------------------------------------------*/
AnalysisLibErrType CVIFUNC CxAdd (double xr, double xi, double yr, double yi,
double *zr, double *zi);
AnalysisLibErrType CVIFUNC CxSub (double xr, double xi, double yr, double yi,
double *zr, double *zi);
AnalysisLibErrType CVIFUNC CxMul (double xr, double xi, double yr, double yi,
double *zr, double *zi);
AnalysisLibErrType CVIFUNC CxDiv (double xr, double xi, double yr, double yi,
double *zr, double *zi);
AnalysisLibErrType CVIFUNC CxRecip (double xr, double xi, double *yr, double *yi);
AnalysisLibErrType CVIFUNC CxSqrt (double xr, double xi, double *yr, double *yi);
AnalysisLibErrType CVIFUNC CxLog (double xr, double xi, double *yr, double *yi);
AnalysisLibErrType CVIFUNC CxLn (double xr, double xi, double *yr, double *yi);
AnalysisLibErrType CVIFUNC CxPow (double xr, double xi, double a, double *yr,
double *yi);
AnalysisLibErrType CVIFUNC CxExp (double xr, double xi, double *yr, double *yi);
AnalysisLibErrType CVIFUNC ToPolar (double x, double y, double *mag,
double *phase);
AnalysisLibErrType CVIFUNC ToRect (double mag, double phase, double *x,
double *y);
/*- 1-D Complex Array Operations ---------------------------------------------*/
AnalysisLibErrType CVIFUNC CxAdd1D (const double xr[], const double xi[],
const double yr[], const double yi[],
int n, double zr[], double zi[]);
AnalysisLibErrType CVIFUNC CxSub1D (const double xr[], const double xi[],
const double yr[], const double yi[],
int n, double zr[], double zi[]);
AnalysisLibErrType CVIFUNC CxMul1D (const double xr[], const double xi[],
const double yr[], const double yi[],
int n, double zr[], double zi[]);
AnalysisLibErrType CVIFUNC CxDiv1D (const double xr[], const double xi[],
const double yr[], const double yi[],
int n, double zr[], double zi[]);
AnalysisLibErrType CVIFUNC CxLinEv1D (const double xr[], const double xi[],
int n, double ar, double ai, double br,
double bi, double yr[], double yi[]);
AnalysisLibErrType CVIFUNC ToPolar1D (const double x[], const double y[],
int n, double mag[], double phase[]);
AnalysisLibErrType CVIFUNC ToRect1D (const double mag[], const double phase[],
int n, double x[], double y[]);
/*- Frequency Domain Analysis ------------------------------------------------*/
AnalysisLibErrType CVIFUNC FFT (double x[], double y[], int n);
AnalysisLibErrType CVIFUNC InvFFT (double x[], double y[], int n);
AnalysisLibErrType CVIFUNC ReFFT (double x[], double y[], int n);
AnalysisLibErrType CVIFUNC ReInvFFT (double x[], double y[], int n);
AnalysisLibErrType CVIFUNC Spectrum (double x[], int n);
AnalysisLibErrType CVIFUNC FHT (double x[], int n);
AnalysisLibErrType CVIFUNC InvFHT (double x[], int n);
AnalysisLibErrType CVIFUNC CrossSpectrum(const double x[], const double y[],
int n, double zr[], double zi[]);
AnalysisLibErrType CVIFUNC FastHilbertTransform(double x[], int n);
AnalysisLibErrType CVIFUNC InvFastHilbertTransform(double x[], int n);
AnalysisLibErrType CVIFUNC FFT2D (const void *a, int rowA, int colA,
int fftSizeX, int fftSizeY, int shift, void *b);
AnalysisLibErrType CVIFUNC InvFFT2D (const void *a, int rowA, int colA,
int shifted, void *b);
AnalysisLibErrType CVIFUNC CxFFT2D (const void *a, int rowA, int colA,
int fftSizeX,int fftSizeY, int shift, void *b);
AnalysisLibErrType CVIFUNC CxInvFFT2D (const void *a, int rowA, int colA,
int shifted, void *b);
AnalysisLibErrType CVIFUNC DCT (const double x[], int n, int DCTSize, double y[]);
AnalysisLibErrType CVIFUNC InvDCT (const double y[], int n, double x[]);
AnalysisLibErrType CVIFUNC DST (const double x[], int n, int DSTSize, double y[]);
AnalysisLibErrType CVIFUNC InvDST (const double y[], int n, double x[]);
AnalysisLibErrType CVIFUNC DCT2D (const void *x, int rows, int cols, void *y);
AnalysisLibErrType CVIFUNC InvDCT2D (const void *y, int rows, int cols, void *x);
AnalysisLibErrType CVIFUNC DST2D (const void *x, int rows, int cols, void *y);
AnalysisLibErrType CVIFUNC InvDST2D (const void *y, int rows, int cols, void *x);
AnalysisLibErrType CVIFUNC ChirpZT (const double x[], int n,
NIComplexNumber startingPoint,
NIComplexNumber increment, int algorithm,
int m, NIComplexNumber y[]);
AnalysisLibErrType CVIFUNC CxChirpZT (const NIComplexNumber x[], int n,
NIComplexNumber startingPoint,
NIComplexNumber increment, int algorithm,
int m, NIComplexNumber y[]);
/*- FFT Tables ----------------*/
PFFTTable CVIFUNC CreateFFTTable (int n);
void CVIFUNC DestroyFFTTable (PFFTTable table);
AnalysisLibErrType CVIFUNC FFTEx (const double tmSig[], int nTmSig,
int fftSize, PFFTTable fftTable,
int shift, NIComplexNumber fft[]);
AnalysisLibErrType CVIFUNC InvFFTEx (const NIComplexNumber fft[], int fftSize,
PFFTTable fftTable, int shifted,
double tmSig[]);
AnalysisLibErrType CVIFUNC CxFFTEx (const NIComplexNumber tmSig[], int nTmSig,
int fftSize, PFFTTable fftTable,
int shift, NIComplexNumber fft[]);
AnalysisLibErrType CVIFUNC CxInvFFTEx (const NIComplexNumber fft[], int fftSize,
PFFTTable fftTable, int shifted,
NIComplexNumber tmSig[]);
/*- Time Domain Analysis -----------------------------------------------------*/
AnalysisLibErrType CVIFUNC Convolve (const double x[], int n, const double y[],
int m, double cxy[]);
AnalysisLibErrType CVIFUNC Correlate (const double x[], int n, const double y[],
int m, double rxy[]);
AnalysisLibErrType CVIFUNC Integrate (const double x[], int n, double dt,
double xInit, double xFinal, double y[]);
AnalysisLibErrType CVIFUNC Difference (const double x[], int n, double dt,
double xInit, double xFinal, double y[]);
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -