24小时热门版块排行榜    

查看: 578  |  回复: 3

_yixiao

铁虫 (小有名气)

[交流] 【求助】建立体心晶胞结构代码,运行不出结果!已有2人参与

用VC++6.0编的一个建立体心立方晶胞结构的代码,编译成功了,但是运行不出结果,找不到错误所在,请高手帮忙一下啊!十分感谢!


void CBCC_CrystalDlg::OnCalculate()
{
        // TODO: Add your control notification handler code here

        FILE * fileFe_xyz = fopen("Fe_xyz.txt", "w+";
        fprintf(fileFe_xyz, "i  xbas  ybas  zbas\n";


       
        a=2.8664;  //Fe的晶格常数

        xunit[0]=0.0;  //以下为单胞原子坐标
        yunit[0]=0.0;
        zunit[0]=0.0;
        xunit[1]=0.50;
        yunit[1]=0.50;
        zunit[1]=0.50;  

        ncellx=M;   //ncellx,ncelly,ncellz是在xyz方向的重复次数,其中M任意整数        ncelly=M;
        ncellz=M;

        iatoms=0;
        natoms=2*ncellx*ncelly*ncellz;

        for(int i=0;i         {
           xbas=0;
               ybas=0;
           zbas=0;
        }


        for(ix=1;i<=ncellx;ix++)
        {
           for(iy=1;iy<=ncelly;iy++)
           {
              for(iz=1;iz<=ncellz;iz++)
              {
                 for(ibas=0;ibas<2;ibas++)
                 {
                xbas[iatoms]=(float(ix-1)+xunit[ibas])*a;
                ybas[iatoms]=(float(iy-1)+yunit[ibas])*a;
                zbas[iatoms]=(float(iz-1)+zunit[ibas])*a;
                iatoms=iatoms+1;
                 }
              }
           }
        }

       
        for(i=0;i         {
fprintf(fileFe_xyz, "%6d    %10.5f    %10.5f    %10.5f\n", i,xbas,ybas,zbas);

        }

        fclose(fileFe_xyz);

       
}



这是头文件中定义的变量及函数:

#define M 5
public:
        int i;
        int ix;
        int iy;
        int iz;
        int ncellx;
        int ncelly;
        int ncellz;
        int iatoms;
        int natoms;
        int ibas;
        double xunit[2];
        double yunit[2];
        double zunit[2];
        double a;
        double xbas[4000];
        double ybas[4000];
        double zbas[4000];


        void OnCalculate();

[ Last edited by _yixiao on 2010-6-3 at 20:01 ]
回复此楼

» 猜你喜欢

» 本主题相关价值贴推荐,对您同样有帮助:

信仰我所必须相信的
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

老虎大王

木虫 (著名写手)

★ ★
ghcacj(金币+2):谢谢 2010-06-04 08:42:10
呵呵呵。编程还要多练啊。

       for(ix=1;i<=ncellx;ix++)
这是什么啊?
2楼2010-06-03 19:17:52
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

_yixiao

铁虫 (小有名气)

呵呵不好意思了,没把变量说明白,我编辑了一下帖子,加了一些注释,忘多加帮助。
嗯,编程能力不太好,加上不是学这方面的,所以。。。
信仰我所必须相信的
3楼2010-06-03 20:03:50
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

老虎大王

木虫 (著名写手)

★ ★
_yixiao(金币+10):囧o(╯□╰)o,出结果了。。。十分感谢老虎大王! 2010-06-04 11:13:17
ghcacj(金币+2):谢谢 2010-06-04 14:40:37
晕。我的意思是说,我列出来的你那句话有毛病。你仔细看看。
4楼2010-06-04 10:45:44
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 _yixiao 的主题更新
普通表情 高级回复(可上传附件)
信息提示
请填处理意见