ماشین حساب

خرید ماشین حساب

ماشین حساب

خرید ماشین حساب

  • ۰
  • ۰


ماشین حساب


انتگرال ها به دو حالت زیر تقسیم می شود.


در نوع اول، مشتق یک تابع داده شده و تابع را پیدا می کنیم. بنابراین وارون روابط مشتق عمل می کنیم. این روابط وارون پاد مشتق نام دارند و تابع اولیه آن ها را پیدا می کنند به عبارت دیگر به آن انتگرال نامعین می گوییم.


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


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


حل انتگرال های نامعین در متلب


اگر f'(x) مشتق تابع f(x) باشد، آنگاه انتگرال نامعین f'(x) نسبت به متغیر x، تابع f(x) می باشد. برای مثال، مشتق x2، تابع 2x می باشد. می توانیم بگوییم که انتگرال نامعین 2x تابع x2 می باشد.


به صورت زیر


f'(x2) = 2x


بنابراین


∫ 2xdx = x2


انتگرال نا معین منحصر به فرد نمی باشد زیرا مشتق تابع x2 + c برای مقادیر ثابت c، تابع 2x می باشد.


این به صورت زیر بیان می شود.


∫ 2xdx = x2 + c


که c ثابت اختیاری نامیده می شود.


متلب برای محاسبه انتگرال یک عبارت از دستور int استفاده می کند. برای بدست آوردن انتگرال نامعین یک تابع، به صورت زیر می نویسیم.


int(f);


مثال


با استفاده از مثال قبلی


syms x 

int(2*x)

متلب عبارت بالا را اجرا کرده و نتیجه زیر را بر می گرداند.


ans =

 x^2

 


مثال


یک فایل اسکریپت ایجاد کرده و کد های زیر را در آن می نویسیم.


syms x n

int(sym(x^n))

f = 'sin(n*t)'

int(sym(f))

syms a t

int(a*cos(pi*t))

int(a^x)

وقتی متلب اجرا می کند، نتیجه را به صورت زیر می نویسد.


ans =

 piecewise([n == -1, log(x)], [n ~= -1, x^(n + 1)/(n + 1)])

f =

sin(n*t)

ans =

 -cos(n*t)/n

 ans =

 (a*sin(pi*t))/pi

 ans =

 a^x/log(a)

مثال


یک فایل اسکریپت ایجاد کرده و کد های زیر را در آن می نویسیم.


syms x n

int(cos(x))

int(exp(x))

int(log(x))

int(x^-1)

int(x^5*cos(5*x))

pretty(int(x^5*cos(5*x)))

int(x^-5)

int(sec(x)^2)

pretty(int(1 - 10*x + 9 * x^2))

int((3 + 5*x -6*x^2 - 7*x^3)/2*x^2)

pretty(int((3 + 5*x -6*x^2 - 7*x^3)/2*x^2))

توجه کنیم که تابعpretty ، یک عبارت را در یک فرمت خواندنی بر می گرداند.


وقتی فایل را اجرا می کنیم، داریم.


ans =

 

sin(x)

 

 

ans =

 

exp(x)

 

 

ans =

 

x*(log(x) - 1)

 

 

ans =

 

log(x)

 

 

ans =

 

(24*cos(5*x))/3125 + (24*x*sin(5*x))/625 - (12*x^2*cos(5*x))/125 + (x^4*cos(5*x))/5 - (4*x^3*sin(5*x))/25 + (x^5*sin(5*x))/5

 

 

                                    2             4 

  24 cos(5 x)   24 x sin(5 x)   12 x  cos(5 x)   x  cos(5 x) 

  ----------- + ------------- - -------------- + ----------- - 

     3125            625             125              5 

   

        3             5 

 

    4 x  sin(5 x)   x  sin(5 x) 

     ------------- + ----------- 

          25              5

 

ans =

 

-1/(4*x^4)

 ans =

 

tan(x)

 

 

        2 

  x (3 x  - 5 x + 1)

 

ans =

 

- (7*x^6)/12 - (3*x^5)/5 + (5*x^4)/8 + x^3/2

 

 

       6      5      4    3 

    7 x    3 x    5 x    x 

  - ---- - ---- + ---- + -- 

     12     5      8     2

پیدا کردن انتگرال معین در متلب


اساسا، انتگرال معین، حد مجموع می باشد. از انتگرال های معین برای پیدا کردن مساحت ها، مانند مساحت بین منحنی و محور x ها و مساحت بین دو منحنی استفاده می کنیم. انتگرال معین در زمینه های دیگر هم به کار می رود.


رابطه ی زیر، فرمول انتگرال معین می باشد.


clip_image001[4]


دستور آن در متلب به صورت زیر می باشد.


int(x, a, b)

مثال


مقدار انتگرال زیر را بدست آورید.


clip_image002[4]


کد زیر را در متلب می نویسیم.


int(x, 4, 9)

متلب عبارت بالا را اجرا کرده و نتیجه زیر را بر می گرداند.


ans =

 65/2

کد هم ارز آن در Octave، به صورت زیر است.


pkg load symbolic

symbols

 

x = sym("x");

 

f = x;

 

c = [1, 0];

integral = polyint(c);

 

a = polyval(integral, 9) - polyval(integral, 4);

 

display('Area: '), disp(double(a));

Octave کد بالا را اجرا کرده و نتیجه را به صورت زیر بر می گرداند.


Area: 

 

 32.500

یک راه حل جایگزین در Octave، استفاده از تابع quad() می باشد.


pkg load symbolic

symbols

 

f = inline("x");

[a, ierror, nfneval] = quad(f, 4, 9);

 

display('Area: '), disp(double(a));

Octave برنامه را اجرا کرده و به صورت زیر نتیجه را نشان می دهد.


Area: 

 

 32.500

مثال


فرض کنیم می خواهیم مساحت بین محور x ها و منحنی y = x3−2x+5 و خطوط x = 1 و x = 2 را بدست آورید.


به عبارت دیگر می خواهیم انتگرال زیر را حل کنیم.


clip_image003


یک فایل اسکریپت ایجاد کرده و کد های زیر را در آن بنویسید.


f = x^3 - 2*x +5;

a = int(f, 1, 2)

display('Area: '), disp(double(a));

وقتی فایل را اجرا می کنید، نتیجه زیر حاصل می شود.


a =

23/4

Area: 

    5.7500

هم ارز کد بالا در Octave، کد های زیر می باشد.


pkg load symbolic

symbols

 

x = sym("x");

 

f = x^3 - 2*x +5;

 

c = [1, 0, -2, 5];

integral = polyint(c);

 

a = polyval(integral, 2) - polyval(integral, 1);

 

display('Area: '), disp(double(a));

Octave، کد بالا را اجرا کرده و به صورت زیر بر می گرداند.


Area: 

 

 5.7500

راه حل جایگزین در Octave، با استفاده از تابع quad()


pkg load symbolic

symbols

 

x = sym("x");

 

f = inline("x^3 - 2*x +5");

 

[a, ierror, nfneval] = quad(f, 1, 2);

display('Area: '), disp(double(a));

Octave کد بالا را اجرا کرده و نتیجه زیر را بر می گرداند.


Area: 

 

 5.7500

مثال


مساحت زیر منحنی f(x) = x2 cos(x) را در بازه −4 ≤ x ≤ 9 بدست آورید.


یک فایل اسکریپت ایجاد کرده و کد های زیر را در آن بنویسید.


f = x^2*cos(x);

ezplot(f, [-4,9])

a = int(f, -4, 9)

disp('Area: '), disp(double(a));

وقتی متلب فایل را اجرا می کند، نتیجه را به صورت نمودار زیر نشان می دهد.


clip_image004


 


خروجی به صورت زیر خواهد بود.


a =

 

8*cos(4) + 18*cos(9) + 14*sin(4) + 79*sin(9)

 

Area: 

    0.3326

هم ارز محاسبات بالا در Octave، کد های زیر می باشد.


pkg load symbolic

symbols

 

x = sym("x");

 

f = inline("x^2*cos(x)");

 

ezplot(f, [-4,9])

print -deps graph.eps

 

[a, ierror, nfneval] = quad(f, -4, 9);

 

display('Area: '), disp(double(a));

  • ۹۶/۱۱/۰۲
  • landika blog

نظرات (۱)

بی فایده ترین علم ریاضی هستش هیچ کاربردی ندارد

ارسال نظر

ارسال نظر آزاد است، اما اگر قبلا در بیان ثبت نام کرده اید می توانید ابتدا وارد شوید.
شما میتوانید از این تگهای html استفاده کنید:
<b> یا <strong>، <em> یا <i>، <u>، <strike> یا <s>، <sup>، <sub>، <blockquote>، <code>، <pre>، <hr>، <br>، <p>، <a href="" title="">، <span style="">، <div align="">
تجدید کد امنیتی