حاسبة طريقة أويلر
أدخل dy/dx = f(x, y) ونقطة البداية وقيمة النهاية، واحصل على الحل التقريبي بطريقة أويلر أو طريقة أويلر المحسّنة (Heun) أو رونج–كوتا من الرتبة الرابعة، مع جدول الخطوات كاملًا بكل ميل مستخدم، والخطأ مقارنةً بالحل الدقيق (أو بمرجع دقيق)، وما يحدث عند تنصيف الخطوة، ورسمًا بيانيًا لمجال الميل مع رسم الحل فوقه. مجاني دون تسجيل.
استخدم x للمتغير المستقل وy للمجهول، مع + − * / ^ والأقواس: x + y، x*y، y*(1 − y)، sin(x) − y. الدوال: sin وcos وtan وexp وln وsqrt وغيرها.
إن كنت تعرف الحل الدقيق فأدخله بدلالة x لترى الخطأ الحقيقي؛ وإلا فسيُستخدم مرجع دقيق من رونج–كوتا 4.
النتائج
3.1874849
التقريب لـ y(1)
3.4365637
الحل الدقيق لـ y(1)
-0.249
الخطأ
0.1
حجم الخطوة h
10
عدد الخطوات n
الطريقة
yₙ₊₁ = yₙ + h·f(xₙ, yₙ): تتبع الميل عند بداية كل خطوة. الخطأ الكلي متناسب مع h.
جدول الخطوات
| n | xₙ | yₙ | k1 | الحل الدقيق y(xₙ) | الخطأ |
|---|---|---|---|---|---|
| 0 | 0 | 1 | 1 | 1 | 0 |
| 1 | 0.1 | 1.1 | 1.2 | 1.1103418 | -0.0103 |
| 2 | 0.2 | 1.22 | 1.42 | 1.2428055 | -0.0228 |
| 3 | 0.3 | 1.362 | 1.662 | 1.3997176 | -0.0377 |
| 4 | 0.4 | 1.5282 | 1.9282 | 1.5836494 | -0.0554 |
| 5 | 0.5 | 1.72102 | 2.22102 | 1.7974425 | -0.0764 |
| 6 | 0.6 | 1.943122 | 2.543122 | 2.0442376 | -0.101 |
| 7 | 0.7 | 2.1974342 | 2.8974342 | 2.3275054 | -0.13 |
| 8 | 0.8 | 2.4871776 | 3.2871776 | 2.6510819 | -0.164 |
| 9 | 0.9 | 2.8158954 | 3.7158954 | 3.0192062 | -0.203 |
| 10 | 1 | 3.1874849 | 3.4365637 | -0.249 |
الطرق الثلاث بالخطوة نفسها
| الطريقة | y عند النهاية | الخطأ |
|---|---|---|
| طريقة أويلر | 3.1874849 | -0.249 |
| أويلر المحسّنة (Heun) | 3.4281617 | -0.0084 |
| رونج–كوتا من الرتبة الرابعة | 3.4365595 | -0.00000417 |
تنصيف الخطوة (طريقة أويلر)
| n | h | y عند النهاية | الخطأ |
|---|---|---|---|
| 10 | 0.1 | 3.1874849 | -0.249 |
| 20 | 0.05 | 3.3065954 | -0.13 |
| 40 | 0.025 | 3.3701277 | -0.0664 |
| 80 | 0.0125 | 3.4029699 | -0.0336 |
بالنسبة لطريقة أويلر يتقلص الخطأ تقريبًا إلى النصف عند تنصيف h، وبالنسبة لطريقة Heun يصبح الربع، وبالنسبة لرونج–كوتا 4 يصبح 1/16.
الرسم البياني
- الحل الدقيق
- طريقة أويلر
كيفية استخدام حاسبة طريقة أويلر
- 1. أدخل المعادلة. اكتب الطرف الأيمن من dy/dx = f(x, y) باستخدام x وy:
x + yأوy*(1 - y)أوsin(x) - y. - 2. حدّد الشرط الابتدائي والنهاية. أدخل x₀ وy₀ = y(x₀) وقيمة x التي تريد حل المعادلة حتى عندها. يمكن أن تقع النهاية على يسار x₀.
- 3. اختر الخطوة. أدخل حجم الخطوة h، أو انتقل إلى عدد الخطوات n. إذا لم يقسم h الفترة بالتساوي تعدّله الحاسبة وتخبرك بذلك.
- 4. اختر الطريقة واقرأ الجدول. يسرد كل صف xₙ وyₙ والميول المستخدمة. وإذا كنت تعرف الحل الدقيق فأدخله لترى الخطأ الحقيقي.
الطرق الثلاث
| الطريقة | الخطوة | الخطأ الكلي |
|---|---|---|
| أويلر | yₙ₊₁ = yₙ + h·f(xₙ, yₙ) | متناسب مع h |
| أويلر المحسّنة (Heun) | yₙ₊₁ = yₙ + (h/2)(k₁ + k₂)، حيث k₁ = f(xₙ, yₙ) وk₂ = f(xₙ + h, yₙ + h·k₁) | متناسب مع h² |
| رونج–كوتا 4 | yₙ₊₁ = yₙ + (h/6)(k₁ + 2k₂ + 2k₃ + k₄) | متناسب مع h⁴ |
تتبع طريقة أويلر الخط المماسّ عند بداية كل خطوة. تأخذ طريقة Heun متوسط الميل عند بداية الخطوة مع الميل عند النهاية المتوقَّعة، ولهذا تُسمّى أيضًا قاعدة شبه المنحرف الصريحة. أما رونج–كوتا 4 فتأخذ الميل أربع مرات في كل خطوة وتوزنها بالأوزان 1 و2 و2 و1. وهذه هي الطرق الواردة في Burden وFaires، Numerical Analysis، الفصل الخامس.
مثال تطبيقي: y′ = x + y، y(0) = 1
الحل الدقيق هو y = 2eˣ − x − 1، إذن y(1) = 2e − 2 ≈ 3.4365637. وبطريقة أويلر مع h = 0.1 تكون الخطوات الأولى كما يلي:
| n | xₙ | yₙ | الميل f(xₙ, yₙ) | الحل الدقيق y(xₙ) |
|---|---|---|---|---|
| 0 | 0 | 1 | 1 | 1 |
| 1 | 0.1 | 1.1 | 1.2 | 1.1103418 |
| 2 | 0.2 | 1.22 | 1.42 | 1.2428055 |
| 3 | 0.3 | 1.362 | 1.662 | 1.3997176 |
مثلًا، y₁ = 1 + 0.1 × (0 + 1) = 1.1 وy₂ = 1.1 + 0.1 × (0.1 + 1.1) = 1.22. وبعد عشر خطوات تصل طريقة أويلر إلى y(1) ≈ 3.1874849، بخطأ قدره −0.2491: فهي تقلّل القيمة لأن الحل الحقيقي محدّب، فتقع الخطوط المماسّة تحته.
| عدد الخطوات n (h) | خطأ أويلر عند x = 1 | خطأ Heun | خطأ RK4 |
|---|---|---|---|
| 10 (0.1) | −0.2491 | −0.0084 | −0.0000042 |
| 20 (0.05) | −0.1300 | −0.0022 | −0.00000027 |
| 40 (0.025) | −0.0664 | −0.00056 | −0.000000017 |
| 80 (0.0125) | −0.0336 | −0.00014 | −0.0000000011 |
يقلّص كل تنصيف لـ h خطأ أويلر إلى النصف تقريبًا، وخطأ Heun إلى الربع، وخطأ RK4 إلى 1/16، كما تتنبأ جداول الرتب. ولكي يساوي خطأ RK4 عند n = 10 تحتاج طريقة أويلر إلى عدة مئات الآلاف من الخطوات.
قراءة مجال الميل والخطأ
تمثّل القطع القصيرة في الرسم البياني الميل f(x, y) عند شبكة من النقاط: فالحل الحقيقي منحنى يمسّ هذه القطع في كل مكان. ويُرسم الحل العددي كخط متعدد فوقه، وإذا أدخلت الحل الدقيق يُرسم متقطّعًا بجانبه. وبدون حل دقيق يقارن عمود الخطأ بقيمة مرجعية من رونج–كوتا 4 تستخدم 2000 خطوة على الأقل، وهي أدق بكثير من أي طريقة تختارها هنا. بعض المعادلات تنفجر في زمن محدود، مثل y′ = y² من y(0) = 1 عند x = 1؛ ويتوقف الجدول عند القيم التي تصبح لا نهائية.
الأسئلة الشائعة
- كيف تعمل طريقة أويلر؟
- تبني الحل خطوة بخطوة. من النقطة (xₙ, yₙ) تحسب الميل f(xₙ, yₙ) من المعادلة التفاضلية، وتتحرك على طول هذا الخط المماسّ لمسافة أفقية قدرها h، فتحصل على yₙ₊₁ = yₙ + h·f(xₙ, yₙ). وكل نقطة جديدة هي نقطة البداية للخطوة التالية.
- ما مدى دقة طريقة أويلر؟
- يتناسب خطؤها المحلي في كل خطوة مع h²، لكن الأخطاء تتراكم عبر نحو 1/h خطوة، فيكون الخطأ الكلي متناسبًا مع h. لذلك يُنصّف تنصيفُ الخطوة الخطأَ. وهي طريقة جيدة للتعلّم، وضعيفة للدقة.
- ما هي طريقة أويلر المحسّنة؟
- تأخذ طريقة أويلر المحسّنة، أو طريقة Heun، خطوة أويلر أولًا لتتنبأ بنهاية الفترة، ثم تأخذ متوسط الميل عند تلك النهاية مع الميل عند البداية. يجعل هذا التصحيح من الرتبة الثانية الخطأ الكلي متناسبًا مع h² بدلًا من h، مقابل حساب ميلين في كل خطوة.
- كيف أختار حجم الخطوة؟
- استخدم جدول التنصيف: قلّل h حتى يتوقف الناتج عن التغيّر في الأرقام التي تهمك. تحتاج طريقة أويلر إلى h صغيرة، أما رونج–كوتا 4 فتصل إلى الدقة نفسها بخطوة أكبر بكثير. وقد تفرض المعادلات الجامدة، وهي التي تتلاشى مكوّناتها بسرعة، خطوة صغيرة على أي من هذه الطرق.
- هل تحل الأداة معادلات من الرتبة الثانية أو الأنظمة؟
- لا. تحل معادلة واحدة من الرتبة الأولى dy/dx = f(x, y). ويمكن كتابة معادلة من الرتبة الثانية كنظام من الرتبة الأولى، لكن هذه الأداة لا تتعامل مع الأنظمة.
- لماذا يتوقف الحل في منتصف الطريق؟
- أصبحت القيم لا نهائية، وهذا يحدث حين ينفجر الحل الحقيقي في زمن محدود، أو حين تكون الخطوة كبيرة جدًا لمعادلة غير مستقرة. يتوقف الجدول عند آخر صف منتهٍ، وتذكر الرسالة قيمة x التي حدث قربها ذلك.