comparison +scheme/Elastic2dVariable.m @ 919:e30aaa4a3e09 feature/poroelastic

Bugfix in Elastic2dVariable.get_boundary_ops
author Martin Almquist <malmquist@stanford.edu>
date Wed, 28 Nov 2018 14:04:31 -0800
parents 14fee299ada2
children 72cd29107a9a
comparison
equal deleted inserted replaced
884:7d4f57725192 919:e30aaa4a3e09
513 % alpha = alpha(i,j) is the penalty strength for displacement BC. 513 % alpha = alpha(i,j) is the penalty strength for displacement BC.
514 tuning = 1.2; 514 tuning = 1.2;
515 LAMBDA = obj.LAMBDA; 515 LAMBDA = obj.LAMBDA;
516 MU = obj.MU; 516 MU = obj.MU;
517 517
518 phi = obj.phi{j};
519 h = obj.h(j);
520 h11 = obj.H11{j}*h;
521 gamma = obj.gamma{j};
522 dim = obj.dim; 518 dim = obj.dim;
523 519 theta_R = obj.theta_R{j};
524 a_lambda = dim/h11 + 1/(h11*phi); 520 theta_H = obj.theta_H{j};
525 a_mu_i = 2/(gamma*h); 521 theta_M = obj.theta_M{j};
526 a_mu_ij = 2/h11 + 1/(h11*phi); 522
523 a_lambda = dim/theta_H + 1/theta_R;
524 a_mu_i = 2/theta_M;
525 a_mu_ij = 2/theta_H + 1/theta_R;
527 526
528 d = @kroneckerDelta; % Kronecker delta 527 d = @kroneckerDelta; % Kronecker delta
529 db = @(i,j) 1-d(i,j); % Logical not of Kronecker delta 528 db = @(i,j) 1-d(i,j); % Logical not of Kronecker delta
530 alpha = @(i,k) d(i,k)*tuning*( d(i,j)* a_lambda*LAMBDA ... 529 alpha = @(i,j) tuning*( d(i,j)* a_lambda*LAMBDA ...
531 + d(i,j)* a_mu_i*MU ... 530 + d(i,j)* a_mu_i*MU ...
532 + db(i,j)*a_mu_ij*MU ); 531 + db(i,j)*a_mu_ij*MU );
532
533 varargout{i} = alpha; 533 varargout{i} = alpha;
534 otherwise 534 otherwise
535 error(['No such operator: operator = ' op{i}]); 535 error(['No such operator: operator = ' op{i}]);
536 end 536 end
537 end 537 end