Mercurial > repos > public > sbplib
comparison +scheme/Elastic2dCurvilinearAnisotropicUpwind.m @ 1275:8ff3a95ad7cc feature/poroelastic
Change metric computation in CurvilinearUpwind so that one can use odd orders for the diffOp
author | Martin Almquist <malmquist@stanford.edu> |
---|---|
date | Wed, 03 Jun 2020 10:29:53 -0700 |
parents | 15865fbda16e |
children |
comparison
equal
deleted
inserted
replaced
1274:8aa0909125a4 | 1275:8ff3a95ad7cc |
---|---|
104 m = g.size(); | 104 m = g.size(); |
105 m_tot = g.N(); | 105 m_tot = g.N(); |
106 | 106 |
107 % 1D operators | 107 % 1D operators |
108 opSetMetric = {@sbp.D2VariableCompatible, @sbp.D2VariableCompatible}; | 108 opSetMetric = {@sbp.D2VariableCompatible, @sbp.D2VariableCompatible}; |
109 orderMetric = ceil(order/2)*2; | |
109 m_u = m(1); | 110 m_u = m(1); |
110 m_v = m(2); | 111 m_v = m(2); |
111 ops_u = opSetMetric{1}(m_u, {0, 1}, order); | 112 ops_u = opSetMetric{1}(m_u, {0, 1}, orderMetric); |
112 ops_v = opSetMetric{2}(m_v, {0, 1}, order); | 113 ops_v = opSetMetric{2}(m_v, {0, 1}, orderMetric); |
113 | 114 |
114 h_u = ops_u.h; | 115 h_u = ops_u.h; |
115 h_v = ops_v.h; | 116 h_v = ops_v.h; |
116 | 117 |
117 I_u = speye(m_u); | 118 I_u = speye(m_u); |