<jupyter_start><jupyter_text>Sistemas Lineares _Prof. Dr. <NAME>_  **Módulo Scipy**O módulo _scipy_ possui implementados vários algoritmos para solução de sistemas de equações lineares. Nesse exemplo, utilizaremos a bilioteca _linalg_ .Considerando o exemplo mostrado na aula, as equações resultantes da modelagem matemática da queda dos paraquedistas, temos:$$m_1g − T − c_1v     = m_1a \\m_2g + T − c_2v − R = m_2a \\m_3g − c_3v + R = m_3a$$com os seguintes dados:| Páraquedista      | Massa, kg     | Coeficiente de Arrasto, kg/s    || :------------- | :----------: | -----------: || 1 | 70   | 10    || 2   | 60 |14  || 3   | 40 | 17  |Obtemos o sistema $$\left\{\begin{array}{*{3}{rR}l}   70a & + &  T & + & 0 R & = & 636 \\    60a & - &  T & + &  R & = &  518 \\    40a & + & 0 T & - & R & = & 307\end{array}\right.$$E na forma matricial,![image.png](attachment:09044b6b-857e-44ea-a716-e33c4567028a.png)<jupyter_code>#Solução do sistema linear
import numpy as np            # Importa módulo numpy para criação das matrizes e vetores
from scipy import linalg      # Importa linalg de scipy para solução sistemas de equações lineares

# Coeficientes de Arrasto
c1 = 10
c2 = 14
c3 = 17
# Massas dos paraquedistas
m1 = 70
m2 = 60
m3 = 40

v = 5   # Velocidade
g = 9.81

A = np.array([[m1,1,0],[m2,-1,1],[m3,0,-1]])   # Cria a matriz A
print(A)

b = np.array([[m1*g - c1*v], [m2*g - c2*v], [m3*g - c3*v]])            # Cria o vetor b
print(b)

x = linalg.solve(A, b)                      # Resolve o sistema utilizando linalg.solve
print('x = ',x)<jupyter_output>[[70  1  0]
 [70 -1  1]
 [70  0 -1]]
[[636.7]
 [636.7]
 [636.7]]
x =  [[ 9.09571429]
 [-0.        ]
 [-0.        ]]<jupyter_text>Após a solução numérica, o resultado obtido deve ser a = 8,5941 m/s2; T=34,4118 N e R = 36,7647 N.  Exercício - Aula 31/08/2020Utilizando o notebook do exemplo anterior, encontre a solução para o problema a seguir. Quatro blocos de diferentes massas ($m_i$) estão conectados por cabos inelásticos e com massa desprezível. Como mostrado na figura, os blocos estão apoiados em um plano inclinado, com coeficientes de atrito entre os blocos e o plano iguais a $μ_i$ . Pode-se mostrar que as equações do movimento para os blocos são![image.png](attachment:e973e84d-989e-4357-98cf-11f6d3ef7c92.png)Onde $T_i$  são as forças de tensão nos cabos e $a$ é a aceleração do sistema. Determine $a$ and $T_i$  se θ = 45° (Check1) ou θ = 75° (Check2), $g = 9.82 m/s^2$ e  ![image.png](attachment:f5fbdcb5-19b3-448b-8180-ab0546df457a.png)Para a solução, procure a forma matricial do sistema de equações e insira no modelo, lembrando do uso das funções seno e cosseno da aula anterior.E responda os checks de verificação no AVA:1. Check: Qual a solução para $\theta = 45°$?2. Check: Qual a solução para $\theta = 75°$?<jupyter_code>#Solução do sistema linear
import numpy as np            # Importa módulo numpy para criação das matrizes e vetores
from scipy import linalg      # Importa linalg de scipy para solução sistemas de equações lineares

# Coeficientes de Atrito
mu1 = 0.25
mu2 = 0.3
mu3 = 0.2
# Massas dos paraquedistas
m1 = 10
m2 = 4
m3 = 5
m4 = 6

g = 9.81
theta = 75*np.pi/180

A = np.array([[1,0,0,m1],[-1,1,0,m2],[0,-1,1,m3],[0,0,-1,m4]])   # Cria a matriz A
print(A)
sinT = np.sin(theta)
cosT = np.cos(theta)

b = np.array([[m1*g*(sinT - mu1*cosT)], [m2*g*(sinT - mu2*cosT)], [m3*g*(sinT - mu3*cosT)] , [-m4*g]])            # Cria o vetor b
print(b)

x = linalg.solve(A, b)                      # Resolve o sistema utilizando linalg.solve
print('x = ',x)<jupyter_output>[[ 1  0  0 10]
 [-1  1  0  4]
 [ 0 -1  1  5]
 [ 0  0 -1  6]]
[[ 88.40978648]
 [ 34.85611162]
 [ 44.83964695]
 [-58.86      ]]
x =  [[44.71156846]
 [62.08839287]
 [85.07893081]
 [ 4.3698218 ]]<jupyter_text>Treliça<jupyter_code>#Solução do sistema linear
import numpy as np            # Importa módulo numpy para criação das matrizes e vetores
from scipy import linalg      # Importa linalg de scipy para solução sistemas de equações lineares

# F1, F2, F3, H2, V2, V3

sin30 = np.sin(30*np.pi/180)
cos30 = np.cos(30*np.pi/180)

sin60 = np.sin(60*np.pi/180)
cos60 = np.cos(60*np.pi/180)


A = np.array([[-cos30,0,cos60,0,0,0],[-sin30,0,-sin60,0,0,0],[cos30,1,0,1,0,0],[sin30,0,0,0,1,0],[0,-1,-cos60,0,0,0],[0,0,sin60,0,0,1]])   # Cria a matriz A
print(A)


b = np.array([[0], [1000], [0], [0], [0], [0]])            # Cria o vetor b
print(b)

x = linalg.solve(A, b)                      # Resolve o sistema utilizando linalg.solve
print('x = ',x)<jupyter_output>[[-0.8660254  0.         0.5        0.         0.         0.       ]
 [-0.5        0.        -0.8660254  0.         0.         0.       ]
 [ 0.8660254  1.         0.         1.         0.         0.       ]
 [ 0.5        0.         0.         0.         1.         0.       ]
 [ 0.        -1.        -0.5        0.         0.         0.       ]
 [ 0.         0.         0.8660254  0.         0.         1.       ]]
[[2000]
 [1000]
 [   0]
 [   0]
 [   0]
 [   0]]
x =  [[-2232.05080757]
 [  -66.98729811]
 [  133.97459622]
 [ 2000.        ]
 [ 1116.02540378]
 [ -116.02540378]]
{'fraction_non_alphanumeric': 0.15251911389923545, 'fraction_numerical': 0.11468339541266419, 'mean_word_length': 2.4058744993324432, 'pattern_counts': {'":': 0, '<': 11, '<?xml version=': 0, '>': 11, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 3, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'chain_length': '3', 'dir': 'jupyter-structured-clean-dedup', 'id': '108996', 'license': 'MIT', 'n_tokens_mistral': 2484, 'n_tokens_neox': 2187, 'n_words': 595, 'path': '03 Sistemas_lineares.ipynb', 'repo_name': 'Aquino21/Pereira', 'size': '5111'}