|
30 | 30 | lparams['restol'] = 1E-10 |
31 | 31 |
|
32 | 32 | sparams = {} |
33 | | - sparams['maxiter'] = 20 |
| 33 | + sparams['maxiter'] = 2 |
34 | 34 |
|
35 | 35 | # setup parameters "in time" |
36 | | - t0 = 0 |
37 | | - dt = 0.01 |
38 | | - Tend = 100*dt |
39 | | - |
| 36 | + t0 = 0.0 |
| 37 | + Tend = 3.0 |
| 38 | + dt = Tend/float(154) |
| 39 | + |
40 | 40 | # This comes as read-in for the problem class |
41 | 41 | pparams = {} |
42 | | - pparams['nvars'] = [(2,500)] |
43 | | - pparams['cadv'] = 0.1 |
| 42 | + pparams['nvars'] = [(2,512)] |
| 43 | + pparams['cadv'] = 0.0 |
44 | 44 | pparams['cs'] = 1.0 |
45 | | - pparams['order_adv'] = 4 |
| 45 | + pparams['order_adv'] = 5 |
46 | 46 |
|
47 | 47 | # This comes as read-in for the transfer operations |
48 | 48 | tparams = {} |
|
55 | 55 | description['dtype_u'] = mesh |
56 | 56 | description['dtype_f'] = rhs_imex_mesh |
57 | 57 | description['collocation_class'] = collclass.CollGaussLobatto |
58 | | - description['num_nodes'] = 4 |
| 58 | + description['num_nodes'] = 2 |
59 | 59 | description['sweeper_class'] = imex_1st_order |
60 | 60 | description['level_params'] = lparams |
61 | 61 | description['hook_class'] = plot_solution |
|
79 | 79 |
|
80 | 80 | fig = plt.figure(figsize=(8,8)) |
81 | 81 |
|
82 | | - plt.plot(P.state.grid.x.centers, uex.values[0,:], '+', color='b', label='u (exact)') |
83 | | - plt.plot(P.state.grid.x.centers, uend.values[0,:], '-', color='b', label='u (SDC)') |
84 | | - plt.plot(P.state.grid.x.centers, uex.values[1,:], '+', color='r', label='p (exact)') |
85 | | - plt.plot(P.state.grid.x.centers, uend.values[1,:], '-', color='r', label='p (SDC)') |
86 | | - plt.legend() |
| 82 | + sigma_0 = 0.1 |
| 83 | + x_0 = 0.75 |
| 84 | + |
| 85 | + #plt.plot(P.mesh, uex.values[0,:], '+', color='b', label='u (exact)') |
| 86 | + #plt.plot(P.mesh, uend.values[0,:], '-', color='b', label='u (SDC)') |
| 87 | + #plt.plot(P.mesh, uex.values[1,:], '+', color='r', label='p (exact)') |
| 88 | + plt.plot(P.mesh, uend.values[1,:], '-', color='b', linewidth=2.0, label='p (SDC)') |
| 89 | + p_slow = np.exp(-np.square(P.mesh-x_0)/(sigma_0*sigma_0)) |
| 90 | + plt.plot(P.mesh, p_slow, '+', color='r', markersize=4, label='slow mode') |
| 91 | + plt.legend(loc=2) |
87 | 92 | plt.xlim([0, 1]) |
88 | | - plt.ylim([-1, 1]) |
89 | | - plt.show() |
| 93 | + plt.ylim([-0.1, 1.1]) |
| 94 | + #plt.show() |
| 95 | + plt.gcf().savefig('fwsw-sdc-K'+str(sparams['maxiter'])+'-M'+str(description['num_nodes'])+'.pdf', bbox_inches='tight') |
0 commit comments