ماذا تفعل هذه الحاسبة
تحلّ هذه الأداة عددياً معادلة تفاضلية اعتيادية من الدرجة الثانية مكتوبة على الصورة \(y'' = F(x, y, y')\) على فترة \([x_0, x_n]\)، باستخدام طريقة رونغه-كوتا الكلاسيكية من الدرجة الرابعة (RK4). تُدخل الطرف الأيمن \(F\) كتعبير رياضي بدلالة \(x\) و\(y\) و\(p\) (حيث يرمز \(p\) إلى \(y'\))، إضافة إلى الشروط الابتدائية \(y(x_0)\) و\(y'(x_0)\)، وطرفَي الفترة، وعدد الخطوات. تُرجع الحاسبة جدولاً كاملاً بقيم \(x\) و\(y\) و\(y'\) مع القيم عند نهاية الفترة. وهي تحليل عددي محض ينطبق في كل مكان دون قيود.
طريقة الاستخدام
أدخل \(F(x, y, p)\) — على سبيل المثال -4*p - 4*y للمعادلة \(y'' + 4y' + 4y = 0\). حدّد \(x_0\) و\(y_0 = f(x_0)\) و\(p_0 = y'(x_0)\). ثم عيّن نقطة النهاية \(x_n\) واختر عدد الفترات الجزئية \(n\) (كلما زاد عدد الخطوات صغُر طول الخطوة \(h = (x_n - x_0)/n\) وارتفعت الدقة). اختر عدد الأرقام المعنوية المراد عرضها. خطأ طريقة RK4 من الرتبة \(O(h^4)\) إجمالاً، لذا فإن مضاعفة \(n\) تقلّص الخطأ بمعامل يقارب 16.
شرح الصيغة
تُختزَل المعادلة التفاضلية من الدرجة الثانية إلى نظام من معادلتين من الدرجة الأولى بوضع \(p = y'\)؛ عندئذ يصبح \(y' = p\) و\(p' = F(x, y, p)\). تتقدّم طريقة RK4 بالمجهولَين في كل خطوة عبر أربعة تقييمات مرجَّحة للميل (\(k\) للمتغير \(y\)، و\(j\) للمتغير \(p\))، ثم تجمعها على الصورة $$y_{i+1} = y_i + \tfrac{1}{6}\left(k_1+2k_2+2k_3+k_4\right), \quad p_{i+1} = p_i + \tfrac{1}{6}\left(j_1+2j_2+2j_3+j_4\right)$$
مثال محلول
لنأخذ \(y'' = -4p - 4y\) حيث \(x_0 = 0\) و\(y_0 = 0\) و\(p_0 = 1\) و\(x_n = 1\) وبخطوة واحدة كبيرة (\(n = 1\)، \(h = 1\)). تعطي المراحل الأربع: \(k_1=1,\ k_2=-1,\ k_3=2,\ k_4=-5\) و\(j_1=-4,\ j_2=2,\ j_3=-6,\ j_4=12\). ومنه $$y(1) = \frac{1 - 2 + 4 - 5}{6} = -\frac{1}{3} = -0.3333$$ $$p(1) = 1 + \frac{-4 + 4 - 12 + 12}{6} = 1$$ أما الحل الدقيق فهو \(y = x e^{-2x}\)، أي \(y(1) = e^{-2} = 0.1353\)؛ فخطوة واحدة عملاقة بطول \(h = 1\) خشنة جداً. أما استخدام \(n = 50\) أو \(100\) فيُقارب القيمة الدقيقة تماماً.
الأسئلة الشائعة
هل يمكنني التكامل في الاتجاه العكسي؟ نعم — اجعل \(x_n\) أصغر من \(x_0\) فيصبح طول الخطوة \(h\) سالباً، ويجري التكامل من \(x_0\) نزولاً إلى \(x_n\).
لماذا تبدو نتيجتي خاطئة عند استخدام عدد قليل من الخطوات؟ تعتمد دقة RK4 على صغر طول الخطوة. زِد قيمة \(n\) حتى تتوقف النتائج المتتالية عن التغيّر.
ما الدوال التي يمكن أن يحتويها F؟ العمليات + - * / ^ والأقواس، إضافة إلى sin وcos وtan وasin وacos وatan وsinh وcosh وtanh وexp وlog/ln وlog10 وsqrt وabs، فضلاً عن الثابتين pi وe.