<jupyter_start><jupyter_text>참고문헌 : Pytel 외 저, 이주성 외 역, 재료역학, 2판, 한티미디어, 2013.Ref: Pytel, Kiusalaas, Sharma, Mechanics of Materials, 2nd Ed., Cengege Learning, 2013. `python` 기능을 확장해 주는 `module`을 불러 들임 (일부 기능만 사용될 수도 있음)<jupyter_code>import numpy as np  # 배열, 행렬 관련 기능
import numpy.linalg as na  # 선형대수 (벡터, 행렬) 관련 기능
import matplotlib.pyplot as plt  # 그래프 관련 기능
import scipy.integrate as si  # 적분 관련 기능
import sympy as sy  # 기호 연산 기능
import sympy.plotting as splot
import IPython.display as disp  # 웹페이지 표시 기능
sy.init_printing()  # 기호 연산 결과 표시 기능 준비<jupyter_output><empty_output><jupyter_text>예제 07.008ex07.008 부정정보: 중첩법Statically Indeterminate Beam : Superposition p. 314  문제에서 주어진 변수Given Parameters  보의 길이Length of the beam<jupyter_code>L_AB_m = sy.symbols('L_AB_m', real=True, nonnegative=True)

s_d = {
    L_AB_m: 10,
}<jupyter_output><empty_output><jupyter_text>하중Load<jupyter_code>w0_N_m = sy.symbols('w0_N_m', real=True)

s_d.update(
    {
        w0_N_m: -1,
    }
)<jupyter_output><empty_output><jupyter_text>재료와 단면 특성Material & section properties<jupyter_code>E_Pa, I_m4 = sy.symbols('E_Pa, I_m4', positive=True)

s_d.update(
    {
        E_Pa: 200e9,
        I_m4: 20e6 * (1e-3) ** 4,
    }
)<jupyter_output><empty_output><jupyter_text>자유물체도Free body diagram<jupyter_code>x_m = sy.symbols('x_m', nonnegative=True)
x_A_m = 0
x_B_m = L_AB_m<jupyter_output><empty_output><jupyter_text>아직 알지 못하는 반력Reaction forces unknown yet<jupyter_code>R_A_N, M_A_Nm, R_B_N = sy.symbols('R_A_N, M_A_Nm, R_B_N', real=True)<jupyter_output><empty_output><jupyter_text>중첩법Superposition  외팔보 전체에 가해지는 분포하중 $w_0$에 의한 끝점의 처짐Deflection of a cantilever's end point by distributed load $w_0$ over the whole length p. 279 Table 6.2 $$\delta_{Bw_0} = \frac{w_0L^4}{8EI}$$<jupyter_code>delta_Bw0_m = (w0_N_m * L_AB_m ** 4 / (8 * E_Pa * I_m4))
delta_Bw0_m<jupyter_output><empty_output><jupyter_text>외팔보 $L$ 지점에 가해지는 반력 $R$에 의한 끝점의 처짐Deflection of a cantilever's end point by reaction force $R$ at $L$ p. 279 Table 6.2 $$\delta_{BR} = \frac{RL^3}{3EI}$$<jupyter_code>delta_BR_m = (R_B_N * L_AB_m ** 3 / (3 * E_Pa * I_m4))
delta_BR_m<jupyter_output><empty_output><jupyter_text>두 처짐을 중첩함Superpose two $\delta$'s<jupyter_code>super_eq = sy.Eq(delta_Bw0_m + delta_BR_m, 0)
super_eq<jupyter_output><empty_output><jupyter_text>$R$에 관하여 풂Solve for $R$<jupyter_code>R_B_N_sol = sy.solve(super_eq, R_B_N)[0]
R_B_N_sol<jupyter_output><empty_output><jupyter_text>평형방정식Equilibrium equation 수직방향Vertical direction $$R_A + R_B + w_0 L = 0$$<jupyter_code>fy_eq = sy.Eq(R_A_N + R_B_N + w0_N_m * L_AB_m)
fy_eq
fy_eq.subs(R_B_N, R_B_N_sol)
R_A_N_sol = sy.solve(fy_eq.subs(R_B_N, R_B_N_sol), R_A_N)[0]
R_A_N_sol<jupyter_output><empty_output><jupyter_text>$B$점 중심 회전방향Rotation direction around $B$ $$M_A - R_A \cdot L - P_N \cdot (L - a)=0$$<jupyter_code>m_eq = sy.Eq(M_A_Nm - R_A_N * L_AB_m - sy.Rational(1, 2) * w0_N_m * L_AB_m ** 2)
m_eq
sy.simplify(m_eq.subs(R_A_N, R_A_N_sol))
M_A_Nm_sol = sy.solve(m_eq.subs(R_A_N, R_A_N_sol), M_A_Nm)[0]
sy.simplify(M_A_Nm_sol)<jupyter_output><empty_output>
{'fraction_non_alphanumeric': 0.12847335730630924, 'fraction_numerical': 0.027133050016345212, 'mean_word_length': 5.725274725274725, 'pattern_counts': {'":': 0, '<': 49, '<?xml version=': 0, '>': 49, 'https://': 0, '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': '12', 'dir': 'jupyter-structured-clean-dedup', 'id': '435442', 'license': 'BSD-3-Clause', 'n_tokens_mistral': 1716, 'n_tokens_neox': 1845, 'n_words': 285, 'path': 'utils/tests/sample_with_output.ipynb', 'repo_name': 'kangwonlee/2109eca-nmisp-template', 'size': '3059'}