comparison +scheme/Wave2dCurve.m @ 303:f18142c1530b

Fixed Wave2dCurve for new operators. Some cleanup in d2_variable_4.
author Jonatan Werpers <jonatan@werpers.com>
date Thu, 13 Oct 2016 09:34:42 +0200
parents 19d0c9325a3e
children e070ebd94d9d 9d1fc984f40d
comparison
equal deleted inserted replaced
302:f39f98b59f61 303:f18142c1530b
28 lambda 28 lambda
29 end 29 end
30 30
31 methods 31 methods
32 function obj = Wave2dCurve(m,ti,order,c,opSet) 32 function obj = Wave2dCurve(m,ti,order,c,opSet)
33 default_arg('opSet',@sbp.Variable); 33 default_arg('opSet',@sbp.D2Variable);
34 default_arg('c', 1); 34 default_arg('c', 1);
35 35
36 if length(m) == 1 36 if length(m) == 1
37 m = [m m]; 37 m = [m m];
38 end 38 end
44 [u, h_u] = util.get_grid(0, 1, m_u); 44 [u, h_u] = util.get_grid(0, 1, m_u);
45 [v, h_v] = util.get_grid(0, 1, m_v); 45 [v, h_v] = util.get_grid(0, 1, m_v);
46 46
47 47
48 % Operators 48 % Operators
49 ops_u = opSet(m_u,h_u,order); 49 ops_u = opSet(m_u, {0, 1}, order);
50 ops_v = opSet(m_v,h_v,order); 50 ops_v = opSet(m_v, {0, 1}, order);
51 51
52 I_u = speye(m_u); 52 I_u = speye(m_u);
53 I_v = speye(m_v); 53 I_v = speye(m_v);
54 54
55 D1_u = sparse(ops_u.derivatives.D1); 55 D1_u = sparse(ops_u.D1);
56 D2_u = ops_u.derivatives.D2; 56 D2_u = ops_u.D2;
57 H_u = sparse(ops_u.norms.H); 57 H_u = sparse(ops_u.H);
58 Hi_u = sparse(ops_u.norms.HI); 58 Hi_u = sparse(ops_u.HI);
59 % M_u = sparse(ops_u.norms.M); 59 % M_u = sparse(ops_u.M);
60 e_l_u = sparse(ops_u.boundary.e_1); 60 e_l_u = sparse(ops_u.e_l);
61 e_r_u = sparse(ops_u.boundary.e_m); 61 e_r_u = sparse(ops_u.e_r);
62 d1_l_u = sparse(ops_u.boundary.S_1); 62 d1_l_u = sparse(ops_u.d1_l);
63 d1_r_u = sparse(ops_u.boundary.S_m); 63 d1_r_u = sparse(ops_u.d1_r);
64 64
65 D1_v = sparse(ops_v.derivatives.D1); 65 D1_v = sparse(ops_v.D1);
66 D2_v = ops_v.derivatives.D2; 66 D2_v = ops_v.D2;
67 H_v = sparse(ops_v.norms.H); 67 H_v = sparse(ops_v.H);
68 Hi_v = sparse(ops_v.norms.HI); 68 Hi_v = sparse(ops_v.HI);
69 % M_v = sparse(ops_v.norms.M); 69 % M_v = sparse(ops_v.M);
70 e_l_v = sparse(ops_v.boundary.e_1); 70 e_l_v = sparse(ops_v.e_l);
71 e_r_v = sparse(ops_v.boundary.e_m); 71 e_r_v = sparse(ops_v.e_r);
72 d1_l_v = sparse(ops_v.boundary.S_1); 72 d1_l_v = sparse(ops_v.d1_l);
73 d1_r_v = sparse(ops_v.boundary.S_m); 73 d1_r_v = sparse(ops_v.d1_r);
74
75 74
76 % Metric derivatives 75 % Metric derivatives
77 [X,Y] = ti.map(u,v); 76 [X,Y] = ti.map(u,v);
78 77
79 [x_u,x_v] = gridDerivatives(X,D1_u,D1_v); 78 [x_u,x_v] = gridDerivatives(X,D1_u,D1_v);