درباره معادلات دیفرانسیل معمولی و جزئی
یکی از روشهای سیستم بیولوژی برای مدلسازی زیستی، استفاده از مدلسازی دینامیکی است. سلولها در طول زمان تغییر میکنند. مثلا یک ژن پروتئینی تولید میکند که در طول زمان ثابت باقی نمیماند و ممکن است پس از مدتی تخریب شود. پس پروتئینها مانند دیگر بیوملکولها دارای یک نیمهعمر هستند. برای آنکه یک سیستم زیستی را بهتر بشناسیم باید رویکرد دینامیکی را برای تحلیل آن استفاده کنیم. برای آنکه بتوانیم مدلسازی دینامیکی را درون سلول انجام دهیم نیاز به درک معادلات دیفرانسیل معمولی و جزئی در زیست داریم.
معادلات دیفرانسیل معمولی، زمان را وارد مطالعات ما میکنند. به این معنا که تغییرات غلظت یک ماده در طول زمان وقتی برای ما مهم باشد باید ترم زمان را در معادلات وارد کنیم. در حقیقت میگوییم که در بازه زمانی مشخص چقدر غلظت یک ماده تغییر میکند. حال وقتی این بازه را آنقدر کوچک میکنیم که تفاوت زمانی به صفر برسد، باید وارد حیطه معادلات دیفرانسیل بشویم تا شیب تغییرات را محاسبه کنیم.
معادلات دیفرانسیل جزئی نیز علاوه بر فاکتور زمان، فاکتور مکانی را نیز وارد مطالعات میکنند. این بدان معنی است که ما در یک سلول بیوملکولهایی داریم که نهتنها در طول زمان تغییر میکنند، بلکه جایشان نیز عوض میشود و از بخشی از سلول به بخش دیگری میروند. حتی ممکن است از سلول خارج شده یا به آن وارد شوند. در این زمان باید از معادلات دیفرانسیل عادی که برای این تحلیلها طراحی شدهاند استفاده کنیم، یا به استفاده از دستهای دیگر از معادلات دیفرانسیل یعنی جزئی رو بیاوریم و متغیرهای خود را وارد مساله کنیم.
به عنوان یک مساله ساده درمورد معادلات دیفرانیسل معمولی، مساله زیر را در نظر بگیرید که درمورد افزایش جمعیت خرگوشها میباشد. میتوانید جای خرگوشها باکتریها را در نظر بگیرید یا تغییرات یک ماده در محیط سلول را در نظر داشته باشید.
این ادعا منطقی است که هر چه تعداد خرگوشهای ما بیشتر باشد، بچه خرگوشهای بیشتری به دست میآوریم. سپس آن خرگوشها بزرگ میشوند و بچهدار میشوند! پس جمعیت سریعتر و سریعتر رشد خواهد کرد.
بخشهای مهم این امر عبارتند از:
- جمعیت N در هر زمان t
- نرخ رشد r
- نرخ تغییر جمعیت dN/dt (این همان بخشی است که در مورد آن صحبت شد. تغییرات جمعیت به روی تغییرات زمان. تغییرات را میتوانیم با دلتا نشان دهیم.)
dN/dt را به این صورت در نظر بگیرید که “چقدر جمعیت با تغییر زمان، برای هر لحظه از زمان تغییر میکند”.
اجازه دهید تصور کنیم که نرخ رشد 0.01 خرگوش جدید در هفته برای هر خرگوش فعلی است.
وقتی جمعیت 1000 نفر است، میزان تغییر یعنی dN/dt برابر رابطه زیر خواهد شد:
پس ما در هر هفته ده خرگوش جدید خواهیم داشت. 1000×0.01 = 10
این به این معنی است که جمعیت 1000 نفری ابتدای هفته، ده خرگوش جدید ایجاد کرده است. این پاسخ را با ضرب کردن 1000 نفر جمعیت در نرخ رشد یا همان r که برابر با 0.01 بود به دست آوردیم.
اما این فقط در یک زمان خاص صادق است و شامل این نیست که جمعیت دائماً در حال افزایش است. مسلم است که هر چه جمعیت بیشتر باشد، خرگوش های جدید بیشتری خواهیم داشت. مثلا وقتی جمعیت 2000 است، 2000×0.01 = 20 خرگوش جدید در هفته خواهیم داشت.
بنابراین بهتر است بگوییم نرخ تغییر (در هر لحظه) برابر است با نرخ رشد ضربدر جمعیت در آن لحظه:
dN/dt = rN
این معادلهای که نوشتیم یک معادله دیفرانسیل است، زیرا دارای تابع N(t) و مشتق آن است. شما با انتگرال گرفتن از این رابطه میتوانید به رابطه N بر حسب زمان برسید. این معادله دیفرانسیل که در بالا نوشتیم به سادگی میگوید: نرخ تغییر جمعیت در طول زمان برابر است با نرخ رشد ضربدر جمعیت.
معادلات دیفرانسیل میتوانند چگونگی تغییر جمعیت، نحوه حرکت گرما، نحوه ارتعاش فنرها، چگونگی تجزیه مواد رادیواکتیو و موارد دیگر را توصیف کنند. آنها روشی بسیار طبیعی برای توصیف بسیاری از چیزها در جهان هستند.
خب حالا با یک معادله دیفرانسیل چه کار کنیم؟ یا اصلا آن را چطور باید حل کنیم؟
معادله دیفرانسیل به تنهایی راهی عالی برای بیان چیزی است، اما استفاده از آن شاید سخت باشد. بنابراین ما سعی میکنیم آنها را با تبدیل معادله دیفرانسیل به یک معادله سادهتر حل کنیم تا بتوانیم محاسبات انجام دهیم، نمودار بکشیم، آینده را پیش بینی کنیم و غیره.
برای حل این مساله به یک سوال دیگر میپردازیم:
پول سود میآورد. سود را میتوان در زمانهای ثابت مانند سالانه، ماهانه و محاسبه کرد و به مبلغ اصلی اضافه کرد. به این سود مرکب میگویند. اما هنگامی که به طور مداوم ترکیب میشود، در هر زمان به نسبت ارزش فعلی وام (یا سرمایه گذاری) بهره اضافه میشود. و با افزایش، سود بیشتری به دست میآوریم.
استفاده از t برای زمان، r برای نرخ بهره و V برای ارزش فعلی وام:
dV/dt = rV
اگر دقت کنیم، این همان معادله بالا برای خرگوشها بوده است. پس این دو معادله مانند یکدیگر هستند و مانند یکدیگر حل میشوند.
میتوان این معادله را با استفاده از یک روش خاص به نام جداسازی متغیرها حل کرد. برای اینکار باید V را به یک سمت معادله بیاورید و t را نیز به سمت دیگر ببرید. با نگاه کردن به روشهای انتگرالگیری، میتوانید این معادله را سریعا حل کنید.
V = Pert
که در آن P اصل (وام اصلی) و e عدد اویلر است.
حالا با مقدارگذاری در هریک از پارامترها میتوانید پارامترهای دیگر را پیدا کنید. بنابراین معادلات دیفرانسیل در توصیف این موارد عالی هستند، اما برای مفید بودن باید حل شوند. معادلات دیفرانسیل مختلفی وجود دارند و برای حل آنها نیز راههای مختلفی پیشنهاد شده است. این معادله یک مساله ساده بود. برای حل مسائل پیچیدهتر میتوانید از نرمافزارهای مختلفی استفاده کنید.
حالا میتوانیم کمی همین مساله را پیچیدهتر کنیم. معادله دیفرانسیل رشد خرگوشها را به یاد آورید.
dN/dt = rN
این رشد نمیتواند برای همیشه ادامه داشته باشد زیرا به زودی غذای در دسترس آنها تمام خواهد شد. پس بیایید آن را با گنجاندن پارامتر زیر کمی آن را به دنیای واقعی نزدیک کنیم. حداکثر جمعیتی که غذا میتواند رشد آنها را ساپورت کند k مینامیم. این معادله دیفرانسیل به دست میآید که به معادله ورهولست معروف است.
dN/dt = rN(1-N/k)
شما برای تغییر این معادله کارهای مختلفی میتوانید انجام دهید. مثلا میتوانید جمعیت روباهها را نیز اضافه کنید که به شکار خرگوشها میپردازند. بدین صورت شما مفاهیم زیستی را در قالب فرمولها مطرح میکنید و میتوانید آنها را حل کنید.