یه چیزِ جالب 💭: وقتی تو زیست میخونی «قلب یه پمپه»، یا تو شیمی «اتم یه منظومهی شمسیِ کوچیکه»، یا تو پزشکی «شش یه بادکنکه»… داری دقیقاً یه چیزو میبینی که فیزیکدونا قرنهاست انجام میدن: مدلسازی. بریم ببینیم یعنی چی و چرا اونقدر مهمه.
ایدهی اصلی در یه پاراگراف 📌
مدلسازی یعنی واقعیتو اونقدر ساده کن که بشه فهمیدش، ولی نه اونقدر که دیگه واقعیت نباشه. مثلاً واسه پرتاب یه توپ، بهجای اینکه درز و چرخش و باد و تغییرِ وزنو حساب کنی، توپو یه نقطه (ذره) فرض میکنی، فرض میکنی تو خلأست، و وزنشو ثابت میگیری. الان دیگه یه مسئلهی تمیز داری 🎯.
⚠️ اخطارِ طلایی: سادهسازی مالِ اثرهای جزئیه، نه مالِ اثرهای تعیینکننده. مدلسازیِ توپ بدونِ گرانش یعنی توپت تا ابد میره بالا 🚀😱.
مدلسازی تو علومِ زیستی — مثالهای واقعی 🩺
تو رشتهی تجربی، مدلسازی همهجا هست:
- قلب → پمپ مکانیکی: هیچکس واقعاً ۲۰۰ پروتئین و کلسترولِ سلولِ ماهیچهای رو موقعِ فهمیدنِ گردشِ خون حساب نمیکنه. تو کتابِ پزشکی هم میگن «قلب پمپه». این یه مدلـه.
- نورون → مدار RC: سلولِ عصبی واقعی پیچیدهست، ولی مدلِ هاجکین-هاکسلی (که جایزهی نوبل گرفت 🏆) نورونو یه مدارِ سادهی الکتریکی فرض میکنه — و عالی جواب میده.
- اپیدمی → مدل SIR: پیشبینیِ کرونا چطوری انجام شد؟ هر آدم رو فقط تو یکی از سه حالتِ «Susceptible / Infected / Recovered» قرار دادن. اگه میخواستی همهچیزِ یه آدمو حساب کنی، هیچوقت پیشبینی نمیرسید.
دیدی؟ همهی علم با مدل کار میکنه، نهفقط فیزیک.
شبیهسازِ تعاملی — بازی کن و ببین 🎮
سرعت و زاویه رو عوض کن، بعد دکمهی «مقاومت هوا» رو فعال کن. مسیرِ سادهٔ مدل (نقطهچین) و مسیرِ واقعی (پر) که از هم جدا میشن — این دقیقاً همون چیزیه که موقعِ مدلسازی نادیده میگیریم.
یه کدِ پایتونِ کوچیک — همین مدلو امتحان کن 🐍
اگه پایتون بلدی، این چند خط هم مدلِ ایدهآل و هم نسخهی با مقاومتِ هوا رو پلات میکنه:
import numpy as np
import matplotlib.pyplot as plt
g = 9.8
v0 = 25.0 # m/s
theta = np.deg2rad(60)
vx, vy = v0*np.cos(theta), v0*np.sin(theta)
# مدلِ ساده (بدون مقاومت هوا)
t = np.linspace(0, 2*vy/g, 200)
x_ideal = vx * t
y_ideal = vy*t - 0.5*g*t**2
# مدلِ واقعیتر: نیروی مقاومت ∝ سرعت (تخمین خطی)
k = 0.08
dt = 0.01
x, y, ux, uy = [0], [0], vx, vy
while y[-1] >= 0:
ax = -k*ux
ay = -g - k*uy
ux += ax*dt; uy += ay*dt
x.append(x[-1] + ux*dt)
y.append(y[-1] + uy*dt)
plt.plot(x_ideal, y_ideal, '--', label='مدلِ ایدهآل')
plt.plot(x, y, label='با مقاومتِ هوا')
plt.xlabel('x (m)'); plt.ylabel('y (m)'); plt.legend(); plt.grid()
plt.savefig('projectile.png', dpi=120)
میبینی که با چند خط کد میتونی بفهمی چقدر «اثرِ نادیدهگرفتهشده» اهمیت داره.
خودتو بسنج 📝
منابع و کاوشِ بیشتر 📚
مقالات و کتابهای تخصصی
- ویکیپدیای فارسی: مدلسازی علمی
- Wikipedia EN: Spherical cow (شوخیِ فیزیکدونا که خودشون میسازن!)، Mathematical model
- MIT OpenCourseWare — 8.01 Classical Mechanics (Walter Lewin) — درسِ پرتابه عالی توضیح میده چه چیزیو نادیده میگیره
- Khan Academy: Projectile motion (free)
ویدئو (یوتیوب)
- Veritasium: The science of why we’re obsessed with simplification
- 3Blue1Brown: Differential equations & modeling
- MIT OCW Walter Lewin: Lecture 1 — units, modeling
ویدئو (آپارات — فارسی)
شبیهساز خارجی
روی همین سایت 🔗
تو بخشِ بعدی میریم سراغِ کمیتها — اونجا با مفهومِ بردار و کاربردش تو نیروسنجی و حرکت آشنا میشی 🧭.
💬 جواب بهتری داری؟ یا یه سؤال جدید؟
اگه به سؤالای بالا پاسخی داری که فکر میکنی روشنتر یا کاملتر از مال منه، یا یه سؤال جدید برای دانشآموزای دیگه داری — تو بخش نظرات پایین صفحه ارسال کن. هر پیامی رو میخونم، تأیید میکنم و منتشر میشه. اینجوری همه از تجربهی همدیگه استفاده میکنیم. 🌱