Advertisement
Garro

Finite Elements

Jul 2nd, 2014
232
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
MatLab 1.61 KB | None | 0 0
  1. %%%%%%%%%%%%%%%%%%%%%%%%%%
  2.     Triangulo
  3. %%%%%%%%%%%%%%%%%%%%%%%%%%
  4. %%%%%% Carteciana %%%%%%%%
  5. Syms x1 y1 L K
  6. nn=[(-1/K)*(y+(K/L)*(x-x1-L)),(x-x1)/L,(y+y1)/K]
  7. for i=1:3
  8.     dn(1,i)=diff(nn(i),x);
  9. end
  10. for i=1:3
  11.     dn(2,i)=diff(nn(i),y);
  12. end
  13.  
  14. % por coordenada, primero x
  15. paso1=dn(1,:);
  16. paso1p=transpose(paso1);
  17. kex=paso1p*paso1;
  18. for i=1:3
  19.     for j=1:3
  20.         kx(i,j)=int(int(kex(i,j),y,y1,y1-(K/L)*(x-x1-L)),x,x1,x1+L);
  21.     end
  22. end
  23. kx
  24.  
  25. % ahora coordenada y
  26. paso2=dn(2,:);
  27. paso2p=transpose(paso2);
  28. key=paso2p*paso2;
  29. for i=1:3
  30.     for j=1:3
  31.         ky(i,j)=int(int(key(i,j),y,y1,y1-(K/L)*(x-x1-L)),x,x1,x1+L);
  32.     end
  33. end
  34. ky
  35.  
  36. for i=1:3
  37.     for j=1:3
  38.         kxs(i,j)=simplify(kx(i,j));
  39.         kys(i,j)=simplify(ky(i,j));
  40.     end
  41. end
  42. kxs
  43. kys
  44.  
  45.  
  46. %%%%%%%%%%%%%%%%%%%%%%%%%%
  47.     Cuadrado
  48. %%%%%%%%%%%%%%%%%%%%%%%%%%
  49. %%%%%% Cartesianas %%%%%%%
  50. syms x y L K
  51. N=(1/L/K)*[(x-L)*(y-K),-(y-K)*(x),(x*y),-(x-L)*(y)]
  52.  
  53. fila1=diff(N,x);
  54. fila2=diff(N,y);
  55.  
  56.  
  57. kx=int(int(transpose(fila1)*fila1,y,0,K),x,0,L);
  58. ky=int(int(transpose(fila2)*fila2,y,0,K),x,0,L);
  59.  
  60. fe=int(int(transpose(N),y,0,K),x,0,L)
  61. Kg=int(int(transpose(N)*N,y,0,K),x,0,L);
  62.  
  63. %%%%%%% Naturales %%%%%%%
  64. syms e n L K
  65. %L=K
  66. N=(1/4)*[(1-e)*(1-n),(1+e)*(1-n),(1+e)*(1+n),(1-e)*(1+n)]
  67.  
  68. xcoor=[0,0;L,0;L,K;0,K]
  69. Dn= [diff(N,e);diff(N,n)]
  70.  
  71. jac=Dn*xcoor;
  72. jacinv=inv(jac);
  73. detjac=det(jac);
  74. B=jacinv*Dn;
  75.  
  76. % por coordenada primero x
  77. filax=B(1,:);
  78. Kex=int(int(detjac*transpose(filax)*filax,e,-1,1),n,-1,1)
  79.  
  80. % por coordenada segundo y
  81. filay=B(2,:);
  82. Key=int(int(detjac*transpose(filay)*filay,e,-1,1),n,-1,1)
  83.  
  84. f=int(int(detjac*N,e,-1,1),n,-1,1)
  85. KG=int(int(detjac*transpose(N)*N,e,-1,1),n,-1,1)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement