// poisson-kikuchi-square.edp // https://m-katsurada.sakura.ne.jp/program/fem/poisson-kikuchi-square.edp // 菊地文雄, 有限要素法概説, サイエンス社 int m=10; mesh Th=square(m,m); // plot(Th,wait=true,ps="Th.eps"); savemesh(Th,"Th.msh"); fespace Vh(Th,P1); Vh u,v; func f=1; func g1=0; func g2=0; solve Poisson(u,v)= int2d(Th)(dx(u)*dx(v)+dy(u)*dy(v)) -int2d(Th)(f*v) -int1d(Th,2,3)(g2*v) +on(1,4,u=g1); plot(u,wait=1,ps="poisson-kikuchi-square.eps"); //3次元鳥瞰図 //real [int] levels =0.0:0.01:1.0; //plot(u,dim=3,viso=levels,fill=true,wait=true);