.رحلة ضَوْء (ر.ض.) مُدوِّنة تقنية, تهتم بالكمبيوتر, الإنترنت, التدوين, الهندسة, النصائح والتلميحات التقنية وتطوير الذات

إيجاد العلاقة بين مجموعة من النقاط (x,y) ورسمها في ماتلاب

القارئة “ريهام” لديها مجموعة من النقاط (x,y) وكتبت في التعليقات على تدوينتي “أفضل خمسة برامج تساعدك على إنجاز مشروع تخرجك” تسأل بشأنها:

لديّ استفسار - فضلا لا أمرا - أحتاج في بحثي لبعض الرسومات البيانية التي تعتمد على مدخلات معينة ( سلسلة من نقط س،ص ) وذلك لرسم منحنيات لا تخضع لدالة معينة و إنما فقط لهذه النقط،،
بحثت كثيرا ، و قرأت عن الماتلاب ووجدت أنه يقدم إمكانية الرسوم البيانية ، لكن النقط ص متغير تابع لـ س ،، أما بالنسبة لما أرمي إليه ، هو أن نقط س ، ص ليس لهما علاقة بتاتا ببعضهما ،،

لا أعلم - مع أني حاولت القراءة كثيرا - هل الماتلاب يمكن أن يقدم إمكانية الرسم بدون معلومية الدالة ( فقط بمعلومية النقط) ،، أم هناك برنامج آخر من خلال خبرتك تمكن لي مرادي ،،

أعتذر جدا على الإطالة ،،
ريهام ،،

جوابي:

MATLAB, هو البرنامج الهندسي الذي يجب أن نفكر به دون سواه لحل هذه المشكلات. ثمة إجابة بسيطة ومختصرة جداً على سؤالك وهي باستخدام أمر الرسم Plot في ماتلاب. ولكنني أظنك بحاجة إلى إجابة أفضل من هذه الإجابة السريعة والبسيطة.

إذا كان لديك مجموعة من النقاط (x,y), فيمكنك رسمها بكل بساطة باستخدام الكثير من البرامج: Excel, MATLAB, MiniTAB, Maple, MatheCAD, Mathematica … الخ.

في ماتلاب, ندخل القيم Xو Y في مصفوفتين متجهيتين Vectors. هذا مثال:



x=[0 1 2 3 4 5 6 7 8 9];




y=[0 1.01 1.2 1.336 1.7 2.6 2.369 3.02 3.46 4.1];


ولرسمهما, نكتب هذا الأمر:



plot(x,y,'o')


ثم نحصل على الرسم. ولكنني , كما قلت, اظنك تحتاجين إلى المزيد من الخيارات. باستخدام المفهوم الرياضي Curve Fitting نستطيع إيجاد العلاقة الرياضية بين البيانات (النقاط) كإقتران:

y=f(x)

نستطيع إيجاد علاقة خطية, تربيعية, تكعيبية … الخ. مع ملاحظة انه كلما أزدادت الدرجة كلما ازدادت دقة العلاقة (مثال: العلاقة التربيعية, التي من الدرجة الثانية, ستكون أكثر دقة من العلاقة الخطية, التي من الدرجة الأولى).

أبسط مثال على استخدام هذا المفهوم الرياضي Curve Fitting هو إيجاد علاقة خطية بين مجموعة من النقاط (أفضل خط مستقيم يمر من خلال هذه النقاط).

لإيجاد هذه العلاقة في ماتلاب:

ندخل قيم x و y على شكل مصفوفتين:

x=[0 1 2 3 4 5 6 7 8 9];


y=[0 1.01 1.2 1.336 1.7 2.6 2.369 3.02 3.46 4.1];


نرسم العلاقة, تماماً كما فعلنا سابقاً:



>> plot(x,y,'o')


MATLAB-Basic-Fittings-3

بعد ذلك, ستظهر لنا نافذة الرسم (ملاحظة: بعد كتابة أي أمر في ماتلاب, يجب الضغط على مفتاح Enter لتنفيذه).

من نافذة الرسم التي ستظهر. نذهب إلى Tools ثم Basic Fitting فتظهر لنا مجموعة من الخيارات جهة اليمين:

MATLAB-Basic-Fittings

(الخيارات الأكثر أهمية, تظهر في المستطيلات الحمراء في الصورة أعلاه).

نضع الآن إشارة (صح) على نوع العلاقة التي نريد (مثال: linear, quadratic … الخ).

وإذا أردنا أن يظهر لنا ماتلاب العلاقة الرياضية, فسنضع إشارة (صح) إلى جوار الخيار “Show equation”. وإذا أردنا تحديد عدد الخانات العشرية, ندخلها في الخيار “Significant digits.”

وهذا هو النائتج:

MATLAB-Basic-Fittings-2

وهذا كل شيء …

لقد استخدمنا المفهوم الرياضي Curve Fitting. أذا ترجعين إلى أي مرجع رياضي في علم “التحليل العددي/Numerical methods) فيمكنك فهم العلاقات الرياضية الخاصة بمفهوم Curve Fittings. ماتلاب, الذي هو مكتبة كبيرة لمجموعة من الدوال الرياضية المبرمحة مسبقاً, يستخدم هذه العلاقات ضمناً.

إذا ستكون هذه هي تجربتك الأولى مع ماتلاب, فأرجو أن لا تخشي منه; فماتلاب هو أبسط بكثير مما يتخيل البعض … كل هذا, يمكن تنفيذه في دقيقة كحد أقصى …

هذا ودمتِ للمخلص

م. مهدي …

أرسل إلى صديق





أرسل إلى صديق - نسخة للطباعة
  • Digg
  • del.icio.us
  • Facebook
  • Google
  • Live
  • Reddit
  • Spurl
  • StumbleUpon
  • TwitThis

تدوينات ذات صلة:

3 تعليق على “إيجاد العلاقة بين مجموعة من النقاط (x,y) ورسمها في ماتلاب”

  1. Reham قال: 1

    أَشْكُرُكَ جَزِ يْلَ الشَّكرِ م. مهدي ،،


  2. م. مهدي قال: 2

    @ Reham: العفو …


  3. Sabah قال: 3

    جزاك الله كل خير


برجاء عدم التعليق باللهجة العامية