Mercurial > repos > public > sbplib
comparison +scheme/ViscoElastic2d.m @ 1311:b2e84fe336d8 feature/poroelastic
Move common code for displacement and traction BC outside of switch statement
author | Martin Almquist <malmquist@stanford.edu> |
---|---|
date | Mon, 20 Jul 2020 22:21:57 -0700 |
parents | eb015fe9605b |
children | 6d64b57caf46 |
comparison
equal
deleted
inserted
replaced
1310:eb015fe9605b | 1311:b2e84fe336d8 |
---|---|
270 C = obj.C; | 270 C = obj.C; |
271 Eu = obj.Eu; | 271 Eu = obj.Eu; |
272 eU = obj.eU; | 272 eU = obj.eU; |
273 eGamma = obj.eGamma; | 273 eGamma = obj.eGamma; |
274 | 274 |
275 % Get elastic closure and penalty | |
276 [closure, penalty] = obj.elasticObj.boundary_condition(boundary, bc, tuning); | |
277 closure = Eu*closure*Eu'; | |
278 penalty = Eu*penalty; | |
279 | |
280 switch component | |
281 case 't' | |
282 dir = obj.getTangent(boundary); | |
283 case 'n' | |
284 dir = obj.getNormal(boundary); | |
285 case 1 | |
286 dir = {1, 0}; | |
287 case 2 | |
288 dir = {0, 1}; | |
289 end | |
290 | |
275 switch type | 291 switch type |
276 case {'F','f','Free','free','traction','Traction','t','T'} | 292 case {'F','f','Free','free','traction','Traction','t','T'} |
277 | |
278 % Get elastic closure and penalty | |
279 [closure, penalty] = obj.elasticObj.boundary_condition(boundary, bc, tuning); | |
280 closure = Eu*closure*Eu'; | |
281 penalty = Eu*penalty; | |
282 | |
283 switch component | |
284 case 't' | |
285 dir = obj.getTangent(boundary); | |
286 case 'n' | |
287 dir = obj.getNormal(boundary); | |
288 case 1 | |
289 dir = {1, 0}; | |
290 case 2 | |
291 dir = {0, 1}; | |
292 end | |
293 | 293 |
294 % Add viscous part of closure | 294 % Add viscous part of closure |
295 for i = 1:dim | 295 for i = 1:dim |
296 for j = 1:dim | 296 for j = 1:dim |
297 for k = 1:dim | 297 for k = 1:dim |
303 end | 303 end |
304 end | 304 end |
305 end | 305 end |
306 | 306 |
307 case {'D','d','dirichlet','Dirichlet','displacement','Displacement'} | 307 case {'D','d','dirichlet','Dirichlet','displacement','Displacement'} |
308 | |
309 % Get elastic closure and penalty | |
310 [closure, penalty] = obj.elasticObj.boundary_condition(boundary, bc, tuning); | |
311 closure = Eu*closure*Eu'; | |
312 penalty = Eu*penalty; | |
313 | |
314 switch component | |
315 case 't' | |
316 dir = obj.getTangent(boundary); | |
317 case 'n' | |
318 dir = obj.getNormal(boundary); | |
319 case 1 | |
320 dir = {1, 0}; | |
321 case 2 | |
322 dir = {0, 1}; | |
323 end | |
324 | 308 |
325 % Add penalty to strain rate eq | 309 % Add penalty to strain rate eq |
326 for i = 1:dim | 310 for i = 1:dim |
327 for j = 1:dim | 311 for j = 1:dim |
328 for k = 1:dim | 312 for k = 1:dim |