Quantcast
Channel: منتدى المهندس - أحدث الموضوعات
Viewing all articles
Browse latest Browse all 6628

تابع الدوال والعمليات الرياضية الخاصة بالمتجهات والمصفوفات في برنامج MATLAB

$
0
0

كتب @ahmedeldeep:

إيجاد حاصل ضرب قيم عناصر المتجه / المصفوفة : Product of Vector/Matrix elements

تستخدم الدالة prod(A) (و هي إختصار لكلمة product ) في ضرب قيم عناصر المتجه A وفي حالة أن A يمصل مصفوفة فيتم ضرب عناصر كل عمود من أعمدة هذه المصفوفة كل علي حدة بحيث يكون ناتج هذه الدالة متجه صفي يمكننا إيجاد حاصل ضرب عناصره بإستخدام نفس الدالة Prod لينتج حاصل ضرب جميع عناصر المصفوفة .
وتستخدم الدالة prod علي الصور العامة التالية :

prod (A)
prod (A, DIM)

حيث أن :
DIM : تأخذ القيمتين التاليتين :
1- لإيجاد حاصل ضرب عناصر أعمدة المصفوفة A وهو الوضع الإفتراضي .
2- لإيجاد حاصل ضرب عناصر صفوف المصفوفة A بحيث يكون ناتج هذه الدالة متجه عمودي يمكننا إيجاد حاصل ضرب عناصره بإستخدام نفس الدالة لينتج حاصل جمع جميع عناصر المصفوفة .

إيجاد المتوسط الحسابي لعناصر المصفوفة : Mean of Vector / Matrix elements

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

mean (A)
mean (A, DIM)

حيث أن :
DIM : تأخذ القيمتين التاليتين :
1- لإيجاد المتوسط الحسابي لعناصر أعمدة المصفوفة A وهو الوضع الإفتراضي .
2- لإيجاد المتوسط الحسابي لعناصر صفوف المصفوفة A بحيث يكون ناتج هذه الدالة متجه عمودي يمكننا إيجاد المتوسط الحسابي لعناصره بإستخدام نفس الدالة mean لينتج المتوسط الحسابي لجميع عناصر المصفوفة .

>> % Defining A as a Row Vector
>> A=[1,2,3,4,5] ;
                >> % Mean of vector elements
>> M=mean (A)
M =
        3

إيجاد العنصر الأكبر في المتجه / المصفوفة : Getting Maximum Vector / Matrix element value

تستخدم الدالة max(A) (وهي إختصار لكلمة Maximum أي الأكبر ) في إيجاد أكبر قيم عناصر المتجه A يمثل مصفوفة فيتم إيجاد العنصر الأكبر لعناصر كل عمود من أعمدة المصفوفة كل علي حدة بحيث يكون ناتج هذه الدالة متجه صفي ( به الرقم الأكبر من كل عمود ) ويمكننا إيجاد العنصر الأكبر لعناصره بإستخدام الأمر max(max(A)) لينتج العنصر الأكبر لجميع عناصر المصفوفة .
وتستخدم الدالة max علي الصورة العامة التالية

m=max (A)
m=max (A, [ ] , DIM)

حيث أن :
DIM : تأخذ القيمتين التاليتين :
1- لإيجاد أقصي قيمة في عناصر أعمدة المصفوفة A و هو الوضع الإفتراضي .
2- لإيجاد أقصي قيمة في عناصر صفوف المصفوفة A بحيث يكون ناتج هذه الدالة متجه عمودي (به الرقم الأكبر من كل صف ) يمكننا إيجاد العنصر الأكبر لعناصره بإستخدام نفس الدالة max لينتج العنصر الأكبر لجميع عناصر المصفوفة .
ولزيد من الإيضاح لأوجه الإختلاف بين الثلاث صور السابقة لاستخدام الدالة max تابع المثال التالي :
- قم بتعريف المصفوفة 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
  • قم بتحرير الأمر m1 = max(A,[],1) ليقوم البرنامج بإيجاد العنصر الأكبر لعناصر كل عمود من أعمدة المصفوفة كل علي حدة ويقوم بتخزينها في المتجه الصفي m1 كما يلي :
>> % Getting maximum value of columns elements
>> m1=max(A, [ ] , 1)
m1 =
        7      8      9
  • قم بتحرير الأمر m2 = max(A,[],2) ليقوم البرنامج بإيجاد العنصر الأكبر لعناصر كل صف من صفوف المصفوفة كل علي حدة ويقوم بتخزينها في المتجه الصفي m2 كما يلي :
>> % Getting maximum value of rows elements
>> m2=max(A, [ ] , 2)
m2 =
        3
        6
        9
  • ويمكننا إيجاد قيمة العنصر الأكبر لجميع عناصر المصفوفة A في خطوة واحدة بتحرير إحدي الأمرين التاليين :
    الأمر الأول :
>> m=max(max(A))
m =
        9

الأمر الثاني :

>> m=max(A(:))
m =
        9

وكما نري أن الأمران قاما بإرجاع أقصي قيمة لجميع عناصر المصفوفة A وهي القيمة تسعة .

إيجاد العنصر الأصغر في المتجه/المصفوفة : Getting Minimum Vector / Matrix element value

تستخدم الدالة min(A) ( وهي إختصار لكلمة Minimum أي الأقل ) في إيجاد أقل عناصر المتجه A وفي حالة أن A يمثل مصفوفة فيتم إيجاد العنصر الأصغر ( الأدني) لعناصر كل عمود من أعمدة المصفوفة كل علي حدة بحيث يكون ناتج هذه الدالة متجه صفي ( به الرقم الأصغر من كل عمود ) يمكننا إيجاد العنصر الأصغر لعناصره بإستخدام نفس الدالة min(min(A)) لينتج العنصر الأصغر لجميع عناصر المصفوفة كما سنوضح في المثال التالي :
وتستخدم الدالة min علي الصورة العامة التالية

n=min (A)
 n=min (A, [ ] , DIM)

حيث أن :
DIM : تأخذ القيمتين التاليتين :
1- لإيجاد أقل قيمة في عناصر أعمدة المصفوفة A وهو الوضع الإفتراضي .
2- لإيجاد أقل (أدني) قيمةفي عناصر صفوف المصفوفة A بحيث يكون ناتج هذه الدالة متجه عمودي (به الرقم الأصغر من كل صف ) يمكننا إيجاد العنصر الأصغر لعناصره بإستخدام نفس الدالة min لينتج العنصر الأصغر لجميع عناصر المصفوفة .

إستدعاء عنصر معين من عناصر المتجه :

يمكننا تحديد قيمة عنصر معين من عناصر المتجه الصفي / العمودي ويكون ذلك علي الصورة التالي :

Vector_Name ( Element_ind)

حيث أن :
Element_ind : يمثل ترتيب العنصر المراد إستدعاء من بين عناصر المتجه وهو ما نطلق عليه دليل العنصر element index .
فمثلا من خلال المثال التالي يمكننا إستدعاء العنصر الخامس من عناصر المتجه الصفي A كما يلي :

>> % Defining A as a row vector
>> A=[1,2,3,4,5,6,7,8,9,10];
>> % Calling the fifth element of A
>> A(5)
ans =
        5

كما يمكننا الأمر A(end) من إستدعاء العنصر الأخير للمتجه كما يلي :

>> A (end)
ans =
        10

بينما يمكننا الأمر A(end-1) من إستدعاء العنصر قبل الأخير للمتجه .
مهارة خاصة :
يمكنك إستدعاء جميع عناصر المتجه من خلال الأمر التالي :

>> A ( : ) )

حيث تستخدم العلامة Colon ( : ) بمفردها ( دون أرقام قبلها أو بعدها ) لإستدعاء جميع قيم عناصر المتجه .
إستدعاء أكثر من عنصر من عناصر المتجه :

يمكننا تحديد قيم عناصر محددة من متجه ويكون ذلك علي الصورة العامة التالية :

Vector_Name (first_value : step : last_value)

حيث أن :
first_value : يمثل ترتيب العنصر الذي ينبدأ بإستدعائه و last_value يمثل ترتيب أخر عنصر سننتهي عنده و step هي مقدار الخطوة (بالزيادة أو النقصان )بين كل عنصر والعنصر الذي يليه .
فمثلا يمكننا من خلال هذا المثال إستدعاء العناصر بداية من العنصر السادس ونهاية بالعنصر العاشر للمتجه A .

>> A(6:10)
ans =
        6      7      8      9      10

وهذه هي العناصر الخمسة الاخيرة من المتجه A حيث أن الرمز 6:10 يعني ابدا من العنصر السادس وقم بالعد تصاعديا حتي تصل إلي العنصر العاشر .
كما يمكننا تنفيذ المثال السابق من خلال تحرير الأمر التالي :

>> A(6 : and ) ;

حيث أن الرمز 6:end تعني أبدا من العنصر السادس وحتي العنصر الاخير من المتجه A فالكلمة end تعني العنصر الاخير من المتجه A .
ملحوظة : في المثال السابق لم نقم بتعريف الخطوة بين العنصر الاول والعنصر الاخير لأن الخطوة الافتراضية Default step في برنامج MATLAB هي الخطوة (+) .

إستدعاء عنصر معين من عناصر المصفوفة :

يمكننا إستدعاء عنصر معين من عناصر المصفوفة بدلالة رقم الصف ورقم العمود الذي به هذا العنصر بحيث يكون علي الصورة التالية :

  Matrix_Name (m,n)

حيث يمثل m رقم الصف ويمثل n قم العمود للمصفوفة التي بها العنصر المراد إستدعائه .
ولتوضح هذا الامر نقوم بعمل المثال التوضيحي التالي :
- قم بتعريف المصفوفة A كما يلي :

>> A=[ 1         3      7;2   4      6;7   8      3]
A=
        1      3      7
        2      4      6
        7      8      3
  • والأن لإستدعاء العنصر الموجود في الصف الثاني والعمود الثالث قم بتحرير الأمر التالي :
>> B=A (2,3)
B =
        6

.

المنشورات: 3

المشاركون: 1

اقرأ كامل الموضوع


Viewing all articles
Browse latest Browse all 6628

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>