chebft.c
来自「适合大型数值计算代码 现在网络上已经找不到了 购买需要20$」· C语言 代码 · 共 30 行
C
30 行
#include <math.h>#define NRANSI#include "nrutil.h"#define PI 3.141592653589793void chebft(float a, float b, float c[], int n, float (*func)(float)){ int k,j; float fac,bpa,bma,*f; f=vector(0,n-1); bma=0.5*(b-a); bpa=0.5*(b+a); for (k=0;k<n;k++) { float y=cos(PI*(k+0.5)/n); f[k]=(*func)(y*bma+bpa); } fac=2.0/n; for (j=0;j<n;j++) { double sum=0.0; for (k=0;k<n;k++) sum += f[k]*cos(PI*j*(k+0.5)/n); c[j]=fac*sum; } free_vector(f,0,n-1);}#undef PI#undef NRANSI
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?