ForHosting KIT · الرياضيات

حاسبة غرام-شميت

أدخل متجهات مستقلة واحصل على قاعدة متعامدة معيارية للفضاء نفسه: تتحول (1, 1, 0) و(1, 0, 1) و(0, 0, 3) إلى ثلاثة متجهات متعامدة طول كل منها واحد، وأولها هو متجهك الأول بعد جعل طوله واحدًا. مجانية في متصفحك.

  • مجاني
  • يعمل في متصفحك
  • دون تسجيل
  • بياناتك لا تغادر جهازك
استخدمها من الويبAPIالبريدTelegramالتطبيق قريبًا

تأخذ عملية Gram-Schmidt مجموعة من المتجهات المستقلة خطيًا وتُعيد قاعدة متعامدة معيارية: العدد نفسه من المتجهات، كل منها بطول وحدوي، وكل منها عمودي على جميع الآخرين، وتولّد الفضاء الجزئي نفسه الذي تولّده المتجهات الأصلية. وإذا كانت المتجهات مرتبطة خطيًا، فإن الحاسبة تُعلمك بذلك بدلًا من إرجاع إجابة خاطئة.

ماذا تفعل عملية Gram-Schmidt فعليًا

القواعد المتعامدة المعيارية تجعل معظم حسابات الجبر الخطي أسهل: تصبح الإسقاطات مجرد جداءات نقطية، وتصبح الإحداثيات بديهية، وتبقى الأخطاء العددية صغيرة. وتبني عملية Gram-Schmidt قاعدة كهذه انطلاقًا من أي مجموعة مستقلة. فهي تأخذ المتجه الأول وتعيد قياسه إلى طول وحدوي، فيكون أول متجه في القاعدة.

ولكل متجه لاحق، تطرح الجزء الموازي لكل متجه قاعدي وُجد سابقًا — أي الإسقاط المحسوب كجداء نقطي — ثم تعيد قياس ما يتبقى. وما يتبقى يكون، بحكم البناء، عموديًا على كل ما سبقه. كرر ذلك على جميع المتجهات فتحصل على قاعدة متعامدة معيارية للفضاء نفسه.

تنفّذ الحاسبة في هذه الصفحة هذا الإجراء الكلاسيكي نفسه: تُدخل المتجهات كمصفوفات أرقام لها البعد نفسه، وتستلم المتجهات المتعامدة المعيارية بالترتيب المقابل. المتجه الأول في الناتج هو مجرد متجه الإدخال الأول بعد تطبيعه، وكل ناتج لاحق هو المكوّن الجديد حقًا من مدخلك بعد جعله وحدوي الطول. ولأن الحساب كله عمليات حسابية اعتيادية على أرقام ذات دقة مزدوجة، فإن المدخل نفسه يعطي الناتج نفسه دائمًا، وهذا ما يجعلها آمنة للتضمين في خطوط المعالجة الآلية.

لماذا يُعد الارتباط الخطي خطأً لا نتيجة

لا تملك عملية Gram-Schmidt إجابة ذات معنى عندما تكون متجهات الإدخال مرتبطة خطيًا. فإذا كان أحد المتجهات تركيبًا مما قبله، فإن طرح الإسقاطات يمحوه كليًا: لا يتبقى شيء لتطبيعه، والقسمة على بقية صفرية الطول أمر بلا معنى. إن حاسبة تحذف ذلك المتجه بصمت أو تُعيد صفًا صفريًا ستسلّمك قاعدة لا تطابق عدد مدخلاتك وتُخفي خطأ في النمذجة.

والفحص نفسه يلتقط الحالات الحدية الواضحة: متجه صفري، أو متجه مكرر، أو عدد متجهات يفوق بعد الفضاء، وهو ارتباط بمجرد العد. والتفاوت المسموح عددي لا دقيق تمامًا، لذا تُعلَّم أيضًا المجموعات شبه المرتبطة الناتجة عن ضجيج القياس. وإذا كنت تتوقع أن تكون المجموعة مستقلة، فإن رسالة الخطأ تخبرك أي متجه يجب فحصه، وهذا يكفي عادةً لاكتشاف الصف المكرر أو خطأ النسخ واللصق في بياناتك.

تفاصيل عملية: شكل الإدخال والدقة والحدود

الإدخال حقل واحد هو vectors، ويُعطى كمصفوفة من مصفوفات أرقام منتهية — مصفوفة داخلية لكل متجه، وجميعها بالبعد نفسه، بحد أقصى 50 متجهًا ببعد لا يتجاوز 50. ويُظهر الناتج البعد، وعدد المتجهات المتعامدة المعيارية المُنتجة، والقاعدة نفسها كمصفوفة من متجهات وحدوية. تُقرَّب المركّبات إلى ست منازل عشرية، فتكون النتائج مستقرة عبر الأجهزة وآمنة للمقارنة أو التخزين؛ ولكل متجه مُعاد معيار إقليدي يساوي 1 وهو عمودي على رفاقه ضمن حدود ذلك التقريب.

الحساب من رتبة O(n مربع مضروبًا بالبعد)، وهو ضمن هذه الحدود عمل يستغرق ميكروثوانٍ، فزمن الاستجابة الذي تلاحظه هو في جوهره زمن النقل لا الحساب. فحص سلامة مفيد قبل إرسال البيانات: لا يجوز أن يكون أي متجه صفريًا، ولا أن يتساوى متجهان، ولا أن يتجاوز عدد المتجهات البعد. وللمجموعات سيئة التكييف في العمل العددي الجاد، توفر نسخة Gram-Schmidt المعدّلة أو تحليل Householder QR ثباتًا إضافيًا، لكن للأحجام التي تقبلها هذه الحاسبة فإن العملية الكلاسيكية أدق بكثير من المنازل الست التي تعرضها.

تعامد الاتجاهات في مشروع رسوميات أو محاكاة

حوِّل متجهات الإطار شبه المتعامدة إلى قاعدة متعامدة معيارية حقيقية قبل تركيب الدورات، حتى لا يتراكم انحراف التقريب.

تجهيز قاعدة لخطوة مربعات صغرى أو إسقاط

أسقط البيانات على فضاء جزئي بضربها نقطيًا في متجهات قاعدة متعامدة معيارية بدلًا من حل نظام خطي في كل مرة.

مراجعة الواجبات والأمثلة التعليمية

تحقق من تمرين Gram-Schmidt محلول يدويًا خطوة بخطوة، واعرف بالضبط أي متجه يكسر الاستقلال عندما تكون المجموعة مرتبطة.

كم تبلغ التكلفة؟

أما في هذه الصفحة فيعمل مجانًا في متصفحك بالشيفرة نفسها.

ما مدى دقة النتيجة؟

تُحسب المركّبات بدقة مزدوجة وتُقرَّب إلى ست منازل عشرية. ولكل متجه في الناتج معيار وحدوي وهو عمودي على الآخرين ضمن حدود ذلك التقريب.

هل يهم ترتيب متجهات الإدخال؟

نعم. المتجه الأول في الناتج هو الإدخال الأول بعد تطبيعه، والنواتج اللاحقة هي البواقي المتعامدة بالترتيب نفسه، لذا فإن تبديل ترتيب الإدخال يعطي قاعدة متعامدة معيارية مختلفة (وصحيحة بالقدر نفسه).

ماذا يحدث إذا كانت متجهاتي مرتبطة خطيًا؟

تتوقف الحاسبة وتخبرك بالمتجه الذي لا يضيف اتجاهًا جديدًا، بدل حذفه بصمت أو إرجاع صف من الأصفار. ويُعد المتجه الصفري والمتجه المكرر من الحالات المرتبطة أيضًا.

ما فائدة القاعدة المتعامدة المعيارية؟

تسهّل معظم حسابات الجبر الخطي: تصبح الإسقاطات مجرد ضرب داخلي، وتُستخرج الإحداثيات مباشرة، وتبقى الأخطاء العددية صغيرة.

كل ما في هذه الصفحة متاح برمجيًا. هذا القسم موجّه للفرق التقنية التي تريد ربط الأداة بأنظمتها الخاصة؛ بقية المستخدمين يمكنهم استخدام الأداة أعلاه مباشرة دون الحاجة لقراءة ما يلي.

POSThttps://api.kit.forhosting.com/math/gram-schmidt

صادِق على طلبك بترويسة Bearer، وأرسل طلب POST واحدًا لتدخل مهمتك قائمة التنفيذ فورًا؛ ثم تستلم النتيجة عبر webhook أو رابط موقّع.

curl -X POST https://api.kit.forhosting.com/math/gram-schmidt \
  -H "Authorization: Bearer $KIT_KEY" \
  -H "Content-Type: application/json" \
  -d '{"vectors":[[1,1,0],[1,0,1],[0,0,3]]}'
{
  "vectors": [
    [
      1,
      1,
      0
    ],
    [
      1,
      0,
      1
    ],
    [
      0,
      0,
      3
    ]
  ]
}
{
  "task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
  "type": "math.gram_schmidt",
  "status": "queued",
  "_links": {
    "result": "/tasks/tsk_…/result"
  }
}

الواجهة غير متزامنة: تستلم task_id فور الإرسال، ويمكنك الاستعلام عن الحالة بمعدل طلب واحد في الثانية.

لكل طلب$0.002

السعر معلن كما تراه: لا tokens ولا نظام نقاط؛ وإن فشلت المهمة فلن تُحاسَب عليها.

max_vectors50
max_dimension50
HTTPالرمزالمعنى
401unauthorizedمفتاح الوصول مفقود أو غير صالح؛ تحقق من ترويسة Bearer في طلبك.
402insufficient_balanceرصيدك لا يكفي لتنفيذ هذه المهمة؛ أعد شحن الرصيد ثم أعد المحاولة.
404unknown_typeنوع المهمة المطلوب غير موجود في الكتالوج — راجع الاسم المرسل في الطلب.
429rate_limitedتجاوزت الحد المسموح من الطلبات؛ انتظر قليلًا ثم أعد المحاولة.

الصق متجهاتك هنا واحصل على القاعدة المتعامدة المعيارية محسوبةً خطوة بخطوة في متصفحك، أو استدعِ API لتعامد مجموعات المتجهات داخل برنامج نصي أو خط معالجة جداول بيانات أو سير عمل عددي.

لماذا يُعد الارتباط الخطي خطأً لا نتيجة

تتعامل هذه النقطة الطرفية مع الارتباط بوصفه انتهاكًا للعقد: فهي تتحقق بالترتيب مما إذا كان كل متجه يضيف اتجاهًا جديدًا، وإذا وقع المتجه k في فضاء ما قبله أجابت بخطأ invalid_input يُسمّي المتجه المخالف — وطلب الخطأ لا يُحتسب عليك.

ما الإدخال المتوقع؟

حقل vectors: مصفوفة من مصفوفات أرقام منتهية، مصفوفة داخلية لكل متجه، وجميعها بالبعد نفسه — بحد أقصى 50 متجهًا ببعد لا يتجاوز 50.

ماذا يحدث إذا كانت متجهاتي مرتبطة خطيًا؟

يفشل الطلب بخطأ invalid_input يُسمّي أول متجه يقع في فضاء المتجهات السابقة. وطلبات الخطأ لا تُحتسب عليك.

هل يمكن استخدامها للمتجهات المركّبة؟

لا. تُقبل المتجهات الحقيقية فقط، ويجب أن تكون المدخلات أرقام JSON منتهية.

اطّلع على توثيق KIT الكامل ←