M-File هي وسيلة لإدخال الأوامر ولكن ليس من خلال نافذة الأوامر, ولكن ماذا قد يختلف في هذه الوسيلة الجديدة في إدخال الأوامر؟
- في عملية إدخال الأوامر التي كنا نستخدمها, إذا أردنا تعديل عنصر أو أكثر كان يجب إعادة إدخال الأمر من جديد.
- إذا وجد خطأ, فيجب كتابة الأمر من جديد
- إذا كتبنا برنامج كبير, وأردنا إعادة العملية مرة أخرى يجب إدخال جميع الأوامر من جديد وبنفس الترتيب.
- إذا حدث خطأ في ترتيب الأوامر لهذا البرنامج الكبير ستقوم بإعادة الإدخال الأوامر من البداية مرة إخرى.
- يصعب عمل عملية تصحيح للأخطاء Debugging
وهذا بالطبع يستغرق وقتاً كبيراً هذا بالإضافة إلى الملل الذي يحدث للمستخدم
وطبعاً حلاً لهذه المشكلة, تم عمل بما يسمى M-File والتي تعطي
القدرة على كتابة البرنامج كاملاً أولاً بدون تشغيل, وبعد الإنتهاء منه يتم
تشغيله, هذه الخاصية تعطي القدرة على تعديل القيّم دون الحاجة إلى كتابتها
مرة أخرى, أو إعادة إدخال الأوامر التي تعتمد على هذا الأمر.
فكيف يتم تشغيل تلك الخاصية؟ إتبع الصورة التالية
وبالتالي ستظهر نافذه جديدة, تأخذ الشكل التالي:
نافذة M-File سنقوم الآن بالتعرف على نافذة M-File, أنظر الصورة التالية:
ولكن عند الضغط على زر التشغيل, سيطالبك الماتلاب بحفظ البرنامج, ولكن يشترط الآتي عند حفظ البرنامج
- أن لايبدأ بأرقام
- أن لا يكون أمراً معرفاً في الماتلاب
- أن لا يحتوي الإسم على مسافات فاصلة
- أن لاتحتوي على رموز خاصة مثل + , - , & , *
يجب مراعاة تلك الشروط وإلا لن يقوم الماتلاب بتنفيذ البرنامج
فالنقم بتنفيذ المثال المكتوب الآن في النافذة السابقة
1- يتم الضغط على زر التشغيل كما هو واضح في الصورة التالية
2- سيطالبنا الماتلاب بحفظ البرنامج أولاً, ولنسميه training1
3- ستظهر القيم في كلاً من Command Window and Workspace
4- لنعود إلى M-File ونقوم بتغيير بعض القيم للمصفوفة, كما في الشكل التالي
5- سنقوم الآن بتشغيل البرنامج, وسيقوم الماتلاب الآن بالحفظ تلقائياً
دون الحاجة لإعادة التسمية, ثم شاهد نافذة الأوامر Command Window
وكما تلاحظ فإنه في كل عملية تحديث للبرنامج ستظل قيم البرنامج القديم
موجودة, فحلاً لهذه المشكلة, يتم وضع الأمر CLC في أول كل برنامج, وهذا
يكون مبدأ في جميع البرامج التي نقوم بعملها لابد من أن تبدأ بهذا الأمر.
مثال على M-File سنقوم الآن بالكتابة على M-File
سنقوم الآن بتعديل المثال, وحتى نتأكد أن أمر CLC يعمل, ستختفي القيم من Command Window وتظهر القيم الجديدة
وبهذا نتأكد من أن الأمر CLC يعمل بكفاءة
ولكن دعونا نشاهد نافذة Workspace والتي تحتوى على قيم A,B,C
لنقم بتعديل بسيط في البرنامج عن طريق تغيير الرموز فقط من A,B,C إلى D,E,F ومشاهدة النافذة Workspace
ولتلافي هذه المشكلة, يجب وضع أمر Clear بعد الأمر clc بحيث يقوم بمسح
أي قيمة سابقة من أي برنامج آخر في Workspace , ويجب تثبيت هذا الأمر أيضاً
في جميع البرامج والتي سيتم عملها لاحقاً بإذن الله.
وسنقوم الآن بتنفيذ نفس البرنامج ولكن بعد وضع الأمر clear, وستلاحظ الفرق الشاسع في الماتلاب الآن