المصفوفات الخاصة Special Matrices في برنامج MATLAB


#1

المصفوفات الخاصة Special Matrices

يحتوي برنامج MATLAB في بنيته الداخلية Internal Structure علي العديد من الدوال الداخلية (المبنية بداخله ) Built in functions والتي من خلالها نستطيع تكوين العديد من المصفوفات الخاصة Special Matrices المهمة في العديد من التطبيقات الرياضية والتي سنوضحها فيما يلي :

المصفوفة المربعة : Square Matrix

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

المصفوفة الصفرية : Zeros Matrix

هي المصفوفة التي تحتوي جميع قيم عناصرها علي أصفار ويمكن إنشاءها بإستخدام الدالة الداخلية للبرنامج zeros وتعتبر المصفوفة الصفرية هي المحايد الجمعي للمصفوفات والتي يمكن إستخدامها علي إحدي الصور التالية

Z1=zeros (m,n)
Z1=zeros ([m  n])

تستخدم إحدي هاتين الصورتين للحصول علي مصفوفة صفرية (غير مربعة ) عدد صفوفها m وعدد أعمدتها n .
Z2=zeros (n)
تستخدم هذه الصورة للحصول علي مصفوفة صفرية مربعة ( من الدرجة (n x n أي عدد صفوفها n وعدد أعمدتها n .
ولمزيد من الإيضاح لأوجه الإختلاف بين صور تكوين المصفوفة الصفرية يمكننا تطبيق بعض الأمثلة التوضيحية التالية :
فلإنشاء مصفوفة صفرية (غير مربعة) عدد صفوفها 3 وعدد أعمدنتها 2 نقوم بتحرير الأمر التالي :

>> Z1=zeros (3,2)
Z1 =
        0      0
        0      0
        0      0

ولإنشاء مصفوفة صفرية (مربعة ثلاثية ) عدد صفوفها 3 وعدد أعمدتها 3 نقوم بتحرير الأمر التالي :

>> Z2=zeros (3)
Z2 =
        0      0      0
        0      0      0
        0      0      0

مصفوفة الوحدة (جميع عناصرها الواحد الصحيح ) : Ones Matrix

هي المصفوفة التي تحتوي جميع قيم عناصرها علي الواحد الصحيح ويمكن إنشاؤها بإستخدام الدالة الداخلية للبرنامج ones والتي يمكن إستخدامها علي إحدي الصور التالية :

O1=ones (m,n)
O1= ones ([m         n])

تستخدم إحدي هاتين الصورتين للحصول علي مصفوفة وحدة (غير مربعة) عدد صفوفها m وعدد أعمدتها n .

O2=ones (n)

تستخدم هذه الصورة للحصول علي مصفوفة وحدة مربعة ( من الدرجة (n x n) أي عدد صفوفها n وعدد أعمدتها n .
ولمزيد من الإيضاح لأوجه الإختلاف بين صور تكوين مصفوفة الوحدة يمكننا تطبيق بعض الأمثلة التوضيحية التالية :
فلإنشاء مصفوفة وحدة (غير مربعة) عدد صفوفها 2 وعدد أعمدتها 3 نقوم بتحرير الأمر التالي :

>> O1=ones (2,3)
O1 =
        1      1      1
        1      1      1

ولإنشاء مصفوفة وحدة (مربعة ثنائية ) عدد صفوفها 2 وعدد أعمدتها 2 نقوم بتحرير الأمر التالي :

>> O2=ones (2,2)
O2 =
        1      1
        1      1

مدور (مبدول) المصفوفات والمتجهات : Matrices and Vector Transpose

هي عملية يتم فيها تبديل الصفوف إلي أعمدة أو تبديل الأعمدة إلي صفوف ويمكننا القيام بهذه العملية لمصفوفة أو لمتجه معين علي حد سواء بأن نقوم بوضع علامة الفاصلة العليا apostrophe (‘) بعد اسم المصفوفة أو المتجه المراد الحصول علي مدوره (مبدوله) فمثلا مبدول المصفوفة A هو المصفوفة A’ ولمزيد من الإيضاح نقوم بتطبيق المثال التالي :

>> % Defining a Square Matrix [A]
>> A=[1  2      3;4   5      6;7   8      9]
A =
        1      2      3
        4      5      6
        7      8      9
>> % Getting Transpose of Matrix [A]
>> B=A’
B =
        1      4      7
        2      5      8
        3      6      9

لنلاحظ أنه بإستخدام علامة الفاصلة العليا apostrophe (‘) قد تم تبديل صفوف المصفوفة A إلي أعمدة أو العكس مع مراعاة عدم ترك مسافة فارغة space بين اسم المتجه أو المصفوفة والفاصلة العليا .

وبنفس الطريقة السابقة يمكننا إيجاد مدور (مبدول) المتجهات الصفية / العمودية كما في المثال التالي :

>> % Defining a row vector a of   5 elements
>> a=[1   2      3      4      5]
a =
        1      2      3      4      5
>> % Getting Transpose of a Row Vector  a
>> b=a’
b =
        1
        2     
        3
        4
        5

وكما نلاحظ أنه بالفعل بإستخدام العلامة (‘) قد تم تبديل المتجه الصفي a إلي متجه عمودي b له نفس عدد عناصر المتجه الصفي .