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

📄 sx01a.c

📁 解决很多地下水数值模拟问题
💻 C
字号:
main()            /* practice1 (D1 EXPLLICT METHOD)*/
{
float km,mu,lamda,dx,dt,time;
float ho[11],h[11];
 int i,np,npo1,ndt,mdt,icount,iprint;
 km=20.0;
 mu=0.002;
 np=11;
 npo1=np-1;
 ndt=80;
 dx=10.0;
 dt=0.005;
 lamda=km*dt/(mu*dx*dx);
 printf("lamda= %5.2f ",lamda);
 for(i=1;i<=np;i++)
  {ho[i]=16.0;}
 ho[0]=16.0;
 h[0]=16.0;
 h[np-1]=16.0;
 printf("\n");
 printf("time                      head\n");
 time=0.0;
 icount=1;
 iprint=4;
    for(mdt=1;mdt<=ndt;mdt++)
    {
      time=time+dt;
      h[0]=16.0+time*exp(-time);
      ho[0]=16.0+time*exp(-time);
      h[np-1]=16.0-time*exp(-time);
             for(i=2;i<=npo1;i++)
       {h[i]=lamda*(ho[i-1]+ho[i+1])+(1-2*lamda)*ho[i];}
       if(icount==iprint)
    {
      printf("%8.2f",time);
        for(i=1;i<=np;i++)
        {printf("%6.2f",h[i]);}
      printf("\n");
      icount=0;
     }
       for(i=2;i<=npo1;i++)
       ho[i]=h[i];
       icount=icount+1;
      }
return 0;
}



⌨️ 快捷键说明

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