comparison +scheme/Beam.m @ 339:3135e13ae509 feature/beams

Implemented free BC. Not tested yet.
author Jonatan Werpers <jonatan@werpers.com>
date Mon, 24 Oct 2016 17:01:34 +0200
parents bf801c3709be
children 25ae8333ce2b
comparison
equal deleted inserted replaced
338:3974dccff55b 339:3135e13ae509
89 [e, d1, d2, d3, s] = obj.get_boundary_ops(boundary); 89 [e, d1, d2, d3, s] = obj.get_boundary_ops(boundary);
90 gamm = obj.gamm; 90 gamm = obj.gamm;
91 delt = obj.delt; 91 delt = obj.delt;
92 92
93 switch type 93 switch type
94 case {'dn'} % Dirichlet-neumann boundary condition 94 case {'dn', 'clamped'} % Dirichlet-neumann boundary condition
95 alpha = obj.alpha; 95 alpha = obj.alpha;
96 96
97 % tau1 < -alpha^2/gamma 97 % tau1 < -alpha^2/gamma
98 % tuning = 2; 98 % tuning = 2;
99 tuning = 1.1; 99 tuning = 1.1;
109 109
110 closure = obj.Hi*(tau*e' + sig*d1'); 110 closure = obj.Hi*(tau*e' + sig*d1');
111 111
112 penalty{1} = -obj.Hi*tau; 112 penalty{1} = -obj.Hi*tau;
113 penalty{2} = -obj.Hi*sig; 113 penalty{2} = -obj.Hi*sig;
114
115
116 case {'free'}
117 a = -obj.alpha;
118
119 tau = s*a*d1;
120 sig = -s*a*e;
121
122 closure = obj.Hi*(tau*d2' + sig*d3');
123 penalty{1} = -obj.Hi*tau;
124 penalty{1} = -obj.Hi*sig;
125
126
114 otherwise % Unknown, boundary condition 127 otherwise % Unknown, boundary condition
115 error('No such boundary condition: type = %s',type); 128 error('No such boundary condition: type = %s',type);
116 end 129 end
117 end 130 end
118 131