// ............ verbosity=0; border a0(t=2*pi,0) {x=0.5*cos(t); y=0.5*sin(t); label=1;} border a1(t=20,-10) {x=t; y=10; label=2;} border a2(t=10,-10) {x=-10; y=t; label=2;} border a3(t=-10,20) {x=t; y=-10; label=2;} border a4(t=-10,10) {x=20; y=t; label=3;} // Ndelta controls the wall resolution //int Ndelta=32; int Ndelta=64; //int Ndelta=16; mesh Th= buildmesh(a0(Ndelta)+a1(30)+a2(20)+a3(30)+a4(20)); plot(Th,wait=0,ps="mesh.eps"); load "Element_P3"; fespace Vh(Th,P2); fespace Vh1(Th,P1); //fespace Vh(Th,P3); //fespace Vh1(Th,P2); real uinf=1.0; //free stream velocity real nu = 0.005; // kinematic viscosity real rho=1.0; //density real dt = 0.025; //time step int Ndt=4000; real area=1.0; real fDrag,fLift,CD,CL; real volumeDomain,error,time; volumeDomain=int2d(Th)(1.0); { ofstream myfile("forces.dat"); } Vh w, u = 0, v =0, uold, vold, vorticity; Vh1 w1, p = 0, q=0; time=0.0; for(int n=0;n