Mercurial > repos > public > sbplib
diff +scheme/LaplaceCurvilinear.m @ 562:11d8d6ccbcd7 feature/grids/laplace_refactor
Add boundary inner products
author | Jonatan Werpers <jonatan@werpers.com> |
---|---|
date | Wed, 30 Aug 2017 15:43:51 +0200 |
parents | 3a13916f8ff0 |
children | 8f780429dab2 |
line wrap: on
line diff
--- a/+scheme/LaplaceCurvilinear.m Tue Aug 29 13:10:57 2017 +0200 +++ b/+scheme/LaplaceCurvilinear.m Wed Aug 30 15:43:51 2017 +0200 @@ -185,6 +185,11 @@ a22_n = spdiag(a22(I_n)); a12_n = spdiag(a12(I_n)); + s_w = sqrt((e_w'*x_v).^2 + (e_w'*y_v)'); + s_e = sqrt((e_e'*x_v).^2 + (e_e'*y_v)'); + s_s = sqrt((e_s'*x_u).^2 + (e_s'*y_u)'); + s_n = sqrt((e_n'*x_u).^2 + (e_n'*y_u)'); + obj.d_w = -1*(a11_w*obj.du_w' + a12_w*obj.dv_w')'; obj.d_e = (a11_e*obj.du_e' + a12_e*obj.dv_e')'; obj.d_s = -1*(a22_s*obj.dv_s' + a12_s*obj.du_s')'; @@ -193,6 +198,11 @@ obj.Dx = spdiag( y_v./J)*Du + spdiag(-y_u./J)*Dv; obj.Dy = spdiag(-x_v./J)*Du + spdiag( x_u./J)*Dv; + %% Boundary inner products + H_w = H_v*s_w; + H_e = H_v*s_e; + H_s = H_u*s_s; + H_n = H_u*s_n; % Misc. obj.m = m;