مشتق گیری و انتگرال گیری عددی با متلب

مشتق گیری و انتگرال گیری عددی با متلب

همیشه بازی کردن با ارقام راحت تر از کار با عبارت های جبری بوده است. از این روست که محاسبات عددی امروزه گامهایی فراتر از حل های تحلیلی پیموده است. معادلات فراوانی هستند که حل جبری ندارند اما برای محاسبه ی مقادیر آنها روشهای عددی زیادی وجود دارد. در این پست روشی ساده برای محاسبه ی مشتق و انتگرال یک تابع با استفاده از داده های عددی (و نه از روی خود تابع) معرفی می شود.

در متلب قابلیت های فراوانی برای کار با اعداد در نظر گرفته شده است.شما می توانید به راحتی و با استفاده از Curve Fitting از روی یک ماتریس عددی ضرایب معادله ی چند جمله ای آن را به راحتی بیابید.روال کار قبلا نشان داده شده است.

مشتق گیری عددی :

همه ی شما حتما با تعریف مشتق با کمک حد آشنایی دارید :

 

کاری که برای مشتق گیری عددی از یک ماتریس می بایست انجام دهید استفاده از همین تعریف و فرمان diff متلب می باشد. با کمک یک مثال روش کار را با هم بررسی می کنیم :

می دانیم مشتق sin همان cos است. در این برنامه دو ماتریس xو y1 ورودی و خروجی تابع sin هستند. در ادامه در y2 مقادیر cos را مستقیما محاسبه کرده و ذخیره می کنیم.

سپس با استفاده از روش مشتق گیری عددی و فرمان diff از xو y1 مشتق گرفته و نتیجه را در ماتریس y3 ذخیره می کنیم.

مشاهده می کنید که وقتی دوتابع y2 و y3 را رسم می کنیم فرقی با هم ندارند. در حالی که اولی مستقیما از تابع cos و دومی با استفاده از مشتق گیری عددی از sin و دستور diff بدست آمده است :

clc;x=0:.1:2*pi;y1=sin(x);y2=cos(x);

y3=diff(y1)./diff(x);figure(1)plot(x,y1);figure(2)

subplot(2,1,1);plot(x,y2,'ro');

subplot(2,1,2);plot(y3,'b.');

 

تنها نکته ای که باید به آن توجه داشته باشید این است اندازه ی درایه های x  و y1 می بایست با هم برابر باشند ونیز تعداد درایه های ماتریس y3 که خروجی مشتق گیری عددی است یکی کمتر از دو تابع y1 و x می باشد.علت آن را هم می توانید در کتب محاسبات عددی به طور دقیقتری بیابید.

 انتگرال گیری عددی

روش های زیادی هم برای محاسبه ی انتگرال یک تابع در متلب وجود دارند. اما برای استفاده از آنها (int و quad )  می بایست خود تابع را در اختیاد داشته باشید.

برای اینکه تنها با معرفی یک ماتریس با داده های عددی مقدار انتگرال را محاسبه کنید از trapz استفاده می شود.گرچه دارای درصدی از خطا می باشد.اما سرعت محاسبه آن بسیار بالاست و دیگر اینکه در مواردی که فقط داده های عددی دارید تنها راه محاسبه ی انتگرال می باشد.

تابع y=x  را در نظر بگیرید.می دانیم که در بازه ی صفر تا 10 مقدار انتگرال آن (مساحت زیر نمودار)  برابر 50 می باشد. حال می خواهیم با استفاده از دو روش انتگرال گیری از دو روش همین مقدار را بدست آوریم.

x=0:10;y1=trapz(x)y2=int('x',0,10)

y1 = 50y2 = 50

مشاهده می کنید که هر دو روش یک مقدار را نتیجه می دهند. اگر دستورات را جداگانه در قسمت Command Window وارد کنید، خواهید دید که هنگام استفاده از int متلب چند لحظه Busy شده و نمایش نتیجه مدت زمان بیشتری به طول می انجامدو تازه این برای تابع ساده ای چون x است. معمولا بهتر است از quad استفاده کنید.اما برای محاسبه ی انتگرال گیری عددی trapz بهترین راه است.


مطالب مشابه :


آموزش کامل انتگرال

آموزش کامل انتگرال در حل انتگرال‌ها با روش تغییر متغیر ، به جای تابع پیوسته و مشتق




آموزش انتگرال

آموزش انتگرال - آموزش و هر گاه معادله مشتق 3.قضيه اساسي حساب ديفرانسيل و انتگرال




آموزش انتگرال به همراه فرمولهای انتگرال

آموزش انتگرال به همراه و انتگرال را در که انتگرال واقعاً پاد مشتق




آموزش انتگرال

آموزش انتگرال. ديفرانسيل و انتگرال را در نظر کنيد که انتگرال واقعاً پاد مشتق




آموزش کامل انتگرال

انتگرال نامعین . مجموعه همه پاد مشتق‌های یک تابع چون را انتگرال نامعین نسبت به می‌نامند و




حساب دیفرانسیل و انتگرال

حساب دیفرانسیل و انتگرال. سوالات نیمسال اول و دوم پاورپوینت آموزش مشتق و ضریب




آموزش انتگرال

آموزش انتگرال دیفرانسیل و انتگرال را در نظر کنید که انتگرال واقعاً پاد مشتق




مشتق گیری و انتگرال گیری عددی با متلب

در این پست روشی ساده برای محاسبه ی مشتق و انتگرال یک تابع با استفاده از آموزش برنامه




برچسب :