changeset 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 9c97eb0d61bf
files +sbp/D1_nonequidistant_accurate.m +sbp/D1_nonequidistant_minimal.m
diffstat 2 files changed, 12 insertions(+), 10 deletions(-) [+]
line wrap: on
line diff
--- a/+sbp/D1_nonequidistant_accurate.m	Wed Sep 07 13:40:41 2016 +0200
+++ b/+sbp/D1_nonequidistant_accurate.m	Wed Sep 07 14:29:38 2016 +0200
@@ -13,19 +13,20 @@
         function obj = D1_nonequidistant_accurate(m,L,order)
 
             if order == 4
-                [D1,H,grid,dx] = D1_4th_4BP_2shifts(m,L);
+                [D1,H,grid,dx] = sbp.D1_4th_4BP_2shifts(m,L);
             elseif order == 6
-                [D1,H,grid,dx] = D1_6th_6BP_3shifts(m,L);
+                [D1,H,grid,dx] = sbp.D1_6th_6BP_3shifts(m,L);
             elseif order == 8
-                [D1,H,grid,dx] = D1_8th_8BP_4shifts(m,L);
+                [D1,H,grid,dx] = sbp.D1_8th_8BP_4shifts(m,L);
             elseif order == 10
-                [D1,H,grid,dx] = D1_10th_10BP_5shifts(m,L);
+                [D1,H,grid,dx] = sbp.D1_10th_10BP_5shifts(m,L);
             elseif order == 12
-                [D1,H,grid,dx] = D1_12th_12BP_6shifts(m,L);
+                [D1,H,grid,dx] = sbp.D1_12th_12BP_6shifts(m,L);
             else
                 error('Invalid operator order %d.',order);
             end
 
+            HI = inv(H);
             Q = H*D1;
             e_1 = sparse(m,1);
             e_m = sparse(m,1);
--- a/+sbp/D1_nonequidistant_minimal.m	Wed Sep 07 13:40:41 2016 +0200
+++ b/+sbp/D1_nonequidistant_minimal.m	Wed Sep 07 14:29:38 2016 +0200
@@ -13,19 +13,20 @@
         function obj = D1_nonequidistant_minimal(m,L,order)
 
             if order == 4
-                [D1,H,grid,dx] = D1_minimal_4th_3BP_1shifts(m,L);
+                [D1,H,grid,dx] = sbp.D1_minimal_4th_3BP_1shifts(m,L);
             elseif order == 6
-                [D1,H,grid,dx] = D1_minimal_6th_5BP_2shifts(m,L);
+                [D1,H,grid,dx] = sbp.D1_minimal_6th_5BP_2shifts(m,L);
             elseif order == 8
-                [D1,H,grid,dx] = D1_minimal_8th_6BP_2shifts(m,L);
+                [D1,H,grid,dx] = sbp.D1_minimal_8th_6BP_2shifts(m,L);
             elseif order == 10
-                [D1,H,grid,dx] = D1_minimal_10th_8BP_3shifts(m,L);
+                [D1,H,grid,dx] = sbp.D1_minimal_10th_8BP_3shifts(m,L);
             elseif order == 12
-                [D1,H,grid,dx] = D1_minimal_12th_10BP_4shifts(m,L);
+                [D1,H,grid,dx] = sbp.D1_minimal_12th_10BP_4shifts(m,L);
             else
                 error('Invalid operator order %d.',order);
             end
 
+            HI = inv(H);
             Q = H*D1;
             e_1 = sparse(m,1);
             e_m = sparse(m,1);