def plotFrame(f): gkd = gkedata.GkeData("s3-dg-euler-rt_q_%d.h5" % f) dgd = gkedgbasis.GkeDgSerendip2DPolyOrder2Basis(gkd) Xc, Yc, rho = dgd.project(0) pylab.figure(1) pylab.pcolormesh(Xc, Yc, pylab.transpose(rho)) pylab.axis('image') pylab.gca().set_xticks([]) pylab.gca().set_yticks([]) pylab.axis('image') pylab.clim(35000, 65000) pylab.title('t = %g' % gkd.time) pylab.savefig('s3-dg-euler-rt_rho_%05d.png' % f, bbox_inches='tight') pylab.close()
if redraw: _fig_.canvas.draw() return _cbar_ def getXv(Xc, Vc): dx = (Xc[0,-1]-Xc[0,0])/(Xc.shape[1]-1) dv = (Vc[-1,0]-Vc[0,0])/(Vc.shape[0]-1) X1 = linspace(Xc[0,0]+0.5*dx, Xc[0,-1]-0.5*dx, Xc.shape[1]-1) V1 = linspace(Vc[0,0]+0.5*dv, Vc[-1,0]-0.5*dv, Vc.shape[0]-1) return X1, V1 # initial conditions d = gkedata.GkeData("r3-es-resonance_distfElc_0.h5") dg1 = gkedgbasis.GkeDgSerendip2DPolyOrder2Basis(d) Xc, Yc, fve0 = dg1.project(0) for i in range(0,21): print "Working on %d ..." % i d = gkedata.GkeData("r3-es-resonance_distfElc_%d.h5" % i ) dg1 = gkedgbasis.GkeDgSerendip2DPolyOrder2Basis(d) Xc, Yc, fve = dg1.project(0) X, V = getXv(Xc, Yc) figure(1) plot(V, fve[fve.shape[0]/2, :], 'r-') ylo, yup = gca().get_ylim() plot([1.0, 1.0], [ylo, yup], '--k') plot([2.0, 2.0], [ylo, yup], '--k') gca().set_ylim([0, 0.4])
figure(4) pcolormesh(Xc, Yc, transpose(c0)) axis('image') title('Lagrange 2D, lobatto polyOrder 4') savefig('L2d_p4.png') # Serendip 2D, polyOrder 1 d = gkedata.GkeData("test2D_ser-2D-p1.h5") S2d_p1 = gkedgbasis.GkeDgSerendip2DPolyOrder1Basis(d) Xc, Yc, c0 = S2d_p1.project(0) figure(5) pcolormesh(Xc, Yc, transpose(c0)) axis('image') title('Serendip 2D, polyOrder 1') savefig('S2d_p1.png') # Serendip 2D, polyOrder 2 d = gkedata.GkeData("test2D_ser-2D-p2.h5") S2d_p2 = gkedgbasis.GkeDgSerendip2DPolyOrder2Basis(d) Xc, Yc, c0 = S2d_p2.project(0) figure(6) pcolormesh(Xc, Yc, transpose(c0)) axis('image') title('Serendip 2D, polyOrder 2') savefig('S2d_p2.png') show()