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

📄 pfile.cpp

📁 An object-oriented C++ implementation of Davidson method for finding a few selected extreme eigenpai
💻 CPP
字号:

#include "../davidson/pFile.h"

PotentialFromFile::PotentialFromFile(const char *file, const GridParam *gp):
		   							 PotentialBase(){	typV=5;    PotentialFromFile::gp=gp;    ifstream inputV(file);    vfile = new ftyp[gp->GetNmax()];    for (int i=0; i<gp->GetNmax(); i++)    	inputV>>vfile[i];}

ntyp PotentialFromFile::Round(ftyp x) const
{    ftyp tmpx=(ntyp)x;    tmpx+=0.5;    tmpx=tmpx>x?tmpx-0.5:tmpx+0.5;    return (ntyp)tmpx;}ftyp PotentialFromFile::operator()(const ftyp &x) const{	ftyp jj=(x-gp->GetXmin())/gp->GetDx();    ntyp j=Round(jj);    return vfile[j];}ftyp PotentialFromFile::operator()(const ftyp &x, const ftyp &y) const{	ntyp k=ntyp((y-gp->GetYmin())/gp->GetDy()),    	 j=ntyp((x-gp->GetXmin())/gp->GetDx());    return vfile[gp->GetNy()*j+k];}ftyp PotentialFromFile::operator()(const ftyp &x, const ftyp &y, const ftyp &z) const{	ntyp l=ntyp((z-gp->GetZmin())/gp->GetDz()),    	 k=ntyp((y-gp->GetYmin())/gp->GetDy()),    	 j=ntyp((x-gp->GetXmin())/gp->GetDx());    return vfile[k*gp->GetNz()+j*gp->GetNy()*gp->GetNz()+l];}

PotentialFromFile::~PotentialFromFile()
{	delete[] vfile;}

⌨️ 快捷键说明

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