functions.c

来自「labview例子」· C语言 代码 · 共 34 行

C
34
字号
#include "math.h"
#include "functions.h"

const double PI = 3.1415926535897932384626433832795;

__declspec( dllexport ) short DFT_AmpAndPhase(double *data, unsigned long n, double *amp, double *pha)
{
	unsigned long k;
	double yr = 0.00;
	double yi = 0.00;
	
	double temp = 0.0;
	yr = 0.00;
	yi = 0.00;
	
	if(n<=0)
		return 1;
	else
	{	
		for(k=0; k<n; k++)
		{
			temp = 2.00*PI*k/n;
			yr += data[k]*cos(temp);
			yi += data[k]*sin(temp);  
		}		
		*amp = sqrt( pow(yr/n, 2) + pow(yi/n, 2) );		
		
		if(yr>=0)
			*pha = atan(-yi/yr)+PI/2;
		else 
			*pha = atan(-yi/yr)+3*PI/2;
		return 0;
	}	
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?