در آموزشهای قبلی مجله فرادرس، درباره انتگرال و روشهای محاسبه آن بحث کردیم. در این آموزشها، مباحثی مانند انتگرال توابع مثلثاتی ، انتگرالگیری جزء به جزء ، انتگرال دوگانه و انتگرال سهگانه را معرفی کردیم. همچنین با تغییر متغیر و کاربرد آن در انتگرالگیری آشنا شدیم. گاهی میخواهیم ناحیه بین یک منحنی و محور مختصات را محاسبه کنیم، اما نمیتوانیم حاصل انتگرال مربوط به محاسبه مساحت منحنی را به راحتی و با محاسبه تحلیلی به دست آوریم. یکی از راههایی که در این مواقع وجود دارد، استفاده از روشهای عددی برای محاسبه انتگرال منحنی است. در این آموزش، یکی از این روشها، یعنی «قاعده سیمپسون» (Simpson's Rule) را معرفی میکنیم.
محتوای این مطلب جهت یادگیری بهتر و سریعتر آن، در انتهای متن به صورت ویدیویی نیز ارائه شده است.
قاعده سیمپسون
در قاعده سیمپسون، از سهمیها برای تقریب هر تکه از منحنی استفاده میکنیم. اثبات شده که این روش نسبت به بسیاری از روشهای مشابه برای محاسبه عددی انتگرال، کارآمدتر و دقیقتر است.
فرمول قاعده سیمپسون
مساحت زیر منحنی را به n n n بخش مساوی با عرض Δ x \Delta x Δ x تقسیم میکنیم.
فرمول مساحت تقریبی با استفاده از قاعده سیمپسون به صورت زیر است:
A = ∫ a b f ( x ) d x ≈ Δ x 3 ( y 0 + 4 y 1 + 2 y 2 + 4 y 3 + 2 y 4 + … + 4 y n − 1 + y n ) \large \begin {align*} A \displaystyle = { \int _ { { a } } ^ { { b } } } f { { \left ( { x } \right ) } } { \left . { d } { x } \right . } \displaystyle \approx \frac { { \Delta { x } }} { {3 } } { \left ( { y } _ { { 0 } } + { 4 } { y } _ { { 1 } } + { 2 } { y } _ { { 2 } } + { 4 } { y } _ { { 3 } } + { 2 } { y } _ { { 4 } } \right . } + \displaystyle { \left . \ldots + { 4 } { y } _ { { { n } - { 1 } } } + { y } _ { { n } } \right ) } \end {align*} A = ∫ a b f ( x ) d x ≈ 3 Δ x ( y 0 + 4 y 1 + 2 y 2 + 4 y 3 + 2 y 4 + … + 4 y n − 1 + y n )
که در آن:
Δ x = b − a n \large \displaystyle \Delta { x } = \frac { { { b } -{ a } } } { { n } } Δ x = n b − a
توجه کنید که در قاعده سیمپسون، n n n باید زوج باشد.
برای به خاطر سپردن قاعده سیمپسون، میتوانیم آن را به صورت زیر بنویسیم:
∫ a b f ( x ) d x ≈ Δ x 3 [ y 0 + 4 ( y 1 + y 3 + y 5 + … ) + 2 ( y 2 + y 4 + y 6 + … ) + y n ] \large \displaystyle { \int _ { { a } } ^ { { b } } } f { { \left ( { x } \right ) } } { \left . { d } { x } \right . } \displaystyle \approx \frac { { \Delta { x } } } { { 3 } } { \left [ { y } _ { { 0 } } + { 4 } { \left ( { y } _ { { 1 } } + {y } _ {{ 3} } + { y} _ { { 5 } } + \ldots \right ) } \right . } \displaystyle { \left . + { 2 } { \left ( { y } _ { {2 } } +{ y } _ { { 4 } } + { y } _{ { 6 } } + \ldots \right ) } + { y } _ { { n} } \right ] } ∫ a b f ( x ) d x ≈ 3 Δ x [ y 0 + 4 ( y 1 + y 3 + y 5 + … ) + 2 ( y 2 + y 4 + y 6 + … ) + y n ]
یا به عبارت دیگر:
اثبات قاعده سیمپسون
فرض کنید میخواهیم مساحت زیر منحنی سهمی y = a x 2 + b c + c \displaystyle { y } = { a } { x } ^ { 2 } + { b } { c }+ { c } y = a x 2 + b c + c را محاسبه کنیم.
برای سادگی، از نقطه ( 0 , y 1 ) (0, y_1) ( 0 , y 1 ) شروع کرده و مساحت زیر منحنی را از x = − h x = - h x = − h تا x = h x = h x = h به دست میآوریم (Δ x = h \Delta x = h Δ x = h ).
بنابراین، داریم:
∫ − h h ( a x 2 + b x + c ) d x = [ a x 3 3 + b x 2 2 + c x ] − h h = ( a h 3 3 + b h 2 2 + c h ) − ( − a h 3 3 + b h 2 2 − c h ) = 2 a h 3 3 + 2 c h = h 3 ( 2 a h 2 + 6 c ) \large \begin {align*} \displaystyle { \int _ { { - { h } } } ^ {{ h } } } { \left ( { a } { x } ^ { 2} +{ b } { x } + { c } \right ) } \ { \left . { d} { x }\right . } \displaystyle & = { { \left [ \frac { { { a } { x } ^ { 3 } } } { { 3 } } + \frac { { { b } { x } ^ { 2 } } } { { 2 } } + { c } { x } \right ] } _ { { - { h } } } ^ { { h } } } \\ \displaystyle & = { \left ( \frac { { { a } { h } ^ { 3} } } { { 3} } + \frac { { { b } { h } ^ { 2 } } } { { 2 } } + { c } { h } \right ) } - \displaystyle { \left ( - \frac { { { a } { h } ^ { 3 } } } { { 3 } } + \frac {{ { b } { h } ^ { 2 } } } { { 2 } } - { c } { h } \right ) } \\ \displaystyle&=\frac{{{2}{a}{h}^{3}}}{{3}}+{2}{c}{h} \displaystyle=\frac{h}{{3}}{\left({2}{a}{h}^{2}+{6}{c}\right)} \end {align*} ∫ − h h ( a x 2 + b x + c ) d x = [ 3 a x 3 + 2 b x 2 + c x ] − h h = ( 3 a h 3 + 2 b h 2 + c h ) − ( − 3 a h 3 + 2 b h 2 − c h ) = 3 2 a h 3 + 2 c h = 3 h ( 2 a h 2 + 6 c )
سهمی از سه نقطه ( − h , y 0 ) (-h, y_0) ( − h , y 0 ) ، ( 0 , y 1 ) (0, y_1) ( 0 , y 1 ) و ( h , y 2 ) (h, y_2 ) ( h , y 2 ) میگذرد. با جایگذاری این سه نقطه در معادله عمومی، میتوان نوشت:
y 0 = a h 2 − b h + c y y 1 = c y 2 = a h 2 + b h + c y \large \begin {align*} \displaystyle { y } _ { { 0 } } & = { a } { h } ^ { 2 } - { b } { h } + { c } y \\ \displaystyle { y } _ { { 1 } } & = { c } \\ \displaystyle { y } _ { { 2 } } & = {a } { h } ^ { 2 } + { b } { h } + { c } y \end {align*} y 0 y 1 y 2 = a h 2 − b h + c y = c = a h 2 + b h + c y
از معادله دوم، داریم:
c = y 1 \large c= y_1 c = y 1
همچنین، مجموع معادله اول و سوم برابر است با:
2 a h 2 = y 0 − 2 y 1 + y 2 \large \displaystyle { 2 } { a } { h } ^ { 2 } = { y } _ { { 0 } } - { 2 } { y } _ { { 1 } } + { y} _ { { 2 }} 2 a h 2 = y 0 − 2 y 1 + y 2
اکنون دو عبارت بالا را در A = h 3 ( 2 a h 2 + 6 c ) \displaystyle { A } = \frac { h } { { 3 } } { \left ( { 2 }{ a } { h } ^ { 2} + { 6} { c } \right ) } A = 3 h ( 2 a h 2 + 6 c ) جایگذاری میکنیم:
A = h 3 ( 2 a h 2 + 6 c ) = h 3 ( y 0 − 2 y 1 + y 2 + 6 y 1 ) = h 3 ( y 0 + 4 y 1 + y 2 ) \large \begin {align*} \displaystyle { A } & = \frac { h } { { 3 } } { \left ( { 2 } { a } { h } ^ { 2 } + { 6 } { c } \right ) } \\ \displaystyle & = \frac { h } { { 3 } } { \left ( { y } _ { { 0 } } - { 2 } { y } _ { { 1 } } + { y } { 2 } + { 6 } { y } _ { { 1 } } \right ) } \\ \displaystyle & = \frac { h } { { 3 } } { \left ( { y } _ { { 0 } } + { 4 } { y } _ { { 1 } } + { y } _ { { 2 } } \right ) } \end {align*} A = 3 h ( 2 a h 2 + 6 c ) = 3 h ( y 0 − 2 y 1 + y 2 + 6 y 1 ) = 3 h ( y 0 + 4 y 1 + y 2 )
به طور مشابه، مساحت زیر منحنی سهمی گذرنده از سه نقطه بعدی را محاسبه میکنیم:
A = h 3 ( y 2 + 4 y 3 + y 4 ) \large \displaystyle { A } = \frac { h } { { 3 } }{ \left ( { y } _ { { 2 } } + { 4 } { y } _ { { 3 } } + { y } _ { { 4 } } \right ) } A = 3 h ( y 2 + 4 y 3 + y 4 )
مجموع دو مساحت برابر است با:
A = h 3 ( y 0 + 4 y 1 + 2 y 2 + 4 y 3 + y 4 ) \large \displaystyle { A } = \frac { h } { { 3 } }{ \left ( { y } _ { { 0 } } + { 4 } { y } _ { { 1 } }+ { 2 } { y } _ { { 2 } } + { 4} { y } _ { { 3 } } + { y } _ { { 4 } } \right ) } A = 3 h ( y 0 + 4 y 1 + 2 y 2 + 4 y 3 + y 4 )
با در نظر گرفتن شش زیر بازه، سه سهمی خواهیم داشت. مجموع مساحت زیر منحنی این سه سهمی را با طی مراحل قبل میتوان به صورت زیر به دست آورد:
A = h 3 [ y 0 + 4 y 1 + 2 y 2 + 4 y 3 + + 2 y 4 + 4 y 5 + y 6 ] \large \displaystyle { A } = \frac { h } { { 3 } } { \left [ { y } _ { { 0 } } + { 4 } { y } _ { { 1 } } + { 2 } { y } _ { { 2 } } + { 4 } { y } _ { { 3 } } + \right . } + \displaystyle { 2 } { y } _ { {4 } } + \displaystyle { 4 } { y } _ { { 5 } } + \displaystyle { \left . { y } _ { { 6 } } \right ] } A = 3 h [ y 0 + 4 y 1 + 2 y 2 + 4 y 3 + + 2 y 4 + 4 y 5 + y 6 ]
اگر همین مراحل را برای زیر بازههای بیشتر تکرار کنیم و مجموع مساحتها را به دست آوریم، میتوانیم قاعده سیمپسون را به صورت زیر بنویسیم:
∫ a b f ( x ) d x ≈ Δ x 3 ( y 0 + 4 y 1 + 2 y 2 + 4 y 3 + + 2 y 4 … + 4 y n − 1 + y n ) \large \displaystyle { \int _ { { a } } ^ { { b } } } f { { \left ( { x } \right ) } } { \left . { d } { x } \right . } \displaystyle \approx \frac { { \Delta { x } } } { { 3 } } { \left ( { y } _ { { 0 } } + { 4 } { y } _ { { 1 } } + { 2 } {y } _ { { 2 } } + { 4 } { y } _ { { 3 } } + \right . } + \displaystyle { 2 } { y } _{ { 4 } } \ldots + \displaystyle { 4 } { y }_ { { { n} - { 1 } } } + \displaystyle { \left . { y } _{ { n } } \right ) } ∫ a b f ( x ) d x ≈ 3 Δ x ( y 0 + 4 y 1 + 2 y 2 + 4 y 3 + + 2 y 4 … + 4 y n − 1 + y n )
مثال عددی زیر، نحوه محاسبات در این روش را به خوبی بیان میکند.
فرض کنید میخواهیم مساحت زیر منحنی عمومی شکل زیر را حساب کنیم.
منحنی بالا را به چهار بخش مساوی تقسیم میکنیم (تعداد این بخشها باید عدد زوجی باشد).
در ادامه، سهمیهایی را پیدا میکنیم که بسیار شبیه به هر یک از چهار تکه منحنی باشند. اگر سه نقطه داشته باشیم، میتوانیم یک سهمی منحصر به فرد را از آنها عبور دهیم.
از دو تکه اول سمت چپ منحنی شروع میکنیم. نقاط میانی و انتهایی را به صورت زیر تعیین میکنیم.
فرض میکنیم نقاط مورد نظر به صورت زیر باشند:
( x 0 , y 0 ) = ( − 1.57 , 1 ) ( x 1 , y 1 ) = ( − 0.39 , 1.62 ) ( x 2 , y 2 ) = ( 0.79 , 2.71 ) \large \begin {align*} \displaystyle { \left ( { x } _ { { 0 } } , { y } _ { { 0 } } \right ) } &= { \left ( - { 1.57 } , { 1 } \right ) } \\ \displaystyle { \left ( { x } _ { { 1 } } , { y } _ { { 1 } } \right ) } &= { \left ( - { 0 .3 9 } , { 1.62 } \right ) } \\ \displaystyle { \left ( { x } _ { { 2 } } , { y } _ { { 2} } \right ) } &= { \left ( { 0.79 } , { 2.71 } \right ) } \end {align*} ( x 0 , y 0 ) ( x 1 , y 1 ) ( x 2 , y 2 ) = ( − 1.57 , 1 ) = ( − 0.39 , 1.62 ) = ( 0.79 , 2.71 )
این سه نقطه را در فرمول یک سهمی به فرم عمومی y = a x 2 + b x + c \displaystyle { y } = { a } { x } ^ { 2 } + { b } { x } + { c } y = a x 2 + b x + c جایگذاری میکنیم:
1 = a ( − 1.57 ) 2 + b ( − 1.57 ) + c 1.62 = a ( − 0.39 ) 2 + b ( − 0.39 ) + c 2.71 = a ( 0.79 ) 2 + b ( 0.79 ) + c \large \begin {align*} \displaystyle { 1 } & ={ a } { \left ( -{ 1.57 } \right ) } ^ { 2 } + { b } { \left ( - { 1.57 } \right ) }+ { c } \\\displaystyle { 1.62 } & = { a } { \left ( - { 0.39 } \right ) } ^ { 2 } + { b } { \left ( - { 0.39 } \right ) } + { c } \\\displaystyle { 2.71 } & = { a } { \left ( { 0.79 } \right ) }^ { 2 } + { b } { \left ( { 0.79 } \right ) } + { c } \end {align*} 1 1.62 2.71 = a ( − 1.57 ) 2 + b ( − 1.57 ) + c = a ( − 0.39 ) 2 + b ( − 0.39 ) + c = a ( 0.79 ) 2 + b ( 0.79 ) + c
معادلات بالا، یک دستگاه سه معادله و سه مجهولی را تشکیل میدهند و از آن میتوان ضرایب a a a ، b b b و c c c را به دست آورد:
a = 0.17021 , b = 0.85820 , c = 1.92808. \large \displaystyle { a } = { 0.17021 }, \; \displaystyle { b } = { 0.85820 }, \; \displaystyle { c } = { 1.92808 } . a = 0.17021 , b = 0.85820 , c = 1.92808 .
در نتیجه میتوان معادله سهمی گذرنده از سه نقطه را به صورت زیر نوشت (اعداد گرد شدهاند):
y = 0.170 x 2 + 0.858 x + 1.93 \large \displaystyle { y } = {0.170 } { x } ^ { 2 } + { 0.858 }{ x } + { 1.93 } y = 0.170 x 2 + 0.858 x + 1.93
منحنی سهمی، در شکل زیر نشان داده شده است:
همانطور که میبینیم، سهمی از سه نقطه میگذرد و بسیار نزدیک به منحنی اصلی است؛ بنابراین، تقریب مناسبی برای این تکه از منحنی است.
فرایند مشابهی را برای دو تکه دیگر انجام میدهیم و سهمی گذرنده از سه نقطه را به شکل زیر به دست میآوریم:
هرچه تعداد تکه های منحنی بیشتر باشد یا عرض زیر بازهها کمتر باشد، دقت تقریب بالاتر میرود. شکل زیر نشان میدهد که با کاهش اندازه زیر بازهها، سهمی مشابه منحنی اصلی شده است.
خطا در قاعده سیمپسون
وقتی مقدار عددی انتگرال را تقریب میزنیم، همیشه مقداری خطا وجود دارد. این خطا برابر است با:
E = ∫ a b f ( x ) d x − A p p \large \displaystyle { \large { { E } = { \int _ { { a } } ^ {{ b } } } { f { { \left ( { x } \right ) } } } { d } { x } - { A } { p } { p } } } E = ∫ a b f ( x ) d x − A p p
که در آن، A p p \displaystyle{\large{{A}{p}{p}}} A p p مقدار تقریبی و E E E خطا است.
حال میخواهیم بدانیم محدوده خطای قاعده سیمپسون چقدر است. فرض کنید برای a ≤ x ≤ b \displaystyle { \large { { a } \le { x } \le { b } } } a ≤ x ≤ b داشته باشیم: ∣ f ( 4 ) ( x ) ∣ ≤ M \displaystyle { \large { { \left | { { f } } ^ { { { \left ( { 4 } \right) }} } { \left ({ x } \right ) } \right | } \le { M } } } f ( 4 ) ( x ) ≤ M . بنابراین، کران خطا به صورت زیر خواهد بود:
∣ E ∣ ≤ M ( b − a ) 5 180 n 4 \large \displaystyle { \large { { \left | { E } \right | } \le \frac { { { M } { { \left ( { b } - { a } \right ) } } ^ { { 5 } } } } { { { 1 8 0 } { { n } } ^ { { 4 } } } } } } ∣ E ∣ ≤ 180 n 4 M ( b − a ) 5
مثالها
در ادامه، مثالهایی را از کاربرد قاعده سیمپسون بیان میکنیم.
مثال ۱
انتگرال ∫ 2 3 d x x + 1 \displaystyle { \int _ { { 2 } } ^ { { 3 } } } \frac { { { \left .{ d } { x } \right . } } } { { { x } + { 1 } } } ∫ 2 3 x + 1 d x را با استفاده از قاعده سیمپسون با n = 4 n=4 n = 4 محاسبه کنید.
حل: نمودار منحنی مطابق شکل زیر است:
اندازه هر زیر بازه به صورت زیر تعیین میشود:
Δ x = b − a n = 3 − 2 4 = 0.25 \large \displaystyle \Delta { x } = \frac { { { b } - { a } } } { { n } } = \frac { { { 3 } - { 2 } } } { { 4 } } = { 0 .2 5 } Δ x = n b − a = 4 3 − 2 = 0.25
با توجه به عرض هر زیر بازه، نقاط مربوط به هریک از زیر بازهها به صورت زیر است:
y 0 = f ( a ) = f ( 2 ) = 1 2 + 1 = 0.3333333 y 1 = f ( a + Δ x ) = f ( 2.25 ) = 1 2.25 + 1 = 0.3076923 y 2 = f ( a + 2 Δ x ) = f ( 2.5 ) = 1 2.5 + 1 = 0.2857142 y 3 = f ( a + 3 Δ x ) = f ( 2.75 ) = 1 2.75 + 1 = 0.2666667 y 4 = f ( b ) = f ( 3 ) = 1 3 + 1 = 0.25 \begin{align*} \large \displaystyle { y } _ { { 0 } } = f { { \left ( { a } \right ) } } \displaystyle &= f { { \left ( { 2 } \right ) } } \displaystyle = \frac { 1 } { { { 2 } + { 1 } } } = { 0.3333333 } \\ \large \displaystyle { y } _ { { 1 } } &= f {{ \left ( { a } + \Delta { x } \right ) } } = f { { \left ( { 2.25 } \right ) } } \displaystyle = \frac { 1 } { { { 2.25 } + { 1 } } } = { 0.3076923 } \\ \large \displaystyle { y } _ { { 2 } } = f { { \left ( { a } + { 2 } \Delta { x } \right ) } } &= f { { \left ( { 2.5 } \right ) } } \displaystyle = \frac { 1 } { { { 2.5 } + { 1} } } = { 0.2857142 } \\ \large \displaystyle { y } _ { { 3 } } = f { { \left ( { a } + { 3 } \Delta { x } \right ) } } &= f { { \left ( { 2.75 } \right ) } } \displaystyle = \frac { 1 } { { { 2.75 } + { 1 } } } = { 0.2666667 } \\ \large \displaystyle { y } _ { { 4 } } &= f { { \left ( { b } \right ) } } = f { { \left ( { 3 } \right ) } } \displaystyle = \frac { 1 } { { { 3 } + { 1 } } } = { 0.25 } \end {align*} y 0 = f ( a ) y 1 y 2 = f ( a + 2 Δ x ) y 3 = f ( a + 3 Δ x ) y 4 = f ( 2 ) = 2 + 1 1 = 0.3333333 = f ( a + Δ x ) = f ( 2.25 ) = 2.25 + 1 1 = 0.3076923 = f ( 2.5 ) = 2.5 + 1 1 = 0.2857142 = f ( 2.75 ) = 2.75 + 1 1 = 0.2666667 = f ( b ) = f ( 3 ) = 3 + 1 1 = 0.25
بنابراین، طبق قاعده سیمپسون، داریم:
A = ∫ a b f ( x ) d x ≈ 0.25 3 ( 0.333333 + 4 ( 0.3076923 ) + 2 ( 0.2857142 ) + 4 ( 0.2666667 ) + 0.25 ) = 0.2876831 \large \begin {align*} \large A \displaystyle ={ \int _ { { a } } ^ { { b } } } f { { \left ( { x } \right ) } } \text{d}{x} \displaystyle \approx \frac {0.25 } { { 3 } } { \left ( { 0.333333 } + { 4 } { \left ( { 0.3076923 } \right ) } \right . } \\ \displaystyle + { 2 } { \left ( { 0.2857142 } \right ) } + { 4 }{ \left ( { 0.2666667 } \right ) } \displaystyle { \left . + { 0.25 } \right ) } \displaystyle = { 0.2876831 } \end {align*} A = ∫ a b f ( x ) d x ≈ 3 0.25 ( 0.333333 + 4 ( 0.3076923 ) + 2 ( 0.2857142 ) + 4 ( 0.2666667 ) + 0.25 ) = 0.2876831
پاسخ دقیق این مسأله تا شش رقم اعشار، عدد 0.287682 0.287682 0.287682 است. بنابراین میتوان گفت خطای تقریب سیمپسون فقط 0.00036 0.00036 0.00036 درصد است.
در این مثال، نمودار بسیار شبیه به یک سهمی است؛ بنابراین، دو سهمی نشان داده شده در شکل، عملاً منحنی y = 1 x + 1 \displaystyle { y } = \frac { 1 } { { { x } + { 1 } } } y = x + 1 1 را تشکیل میدهند.
مثال ۲
با استفاده از قاعده سیمپسون، مقدار ∫ 1 2 1 x 2 d x \displaystyle { \large { { \int _ { { 1 } } ^ { { 2 } } } \frac { { 1 } } { { { x } } ^ { { 2 } } } { d } { x } } } ∫ 1 2 x 2 1 d x را با n = 8 n=8 n = 8 محاسبه کنید.
حل: از آنجایی که نقاط ابتدا و انتهای بازه به ترتیب، a = 1 a=1 a = 1 و b = 2 b=2 b = 2 هستند و داریم: f ( x ) = 1 x 2 \displaystyle { \large { { f { { \left ( { x } \right ) } } } = \frac { { 1 } } { { { x } } ^ { { 2} } } } } f ( x ) = x 2 1 و n = 8 n=8 n = 8 ، میتوان نوشت:
Δ x = b − a n = 2 − 1 8 = 0.125 \large \displaystyle { \large { \Delta { x } = \frac { { { b } - { a } } } { { n } } = \frac { { { 2 } - {1 } } } { { 8 } } = { 0.125 } } } Δ x = n b − a = 8 2 − 1 = 0.125
بنابراین، حاصل انتگرال برابر است با:
∫ 1 2 1 x ( d x ) ≈ S n = 0.125 3 ( f ( 1 ) + 4 f ( 1.125 ) + 2 f ( 1.25 ) + 4 f ( 1.375 ) + 2 f ( 1.5 ) + 4 f ( 1.625 ) + 2 f ( 1.75 ) + 4 f ( 1.875 ) + f ( 2 ) ) = 0.125 3 ( 1 1 2 + 4 ( 1.125 ) 2 + 2 ( 1.25 ) 2 + 4 ( 1.375 ) 2 + 2 ( 1.5 ) 2 + 4 ( 1.625 ) 2 + 2 ( 1.75 ) 2 + 4 ( 1.875 ) 2 + 1 2 2 ) ≈ 0.5000299. \large \begin {align*} \int _ { { 1 } } ^{ { 2 } } \frac { { 1 } } { { x } } { \left ( { d } { x } \right ) } \approx { S } _ { { n } } &= \frac { { { 0.125 } } } { { 3 } } { \left ( { f { { \left ( { 1 } \right ) } } } + { 4 } { f { { \left ( { 1.125 } \right ) } } } + { 2 } { f { { \left ( { 1.25 } \right ) } } } + { 4 } { f { { \left ({ 1.375 } \right ) } } } \\ + { 2 } { f { { \left ( { 1.5 } \right ) } } } + { 4 } { f { { \left ( { 1.625 } \right ) } } } + { 2 } { f { { \left ( { 1.75 } \right ) } } } + { 4 } { f { { \left ( { 1.875 } \right ) } } } + { f { { \left ( { 2 } \right ) } } } \right ) } \\ &= \frac { { 0.125 } } { { 3 } } { \left ( \frac { { 1 } } { { { 1} } ^ { { 2 } } } + \frac { { 4 } }{ { { \left ( { 1.125 } \right ) } } ^ { { 2 } } } + \frac { { 2 } } { { { \left ( {1.25 } \right ) } } ^ { {2 } } } + \frac { {4 } }{ {{ \left ( {1.375 } \right ) } } ^ {{ 2 } } } + \frac {{ 2 } }{ { { \left ( { 1.5 } \right ) } } ^ { { 2 } } } \\ + \frac { { 4 } }{ { { \left ( { 1.625 } \right ) } } ^ { {2 } } } + \frac { { 2 }} { {{ \left ( { 1.75 } \right ) } }^ { { 2} }} + \frac { { 4} } {{ { \left ( { 1.875 } \right ) } } ^ {{ 2 }} } + \frac { { 1} } { { { 2 } } ^ { { 2 } } } \right ) } \\ & \approx 0.5000299. \end {align*} ∫ 1 2 x 1 ( d x ) ≈ S n = 3 0.125 ( f ( 1 ) + 4 f ( 1.125 ) + 2 f ( 1.25 ) + 4 f ( 1.375 ) + 2 f ( 1.5 ) + 4 f ( 1.625 ) + 2 f ( 1.75 ) + 4 f ( 1.875 ) + f ( 2 ) ) = 3 0.125 ( 1 2 1 + ( 1.125 ) 2 4 + ( 1.25 ) 2 2 + ( 1.375 ) 2 4 + ( 1.5 ) 2 2 + ( 1.625 ) 2 4 + ( 1.75 ) 2 2 + ( 1.875 ) 2 4 + 2 2 1 ) ≈ 0.5000299.
مقدار واقعی انتگرال، I = ∫ 1 2 1 x 2 d x = 0.5 \displaystyle { \large { { I } = { \int _ { { 1 } } ^ { { 2 } } } \frac { { 1 } } { { { x } } ^ { { 2 } } } { d } { x } = { 0 . 5 } } } I = ∫ 1 2 x 2 1 d x = 0.5 است. همانطور که میبینیم، قاعده سیمپسون تقریب بسیار مناسبی را ارائه میدهد.
مثال ۳
مقدار n n n را به گونهای محاسبه کنید که تقریب قاعده سیمپسون برای انتگرال ∫ 1 2 1 x 2 d x \displaystyle { \large { { \int _ { { 1 } } ^ { { 2 } } } \frac { { 1 } } {{ { x } } ^ { { 2 } } } { d } { x } } } ∫ 1 2 x 2 1 d x برابر با مقدار 0.0002 0.0002 0.0002 باشد.
حل: در این مثال، داریم:
a = 1 , b = 2 , f ( x ) = 1 x 2 \large \displaystyle { \large { { a } ={ 1 } } }, \,\, \displaystyle { \large { { b } = { 2 } } ,\,\,} \displaystyle { \large { { f { { \left ( { x } \right ) } } } = \frac { { 1 } }{ { { x} } ^ { { 2 } } } }} a = 1 , b = 2 , f ( x ) = x 2 1
مشتقهای اول تا چهارم انتگرالده به صورت زیر هستند:
f ′ ( x ) = − 2 x 3 , f ′ ′ ( x ) = 6 x 4 , f ′ ′ ′ ( x ) = − 24 x 5 , f ( 4 ) ( x ) = 120 x 6 . \large \displaystyle { \large { { f ^ {\prime} } { \left ( { x } \right ) } = - \frac { { 2 }} { { { x } } ^ { { 3 } } } } } , \,\, \displaystyle { \large {{ f ^ {\prime \prime}} { \left ( { x } \right ) } = \frac { { 6 } } { { { x } } ^ { { 4 } } } } } , \, \, \displaystyle { \large { { f ^ {\prime \prime \prime} } { \left ( { x } \right ) } = - \frac { { 2 4 } } { {{ x } } ^{ { 5 }} }} } , \, \, \displaystyle { \large { { { f} } ^ {{ { \left ( { 4 } \right ) } } }{ \left ( { x } \right ) } = \frac { { 1 2 0 } } { { { x } } ^ { { 6 } } }} } . f ′ ( x ) = − x 3 2 , f ′′ ( x ) = x 4 6 , f ′′′ ( x ) = − x 5 24 , f ( 4 ) ( x ) = x 6 120 .
طبق فرمولی که در بالا معرفی کردیم، داریم:
∣ f ( 4 ) ( x ) ∣ ≤ 120 , 1 ≤ x ≤ 2 \large \displaystyle { \large { { \left | { { f } } ^ { { { \left ( { 4 } \right ) } }} { \left ( { x } \right ) } \right | } \le { 1 2 0 } } } , \, \, \displaystyle { \large { { 1 } \le { x } \le { 2 } } } f ( 4 ) ( x ) ≤ 120 , 1 ≤ x ≤ 2
بنابراین، میتوانیم بنویسیم:
120 ( 2 − 1 ) 5 180 n 4 < 0.0002 \large \displaystyle { \large { \frac { { { 1 2 0 } { { \left ( { 2 } - { 1 } \right ) } } ^ { { 5 } } } } {{ {1 8 0 } { { n } } ^ { { 4 } } } } < { 0 .0 0 02 } } } 180 n 4 120 ( 2 − 1 ) 5 < 0.0002
یا
n 4 > 120 180 ⋅ 0.0002 = 1 0.0003 \large \displaystyle { \large { { { n } } ^ { { 4 } } > \frac { { 1 20 } } {{ {1 8 0 } \cdot { 0.0 0 0 2 } } } = \frac { { 1 } } { { { 0.0 0 0 3 } } } } } n 4 > 180 ⋅ 0.0002 120 = 0.0003 1
در نتیجه:
n > 1 0.0003 4 ≈ 7.6 \large \displaystyle { \large { { n } > \frac { { 1 } } { { { \sqrt [ { { 4 } } ] { { { 0.0 0 0 3 } }} } } } \approx { 7.6 } } } n > 4 0.0003 1 ≈ 7.6
از آنجایی که مقدار n n n باید زوج باشد، n = 8 n=8 n = 8 را انتخاب میکنیم.
مثال ۴
با در نظر گرفتن n = 4 n=4 n = 4 ، مقدار تقریبی انتگرال ∫ 0 2 e x 2 d x \int_{{\,0}}^{{\,2}}{{{{\bf{e}}^{{x^2}}}\,dx}} ∫ 0 2 e x 2 d x را محاسبه کنید.
حل: ابتدا طول هر زیر بازه را با توجه به n = 4 n=4 n = 4 محاسبه میکنیم:
Δ x = 2 − 0 4 = 1 2 \large \Delta x = \frac { { 2 - 0 } } { 4 } = \frac { 1 } { 2 } Δ x = 4 2 − 0 = 2 1
زیر بازهها به صورت زیر هستند:
[ 0 , 0.5 ] , [ 0.5 , 1 ] , [ 1 , 1.5 ] , [ 1.5 , 2 ] \large \left [ { 0 , \, \, 0.5 } \right ] , \, \, \left [ { 0.5 , \, \, 1 } \right ] , \, \, \left [ { 1 , \, \, 1.5 } \right ] , \, \, \left [ { 1.5 , \, \, 2 } \right] [ 0 , 0.5 ] , [ 0.5 , 1 ] , [ 1 , 1.5 ] , [ 1.5 , 2 ]
با استفاده از فرمول قاعده سیمپسون، مقدار انتگرال به صورت زیر محاسبه میشود:
∫ 0 2 e x 2 d x ≈ 1 / 2 3 ( e ( 0 ) 2 + 4 e ( 0.5 ) 2 + 2 e ( 1 ) 2 + 4 e ( 1.5 ) 2 + e ( 2 ) 2 ) = 17.35362645 \large \begin{align*}\int _ { { \, 0 } } ^ { { \, 2 } }{ { { { \bf { e } } ^ { { x ^ 2 } } } \, d x } } &\approx \frac { { { 1 } / { 2 } \; } } { 3 } \left ( { { { \bf { e } } ^ { { { \left ( 0 \right ) } ^ 2 } } } + 4 { { \bf { e } } ^ { { { \left ( { 0.5 } \right ) } ^ 2 } } } + 2 { { \bf { e } } ^ { { { \left ( 1 \right ) } ^ 2 } } } + 4 { { \bf { e } } ^ { { { \left ( {1.5} \right ) } ^ 2 } } } + { { \bf { e } } ^ { { { \left ( 2 \right ) } ^ 2 } } } } \right ) \\ &= 17.35362645 \end{align*} ∫ 0 2 e x 2 d x ≈ 3 1 / 2 ( e ( 0 ) 2 + 4 e ( 0.5 ) 2 + 2 e ( 1 ) 2 + 4 e ( 1.5 ) 2 + e ( 2 ) 2 ) = 17.35362645
مقدار واقعی انتگرال برابر است با:
∫ 0 2 e x 2 d x = 16.45262776 \large \int _ { { \, 0 } } ^ { { \, 2 } }{ { { { \bf { e } }^ { { x ^ 2 } } } \, d x } } = 16.45262776 ∫ 0 2 e x 2 d x = 16.45262776
بنابراین، مقدار خطای قاعده سیمپسون 0.90099869 0.90099869 0.90099869 است.
پیادهسازی نرمافزاری قاعده سیمپسون
در این بخش، شیوه پیادهسازی قاعده سیمپسون را در پایتون و متلب بیان میکنیم.
پیادهسازی در پایتون
ابتدا کتابخانههای لازم را فراخوانی میکنیم:
برای نوشتن برنامه قاعده سیمپسون در پایتون، ابتدا تابع simps را تعریف میکنیم که پارامترهای ورودی آن f f f ، a a a ، b b b و N N N هستند و تقریب S N ( f ) S_N(f) S N ( f ) را به عنوان خروجی به دست میدهد. مقدار N = 50 N=50 N = 50 را در نظر میگیریم. برنامه به صورت زیر است:
اکنون برنامه بالا را برای انتگرالی که مقدار آن را میدانیم، آزمایش میکنیم. برای مثال، انتگرال زیر را در نظر بگیرید:
∫ 0 1 3 x 2 d x = 1 \large \int_0^1 3x^2 dx = 1 ∫ 0 1 3 x 2 d x = 1
برنامه و نتیجه اجرای آن برای این انتگرال به صورت زیر است:
برای انتگرال زیر نیز برنامه را اجرا میکنیم:
∫ 0 π / 2 sin ( x ) d x = 1 \large \int_0^{\pi/2} \sin(x) dx = 1 ∫ 0 π /2 sin ( x ) d x = 1
در نتیجه، داریم:
پیادهسازی در متلب
برنامه متلب قاعده سیمپسون نیز به صورت زیر است:
در آموزشهای بعدی، روشهای دیگر محاسبه عددی انتگرال را معرفی خواهیم کرد.
اگر این مطلب برایتان مفید بوده است، آموزشهای زیر نیز به شما پیشنهاد میشوند:
^^
فیلم های آموزش قاعده سیمپسون – به زبان ساده (+ دانلود فیلم آموزش گام به گام) فیلم آموزشی فرمول قاعده سیمپسون و اثبات آن فیلم آموزشی حل مثال از الگوریتم سیمپسون فیلم آموزشی خطا در قاعده سیمپسون فیلم آموزشی کدنویسی الگوریتم سیمپسون در نرم افزار متلب
بسیار ساده و قابل فهم توضیح فرمودید ، ممنونم
سلام.
سپاس از همراهی و بازخورد محبتآمیزتان.
موفق باشید.
بسیار عالی بود آقای حمیدی ممنونم
بسیار عالی بود متشکرم
سلام مریم گرامی.
مایه خرسندی است که از این آموزش مجله فرادرس استفاده کردهاید.
شاد و پیروز باشید.