rcParams['image.interpolation'] = 'none' rcParams['image.origin'] = 'lower' rcParams['contour.negative_linestyle'] = 'solid' #rcParams['savefig.bbox'] = 'tight' # Math/LaTex fonts: # http://matplotlib.org/users/mathtext.html # http://matplotlib.org/users/usetex.html # Example: xlabel(r'$t \cdot l / V_{A,bc}$') rcParams[ 'mathtext.default'] = 'regular' # match the font used for regular text NT = 100 Ey_tx = numpy.zeros((NT + 1, 64 * 3), numpy.float) for i in range(NT + 1): dg1 = gkedgbasis.GkeDgLobatto1DPolyOrder2Basis( gkedata.GkeData("t1-plasma-beach_em_%d.h5" % i)) X, Ey = dg1.project(1) Ey_tx[i, :] = Ey dx = 1 / 400.0 T = pylab.linspace(0, 5e-9, NT + 1) TT, XX = pylab.meshgrid(T, X) # compute cutoff location dx100 = 1 / 100. deltaT = dx100 / 2.99792458e8 driveOmega = 3.14159265358979323846264338328 / 10 / deltaT xcutoff = 1 - math.pow(driveOmega / 25 * deltaT, 1 / 5.0) pylab.pcolormesh(TT, XX, Ey_tx.transpose()) pylab.plot([0, 5e-9], [xcutoff, xcutoff], 'k--', linewidth=2)
cnt = Counter() 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 # density d = gkedata.GkeData("s6-1x3v-mom_numDensity.h5") dg1Num = gkedgbasis.GkeDgLobatto1DPolyOrder2Basis(d) Xc, num = dg1Num.project(0) Xhr = linspace(Xc[0], Xc[-1], 200) # for plotting n = sin(2 * pi * Xhr) ux = 0.1 * cos(2 * pi * Xhr) uy = 0.2 * sin(2 * pi * Xhr) uz = 0.1 * cos(2 * pi * Xhr) Txx = 0.75 + 0.25 * cos(2 * pi * Xhr) Tyy = 0.75 + 0.25 * sin(2 * pi * Xhr) Tzz = 0.75 + 0.1 * sin(2 * pi * Xhr) Txy = 0.5 + 0.1 * sin(2 * pi * Xhr) Txz = 0.25 + 0.1 * sin(2 * pi * Xhr) Tyz = 0.125 + 0.1 * sin(2 * pi * Xhr)
# Math/LaTex fonts: # http://matplotlib.org/users/mathtext.html # http://matplotlib.org/users/usetex.html # Example: xlabel(r'$t \cdot l / V_{A,bc}$') rcParams[ 'mathtext.default'] = 'regular' # match the font used for regular text def IE(n, nu, E): return 0.5 * (E - nu**2 / n) # density plot d = gkedata.GkeData("../s5/s5-bgk-boltz_numDensity_5.h5") dg1 = gkedgbasis.GkeDgLobatto1DPolyOrder2Basis(d) Xc, n2 = dg1.project(0) d = gkedata.GkeData("../s6/s6-bgk-boltz_numDensity_5.h5") dg1 = gkedgbasis.GkeDgLobatto1DPolyOrder2Basis(d) Xc, n3 = dg1.project(0) nEul = loadtxt("../m2/m2-euler-shock-exact-density.txt") figure(1) plot(Xc, n2, '-r', label='Kn=1/100') plot(Xc, n3, '-b', label='Kn=1/1000') plot(nEul[:, 0], nEul[:, 1], 'k--') xlabel('X') ylabel('Density') legend(loc='best')
f1d = exp(-75 * (X - 0.5)**2) # Lagrange 1D, lobatto polyOrder 1 d = gkedata.GkeData("test1D_lag-1D-p1.h5") L1d_p1 = gkedgbasis.GkeDgLobatto1DPolyOrder1Basis(d) Xc, c0 = L1d_p1.project(0) figure(1) plot(Xc, c0, 'k-') plot(X, f1d, 'r-') title('Lagrange 1D, lobatto polyOrder 1') savefig('L1d_p1.png') # Lagrange 1D, lobatto polyOrder 2 d = gkedata.GkeData("test1D_lag-1D-p2.h5") L1d_p2 = gkedgbasis.GkeDgLobatto1DPolyOrder2Basis(d) Xc, c0 = L1d_p2.project(0) figure(2) plot(Xc, c0, 'k-') plot(X, f1d, 'r-') title('Lagrange 1D, lobatto polyOrder 2') savefig('L1d_p2.png') # Lagrange 1D, lobatto polyOrder 3 d = gkedata.GkeData("test1D_lag-1D-p3.h5") L1d_p3 = gkedgbasis.GkeDgLobatto1DPolyOrder3Basis(d) Xc, c0 = L1d_p3.project(0) figure(3) plot(Xc, c0, 'k-')