πŸ’‘ 이 μ‹€μŠ΅μ˜ λͺ©ν‘œ: MATLAB을 처음 μ‚¬μš©ν•˜λŠ” 학생이 주파수 μ˜μ—­ λͺ¨λΈλ§(Chapter 2)의 핡심 κ°œλ…μ„ μ½”λ“œλ‘œ 직접 ν™•μΈν•˜λ©° μ΅νžŒλ‹€.


1. MATLAB 기초 & 심볼릭 μ—°μ‚°

MATLAB을 처음 μ“΄λ‹€λ©΄ μ—¬κΈ°μ„œ μ‹œμž‘ν•˜μ„Έμš”. λͺ…λ Ήμ°½(Command Window)에 μ•„λž˜ μ½”λ“œλ₯Ό ν•œ 쀄씩 μž…λ ₯ν•΄ λ³΄μ„Έμš”.

1.1 κΈ°λ³Έ λ³€μˆ˜ 및 μ—°μ‚°

% κΈ°λ³Έ μ—°μ‚°
a = 3;
b = 5;
c = a + b       % λ§μ…ˆ
d = a * b       % κ³±μ…ˆ
e = a^2         % 제곱

% 벑터 λ§Œλ“€κΈ°
t = 0:0.01:10;  % 0λΆ€ν„° 10κΉŒμ§€ 0.01 간격

% ν–‰λ ¬
A = [1 2; 3 4]
inv(A)          % μ—­ν–‰λ ¬

1.2 Symbolic Math Toolbox μ‹œμž‘ν•˜κΈ°

μ „λ‹¬ν•¨μˆ˜λ₯Ό μˆ˜μ‹μœΌλ‘œ 닀루렀면 심볼릭 λ³€μˆ˜λ₯Ό μ„ μ–Έν•΄μ•Ό ν•©λ‹ˆλ‹€.

% 심볼릭 λ³€μˆ˜ μ„ μ–Έ
syms s M K fv

% μˆ˜μ‹ μ •μ˜
numerator   = 1;
denominator = M*s^2 + fv*s + K;

G = numerator / denominator

⚠️ 주의: syms둜 μ„ μ–Έν•œ λ³€μˆ˜λŠ” μˆ«μžκ°€ μ•„λ‹Œ **기호(symbol)**μž…λ‹ˆλ‹€. 수치 계산이 μ•„λ‹Œ μˆ˜μ‹ μ‘°μž‘μ— μ‚¬μš©λ©λ‹ˆλ‹€.


2. λΌν”ŒλΌμŠ€ λ³€ν™˜ & μ „λ‹¬ν•¨μˆ˜ λ„μΆœ

2.1 미뢄방정식 β†’ μ „λ‹¬ν•¨μˆ˜

μ‹œμŠ€ν…œ: μ§ˆλŸ‰(M)-μŠ€ν”„λ§(K)-댐퍼(fv) 직렬 μ—°κ²°

μš΄λ™ 방정식: $M\ddot{x} + f_v\dot{x} + Kx = f(t)$

image.png

λΌν”ŒλΌμŠ€ λ³€ν™˜(초기쑰건 0 κ°€μ •): $(Ms^2 + f_v s + K)X(s) = F(s)$

syms s M K fv

% μ „λ‹¬ν•¨μˆ˜ λΆ„λͺ¨ (μž„ν”Όλ˜μŠ€ ν•©)
denom = M*s^2 + fv*s + K;

% μ „λ‹¬ν•¨μˆ˜
G = 1 / denom;
disp('Transfer Function G(s) = X(s)/F(s):')
pretty(G)

2.2 μˆ˜μΉ˜κ°’ λŒ€μž… 및 확인

% M=1kg, fv=2 N-s/m, K=5 N/m 둜 ꡬ체적인 수치 λŒ€μž…
G_num = subs(G, {M, fv, K}, {1, 2, 5});
disp('G(s) with M=1, fv=2, K=5:')
pretty(G_num)