حاسبة رونج-كوتا 4 لخطوة واحدة
تنقل حاسبة رونج-كوتا 4 ذات الخطوة الواحدة معادلة تفاضلية من الرتبة الأولى من نقطة معلومة إلى النقطة التالية.
شغّل الأداة مجانًا
أدخلوا المشتقة بصيغة f(x, y)، والإحداثيات الابتدائية، وحجم خطوة غير صفري. تعرض النتيجة k1 وk2 وk3 وk4 بوصفها تقديرات للميل، والنقاط الوسيطة التي يجري التقييم عندها، ومتوسطها المرجح، وتقريب RK4 النهائي. يتيح هذا المسار الكامل التحقق من التمارين، واختبار محلل عددي، أو توثيق خطوة واحدة من دون إخفاء العمليات الحسابية.
صوغوا مسألة القيمة الابتدائية بوضوح
ابدؤوا بمعادلة من الرتبة الأولى مكتوبة بالشكل y' = f(x, y). أدخلوا في حقل التعبير الطرف الأيمن فقط، واستعملوا x وy بوصفهما المتغيرين المستقل والتابع. فإذا كانت y' = x + y مثلًا، فاكتبوا x + y. يدعم المحلل الحساب المعتاد والأقواس والأسس المكتوبة بالرمز ^ والثابتين pi وe، ودوال شائعة مثل sin وcos وexp وlog وsqrt. ثم أدخلوا النقطة المعلومة (x, y) وحجم الخطوة h. تتقدم قيمة h الموجبة نحو اليمين، بينما تطبق القيمة السالبة بناء RK4 نفسه في الاتجاه العكسي. لا يجوز أن تكون الخطوة صفرًا لأن الحل لن يتقدم حينئذ. يجب أن تكون كل المدخلات العددية وجميع قيم الدوال منتهية. اكتبوا الضرب صراحةً على هيئة 2*x بدلًا من 2x. يمنع هذا التنسيق الدقيق تفسير تسمية المعادلة أو الضرب الضمني بطريقة غير مقصودة، ويحافظ على قابلية إعادة إنتاج التقييمات الأربعة.
تتبعوا تقديرات الميل الأربعة
تعرض الحاسبة القيم من k1 إلى k4 كميول وفق الاصطلاح k1 = f(x, y)، لا كزيادات سبق ضربها في h. تستخدم k1 أولًا النقطة الابتدائية. ويستخدم التقدير الثاني نقطة المنتصف x + h/2 ويتنبأ بإحداثي y لها بواسطة h*k1/2. يبقى التقدير الثالث عند المنتصف، لكنه يستبدل ذلك التنبؤ بـ h*k2/2، فيصحح الاتجاه بالميل الثاني. وأخيرًا تقيّم k4 المشتقة عند x + h باستخدام تنبؤ كامل الخطوة لقيمة y مبني على k3. تعرض الحقول المرجعة k2_point وk3_point وk4_point إحداثيات التقييم هذه مباشرة. وهذا مهم لأن بعض الكتب تستخدم رموز k نفسها للدلالة على حاصل ضرب كل ميل في h. إذا اتبع مرجعكم ذلك الاصطلاح البديل، فاضربوا كل قيمة k معروضة في h قبل مقارنة المراحل. لا يتغير التقريب النهائي لقيمة y ما دامت الصيغة المقابلة مطبقة باتساق.
فسروا التحديث المرجح وحدود استخدامه
تجمع طريقة RK4 الميول وفق (k1 + 2*k2 + 2*k3 + k4)/6، فتمنح تقديري المنتصف ضعف وزن تقديري الطرفين. تعيد الحاسبة هذه الكمية باسم weighted_slope، ثم تحسب y_next = y + h*weighted_slope وx_next = x + h. تتمتع خطوة RK4 بدقة من الرتبة الرابعة بالمعنى المحلي المعتاد عندما تكون المشتقة ملساء بما يكفي، لكن ذلك لا يضمن أن أي حجم خطوة مختار صغير بما يكفي. قد تتطلب المسألة سريعة التغير أو المنفردة أو غير المتصلة أو الصلبة قيمة h أصغر كثيرًا أو طريقة تتحكم في الخطأ. تنفذ هذه الأداة عمدًا خطوة ثابتة واحدة فقط؛ فلا تقدر خطأ القطع، ولا تكيف حجم الخطوة، ولا تحل على مجال كامل. لتقييم الحساسية، قارنوا خطوة بحجم h مع خطوتين متتاليتين بحجم h/2 في محلل كامل. استخدموا المراحل المعروضة لتحديد الفروق الناتجة عن إدخال التعبير أو التقريب العددي أو اصطلاح الميل.
حالات الاستخدام
التحقق من تمرين دراسي
تحققوا من كل ميل وسيط في RK4 ومن تقريب y التالي بدلًا من مقارنة الرقم النهائي وحده.
تصحيح محلل عددي
قارنوا خطوة معلومة، بما فيها حالاتها الوسيطة، مع تنفيذ في جدول بيانات أو برنامج نصي أو محاكاة.
توثيق حساب هندسي
سجلوا تقييمات المشتقة الحتمية الأربعة والتحديث المرجح المستخدم لتقديم النموذج خطوة واحدة.
الأسئلة الشائعة
ما تكلفة عملية حساب واحدة عبر API؟
تكلف كل مطالبة API مبلغ $0.002. تعمل حاسبة المتصفح محليًا ويمكن استخدامها مجانًا.
هل k1 وk2 وk3 وk4 ميول أم زيادات؟
إنها ميول، أي قيم مباشرة للدالة f(x, y). اضربوا كل قيمة في h إذا كان مرجعكم يعرّف k بوصفها زيادة.
هل يمكن أن يكون حجم الخطوة سالبًا؟
نعم. تطبق الخطوة السالبة المنتهية صيغ RK4 نفسها للتقدم نحو قيمة أصغر لـ x.
ما صيغة التعبير المدعومة؟
استخدموا x وy والأعداد وpi وe والأقواس والرموز + و- و* و/ و^، والدوال المدعومة ذات المعامل الواحد مثل sin وcos وexp وlog وsqrt.
هل تحل الأداة المعادلة التفاضلية على مجال؟
لا. إنها تنفذ خطوة RK4 ثابتة واحدة بالضبط من النقطة الابتدائية المدخلة، ولا تختار حجم الخطوة أو تقدر الخطأ.
للمطوّرين — الوصول عبر API
كل ما في هذه الصفحة متاح برمجيًا. هذا القسم موجّه للفرق التقنية التي تريد ربط الأداة بأنظمتها الخاصة؛ بقية المستخدمين يمكنهم استخدام الأداة أعلاه مباشرة دون الحاجة لقراءة ما يلي.
الـEndpoint
صادِق على طلبك بترويسة Bearer، وأرسل طلب POST واحدًا لتدخل مهمتك قائمة التنفيذ فورًا؛ ثم تستلم النتيجة عبر webhook أو رابط موقّع.
استدعِ الخدمة من بيئتك
curl -X POST https://api.kit.forhosting.com/calculus/rk4-single-step \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"expression":"x + y","x":0,"y":1,"step_size":0.1}'const res = await fetch("https://api.kit.forhosting.com/calculus/rk4-single-step", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"expression": "x + y",
"x": 0,
"y": 1,
"step_size": 0.1
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/calculus/rk4-single-step",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"expression": "x + y",
"x": 0,
"y": 1,
"step_size": 0.1
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/calculus/rk4-single-step", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"expression":"x + y","x":0,"y":1,"step_size":0.1}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"expression":"x + y","x":0,"y":1,"step_size":0.1}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/calculus/rk4-single-step", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)مثال على الطلب
{
"expression": "x + y",
"x": 0,
"y": 1,
"step_size": 0.1
}مثال على الاستجابة
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "calculus.rk4_single_step",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}الواجهة غير متزامنة: تستلم task_id فور الإرسال، ويمكنك الاستعلام عن الحالة بمعدل طلب واحد في الثانية.
الأسعار
السعر معلن كما تراه: لا tokens ولا نظام نقاط؛ وإن فشلت المهمة فلن تُحاسَب عليها.
الحدود
max_chars | 500 |
الأخطاء
| HTTP | الرمز | المعنى |
|---|---|---|
401 | unauthorized | مفتاح الوصول مفقود أو غير صالح؛ تحقق من ترويسة Bearer في طلبك. |
402 | insufficient_balance | رصيدك لا يكفي لتنفيذ هذه المهمة؛ أعد شحن الرصيد ثم أعد المحاولة. |
404 | unknown_type | نوع المهمة المطلوب غير موجود في الكتالوج — راجع الاسم المرسل في الطلب. |
429 | rate_limited | تجاوزت الحد المسموح من الطلبات؛ انتظر قليلًا ثم أعد المحاولة. |