Mercurial > repos > public > sbplib
comparison +scheme/Hypsyst3dCurve.m @ 368:53abf04f5e4e feature/hypsyst
Made some small changes.
author | Ylva Rydin <ylva.rydin@telia.com> |
---|---|
date | Wed, 25 Jan 2017 15:37:12 +0100 |
parents | 7ada2db63268 |
children | 9d1fc984f40d |
comparison
equal
deleted
inserted
replaced
367:05947fc2505c | 368:53abf04f5e4e |
---|---|
10 Xi, Eta, Zeta | 10 Xi, Eta, Zeta |
11 | 11 |
12 Eta_xi, Zeta_xi, Xi_eta, Zeta_eta, Xi_zeta, Eta_zeta | 12 Eta_xi, Zeta_xi, Xi_eta, Zeta_eta, Xi_zeta, Eta_zeta |
13 | 13 |
14 X_xi, X_eta, X_zeta,Y_xi,Y_eta,Y_zeta,Z_xi,Z_eta,Z_zeta | 14 X_xi, X_eta, X_zeta,Y_xi,Y_eta,Y_zeta,Z_xi,Z_eta,Z_zeta |
15 Aev | 15 |
16 | 16 |
17 metric_terms | 17 metric_terms |
18 | 18 |
19 order % Order accuracy for the approximation | 19 order % Order accuracy for the approximation |
20 | 20 |
138 obj.Cevaluated = obj.evaluateCoefficientMatrix(obj.Chat,obj.X,obj.Y,obj.Z, obj.X_xi,obj.X_eta,obj.Y_xi,obj.Y_eta,obj.Z_xi,obj.Z_eta); | 138 obj.Cevaluated = obj.evaluateCoefficientMatrix(obj.Chat,obj.X,obj.Y,obj.Z, obj.X_xi,obj.X_eta,obj.Y_xi,obj.Y_eta,obj.Z_xi,obj.Z_eta); |
139 | 139 |
140 switch operator | 140 switch operator |
141 case 'upwind' | 141 case 'upwind' |
142 clear D1_xi D1_eta D1_zeta | 142 clear D1_xi D1_eta D1_zeta |
143 alphaA = max(eig(obj.Ahat(obj,obj.X(end), obj.Y(end),obj.Z(end), obj.X_eta(end),obj.X_zeta(end),obj.Y_eta(end),obj.Y_zeta(end),obj.Z_eta(end),obj.Z_zeta(end)))); | 143 alphaA = max(abs(eig(obj.Ahat(obj,obj.X(end), obj.Y(end),obj.Z(end), obj.X_eta(end),obj.X_zeta(end),obj.Y_eta(end),obj.Y_zeta(end),obj.Z_eta(end),obj.Z_zeta(end))))); |
144 alphaB = max(eig(obj.Bhat(obj,obj.X(end), obj.Y(end),obj.Z(end), obj.X_zeta(end),obj.X_xi(end),obj.Y_zeta(end),obj.Y_xi(end),obj.Z_zeta(end),obj.Z_xi(end)))); | 144 alphaB = max(abs(eig(obj.Bhat(obj,obj.X(end), obj.Y(end),obj.Z(end), obj.X_zeta(end),obj.X_xi(end),obj.Y_zeta(end),obj.Y_xi(end),obj.Z_zeta(end),obj.Z_xi(end))))); |
145 alphaC = max(eig(obj.Chat(obj,obj.X(end), obj.Y(end),obj.Z(end), obj.X_xi(end),obj.X_eta(end),obj.Y_xi(end),obj.Y_eta(end),obj.Z_xi(end),obj.Z_eta(end)))); | 145 alphaC = max(abs(eig(obj.Chat(obj,obj.X(end), obj.Y(end),obj.Z(end), obj.X_xi(end),obj.X_eta(end),obj.Y_xi(end),obj.Y_eta(end),obj.Z_xi(end),obj.Z_eta(end))))); |
146 | 146 |
147 Ap = (obj.Aevaluated+alphaA*I_N)/2; | 147 Ap = (obj.Aevaluated+alphaA*I_N)/2; |
148 Dmxi = kr(I_n, ops_xi.Dm, I_eta,I_zeta); | 148 Dmxi = kr(I_n, ops_xi.Dm, I_eta,I_zeta); |
149 diffSum=-Ap*Dmxi; | 149 diffSum=-Ap*Dmxi; |
150 clear Ap Dmxi | 150 clear Ap Dmxi |
403 Vi = BM.Vi; | 403 Vi = BM.Vi; |
404 Hi = BM.Hi; | 404 Hi = BM.Hi; |
405 D = BM.D; | 405 D = BM.D; |
406 e_ = BM.e_; | 406 e_ = BM.e_; |
407 | 407 |
408 | |
408 switch BM.boundpos | 409 switch BM.boundpos |
409 case {'l'} | 410 case {'l'} |
410 tau = sparse(obj.n*side,pos); | 411 tau = sparse(obj.n*side,pos); |
411 Vi_plus = Vi(1:pos,:); | 412 Vi_plus = Vi(1:pos,:); |
412 tau(1:pos,:) = -abs(D(1:pos,1:pos)); | 413 tau(1:pos,:) = -abs(D(1:pos,1:pos)); |