⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 wtn.cpp

📁 这是C++数值算法(第二版)的源代码,其中包含了目前一些比较常用的数值计算的算法.
💻 CPP
字号:
#include "nr.h"

void NR::wtn(Vec_IO_DP &a, Vec_I_INT &nn, const int isign,
	void wtstep(Vec_IO_DP &, const int, const int))
{
	int idim,i1,i2,i3,k,n,nnew,nprev=1,nt,ntot=1;

	int ndim=nn.size();
	for (idim=0;idim<ndim;idim++) ntot *= nn[idim];
	for (idim=0;idim<ndim;idim++) {
		n=nn[idim];
		Vec_DP wksp(n);
		nnew=n*nprev;
		if (n > 4) {
			for (i2=0;i2<ntot;i2+=nnew) {
				for (i1=0;i1<nprev;i1++) {
					for (i3=i1+i2,k=0;k<n;k++,i3+=nprev) wksp[k]=a[i3];
					if (isign >= 0) {
						for(nt=n;nt>=4;nt >>= 1)
							wtstep(wksp,nt,isign);
					} else {
						for(nt=4;nt<=n;nt <<= 1)
							wtstep(wksp,nt,isign);
					}
					for (i3=i1+i2,k=0;k<n;k++,i3+=nprev) a[i3]=wksp[k];
				}
			}
		}
		nprev=nnew;
	}
}

⌨️ 快捷键说明

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