6603c6221a10a Matlab1
6603c6221a10a Matlab1
ثشٔبِج ٛ٘ MATLABثشٔبِج ٕ٘ذع٠ ٟم َٛثؼٍّ١بد رحٍٚ ً١رّض ً١اٌج١بٔبد ِٓ خالي ِؼبٌجخ رٍه
اٌج١بٔبد رجؼب ً ٌمبػذح اٌج١بٔبد اٌخبصخ ثٗ ,فّضالً ٠غزط١غ اٌجشٔبِج ػًّ اٌزفبضً ٚ differentiationاٌزىبًِ
ٚ Integrationوزٌه ٠م َٛثحً اٌّؼبدالد اٌججش٠خ ٚ Algebric Equationsوزٌه اٌّؼبدالد اٌزفبضٍ١خ
Differential Equationsراد اٌشرت اٌؼٍ١ب ٚاٌز ٟلذ رصً ِٓ اٌصؼٛثخ ِب رصً١ٌ ,ظ فمظ رٌه ثً
٠غزط١غ اٌجشٔبِج ػًّ اٌزفبضً اٌجضئ٠ٚ ,ٟم َٛثؼًّ ػٍ١بد اٌىغش اٌجضئ Partial fraction ٟثغٌٛٙخ ٠ٚغش
ٚاٌز ٟرغزٍضَ ٚلزب ً وج١شاً ٌؼٍّٙب ثبٌطشق اٌزمٍ١ذ٠خ٘ ,زا ِٓ إٌبح١خ األوبد١ّ٠خ ,أِب ِٓ إٌبح١خ اٌزطج١م١خ ف١غزط١غ
اٌجشٔبِج اٌؼًّ ف ٟجّ١غ اٌّجبالد إٌٙذع١خ .
بعض تطبيقاث واستخداماث بزنامج :MATLAB
- 1أٔظّخ اٌزحىُ ثبعزخذاَ اٌّبرالة Control System Using Matlab
- 2رطج١مبد اإلشبسح ثبعزخذاَ اٌّبرالة Signal Applications Using Matlab
- 3ػٍّ١بد اإلشبسح اٌشلّ١خ ثبعزخذاَ اٌّبرالةDigital Signal Processing Using Matlab
- 4إٌظش٠بد اٌش٠بض١خ اٌزمش٠ج١خ ثبعزخذاَ اٌّبرالةNumerical Applications Using Matlab
- 5رطج١مبد ِؼبٌجخ اٌصٛس ثبعزخذاَ اٌّبرالةImage Processing Applications Using Matlab
- 6رطج١مبد اٌشاداس ثبعزخذاَ اٌّبرالة Radar Applications Using Matlab
- 7رطج١مبد اٌشٚثٛد ثبعزخذاَ اٌّبرالة Robots Applications Using Matlab
- 8اٌزطج١مبد االٌىزش١ٔٚخ ثبعزخذاَ اٌّبرالة Electronics Applications Using Matlab
- 9اٌزطج١مبد اٌّغزخذِخ ف ٟصٕبػخ اٌغ١بساد ثبعزخذاَ اٌّبرالةAutomotive Applications Using Matlab
- 10اٌزطج١مبد اٌّغزخذِخ ف ٟػٍ َٛاٌفضبء ٚاٌذفبع اٌج ٞٛثبعزخذاَ اٌّبرالة Aerospace and Defense Applications
Using Matlab
- 11رطج١مبد االرصبالد ثبعزخذاَ اٌّبرالة Communication Applications Using Matlab
فّغ اٌزمذَ اٌغش٠غ ف ٟاٌزىٌٕٛٛج١ب أصجحذ اٌحبجخ ٍِحخ ػٍ ٝرؼٍُ ِضً ٘زا اٌجشٔبِج حزٔ ٝصجح فٟ
عجبق اٌزٕبفظ اٌصٕبػ. ٟ
ثشٔبِج ٠ MATLABغزخذَ إلجشاء اٌحغبثبد اٌزمٕ١خ اٌّزمذِخ ٠ٚزّ١ض MATLABثى ٗٔٛثشٔبِجب ً
ِزخصصب ً ١٠غش ػًّ اٌجبحضٚ ٓ١اٌذاسع ٓ١فِ ٟخزٍف ِجبالد اٌذساعبد اٌؼٍ١ب ِ ٚب لجٍٙب ,ف٠ ٛٙزؼبًِ ِغ
اٌّؼبدالد اٌش٠بض١خ ٚ ,اٌزىبِالد ٚ ,اٌزفبضالد ٚ ,اٌّصفٛفبد اٌّخزٍفخ ثغشػخ ٚعٌٛٙخ ٠ٚ ,ؼبًِ األػذاد
اٌّشوجخ ثٕفظ اٌطش٠مخ اٌز٠ ٟؼبًِ ثٙب األػذاد اٌؼبد٠خ ّ٠ٚ .ىٓ MATLABاٌّغزخذَ ِٓ سعُ اٌّؼبدالد
اٌش٠بض١خ ف ٟاإلحذاص١بد اٌّخزٍفخ ٠ٚ ,ضُ اٌّئبد ِٓ اٌذٚاي اٌجب٘ضح اٌز ٟرٛفش ٌٍّجشِج ٚلزب ً ٚجٙذاً ػٕذ إٔشبء
البرامج .
وتعنً كلمة MATLABمعمل المصفوفات ( )Matrix Laboratoryوٌمكن استخدامه مثل اآللة الحاسبة
وٌمكن تحمٌل البرنامج على الكمبٌوتر الشخصً و استخدامه المتطورة أو تشغٌل برامج رٌاضٌة معقدة .
مباشرة مع نظام Windowsوهو سهل األستخدام.
1
التعزيف بمؤسس بزنامج MATLAB
لبَ ثزأع١ظ اٌجشٔبِج شخصبْ ,األٚي ٘ ٛوٍ١ف ٌِٛش ٚاٌضبٔ ٟجبن ٌ١زً
وٍ١فٌِٛ-ش
٘ ٛأعزبر اٌش٠بض١بد ٚػٍ َٛاٌحبعت Computer Scienceألوضش ِٓ ػشش ٓ٠ػبِب ً ف ٟجبِؼخ ِزش١ج ٚ ٓ١جبِؼخ
عزبٔفٛسد ٚجبِؼخ ِٔ ٛ١ىغ١ى.ٛ
أِض ٝخّظ عٕٛاد ػٕذ أصِٕ ِٓ ٓ١صٕؼ ٝاٌــ ّ٘ٚ Hardwareب Ardent ٚ Intel Hypercube organization
Computerلجً أْ ٠م َٛثبالٔزمبي إٌ ٝششوخ Mathworksاٌششوخ األَ ٌجشٔبِج اٌّبرالة ,وّب أٔٗ ٘ ٛاٌّؤٌف ألٚي
ثشٔبِج ٌٍّبرالة.
وٍ١ف ٌِٛش
جبن١ٌ -زً
اٌّبرالة. وّب أٔٗ اٌّغبػذ فٚ ٟضغ رخط١ظ ثشٔبِج Mathworks اٌّؤعظ ٌششوخ ٘ٛ
1978 ػبَ MIT جبن حبصً ػٍ ٝثىٍٛسٛ٠ط إٌٙذعخ اٌىٙشث١خ ٚػٍ َٛاٌحبعت ِٓ جبِؼخ
وّب أٔٗ حبصً ػٍ ٝشٙبدح ِٓ M.S.E.Eجبِؼخ عزبٔفٛسد ػبَ 1980
جبن ٌ١زً
تشغيل البزنامج:
ِٓ صس ابدأ اخزش كافت البزامج صُ MATLABصُ MATLAB R2010a
واجهت-البزنامج
رزغُ ٚاجٙخ اٌجشٔبِج ثبٌغٌٛٙخ ف ٟاٌزؼبًِ ِؼٙب ,ح١ش ٠زُ رمغِٕ ُ١بطك اٌؼًّ ثٙب إٌ ٝصالس ِٕبطك سئ١غ١خٟ٘ٚ ,
وبٌزبٌٔ ٟبفزح األٚاِش ِٕ ٚ Command Windowطمخ اٌؼًّ ٚ Workspaceربس٠خ األٚاِش Command
Historyأٔظش اٌصٛسح اٌزبٌ١خ .
2
الشكل ( :)1-1واجهة البرنامج
الرمز العملٌات
+ عملٌة الجمع
- عملٌة الطرح
* عملٌة الضرب
3
\or/ عملٌة القسمة
^ عملٌة األس
الجدول ()1-1
بعض األمثلة:
*تعريف المتغيرات:
Numericأ ٚسِض٠خ Symbolicأٚ اٌّزغ١شاد ّ٠ىٓ أْ رى ْٛث١بٔبد ػذد٠خ
عالعً حشف١خ .Character
ٚاٌجذ٠ش ثبٌزوش أْ ثشٔبِج ٠ MATLABزؼبًِ ِغ جّ١غ ِزغ١شارٗ ػٍ ٝأٔٙب
ِصفٛفبدٕ٘ ِٓٚ ,ب ٠ىّٓ اٌغجت ف ٟرغّ١خ اٌجشٔبِج ثٙزا االعُ فـ ٟ٘ MATLAB
اخزصبس ٌـ MATRIX LABORATORYأِ ٞؼًّ (ِخزجش) اٌّصفٛفبد.
ششٚط رغّ١خ اٌّزغ١شاد:
4
٘ٔ ٟفظ ششٚط رغّ١خ اٌّزغ١شاد فٌ ٟغبد اٌجشِجخ ن ِC++ضالً
()1-3المتجهات و المصفوفات:
فً هذا الفصل نقوم بتناول المتجهات والمصفوفات وما ٌتعلق بهما من دوال وعملٌات حسابٌة .المصفوفات هً
أساس اإلدخال فً البرنامج فكل عدد ٌتم إدخاله هو بالنسبة لـ MATLABمصفوفة قٌاس 1x1فٌجب أن
نراعً قواعد المصفوفات الحسابٌة.
المتجهات :Vectors
المتجة هو عبارة عن مجموعة من األعداد توضع فً صف واحد أو عمود واحد وٌتم استخدامها فً
إدخال البٌانات أو الحصول على المخرجات.
أي أنه ٌوجد لدٌنا نوعٌن من المتجهات:
.1متجه صفً :
والصورة العامة لكتابته كالتالً:
]>> x=[3,5,2,8,11
=x
3 5 2 8 11
وٌمكن وضع مسافة بدالً من عالمة الفاصلة وكالهما ٌوضح أن جمٌع عناصر المتجه مرتبة
كصف واحد.
.2متجه عمودي:
5
]>> x=[3;5;2;8;11
=x
3
5
2
8
11
وكما نرى فإن العالمة التً تفصل بٌن كل عنصر والتالً له هً الفاصلة المنقوطة (;) وهً التً تشٌر إلى أن
كل عنصر من عناصر المتجهة فً صف بمفرده.
التعامل مع المتجهات :
]>> v=[0 1 2 3
=v
0 1 2 3
وألضافة عنصر للمتجه :
>> v(4)=5
=v
0 1 2 5
ولسحب عنصر من المتجه :
)>> x=v(2
=x
1
=x
1 2 5
وألضافة عنصر للمتجه :
]>> v=[v(1:4),4
=v
0 1 2 5 4
])>> v=[-1,v(1:5
=v
-1 0 1 2 5 4
])>> v=[v(1:2),10,v(3:4
=v
-1 0 10 1 2
6
:اﻟﻌﻤﻠﻴﺎت اﻷﺳﺎﺳﻴﺔ واﻟﺪوال اﻟﺨﺎﺻﺔ ﺑﺎﻟﻤﺘﺠﻬﺎت
هناك العدٌد من الدوال التً ٌتم تنفٌذها على المتجهات وتزٌد من أهمٌتها واستخداماتها وسوف نقوم اآلن
بشرح معظم هذه العملٌات والدوال من خالل األمثلة التالٌة:
.1الدالة :Lengthتقوم بحساب عدد عناصر المتجه كما فً المثال:
]>> v=[2 5 0 1 4 -1
=v
2 5 0 1 4 -1
)>> length(v
= ans
6
.2الدالة :Sumتقوم هذه الدالة بإٌجاد حاصل جمع عناصر المتجه كما فً المثال:
)>> w=sum(v
=w
11
.3الدالة :Maxتقوم هذه الدالة بإٌجاد أكبر عناصر المتجه من حٌث القٌمة كما فً المثال:
)>> w=max(v
=w
5
.4الدالة :Minتقوم هذه الدالة بإٌجاد أصغر عناصر المتجه من حٌث القٌمة كما فً المثال:
)>> w=min(v
=w
-1
=r
9 7 5 8 3
)>> s=sort(r
=s
3 5 7 8 9
.6الدالة :Rangeتقوم هذه الدالة بحساب الفرق بٌن أكبر قٌمة فً المتجة وأصغر قٌمة فٌه
)>> range(r
= ans
6
العملٌات الحسابٌة التً ٌتم إجراؤها على المتجهات :وتشمل هذه العملٌات الحسابٌة عملٌات الجمع والطرح
والضرب والرفع إلى أس ولكن ٌجب اإلشارة هنا أن هذه العملٌات تتبع جمٌعها ما ٌسمى بجبر المصفوفات.
بعض األمثلة للتوضٌح:
7
;]>> x=[1,3,5
;]>> y=[2,4,6
>> z=x+y
=z
3 7 11
>> m=y-x
=m
1 1 1
>> p=x.*y
=p
2 12 30
>> p=x.^2
=p
1 9 25
المصفوفات :Matrices
المصفوفات هً عبارة عن ترتٌب معٌن لبٌانات معٌنه وعادة ما تكون هذه البٌانات أرقاماً ،والمصفوفة تتكون
من صفوف وأعمدة وعادة ما نقول من النظام ( )mxnحٌث أن mهو عدد الصفوف و nهو عدد األعمدة.
]>> Matrix=[1,2,3,;4,5,6;7,8,9
= Matrix
= ans
4 5 6
= ans
2
5
8
= ans
1
4
7
2
5
8
3
6
7
8
9
8
أما إذا أردنا العنصر الواقع فً الصف األول والعامود الثانً:
)>> Matrix(1,2
= ans
2
ونحذف صف أو عمود من المصفوفة:
] [ = )>> Matrix(:,2
= Matrix
1 3
4 6
7 9
] [ = )>> Matrix(2,:
= Matrix
1 2 3
7 8 9
ونضٌف صف أو عمود للمصفوفة:
]>> Matrix=[1,2,3,;4,5,6;7,8,9;10,11,12
= Matrix
1 2 3
4 5 6
7 8 9
10 11 12
ونجد قطر المصفوفة:
)>> diag(Matrix
= ans
1
5
9
9