<jupyter_start><jupyter_text>Contenido bajo licencia Creative Commons BY 4.0 y código bajo licencia MIT. © <NAME> y <NAME> 2020. Este material es parte del curso Modelación Computacional en el programa de Ingeniería Civil de la Universidad EAFIT.  Transformación de coordenadas en cerchas<jupyter_code>from sympy import *
init_session()<jupyter_output>IPython console for SymPy 1.4 (Python 3.7.3-64-bit) (ground types: python)

These commands were executed:
>>> from __future__ import division
>>> from sympy import *
>>> x, y, z, t = symbols('x y z t')
>>> k, m, n = symbols('k m n', integer=True)
>>> f, g, h = symbols('f g h', cls=Function)
>>> init_printing()

Documentation can be found at https://docs.sympy.org/1.4/<jupyter_text>Transformación de coordenadas de vectores  Transformación de las ecuaciones de un elemento cercha Tomemos un elemento tipo cercha que se encuentra horizontal.    <img src="img/cercha_local_horizontal.svg"         alt="Cercha en el sistema de referencia global."         style="width:450px">Para este, podemos escribirel balance de fuerzas en componentes como\begin{align}\sum F_x = 0\, ,\\\sum F_y = 0\, .\end{align}Y esto podemos escribirlo de forma matricial de la siguiente manera$$\begin{bmatrix}+k &0 &-k &0\\ 0 &0 &0  &0\\-k &0 &+k &0\\ 0 &0 &0  &0\end{bmatrix}\begin{Bmatrix} u_1\\ v_1\\ u_2\\ v_2\end{Bmatrix} =\begin{Bmatrix} -f_1\\ 0\\ -f_2\\ 0\end{Bmatrix}\, .$$Ahora, queremos expresar nuestro sistema de ecuaciones en un sistema rotadoun ángulo $\theta$.    <img src="img/cercha_global.svg"         alt="Cercha en el sistema de referencia global."         style="width:400px">Las componentes estarían dadas por\begin{align}u_1' = u_1 \cos\theta + v_1 \sin\theta\, ,\\v_1' = -u_1 \sin\theta + v_1 \cos\theta\, ,\\u_2' = u_2 \cos\theta + v_2 \sin\theta\, ,\\v_2' = -u_2 \sin\theta + v_2 \cos\theta\, ,\\\end{align}o, matricialmente,$$\begin{Bmatrix}u_1'\\ v_1'\\ u_2'\\ v_2'\end{Bmatrix} =\underbrace{\begin{bmatrix}\cos\theta &\sin\theta &0 &0\\-\sin\theta &\cos\theta &0 &0\\0 &0 &\cos\theta &\sin\theta\\0 &0 &-\sin\theta &\cos\theta\end{bmatrix}}_{T}\begin{Bmatrix}u_1\\ v_1\\ u_2\\ v_2\end{Bmatrix}\, .$$Que podemos escribir de manera abreviada como$$\{U'\} = [T]\{U\}\, .$$Tenemos que\begin{align}&[K] \{U'\} = \{F\}\, ,\\&[K] [T] \{U\} = [T] \{F\}\, .\end{align}Y, multiplicando ambos lados por $[T]^T$, obtenemos\begin{align}&[T]^T [K] [T] \{U\} = \underbrace{[T]^T [T]}_{[I]} \{F\}\, ,\\&[T]^T [K] [T] \{U\} = \{F\}\, .\end{align}  Ejemplo Calculemos las matrices de rigidez para los elementos de la siguientecercha.    <img src="img/cercha_transformacion.svg"         alt="Cercha ejemplo."         style="width:400px">En donde la sección transversal ($A$) y módulo de Young ($E$) son losmismos para todas las barras.Para facilitar los cálculos, haremos uso de SymPy.<jupyter_code>A, E, L, theta = symbols("A E L theta")
L0, L1, L2 = symbols("L0 L1 L2")
T = Matrix([
    [cos(theta), -sin(theta), 0 ,0],
    [sin(theta), cos(theta), 0 ,0],
    [0, 0, cos(theta), -sin(theta)],
    [0, 0, sin(theta), cos(theta)]])
rigidez_local = A*E/L * Matrix([
    [1, 0, -1, 0],
    [0, 0,  0, 0],
    [-1, 0, 1, 0],
    [0, 0, 0, 0]])<jupyter_output><empty_output><jupyter_text>Veamos las matrices que definimos.<jupyter_code>T
rigidez_local<jupyter_output><empty_output><jupyter_text>Elemento 0Para este elemento, tenemos que el ángulo es 0, luego<jupyter_code>rigidez_0 = T.T.subs(theta, 0) * rigidez_local.subs(L, L0) * T.subs(theta, 0)
rigidez_0<jupyter_output><empty_output><jupyter_text>Elemento 1Para este elemento $\theta = 5\pi/6$, luego<jupyter_code>rigidez_1 = T.T.subs(theta, 5*pi/6) * rigidez_local.subs(L, L1) * T.subs(theta, 5*pi/6)
rigidez_1<jupyter_output><empty_output><jupyter_text>Elemento 2Para este elemento $\theta = \pi/2$, luego<jupyter_code>rigidez_2 = T.T.subs(theta, pi/2) * rigidez_local.subs(L, L2) * T.subs(theta, pi/2)
rigidez_2<jupyter_output><empty_output>
{'fraction_non_alphanumeric': 0.17920691408235892, 'fraction_numerical': 0.03253685815963396, 'mean_word_length': 4.157273918741809, 'pattern_counts': {'":': 0, '<': 29, '<?xml version=': 0, '>': 47, 'https://': 1, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'chain_length': '6', 'dir': 'jupyter-structured-clean-dedup', 'id': '379059', 'license': 'MIT', 'n_tokens_mistral': 1632, 'n_tokens_neox': 1569, 'n_words': 412, 'path': 'notebooks/07b_cerchas_cambio_coordenadas.ipynb', 'repo_name': 'AppliedMechanics-EAFIT/Mod_Temporal', 'size': '3953'}