changeset 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
files +scheme/LaplaceCurvilinear.m
diffstat 1 files changed, 10 insertions(+), 0 deletions(-) [+]
line wrap: on
line diff
diff -r 3a13916f8ff0 -r 11d8d6ccbcd7 +scheme/LaplaceCurvilinear.m
--- 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;