📄 xcyclic.c
字号:
/* Driver for routine cyclic */#include <stdio.h>#define NRANSI#include "nr.h"#include "nrutil.h"#define N 20int main(void){ float alpha,beta,d,*a,*b,*c,*r,*x,**aa; int i,j,*indx; long idum=(-23); indx=ivector(1,N); a=vector(1,N); b=vector(1,N); c=vector(1,N); r=vector(1,N); x=vector(1,N); aa=matrix(1,N,1,N); for (i=1;i<=N;i++) for (j=1;j<=N;j++) aa[i][j]=0.0; for (i=1;i<=N;i++) { b[i]=ran2(&idum); aa[i][i]=b[i]; r[i]=ran2(&idum); } for (i=1;i<N;i++) { a[i+1]=ran2(&idum); aa[i+1][i]=a[i+1]; c[i]=ran2(&idum); aa[i][i+1]=c[i]; } alpha=ran2(&idum); aa[N][1]=alpha; beta=ran2(&idum); aa[1][N]=beta; cyclic(a,b,c,alpha,beta,r,x,N); ludcmp(aa,N,indx,&d); lubksb(aa,N,indx,r); for (i=1;i<=N;i++) printf("%4d %12.6e\n",i,(x[i]-r[i])/(x[i]+r[i])); free_matrix(aa,1,N,1,N); free_vector(x,1,N); free_vector(r,1,N); free_vector(c,1,N); free_vector(b,1,N); free_vector(a,1,N); free_ivector(indx,1,N); return 0;}#undef NRANSI
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -