tridag.c
来自「Numerical Recipes 是国际公认的高水平的、关于数值计算的书」· C语言 代码 · 共 22 行
C
22 行
void tridag(a,b,c,r,u,n)
float a[],b[],c[],r[],u[];
int n;
{
int j;
float bet,*gam,*vector();
void nrerror(),free_vector();
gam=vector(1,n);
if (b[1] == 0.0) nrerror("Error 1 in TRIDAG");
u[1]=r[1]/(bet=b[1]);
for (j=2;j<=n;j++) {
gam[j]=c[j-1]/bet;
bet=b[j]-a[j]*gam[j];
if (bet == 0.0) nrerror("Error 2 in TRIDAG");
u[j]=(r[j]-a[j]*u[j-1])/bet;
}
for (j=(n-1);j>=1;j--)
u[j] -= gam[j+1]*u[j+1];
free_vector(gam,1,n);
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?