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

📄 schwarz.edp

📁 FreeFem++可以生成高质量的有限元网格。可以用于流体力学
💻 EDP
字号:
if ( mpisize != 2 ) {cout << " sorry number of processeur !=2 " << endl;exit(1);}verbosity=3;real pi=4*atan(1);int inside = 2;int outside = 1;border a(t=1,2){x=t;y=0;label=outside;};border b(t=0,1){x=2;y=t;label=outside;};border c(t=2,0){x=t ;y=1;label=outside;};border d(t=1,0){x = 1-t; y = t;label=inside;};border e(t=0, pi/2){ x= cos(t); y = sin(t);label=inside;};border e1(t=pi/2, 2*pi){ x= cos(t); y = sin(t);label=outside;}; int n=4;mesh th,TH;if (mpirank == 0)  { th = buildmesh( a(5*n) + b(5*n) + c(10*n) + d(5*n)); cout << " end th  " << endl;// processor(1) << th ;// processor(1) >> TH;}else { TH = buildmesh ( e(5*n) + e1(25*n) ); cout << " end TH  " << endl;// processor(0) << TH ;// processor(0) >> th; }broadcast(processor(0),th);broadcast(processor(1),TH);fespace vh(th,P1);fespace VH(TH,P1);vh u=0,v; VH U,V;int i=0;problem PB(U,V,init=i,solver=Cholesky) =     int2d(TH)( dx(U)*dx(V)+dy(U)*dy(V) )  + int2d(TH)( -V) + on(inside,U = u)  +    on(outside,U= 0 ) ;problem pb(u,v,init=i,solver=Cholesky) =     int2d(th)( dx(u)*dx(v)+dy(u)*dy(v) )  + int2d(th)( -v) + on(inside ,u = U) +    on(outside,u = 0 ) ;for ( i=0 ;i< 10; i++) {   cout << mpirank << " looP " << i << endl;  if (mpirank == 0)  {      PB;   processor(1) << U[];   processor(1) >> u[];  }  else   {   pb;   processor(0) >> U[];   processor(0) << u[];  }  //  if (mpirank==0)    // plot(U,u,wait=true,ps="Uu"+i+".eps");}; if (mpirank==0)      plot(U,u,ps="Uu.eps");

⌨️ 快捷键说明

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