روش هیون برای حل معادله دیفرانسیل
این نوشتار به هیچ منبع و مرجعی استناد نمیکند. |
این مقاله نیازمند ویکیسازی است. لطفاً با توجه به راهنمای ویرایش و شیوهنامه، محتوای آن را بهبود بخشید. |
کارل هیون(karl heun) در 3 آپریل 1859 در شهری در آلمان شرقی چشم به جهان گشود.او یکی از ریاضی دانان برتر تاریخ میباشد که معادله ، تابع و روش هیون را ابداع کرده است.سرانجام او در 10 ژانویه 1929 از دنیا رفت. کارل heun ریاضیات و فلسفه را در گوتینگن و برای مدت کوتاهی در )هاله(مطالعه کرد. در ۱۸۸۱، دکترای خود را از دانشگاه گوتینگن دریافت کرد. او سپس به عنوان معلم در کالج کشاورزی در Wehlau کار کرد تا اینکه در سال ۱۸۸۳ به انگلستان مهاجرت کرد و تا سال ۱۸۸۵ به تدریس پرداخت. او تحصیلات خود را در لندن به پایان رساند و مدرک لیسانس خود را در ژوئن ۱۸۸۶ در مونیخ با رساله خود به نام lineare zweiter Ordnung، deren Losungen durch sind، به پایان رساند. از سال ۱۸۸۶ تا ۱۸۸۹ او در دانشگاه مونیخ تدریس کرد، اما از سال ۱۸۹۰ تا ۱۹۰۲ او به عنوان معلم در برلین به کار پرداخت. در سال ۱۹۰۰ کارل heun عنوان پروفسور را دریافت کرد و در ۱۹۰۲ او کرسی استادی مکانیک را در the Hochschule کارلسروهه دریافت کرد، جایی که او تا زمانی که در سال ۱۹۲۲ به بازنشستگی پرداخت، کار خود را انجام داد.
معادلات دیفرانسیل معمولی
در ریاضیات، معادله دیفرانسیل معمولی به معادلهای گفته میشود که در آن تابعی از تنها یک متغیر مستقل و مشتقات آن تابع نقش داشته باشند. عبارت «معمولی» در مقابل معادلات دیفرانسیل با مشتقات جزئی به کار میرود. در معادلات دیفرانسیل مشتقات جزئی دو یا چند متغیر وجود دارد.
معادلات دیفرانسیل معمولی به دو دسته خطی و غیرخطی تقسیم میشوند. جوابهای یک معادله دیفرانسیل معمولی خطی را میتوان با عدد ثابتی جمع یا در عدد ثابتی ضرب کرد. این دسته از معادلات به طور کامل و دقیق شناخته و بررسی شدهاند و جوابهای بسته تحلیلی برایشان وجود دارد. در مقابل معادلات دیفرانسیل معمولی غیرخطی وجود قرار میگیرد که خاصیت جمعپذیری برای جوابهایشان صادق نیست. حل این معادلات در حالت کلی پیچیدهتر است و به ندرت میتوان برایشان جوابی بسته بر اساس توابع مقدماتی ریاضی یافت. در عوض برای چنین معادلاتی، میتوان جوابهایی به صورت سری یا به فرم انتگرالی پیدا کرد. علاوه بر این، میتوان به کمک روشهای عددی با گرافیکی، که دستی یا رایانهای قابل پیادهسازیاند، جواب معادلات دیفرانسیل غیرخطی را تخمین زد. این روشهای تخمینی میتوانند در غیاب جوابهای تحلیلی و بسته، اطلاعات مفیدی در اختیار بگذارند.
روش هیون
این روش برای حل معادلات دیفرانسیل معمولی(ODE) با یک شرط اولیه قابل استفاده میشود.ایده روش هیون برای اصلاح روش اویلر میباشد بدین گونه که برای دقیق تر کردن شیب آن ازدو نقطه استفاده میشود.
به عنوان مثال روش اویلر بصورت زیر میباشد:
اما اگر همین معادله را بخواهیم به روش هیون حل کنیم.بصورت زیر میباشد:
که در واقع همان جهت محاسبه شیب استفاده میکنیم(در ریاضیات، شیب خط، میزان انحنا یا نرخ انحنای یک خط را مشخص میکند) و صفر آن نشان دهنده ی مرتبه تکراراست.که پس از محاسبه آن به روش بالا از آن برای محاسبه تابع زیر استفاده میکنیم:
و در نهایت به محاسبه شیب میپردازیم.که به شکل زیر میباشد:
اما روش هیون دارای تکرار میباشد یعنی برای هر گام محاسباتی (h) باید تعدادی تکرار صورت بگیرد تا به مقداری صحیح تر برسیم و سپس به گام محاسباتی بعدی برویم و در مراحل بعدی نیز تکرار میکنیم تا به مقداری که میخواهیم دست پیدا کنیم و روش تکرار آن نیزبصورت زیر میباشد:
برای خطای تخمین مربوطه نیز بصورت زیر انجام میدهیم:
شکست در تجزیه (خطای نحوی): {\displaystyle E_a=|(y_(i+1)^j-y_(i+1)^(j-1))/(y_(i+1)^j )|×100%}
بصورت ساده میتوان گفت که برای حل مسئله به روش هیون در ابتدا را محاسبه میکنیم و همان شرایط اولیه مسله برای اولین گام محاسباتی میباشد.سپس برای تکرار ثابت میباشد و در هر مرحله عوض میشود.سپس بعد از رسیدن به خطای مورد نظر آخرین را به عنوان در نظر میگیریم و به محاسبه ی گام بعدی با توجه به روشی که گفته شد میپردازیم تا به نقطه ای که خواسته ی مسئله بود برسیم و در آنجا حل به پایان میرسد.
حال فرض کنید
شکست در تجزیه (خطای نحوی): {\displaystyle dy/dx=f(t) →∫_(y_i)^(y_(i+1))▒dy=∫_(t_i)^(t_(i+1))▒f(t)dt →y_(i+1)=y_i+∫_(t_i)^(t_(i+1))▒f(t)dt}
روش ذوزنقه ای
اساس روش قاعده ذوزنقهای این است که منحنی را به ذوزنقههایی تقسیم کرده، مساحت همه آنها را به دست آورده و در نهایت برای تعیین مساحت تقریبی نهایی با هم جمع کنیم. در آنالیز عددی، قانون ذوزنقه راهی برای محاسبه تقریبی انتگرال معین است. قانون ذوزنقه از تقریب خطی استفاده میکند. میتوان نمودار تابع را با تقریب خطی به یک سری ذوزنقه تبدیل کرد و سپس با محاسبه مجموع مساحتهای آنها انتگرال تابع را به صورت حدی به دست آورد.
روش هیون
مشاهده میشود که روش هیون و روش انتگرال گیری ذوزنقه ای به یک جواب میرسند به همین خاطر روش هیون را روش ذوزنقه ای نیز میگویند خطای آن مطابق با روش ذوزنقه ای میباشد.
شکست در تجزیه (خطای نحوی): {\displaystyle E_t=(-f^" (ε)h^3)/12 ,,,,, t_i≤ε≤t_(i+1)}
بنابراین یک روش مرتبه 2 میباشد، چرا که درصورتی تابع درجه 2 باشد، جواب دقیق میدهد.و خطای global و local آن به ترتیب(2^h) و (3^h) میباشد.
مرتبه خطا
در علوم فنی مهندسی و سایر رشتههای کمّی، مرتبه تخمین به انگلیسی: (Order of Approximation) اشاره به عبارات رسمی یا غیررسمی دارد که بیانگر آن است که یک تقریب چقدر دقیق است. ترتیب مرتبهها در جهت افزایش دقت بهصورت: تقریب مرتبه صفر، تقریب مرتبه اول، تقریب مرتبه دوم و غیره است. بیان غیررسمی آن است که یک روش ساده برای نمایش سطح دقت مورد استفاده در نمایش مقادیری است که کاملاً شناخته شده نیستند.
قضیه تیلور
چندجملهای تیلور مقدار تقریبی یک تابع مشتقپذیر را در همسایگی یک نقطه به دست میآورد. ضرایب این چندجملهای را مشتقهای این تابع در نقطه مذکور تشکیل میدهند. این نظریه به نام ریاضیدان بروک تیلور نامیده شدهاست.
قضیه تیلور نخستین بار توسط تیلور در سال ۱۷۱۲ مطرح گردید. با این حال، بیان صریح و روشن از خطا بسیار بعدها توسط ژوزف لویی لاگرانژ ارائه شد. بیان جدید این نظریه در سال ۱۶۷۱ توسط جیمز گرگوری اشاره شده است. قضیه تیلور در دوره سطح مقدماتی حساب دیفرانسیل و انتگرال آموزش داده شده است و از آن است که یکی از ابزار ابتدایی و اصلی در آنالیز ریاضی است. تعمیم قضیه تیلوردر هندسه دیفرانسیل و معادلات دیفرانسیل با مشتقات جزئی استفاده میشود.که مرتبه خطا از روی اینکه چندجمله از بسط تیلور استفاده شده است تخمین زده میشود.
خطای global
خود به دو دسته تقسیم میشود
-خطای local
مربوط به استفاده از روش در تخمین مقدار در همان گام محاسباتی میباشد.
-خطای propagated
از گام های قبلی تولید شده و در گام های بعدی خودرا نشان میهد.
پایداری روش هیون
همچنین برای بررسی پایداری روش هیون مانند زیر عمل میکنیم:
شکست در تجزیه (خطای نحوی): {\displaystyle y_(i+1)^p=y_i+f_i h ,, y_(i+1)^c=y_i+(f_i+f_(i+1)^p)/2 h y^'=-αy ,,, y_(i+1)^p=y_i-αy_i h ,, y_(i+1)=y_i+(-αy_i-α(y_i-αy_i h))/2 h ,,,y_(i+1)=(1-αh+(α^2 h^2)/2) y_i ,,, G=(1-αh+(α^2 h^2)/2) ,,,|G|≤1 ,,,1+αh+(α^2 h^2)/2=1 ,,, αh(αh/2-1)=0 ,,, αh≤2 }
این روش از آنجاییکه به نوعی روش اویلررا به ارث برده است شرط پایداری آن نیز بمانند اویلر میباشد. بعنوان مقایسه میتوان نمودار آنرا با دیگر روش های حل و حل تحلیلی برای یک مسئله دید.
کد مربوط به الگوریتم هیون در نرم ازار Mathematica :
(INPUT A, B, Y(0
INPUT M
H:=[B-A]/M
T(0) :=A
FOR J=0 TO M -1 DO
((K1 := F(T(J),Y(J
P := Y(J) + H*K1
[T(J+1) := A + H*[J+1
(K2 := F(T(J+1),P
Y(J+1) :=A + H*[K1 +K2]/2
FOR J=0 TO M DO
(PRINT T(J),Y(J
همچنین میتوان کد مربوط به نرم افزار متلب را نیز استفاده کرد.فقط درابتدا باید مسئله را تعریف کرد:
y3(1)=y0;
for i=1:4
yp=y3(i)+h*f(x(i),y3(i));
y3(i+1)=y3(i)+0.5*h*(f(x(i),y3(i))+f(x(i+1),yp));
end
حال به حل مسئله میپردازیم:
شکست در تجزیه (خطای نحوی): {\displaystyle y^'=4e^0.8t-0.5y 0≤t≤4 y(0)=2 ∆t=1s ∈_s=0.00001% y_0^'=4e^0-0.5*2=3 y_1^0=2+f(0.2)*1=2+3=5 (predictor) y_1^'=f(x_1.y_1^0 )=f(1.5)=4e^(0.8*1)-0.5*5=6.402164 y ̅^'=(y_0^'+ y_1^')/2=4.7101082 y_1^1=6.70178 ,,, ϵ_1=-18.8% y_2^'=4e^(0.8*1)-0.5(6.70108) ,,, y_1^2=2+ (3+y_2^')/2=6.275811 ,,, ϵ=6.7% y_1^3=2+(3+4e^0.8(1) -0.5(6.275811))/2=6.382129 ,,, ϵ=1.6% }
پس از 12 تکرار به خطای کمتر از میرسیم که خطای آن با جواب اصلی 2.68% میباشد و بعد به مراحل بعدی میرویم.جدولی در زیر تهیه شده است که میتوان مقایسه ای بین اویلر و هیون انجام داد.
خطای تکرار هیون | خطای y هیون | t | |||
2 | 2.0 | 0 | |||
2.64% | 8.18% | 19.28% | 5 | 6.1946 | 1 |
3.09% | 9.94% | 23.19% | 11.40216 | 14.84392 | 2 |
3.17% | 10.46% | 24.24% | 25.5132 | 33.67717 | 3 |
3.18% | 10.62% | 24.54% | 56.89 | 75.33896 | 4 |
This article "روش هیون برای حل معادله دیفرانسیل" is from Wikipedia. The list of its authors can be seen in its historical and/or the page Edithistory:روش هیون برای حل معادله دیفرانسیل. Articles copied from Draft Namespace on Wikipedia could be seen on the Draft Namespace of Wikipedia and not main one.