ما هو matlab - الرئيسية · web viewاللغة التي يعمل بها برنامج...

29
و ه ماMatLab ? هام مل ل صة ص خ م ة ي ج مر بر ب و ط ت ة ي ب و داة و ا ه ي لت وا ا ي ل خ دا ة ي ي ي م ل ا ة ي ض ا ري لدوال ا وال ف ئ ا8 وظ ل ن; ا م ر ي@ ث ك ل ة ا ي ف ر ف و تF ت@ ث ي ح، ة ت سا ج ل ا ل ه س ت ة اب ي ك ي عل لاب ي ما ة ج مر ب ة ساعد لغ ت ما ك. ة ي ض ا ري ل ا دلاب عا م ل واع ا ن ا ف ل ت ج م ل خ اب ر مي م ل ن; ا م د عديل ل ة اف ضj لا ا . ي اصة ; خ ج مرا ب دوال و ة رى ب خ لا ا. ها ب ل م ع ي ي لت ا ة لغ ل ا رة س ف م ة لغ ي ه لاب ي م ل ; ا ج م ا ري بInterpreted ة ي مل ع ي وم ق ي وف س ة لغ ل م ا ج ر مي; ن ي ا معت ب رسط ت را ط س مة ج ر لي ا ر ط س ل ك عد ي ال دخj لاح ا ا ي ف م ط غ ضرد ج م ب. ماب دا خ ت س ا لاب ي ما ال لاب ما ع ت س ن; ا م ض تF تMatLab ة ي ل ا ي ل ا لاب ا خ م ل ا: و اب ي ض ا ري ل ا ساب ج ل اMath and computation اب ي م وازز خ لرا ب و ط تAlgorithm development Data acquisition خاكاة م ل وا ة ج مد ن ل اModeling, simulation, and prototyping اب اي ي! لير ا ب و ص ت و اف@ س ك ي س ل وا ي خل تData analysis, exploration, and visualization ة ي ت ا ي! لي وا ة ي س د ي ه ل وم ا س ر ل اScientific and engineering graphics عدة م ل ا اب ق ت! طب تل ل ة ي م و س دام ز خ ت س ا هاب جء وا ا ي تApplication development, including graphical user interface building هة ج وا ل ي ع@ ش لت ا: ك§ ل ل ي ع@ ش ت د ي عMatLab ة ي ل ا ي لل ا ما ع ت سلا ا هة ج ر لك§ وا ه8 ظ ت وف س: ; ون ك يF ت زاب ظاj لا ن; ا م وعة م ج م; ن م هة ج وا ل ا1 . ر م وا لاز ا ظاj اCommand Window ; ن م و ل ك@ ش ل ي ا عل@ ث ج م ل ر ا ه8 ظ ت@ ث ي ح،; ج م ا ري لي ل ر م وا لال ا ا دخj م ا ت تالة ل خ) ( << ة اب ي ك م ت ت و ة ن; لغ ا ما ب عدة، و ي ر م لا اMatLab ة لغ ي ه رة س ف مInterpreted ة اب خF ت سلا ي ا عل ل ص خ ت ا ي» تj ا ف ها ب وم ق ي ي لت ا ة ي مل ع ل ا ة ج تF ي» ب ي غط ي ما ا ي ل ا ; ،وع ج م ا ري لي ا ة اب ي ك; ن م هاء ت» تلا وز ا ف لاب ي م ل ا; ج ع ر م ا اي ي ح دو ا ي ت ى ر الد م لا ر ا سط ل عد ا ي ال دخj لاح ا ا ي ف م ط غ ضرد ج م ب ر سط ل ك وز ف ة ج تF ي ي ل ا اء ي ق ت كلا ر واسط ت ر سط ل ك ة ج تF ي» ب وز ه8 ظ ادى ق ت ل و

Upload: hoangdan

Post on 20-May-2018

223 views

Category:

Documents


4 download

TRANSCRIPT

Page 1: ما هو MatLab - الرئيسية · Web viewاللغة التي يعمل بها برنامج المتلاب هي لغة مفسرة Interpreted بمعنى أن مترجم اللغة

?MatLab ما هو

الحسابية، حيث تتوفر فيه الكثير من الوظائف والدوال هو أداة وبيئة تطوير برمجية مخصصة للمهام تسهل حل مختلف أنواع المعادالت الرياضية. كما تساعد لغة برمجة الرياضية المبنية داخليا والتي

.دوال وبرامج خاصة. باإلضافة للعديد من المميزات األخرى به ماتالب على كتابة بمعنى أن مترجم اللغة سوف يقوم Interpreted برنامج المتالب هي لغة مفسرة اللغة التي يعمل بها

.الترجمة سطرا بسطر بمجرد ضغط مفتاح اإلدخال بعد كل سطر بعمليةماتالب أستخدامات

:المجاالت التالية MatLab تتضمن استعماالت الـ

Math and computation الحساب الرياضيات و Algorithm development تطويرالخوارزميات

Data acquisition Modeling, simulation, and prototyping النمذجة والمحاكاة

Data analysis, exploration, and visualization تحليل واستكشاف وتصوير البيانات Scientific and engineering graphics الرسوم الهندسية والبيانية

Application development, includingبناء واجهات استخدام رسومية للتطبيقات المعدة graphical user interface building

:التشغيل واجهة:سوف تظهر لك واجهة االستعمال التالية MatLab عند تشغيلك لـ

الواجهة من مجموعة من اإلطارات تتكون

Command Window إطار األوامر. 1 األمر بعده، ويتم كتابة )>>( خالله يتم إدخال األوامر للبرنامج، حيث يظهر المحث على الشكل ومن

فور االنتهاء من كتابة فإننا نحصل على االستجابة Interpreted هي لغة مفسرة MatLab وبما أن لغة المتالب فور كل سطر بمجرد ضغط مفتاح اإلدخال البرنامج،وغالبا ما تعطي نتيجة العملية التي يقوم بها

ولتفادي ظهور نتيجة كل سطر بسطر واالكتفاء بالنتيجة النهائية بعد السطر األمر الذي يبدو أحيانا مزعج ;إظهار النتيجة لكل أمر بإلحاق األمر بفاصلة منقوطة و ولكن يمكن تجنب Workspace إطار منطقة العمل. 2

.حيث يظهر جميع المتغيرات المستعملة في جلسة العمل الحالية Command History إطار األوامر السابقة. 3

.إدخالها في جلسات عمل سابقة حيث يتم عرض جميع األوامر التي سبق Current Directory إطار المجلد الحالي. 4

هذا اإلطار يتم عرض جميع الملفات الموجودة في مجلد العمل الحالي والذي يكون عادة فيC:MATLAB6p5work حيث يوجد به البرامج التي سنقوم بتشغيلها.

المجلد ألي مجلد آخر من خالل المفتاح )...( المجاور ألسم المجلد في أعلى اإلطار، أو يمكن تعديل هذا( في الصورة5من خالل نفس المفتاح الموجود على شريط األدوات )منطقة رقم

من في نظام ويندوز، حيث يمكن start الموجود أسفل الشاشة فهو شبيه لمفتاح Start مفتاح أما.MatLab خالله تشغيل بقية األدوات المرافقة لبيئة

االستعمال مختلفة بعض الشيء عن المعروضة في الصورة، أو قد ترغب مالحظة: قد تظهر لديك واجهةundock األطر أو جعلها خارج الواجهة أنت في إخفاء بعض

على الجانب األيمن العلوي من اإلطار، وإلعادة داخل لجعل أي أطار خارجيا استعمل مفتاح الموجودالواجهة أختار من اإلطار

View -< dock )window name( وإلغالقه استعمل مفتاح

ويمكنك البدا MatLab الكثير من المعلومات المفيدة حول MatLab توفر الوثائق المرافقة لـ.Help من قائمة MatLab Help اختيار باستعراضها من خالل

MatLab المتجهات في األوامر التي تجعل إدخال المتجهات والتعامل معها أكثر سهولة، حيث تشبه مجموعة من Matlab يوفر

.أسلوب كتابة المتجهات في الجبر MatLab المستعملة في األوامر.هذه األوامر، وكيفية استعمالها خالل هذا الدرس سوف نوضح

:معلومة.أو مختبر المصفوفات matrix laboratory هي اختصار لعبارة MatLab كلمة

:إنشاء المتجهات هي بكتابة عناصر المتجهة يفصل بين كال منها مسافة ومحصورة بقوسين ابسط طريقة لتعريف المتجهة

] [مربعين

السابق ولكن أضف في الحظ أن نتيجة األمر الذي قمنا بكتابته قد ظهرت لنا مباشرة جرب نفس األمر

Page 2: ما هو MatLab - الرئيسية · Web viewاللغة التي يعمل بها برنامج المتلاب هي لغة مفسرة Interpreted بمعنى أن مترجم اللغة

;نهايته فاصلة منقوطة

.بعده هذه المرة ال تظهر نتيجة األمرالقيمة األخيرة: كما يمكن تعريف المتجهة من خالل تحديد القيمة األولى : قيمة الزيادة

في جلسة العمل الحظ المتغيرات المعرفة حاليا Workspace في إطار منطقة العمل

A و a كما بالشكل أعاله يظهر حتى اآلن متغيرين هماMatLab حساس لحالة األحرف Case-sensitive لذا فإن المتغير a مختلف تماما عن المتغير A.

في إطار األوامر لعرض المتغير المعرفة في جلسة العمل الحالية Whos مالحظة:يمكنك كتابة األمرCommand Window

اسم المتجه ثم نضغط على مفتاح اإلدخال عرض المتجهات:لعرض محتويات أي متجه نقوم بكتابةEnter

:المتجه فقط من خالل األمر أو يمكن عرض القيمة الثانية في

مرة يتم فيها كتابة امر تنتج عنه قيمة بدون تعيين في كل. ans الحظ المتغير الجديد الذي تم أنشاؤه.ans القيمة سوف تحمل في المتغير هذه القيمة إلى متغير فأن تلك

والرابعة فقط: مع مالحظة كتابة المتجه بدون عالمة قيم بالمتجه، أو لعرض القيمة األولى4لعرض أول يساوي

، نختتم الدرس بحفظ جلسة MatLab على كيفية التعامل مع المتجهات في بيئة اآلن وبعد أن تعرفناالحالية للرجوع لها في أي وقت آخر العمل

:حفظ واسترجاع جلسة العمل File -< Save workspace As أختار من قائمة WorkSpace لحفظ جلسة العمل

MyFirstMat: العمل مثال أختار اسم مناسب لملف جلسة Save As ومن خالل مربع حوار ويعطى االمتداد C:MATLAB6p5work الملف سوف يحفظ في مجلد العمل والذي يكون عادة مجلد

MAT ثم اختار File -< Open ملف جلسة العمل من خالل مرة ثانية يمكن استعادة MatLab وعند تشغيل

.به جلسة العمل الذي حفظت Mat الملف ذو االمتداد

المصفوفات فيMatLab

والمتعلقة بإنشاء المصفوفات Matlab المزيد من أوامر خالل هذا الدرس سوف نستكمل دراسة.والتعامل معها

قريبا جداً إلى طريقة تعريف المتجهات، MatLab المصفوفات:طريقة تعريف المصفوفات في إنشاء:نبدأ مباشرة مع أول مثال

>>D = ]1 2 3; 4 5 6; 7 8 9[

D=

1 2 34 5 67 8 9

:فاصلة منقوطة، جرب هذا األسلوب كذلك الحظ الفرق بين فصل األعداد بمسافة أو >>D = ] 1 2 3;

4 5 6;7 8 9]

D=

Page 3: ما هو MatLab - الرئيسية · Web viewاللغة التي يعمل بها برنامج المتلاب هي لغة مفسرة Interpreted بمعنى أن مترجم اللغة

1 2 34 5 67 8 9

>>

:خاصة كما يوجد عدد من الدوال إلنشاء مصفوفات symmetric إلنشاء مصفوفة متناظرة pascal دالة. 1

.مصفوفات يتساوى فيها مجموع كل الصفوف واالعمدة إلنشاء magic دالة. 2.صفرية إلنشاء مصفوفة zeros دالة. 3

1إلنشاء مصفوفة كل عناصرها تساوي ones دالة. 4التالية الحظ االمثلة

>>P = pascal)3(

P=

1 1 11 2 31 3 6

>>M= magic)3(

M=

8 1 63 5 74 9 2

>>z= zeros)2, 3(

z=

0 0 00 0 0

>>o = ones)2, 4(

o=

1 1 1 11 1 1 1

>>

:العمليات الحسابية على المصفوفات يجعل التعامل مع المتجهات والمصفوفات أكثر سهولة، جرب األمثلة MatLab سابقا فإن كما ذكرنا

:التالية >>Sum = D + P

>>Sub = P - D >>D = D + 2

Page 4: ما هو MatLab - الرئيسية · Web viewاللغة التي يعمل بها برنامج المتلاب هي لغة مفسرة Interpreted بمعنى أن مترجم اللغة

>>P2 = P * 2 >>Mult1 = P * D >>Mult2 = P .* D

Sum وينتج عنه المصفوفة D و P األمر األول: يجمع كال منSub في المصفوفة P من D ناتج طرح: األمر الثاني

D المصفوفة إلى كل عنصر من عناصر2األمر الثالث: يضيف D في P والتي يحفظ بها ناتج ضرب Mult1 األمر الرابع: ينتج عنه مصفوفة

والتي هي Mult2 األمر الخامس: )الحظ النقطة قبل عالمة الضرب( هذا األمر سينتج عنه مصفوفةD في العنصر المقابل له في P عبارة عن حاصل ضرب كل عنصر في

األمرين التالين والحظ الفرق في الناتج جرب أيضا >>M

M=

8 1 63 5 74 9 2

>>MM = M ^ 2

MM=

91 67 6767 91 6767 67 91

>>M2 = M .^ 2

M2=

64 1 369 25 49

16 81 4

>>M ^ 2 يعني ضرب المصفوفة في نفسها

M .^ 2 يعني ضرب كل عنصر في المصفوفة في نفسه.Transpose إليجاد محورة المصفوفة

>>M'

ans=

8 3 41 5 96 7 2

Inverse معكوس المصفوفة إليجاد >>inv)M(

ans=

0.1472- 0.1444 0.0639-0.0611 0.0222 0.1056-0.0194 0.1889- 0.1028

>> للتعرف على حجم المصفوفة

>>size)z(

Page 5: ما هو MatLab - الرئيسية · Web viewاللغة التي يعمل بها برنامج المتلاب هي لغة مفسرة Interpreted بمعنى أن مترجم اللغة

ans=

2 3

>>size)o(

ans=

2 4

>>األول يمثل عدد األسطر والثاني يمثل عدد األعمدة العدد

MatLab كثير الحدود في.معها ، وكيفية التعامل MatLab التعرف على كيفية تمثيل كثير الحدود في

، حيث يتم Polynomials عدد من الدوال المبنية داخليا لتسهيل التعامل مع كثير الحدود Matlab يوفر:التالية تمثيلها كمتجه، مثال لتمثيل معادلة كثير الحدود

:نعرف المتجه التالي >>x = ]1 3 -15 -2 9[

x=

1 3- 15- 2 9 كذلك لتمثيل

>>Z = ]1 0 0 0 -2[

Z=

1 0 0 0- 2 :حساب قيمة كثير الحدود عند قيمة محددة

polyval مثال، يمكن استعمال دالة s=3 عند قيمة x كثير الحدود األول لكي نحسب قيمة

:(وتأكد من الناتج احسبها :إيجاد جذور كثير الحدود

0التي تجعل القيمة الكلية للمعادلة تساوي s يقصد بالجذور قيم المتغير

:والعكسpoly كثير الحدود لجذور معلومة، الدالة هنا هي يعني الكتشاف معادلة

:الحدود ضرب وقسمة كثيرdeconv وللقسمة الدالة conv لضرب معادلتين كثير حدود في بعضهما استعمال دالة

:لقسمة كثيري حدود فأنه ينتج متجهين deconv عند استعمال.ناتج القسمة d األول•

(.متجه صفري باقي القسمة )وفي المثال السابق كان الباقي من القسمة r الثاني• MatLab كثير الحدود في

.، وكيفية التعامل معها MatLab التعرف على كيفية تمثيل كثير الحدود في ، حيث يتم Polynomials التعامل مع كثير الحدود عدد من الدوال المبنية داخليا لتسهيل Matlab يوفر

:كثير الحدود التالية تمثيلها كمتجه، مثال لتمثيل معادلة

:نعرف المتجه التالي

>>x = ]1 3 -15 -2 9[

x=

1 3- 15- 2 9 كذلك لتمثيل

Page 6: ما هو MatLab - الرئيسية · Web viewاللغة التي يعمل بها برنامج المتلاب هي لغة مفسرة Interpreted بمعنى أن مترجم اللغة

>>Z = ]1 0 0 0 -2[

Z=

1 0 0 0- 2 :محددة حساب قيمة كثير الحدود عند قيمة

polyval مثال، يمكن استعمال دالة s=3 عند قيمة x لكي نحسب قيمة كثير الحدود األول

:(احسبها وتأكد من الناتج :إيجاد جذور كثير الحدود

0 التي تجعل القيمة الكلية للمعادلة تساوي s بالجذور قيم المتغير يقصد

:والعكسpoly يعني الكتشاف معادلة كثير الحدود لجذور معلومة، الدالة هنا هي

:ضرب وقسمة كثير الحدودdeconv وللقسمة الدالة conv استعمال دالة لضرب معادلتين كثير حدود في بعضهما

:حدود فأنه ينتج متجهين لقسمة كثيري deconv عند استعمال.ناتج القسمة d األول•

(.المثال السابق كان الباقي من القسمة متجه صفري باقي القسمة )وفي r الثاني• Standard function and graphics

الدوال القياسيةabs)x( absolute value or complex magnitude

sqrt)x( square rootsin)x( sine and cosine

cos)x(:ملحوظة

قطرى الزاوية يجب ان تكون بالتقدير النصفالعالقة بين الزاوية بالدرجات والزاوية بالتقدير النصف قطرى هى

Degree*2*pi(/360 degreerad(=x=1:360;

>>q=)x*2*pi(/360; >>y=sin)q(; >>plot)x,y(

>>

exp)x( exponentioal and natural logarithmlog)x(

inv)x( returns the inverse of the matrix x. المعطاه الممانعة الكلية للدائرة المبينة فى الشكل ثم أحسب التيار الكلى وكذلك القدرة مثال أحسب

باالوم للدائرة علما بان الرد الحثى والسعوى للمقاومات مكتوبة

MATLAB باستخدام GRAPHICS رسم المنحنيات الرسم البيانيCreating a Plot

كدالة في الزمن اما االمر y عنه رسم بياني لي ينتج )plot)y كمية متجهة فان األمر y اذا كانتplot)x,y( فينتج عنه الرسم البياني y و x مثال اليجاد الرسم البياني للدالة

y = sin)t( بحيث ان t نجري العملية التالية 2 الي0تتغير من من:

t = 0:pi/100:2*pi;y = sin)t(;plot)t,y(

Page 7: ما هو MatLab - الرئيسية · Web viewاللغة التي يعمل بها برنامج المتلاب هي لغة مفسرة Interpreted بمعنى أن مترجم اللغة

y2 = sin)t–.25(;y3 = sin)t–.5(;

plot)t,y,t,y2,t,y3(

وذلك باستخدام يمكن رسم كل منحني بلون وخط مميز

plot)x,y,'color_style_marker'(

:نختار االحرف التالية الختيار اللون'. y', 'r', 'g', 'b', 'w', and 'k('اصفر, احمر, اخضر-ازرق-ابيض-اسود)

: )– * + – – : – . (الختيار نوع الخط نختار الرموز التالية مثال

plot)x,y,'y:+'(

+عالمة سيكون شكل الرسم الناتج هو اصفر منقط به

AXIS LABELS AND TITLES الكتابة علي محور الرسم البياني

The x-label, y-label, and z-label functions add x-, y- and z-axis labels. The title function adds a title at the top of the figure and the text function inserts text

anywhere in the figure.

t = -pi:pi/100:pi;y = sin)t(;plot)t,y(

axis )]-pi pi -1 1[(xlabel) '-\pi \leq \itt \leq \pi'(

ylabel) 'sin)t('(title )'Graph of the sine function'(

text)l -1/3, ' \it{Note the odd symmetry. }'(

Mesh and Surface Plots

MATLAB defines a surface by the z-coordinates of points above a grid in the x-y plane, using straight lines to connect adjacent points. The functions mesh and surf

display surfaces in three dimensions. mesh produces wireframe surfaces that color only the lines connecting the defining points. surf displays both the

connecting lines and the faces of the surface in color.

Visualizing Functions of Two Variables

To display a function of two variables, z = f )x,y(, generate X and Y matrices consisting of repeated rows and columns, respectively, over the domain of the

function. Then use these matrices to evaluate and graph the function. The meshgrid function transforms the domain specified by a single vector or two vectors x and y into matrices X and Y for use in evaluating functions of two

Page 8: ما هو MatLab - الرئيسية · Web viewاللغة التي يعمل بها برنامج المتلاب هي لغة مفسرة Interpreted بمعنى أن مترجم اللغة

variables. The rows of X are copiesنسخ of the vector x and the columns of Y are copies of the vector y. To evaluate the two-dimensional sine function, sin)r(/r,

between x and y directions:

[X,Y = ]meshgrid)–8:0.5:8(;R = sqrt)X.^2 + Y.^2( + eps;

Z = sin)R(./R;mesh)X,Y,Z(

In this example, R is the distance from origin, which is at the center of the matrix .Adding eps avoids the indeterminate 0/0 at the origin.

Printing Graphics

The Print option on the File menu and the print command both print MATLAB figures .

:يوجد كثير من اوامر الرسم وهى كاالتىPlot )x,y( plot vector x versus vector y

Loglog)x,y( plot vector x versus vector y using log or semi log scalesSemilogy)x,y(

Polar )theta,rho( polar plotContour)z( contour plot of matric z

Mesh)z( 3D wire mesh plot of matrix z title )‘ text’(xlabel)‘text’(ylabel)‘text’(

x=]2 3 4 5 6[; >>y=]1 2 3 4 5[;

>>plot)x,y( >>x=]1 2 3 4 5 6[;

>>y=]10 20 30 40 50 60[; >>plot)x,y(

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

:اإلحداثياتsave as يتم حفظ الشكل من قائمة ملف بأخذ األمر

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

plot3) (ملحوظة هامة جدا

فى شكل واحد وذلك بكتابة االمر التالى وتكراره عدد مرات االشكال يمكن رسم اكثر من منحنىالمطلوبة

Subplot)2,2,1(Or

Subplot)3,3,1(

subplot)3,3,1(;

>>t=0:5:180;

Page 9: ما هو MatLab - الرئيسية · Web viewاللغة التي يعمل بها برنامج المتلاب هي لغة مفسرة Interpreted بمعنى أن مترجم اللغة

>>x=2*t; >>plot)x,t(;

>> >>r=100*t;

>>subplot)3,3,2(; >>plot)r,t(

>>d=sin)t(; >>subplot)3,3,3(;

>>plot)d,t(;

>>f=cos)t(; >>subplot)3,3,4(;

>>plot)t,f(; >>f=tan)t(;

>>subpolt)3,3,5(;

على هيئة سطح رسم فى ثالث اتجاهات

g=]1 2 3 4;4 8 7 6;5 8 7 6[; >>mesh)g(

>>

[x,y = ]meshgrid)]-2:.2:2[(;Z = x.*exp)-x.^2-y.^2(;surf)x,y,Z,gradient)Z((

colorbarx=meshgrid)]1 3 4 5.48[(

x=

1.0000 3.0000 4.0000 5.48001.0000 3.0000 4.0000 5.48001.0000 3.0000 4.0000 5.48001.0000 3.0000 4.0000 5.4800

Page 10: ما هو MatLab - الرئيسية · Web viewاللغة التي يعمل بها برنامج المتلاب هي لغة مفسرة Interpreted بمعنى أن مترجم اللغة

>>y=meshgrid)]35 45 55 65[(

y=

35 45 55 6535 45 55 6535 45 55 6535 45 55 65

>>z=]4.5 3.26 2.9 2.8;4 2.5 2.17 2.11;3.8 2.19 1.8 1.7;3.6 1.8 1.6 1.3[

z=

4.5000 3.2600 2.9000 2.80004.0000 2.5000 2.1700 2.11003.8000 2.1900 1.8000 1.70003.6000 1.8000 1.6000 1.3000

>>surf)x,y,z,gradient)z((MATLAB Function Reference

LineSpec Line specification syntax

DescriptionThis page describes how to specify the properties of lines used for plotting.

MATLAB enables you to define many characteristics including: •Line style •Line width

•Color •Marker type •Marker size

•Marker face and edge coloring )for filled markers( MATLAB defines string specifiers for line styles, marker types, and colors. The

following tables list these specifiers.Line Style SpecifiersSpecifier Line Style

-solid line )default( --dashed line :dotted line .-dash-dot line

Marker SpecifiersSpecifier Marker Type

+plus signo circle

*asterisk .point

x crosss square

d diamond ^upward pointing triangle

v downward pointing triangle >right pointing triangle

<left pointing trianglep five-pointed star )pentagram(h six-pointed star )hexagram(

Color Specifiers

Page 11: ما هو MatLab - الرئيسية · Web viewاللغة التي يعمل بها برنامج المتلاب هي لغة مفسرة Interpreted بمعنى أن مترجم اللغة

Specifier Colorr red

g greenb bluec cyan

m magentay yellowk blackw white

Many plotting commands accept a LineSpec argument that defines three components used to specify lines:

•Line style •Marker symbol

•Color For example ,

plot)x,y,'-.or'(plots y versus x using a dash-dot line )-.(, places circular markers )o( at the data points, and colors both line and marker red )r(. Specify the components )in any

order( as a quoted string after the data arguments.If you specify a marker, but not a line style, MATLAB plots only the markers. For

example,plot)x,y,'d'(

Related PropertiesWhen using the plot and plot3 functions, you can also specify other characteristics

of lines using graphics properties:

•LineWidth - specifies the width )in points( of the line •MarkerEdgeColor - specifies the color of the marker or the edge color forfilled

markers )circle, square, diamond, pentagram, hexagram, and the four triangles( . •MarkerFaceColor - specifies the color of the face of filled markers .

•MarkerSize - specifies the size of the marker in points .In addition, you can specify the LineStyle, Color, and Marker properties instead of using the symbol string. This is useful if you want to specify a color that is not in

the list by using RGB values. See ColorSpec for more information on color.Examples

Plot the sine function over three different ranges using different line styles, colors, and markers.

t = 0:pi/20:2*pi;plot)t,sin)t(,'-.r*'(

hold onplot)sin)t-pi/2(,'--mo'(

plot)sin)t-pi(,':bs'(hold off

Create a plot illustrating how to set line properties.plot)t,sin)2*t(,'-mo...,'

'LineWidth',2...,'MarkerEdgeColor','k...,'

'MarkerFaceColor',].49 1 .63[...,'MarkerSize',12)

See Alsoline, plot, patch, set, surface, axes LineStyleOrder property

Line Properties linspace

Page 12: ما هو MatLab - الرئيسية · Web viewاللغة التي يعمل بها برنامج المتلاب هي لغة مفسرة Interpreted بمعنى أن مترجم اللغة

المرسوم امر وضع عالمات على الخطplot)x,y,'c'(

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

>>MatLab البرمجة في

من هو بيئة تطوير برمجية تحوى العديد MatLab ذكرنا في الدرس األول من هذه السلسلة فإن كما خالل هذا الدرس. الدوال الجاهزة، باإلضافة إلى إمكانية كتابة برامج ودوال خاصة بنا حسب الحاجة

.MatLab سوف نتعرف على األوامر البرمجة في :if الجملة الشرطية

تستخدم لالختيار بين أمرين حسب شرط محدد :الصيغة العامة

if >condition><program1>

else<program2>

End تنفيذ وإذا لم يتحقق الشرط يتم program1 يتم تنفيذ الكود في condition حالة تحقق الشرط في

program2 الكود في:مثال

>>if n > 0disp)'n is negative'(

elsedisp)'n is positive'(

endn is positive

>>n

n=

71

>>elseif باستعمال أكثر من مستوي لـ شكال أكثر تداخال if يمكن أن تأخذ جملة

if >expression1>statements1

else if >expression2>statements2

elsestatements3

endالتي لها نفس العمل switch استعمال جملة أو يمكن

switch جملة:العامة الصيغة

switch switch_exprissioncase case_expr

Page 13: ما هو MatLab - الرئيسية · Web viewاللغة التي يعمل بها برنامج المتلاب هي لغة مفسرة Interpreted بمعنى أن مترجم اللغة

statement,...,statementcase {case_expr1,case_expr2,case_expr3,...}

statement,...,statement...

otherwisestatement,...,statement

End:حيث

switch_expr هو المتغير )أو التعبير( الذي سيتم اختبار قيمته.case_expr أن يأخذها المتغير أحد القيم التي يمكن

غير مدرجة في اي switch_expr للـ يمكن أن تتضمن الحالة الواحدة أكثر من قيمة، وإذا كانت القيمةotherwise حالة ينتقل التنفيذ للقسم

:التكرارية الحلقات لعمل ذلك هو بوضع هذا األمر عندما نرغب في تكرار أمر معين )أو أكثر( عدة مرات، فإن أفضل طريقة

.داخل حلقة تكرارية :الحلقات التكرارية يوجد نوعين فقط من MatLab في

for حلقة. 1.محدد من المرات وتستخدم عندما يكون المطلوب هو التكرار لعدد

الصيغة العامةfor variable = expression

statement...

statementend

مرات4حلقة بسيطة سوف تتكرر : مثال >>for j=1:4

jend

j=

1

j=

2

j=

3

j=

4

>>while حلقة

شرط ما، فإذا لم يعد الشرط محقق تنتهي الحلقة حيث يكون التكرار هنا مرتبط بتحقق:الصيغة العامة

while expressionstatements

Page 14: ما هو MatLab - الرئيسية · Web viewاللغة التي يعمل بها برنامج المتلاب هي لغة مفسرة Interpreted بمعنى أن مترجم اللغة

end

خانة عشرية100مكون من ! n مضروبه مثال: هذا البرنامج يوجد أول عدد صحيح >>n = 1;

while prod)1:n( > 1e100n = n + 1;

end >>n

n=

70

:مالحظة أمر يتم ترجمته للحاسوب قبل تنفيذه مباشرة، أي أن كل Interpreted هي لغة مفسرة MatLab لغة

يجعل البرنامج أكثر بطأ، ويفضل استعمال االوامر والدوال لذا فإن استعمال الحلقات التكرارية سوف.أمكن ذلك كلما MatLab الجاهزة لـ

break: للبرنامج أو للحلقة الخارجية عند وجود يستخدم هذا األمر إليقاف تنفيذ حلقة تكرارية وإعادة التحكم

.حلقات متداخلةcontinue:

.ويبدأ في التكرار التالي له iteration األمر بوقف التكرار الحالي للحلقة يقوم هذاMatLab البرامج والدوال في كتابة نتعلم خالل هذا الدرس كيف نكتب برامج ودوال ، سوفMatLab بعد أن تعرفنا على أوامر البرمجة في

ويمكن استدعائها بنفس الطريقة التي نستدعي بها الدوال خاصة يتم االحتفاظ بها في ملفات مستقلة.MatLab الداخلية في

Command بنفس الطريقة التي نكتب بها األوامر في إطار األوامر MatLab كتابة البرامج لغة يتمWindow وتحفظ في ملفات لها االمتداد m *.

باستعمال أي محرر نصوص )مثل برنامج المفكرة( أو باستعمال المحرر يمكن إنشاء هذه الملفات.MatLab الملحق ببيئة

:وهذه الملفات لها نوعين script ملفات السكريبت. 1

:التالية ولها المميزاتo ال تتقبل معامالت مدخلة input arguments وال تعيد قيم كمعامالت .

o تعمل على المتغيرات الموجودة في مساحة العمل workspace o في تنفيذ مجموعة من األوامر عدة مرات دون الحاجة إلعادة كتابتها تفيد عند الرغبة .

function ملفات الدوال:ولها المميزات التالية

. وتعيد قيم كمعامالت input arguments تتقبل معامالت مدخلة• .للدالة، ال يمكن الوصول لها من منطقة العمل المتغيرات المستعملة داخل الدالة في متغيرات داخلية•

. ولتمديد إمكانيته لالستعمال في التطبيقات المختلفة MatLab لـ تفيد في إضافة المزيد من الدوال• :سكريبت إنشاء ملفكما موضح بالشكل New M-File من شريط األدوات انقر على أداة

File -< new -< M-file من قائمة األوامر أو أختار.جديدة فارغة، وبها يمكن أن تكتب أوامر السكريبت كما بالشكل سوف يتم فتح نافذة المحرر بصفحة

(first.m مثال )m نقوم بحفظه أوال في ملف له االمتداد لتنفيذ هذا السكريبت. اكتب اسم الملف save as مربع حوار وفي File -< save أختار

:مالحظة كما ذكرنا C:MATLAB6p5work والذي عادة ما يكون المجلد الملف يجب أن يحفظ في مجلد العمل

.السلسلة في الدرس األول من هذهلتنفيذ السكريبت( من شريط األدوات )كما موضح في الشكل أعاله run ثم انقر على مفتاح

:التالي نتيجة تنفيذ السكربيت سوف تظهر في إطار األوامر كما بالشكل:مالحظة

.معرفة كذلك في منطقة العمل الحظ أن المتغيرات التي تم تعريفها في ملف السكريبت أصبحتMatLab التعليقات في لغة

(.سوف يعتبر تعليق ) الحظ ظهوره باللون االخضر MatLab في )%( كل سطر تسبقه عالمة مقدمة السكريبت )قبل أي امر( فإن هذا األمر سوف يظهر عند طلب المساعدة عند كتابة تعليق في

Page 15: ما هو MatLab - الرئيسية · Web viewاللغة التي يعمل بها برنامج المتلاب هي لغة مفسرة Interpreted بمعنى أن مترجم اللغة

(راجع الدرس الخامس )help باستعمال أمر حول السكريبت:إنشاء دالة

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

function ]output1, output2, ...[=filename)input1, input2, ...( %comments that will appear at help

statement1;statement2;

.

.

.

:حيثoutput1, output2 هي المعامالت التي سوف تعيدها الدالة، يجب أن ال تقل عن واحدة

input1, input2 (األقواس هي المعامالت التي يتم إدخالها للدالة )إذا لم تكن موجودة ل يتم كتابة .filename يجب أن يحفظ الملف بنفس اسم الدالة

mod تقوم بحساب باقي القسمة لرقمين صحيحين فيما يلي دالةFunction r=mod)a,d(

%r=mod)a,d(. If a and d are integers, then %r is the integer remainder of a after

%division by d. If a and b are integer matrices, %then r is the matrix of remainders after division

%by corresponding entries. Compare with REM.

r=a-d.*floor)a./d( ,التكامل

q=quad)@humps,0,1(

q=

29.8583