Mercurial > repos > public > sbplib
comparison +sbp/D1_nonequidistant_accurate.m @ 253:5b6dfa8a743d operator_remake
Bug fixes in nonequidistant class files.
author | Martin Almquist <martin.almquist@it.uu.se> |
---|---|
date | Wed, 07 Sep 2016 14:29:38 +0200 |
parents | 07fa0d6a05bb |
children |
comparison
equal
deleted
inserted
replaced
252:07fa0d6a05bb | 253:5b6dfa8a743d |
---|---|
11 | 11 |
12 methods | 12 methods |
13 function obj = D1_nonequidistant_accurate(m,L,order) | 13 function obj = D1_nonequidistant_accurate(m,L,order) |
14 | 14 |
15 if order == 4 | 15 if order == 4 |
16 [D1,H,grid,dx] = D1_4th_4BP_2shifts(m,L); | 16 [D1,H,grid,dx] = sbp.D1_4th_4BP_2shifts(m,L); |
17 elseif order == 6 | 17 elseif order == 6 |
18 [D1,H,grid,dx] = D1_6th_6BP_3shifts(m,L); | 18 [D1,H,grid,dx] = sbp.D1_6th_6BP_3shifts(m,L); |
19 elseif order == 8 | 19 elseif order == 8 |
20 [D1,H,grid,dx] = D1_8th_8BP_4shifts(m,L); | 20 [D1,H,grid,dx] = sbp.D1_8th_8BP_4shifts(m,L); |
21 elseif order == 10 | 21 elseif order == 10 |
22 [D1,H,grid,dx] = D1_10th_10BP_5shifts(m,L); | 22 [D1,H,grid,dx] = sbp.D1_10th_10BP_5shifts(m,L); |
23 elseif order == 12 | 23 elseif order == 12 |
24 [D1,H,grid,dx] = D1_12th_12BP_6shifts(m,L); | 24 [D1,H,grid,dx] = sbp.D1_12th_12BP_6shifts(m,L); |
25 else | 25 else |
26 error('Invalid operator order %d.',order); | 26 error('Invalid operator order %d.',order); |
27 end | 27 end |
28 | 28 |
29 HI = inv(H); | |
29 Q = H*D1; | 30 Q = H*D1; |
30 e_1 = sparse(m,1); | 31 e_1 = sparse(m,1); |
31 e_m = sparse(m,1); | 32 e_m = sparse(m,1); |
32 e_1(1) = 1; | 33 e_1(1) = 1; |
33 e_m(m) = 1; | 34 e_m(m) = 1; |