薛定谔方程数值模拟薛定谔方程数值模拟
我现在有一个C++的程序,但是我看不懂,求一高人帮我将它转成Matlab程序。 /***********************************************************
* 薛定谔方程数值模拟 *
* 2009.10.25 *
***********************************************************/
#include //要使用cin或cout进行输入输出;数据流输入/输出 #include //要使用sin、co...
薛定谔方程数值模拟
我现在有一个C++的程序,但是我看不懂,求一高人帮我将它转成Matlab程序。 /***********************************************************
* 薛定谔方程数值模拟 *
* 2009.10.25 *
***********************************************************/
#include //要使用cin或cout进行输入输出;数据流输入/输出 #include //要使用sin、cos、squrt、fabs等其中的某一个函数 #include //文件输入/输出
#include //调用标准库函数rand()返回0-32767间的一个int型随机数;定义杂项函数及内存分配函数
#include
#include //格式控制符
#include //包括一系列日期和时间处理函数
using namespace std;
#define pi 3.1415926
/*----------*
| 常量定义 |
*-----------*/
const double A=0.02; //振幅---自己根据情况定
const int L=60; //格子长度---自己根据情况定 const double beita=1.0; //特征非线性因子---自己根据情况定
const double C=1.0;
const double Lamada=1.6*C; //Lamada与C的关系---自己根据情况定
const int n=L; //Total Lattice site numbers
const double dt=1.0e-3; //时间步长选取(不清楚是无量纲还是有量纲)---自己根据情况定
const double eps=1.0e-5; //判断达到近似稳定条件--上下两层误差范围 /*------------*
| 子函数声明 |
*-------------*/
void initialization1(double *a,int n,double number0);
/*--------*
| 主函数 |
*---------*/
void main()
{//0
int i,j;
ofstream result("psi-norm1.txt"); //psi-1范数随n变化输出文件
double *E; //格子点处能量赋值---自己根据情况定
E=new double[n];
for(i=0;i
本文档为【薛定谔方程数值模拟】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑,
图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。