Professional Documents
Culture Documents
مقدمة ف أساسيات برنامج الماتلاب
مقدمة ف أساسيات برنامج الماتلاب
جامعة حلوان
مايو 2018
اإلهداء
هذا الكتاب منشور حتت رخصة املشاع اإلبداعى بشرط عدم االستغالل التجارى.
ميكن ألى شخص مشاركة وإعادة توزيع الكتاب جماان بشرط نسب العمل للمؤلفني وعدم
االستغالل التجارى.
الكتاب متاح كما ترى للجميع دون أى تكلفة لالستفادة منه على أى وجه سوى االستغالل
التجارى .فرجاء عزيزى القارىء إذا رأيت أنك استفدت منه فال نطلب منك سوى الدعاء
للمؤلفني ،والتربع مبا شئت إن شئت ،ألى جهة من جهات اخلري بنية الثواب للمتربع واملؤلفني.
عن املؤلفني
أ.د .حممد ابراهيم العدوى
أستاذ متفرغ بكلية اهلندسة حبلوان – جامعة حلوان – حلوان – القاهرة
98eladawy@gmail.com
Mohamed_salama01@h-eng.helwan.edu.eg
استعراض الكتاب
يوجد ىف دنيا احلاسبات العديد من الربجميات التطبيقية والىت من أكثرها شيوعا جمموعة برجميات Microsoft office
والىت حتتوى على العديد من الربجميات الىت يستخدمها يوميا كل من يتعامل مع احلاسب وىف أى ختصص .وحنن نعتقد
أن برانمج ماتالب MATLABمن شركة ماثورك Mathworkأيتى ىف املرتبة التالية من حيث الشيوع واالستخدام
بعد برجميات Microsoft officeوابلذات بني املتخص صصصصني ىف اجملاالت العلمية والىت من أشصصهرها اسةدسصصة ميع
ختصصاهتا) والرايضيات.
القليل جدا من اجلامعات واملعاهد العلمية تقوم بتدريس املاتالب كمادة مةفص صصلة ى توى علمى ىفدد ىف أى س صصةة من
س صصةواهتا الدراس صصية وللن ىف الاالب مايتد اس صصتخدامط كربانمج تطبيقى يتد اهش صصارة ليط عةد احلاجة حلل مترين أو جراء
مش ص صصروع معني ىف أحد املقررات الدراس ص صصية مثل مقرر معاجلة اهش ص صصارات الرألمية أو مقرر ا نومة واهش ص صصارات أو أحد
مقررات الرايضص ص ص ص ص ص صصيات أو امليلانيلا أو الت لد املق .ىف كل هذ املقررات تاك الطالب حلل اللثأ من التمارين أو
جراء بعض املشص ص صصروعات مسص ص صصتخدما املاتالب دون أن يلون لديط لرة عن هذا الربانمج من ألبل لذلل لن الطالب
ىف هذ احلالة يلون ىف عجلة من أمر لتعلد هذا الربانمج وابلطبع لن هذا الوألت يلون مقتطعا من وألت املقرر الذى
يدرسط.
لذلل قد كةا حريص صصني ىف هذا اللتاب على أن نقدم برانمج ماتالب ىف ص صصورة مبس صصطة وس صصهلة ليث بلن للطالب
أن يعتمد على نفسص ص ص ص ص ص صصط كليا دون احلاجة ق اللجوء ى ملتب من امللاتب الىت تقوم بتدريس هذا املقرر جم ءا على
عدة دورات بتللفة عالية جدا .ولذلل لنةا نةصصصأ أى لالب ىف السصصةوات ا وق من دراسصصتط اجلامعية أن يقوم ابألتةاء
هذا اللتاب ويبدأ ىف تعلد برانمج ماتالب معتمدا على نفس ص ص ص ص صصط وابلذات لالب كليات علوم احلاس ص ص ص ص صصب و اسةدس ص ص ص ص صصة
ميع ختصصاهتا).
ن برانمج ماتالب من الصص ص ص ص ص ص صصعب جدا أن يتد اعط أو تقدبط كامال ىف كتاب واحد حيث أنط يسص ص ص ص ص ص صصتخدم ىف ايع
التخص ص ص ص ص صصص ص ص ص صصات بال اسص ص ص ص صصتثةاء وابلذات اسةدسص ص ص ص صصية مةها .ولذلل قد راعيةا ىف هذا اللتاب أن يقدم احملتوايت العامة
املستخدمة من ألبل ايع التخصصات مثل استخدام املاتالب ىف حالتط التفاعلية مع املستخدم؛ والىت من خالسا بلن
للمستخدم حل اللثأ من املشاكل أو التمارين بسرعة كبأة وبصورة تفاعلية كما لو كان يستخدم امللة احلاسبة متاما.
الصورة الثانية من صور استخدام ماتالب هى صورتط الربجمية الىت يستخدم يها كأى لاة برجمة عادية من لاات الربجمة
ذات املسصصتوى العاق مثل لاة C++ولقد مت تقدمي كل من هاتني الصصصورتني ىف هذا اللتاب ابلتفصصصيل .الصصصورة الثالثة
من ص ص ص صصور اس ص ص صصتخدام برانمج ماتالب هى ص ص ص صصورة احملاكاة simulinkحيث بلن اس ص ص صصتخدام ماتالب ىف ىفاكاة أى
مش صصللة أو أى مشصصروع ل دخاا شصصارات الدخل سذا املشصصروع واميع شصصارات ا رك ورديتها على العديد من أجه ة
عرض اهشارات الىت بلن س بها و سقالها على مساحة العمل ىف برانمج احملاكاة وردية املشروع الذى متت ىفاكاتط
وهو يعمل بصورة كاملة وحتت أى ظرف من ظروف العمل.
ا لفية العلمية الالزمة لدراس ص ص ص ص ص ص صصة هذا اللتاب هى الدراية بى لاة برجمة وحبذا لو كانت لاة Cأو أى واحد من
صداراهتا حيث أن الربجمة ىف ماتالب هى ىف احلقيقة برجمة بلاة Cولذلل لن الذى لديط دراية بلاة Cسيو ر على
نفسط اللثأ من الوألت) وابلذات الطرق املختلفة لل لقات وأوامر الشروط والدواا.
الفص للل األول عبارة عن مقدمة عامة عن برانمج املاتالب مت وض صصعها ىف ص صصورة س صصهلة ومباش صصرة الارض مةها ق هو
اسص صصتعراض مقدرة و ملانيات برانمج ماتالب املختلفة من خالا جمموعة برامج بلن تةفيذها بس ص صصهولة واحلصص صصوا على
نتائجها وأما التفاص ص صصيل لتا س ص صصتأتى ىف الفص ص صصوا التالية حيث أن الارض من هذا الفص ص صصل ق هو تش ص صصوي القار
للدخوا ىف الربانمج ومعود ذلل من خالا الصورة التفاعلية.
الفصللل الثاى ألدمةا يط الص صصورة الثانية من ص صصور التعامل مع املاتالب وهى ص صصورة الربامج الىت تس صصمى ملفات اهم أو
اا .M filesالفص ل ل ل ل للل الثال ألدمةا يط ماتالب كلاة برجمة عامة مثل لاة اا C++حيث ألدمةا يط ملوانت لاة
ماتالب واحللقات والشصصروط واللثأ من تقةيات الربجمة العامة .الفصللل الرابع ألدمةا يط املصصصفو ات واملتجهات حيث
أن برانمج ماتالب يعترب برانمج مص ص ص صصفو ات ومتجهات واس ص ص صصتعرض ص ص صصةا ىف هذا الفص ص ص صصل اللثأ من العمليات الىت بلن
جرادها على املصص ص ص صصفو ات ىف ماتالب مثل عمليات اجلمع والاص ص ص صصرب واحملددات والعلس و أها اللثأ .ىف الفص ل ل للل
اخلامس ألدمةا أساسيات الرسد ىف ماتالب حيث أن ماتالب توى على العديد من دواا الرسد ثةائى وثالثى ا بعاد
والىت تعترب على درجة عالية جدا من ا مهية ىف استعراض نتائج أى برانمج ونتائج أى لث.
ىف الفصل السادس ألدمةا تصميد شاشات التقابل أو املواجهة مع املستخدم والىت من خالسا بلن عرض التطبيقات
ىف ص ص ص ص صصورة س ص ص ص صصهلة ومفيدة للل املس ص ص ص صصتخدمني الذين ال يعر ون املاتالب .ىف الفص ل ل للل الس ل ل للابع ألدمةا برانمج احملاكاة
simulinkبدرجة مبسطة للمستخدم املبتد ىف هذا اجملاا .الفصل الثامن يشرح لرق دخاا و خراك البياانت من
و ق احلاس صصب وكيفية عرض هذ البياانت .الفص للل التاس للع يقدم الطرق الرم ية هجراء بعض العمليات الرايض صصية مثل
التفاضل والتلامل بطريقة رم ية و أ عددية والىت حنتاجها ىف اللثأ من العمليات الرايضية.
الفصللل العاشللر يقدم أسصصاسصصيات معاجلة الصصصور ويعترب ماتالب ةيا جدا ابلدواا وا واري ميات الىت تسصصاعد ىف حتسصصني
ومعاجلة الص ص ص ص صصور .وىف احلقيقة لنط بلن راد كتاب ابللامل عن اس ص ص ص صصتخدام ماتالب ىف معاجلة الص ص ص ص صصور وللةةا ألدمةا
أس صصاس صصيات املوض صصوع وتركةا الباألى للقار ليتابعط بةفس صصط .الفصللل اىادى عشللر وا خأ ألدمةا يط أس صصاس صصيات معاجلة
اهشصارات وهذا الفصصل يعترب مقدمة سذا املوضصوع حيث أنط بلن شصرح هذا املوضصوع ىف كتاب ابللامل أياصا وتوجد
ىف السص صصوق العديد من اللتب الدراسص صصية املوضص صصوعة خصص صصيصص صصا ملعاجلة اهش ص صصارات ابسص صصتخدام ماتالب لذلل كان هذا
الفصل مقدمط ق عن املوضوع وتركةا الباألى للقار للمتابعة بةفسط.
كما ترى قد راعيةا أن تلون ص ص صصوا اللتاب عامة وىف املوض ص صصوعات املس ص صصتخدمة من ألبل ايع التخصص ص صص ص صصات تقريبا
وابلذات اسةدس صصية مةها اللل تاك للرس صصد و تاك للتعامل مع الص صصور و دخاا و خراك اهش صصارات من و ق احلاس صصب
كما تاك اجلميع لطرق احملاكاة الىت ال ىن عةها ى ختصص.
نةصص صصأ القار اجلديد على برانمج ماتالب أن يبدأ اب مسص صصة صص صصوا ا وق على ال تيب عليط أن يقرأها بتدبر ومتعن
مع تةفيذ ايع الربامج الواردة يها .بعد ذلل ابلةسص صصبة للسص صصتة صص صصوا التالية عليط أن يتار مةها ما يريد أو يسص صصتمر ىف
ألراءهتا هى ا خرى ابل تيب لل صوا على أعود ائدة من اللتاب.
ىف الةهاية نتمىن للقار االستمتاع ىا ىف هذا اللتاب ورحلة مو قة من أولط ق آخر .
عن املؤلفني
أ.د .حممد ابراهيم العدوى
أستاذ متفرغ بكلية اهلندسة حبلوان – جامعة حلوان – حلوان – القاهرة
98eladawy@gmail.com
Mohamed_salama01@h-eng.helwan.edu.eg
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
الفصل األول
مقدمة عن برانمج ماتالب MATLAB
1-1مقدمة
برانمج ماتالب هو برانمج عاىل املستتىوو ألااءال غة ع عاغ ع املستتىوو ألااءال وابتتا ألىفغااس اب ا ستتاىفس
ألاغىطب قاس اغىقن ع مثل اهلندس ت ت ت ت تتع وا ر ضرألع ا ألاغرايءت ت ت ت ت ت اس ألاغ عايل أل ها اب هاا اغ ت ت ت ت تتل ر
مكوانس هاا اغربامج كنظام براجمى مث ش ت تتري ك ع تش ت ت ة ب د لغر ىطر غش ت تتري عام ع اس ت تتى دام
املاتالب اب ص ت تتوتت اغى اعة ع ألاغا مكننا م اس ت تتى دام كرغع باس ت تتبع ارال ب اغ اة اس ا س ت تتاب ع
اغبس ت ت طع عةى املى اس أل ب اغدألاع اغ امع مث ىناألع بش تتىل م اغى ت ت ل ك ع فة املس تتاعد اب
امل تتاتالب ألاغا ت ىرب م اخلواص اغا وىا ع هب تتا امل تتاتالب ءأل ت م غ تتاس اغربجم تتع اا رو أل ا
ى ر س ت ترو ا غب املوء ت تتوعاس -اغا وس ت ت ل اغى امل م ا ىفس ت تتى دام املاتالب ءأل ت م غ اس
اغربجمع -مثل تسم اغدألاع ،اغى امل مر اغ وت ألااصواس ،ألااتقام املركبع هات املوءوعاس س ىم شرب ا
البقا ض اا وةى م ض وع هاا اغكىاب
2-1ما هو املاتالب ؟
برانمج ماتالب عبات ع ألستتر برجمع س ت ل االستتى دام سكنر م استتى دام هات اغة ع ب تتوت مى دء
بس تتر هات اغ تتوت هى ص تتوت ا غع ا اس تتبع اغا وكو ض ا اغى اعل بني املس تتى دم ألاغربانمج م ست ت ل
وكى و واتوعم أل برانمج وقوم حبل أل س ت ت ت ت تتر ما وكو أل كوس ت ت ت ت تتر برجمع سك غةاس ت ت ت ت تتى دم ض
مشتتكةى مث تن ا هاا اخلواتوعم ألا ىباتت ىفغك ع اغا ورودها مثة اب لغر مثل غ اس اغربجمع اغش ت مثل
غ ع Cألاجلاضا أل ها ألتىدتج االس ت تتى داماس إىل إمكا ع ألء ت تتر اغربانمج أل اخلواتوعم اغاو ص ت تتااى اب
صت ت ت ت ت ت تتوت ءاغع م ءألاع ماتالب سكنر إءت ت ت ت ت ت تتاضى ا إىل مكىبع ماتالب ألتن اها كرء كىابع ا ا ك بد
اغدألاع اغدا ة ع اب املاتالب عالأل عةى كل لغر ضىواد اب ماتالب مكىبع م ءألاع اغرسم ألاحملاكا اغا
مكنر م عر ىائكر ك ت ت تتوت ألنائع ااب اء ألألالأل ع ااب اء بس ت ت ت وغع ت كع عن ا اغكث م اغربجم اس
اب هاا اجملاع إ است ت تتى دام ماتالب كرغع باست ت تتبع أل اب صت ت تتوتت اغى اعة ع ت ىرب م هم عاس ماتالب
ألاغا ال تواد اب و غ ع برجمع رو ب ث سك مباشت ت ت تتر بست ت ت تتاب اجلات اغ ب ى مثال او ب كاا
سك وابت ت ت تتا اب هات اغ ت ت ت تتوت اغى اعة ع إارال اغكث م اغ اة اس ا ست ت ت تتاب ع امل قد مثل بل امل اءالس
اغى اءة ع ألىفغطبر سىحىاج اكثر م سطر
1
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
ت ت ت ت ت ت ت ت ت ت ت تتع وس ت ت ت ت ت تتا ا املاتالب وا كل لغر حيىوو ماتالب عةى اغكث م املكىباس اغنوع ع أل املى
ص تتناءوق ااءألاس tool boxesحتىوو كل من ا عةى اغكث م اغدألاع املى ت تتع اب جماع م ني ألاغا
تست ل عةى املستتى دم اغى امل م ا م الع هات املكىباس املى ت تتع م هات املكىباس ألاغا ست ىم
ت ت تتع اب هاا ش تتري ب اب ت ت ا (أللغر غ ت ت وبع ش تترب ا ىفغكامل اب كىاب ألابد ىفغى ت ت ل اب ماك
اغكىاب ما وةى:
• مكىبع امل ةومات ع اغطب ع Bioinformatics tool box
• مكىبع ظم االت االس Communication systems tool box
• مكىبع ظم اغىحكم Control systems tool box
• مكىبع اكىساب أل قرال اغب اانس Data acquisition tool box
• مكىبع قواعد اغب اانس Data base tool box
• مكىبع ت ا م املرشحاس Filter design tool box
• مكىبع املنطق اهلالمى Fuzzy logic tool box
• مكىبع اخلواتوعماس اجل ن ع Genetic algorithms tool box
• مكىبع م اجلع اغ وت Image processing tool box
ألهناك اغكث م هات املكىباس اغا وا ر هبا هاا اغربانمج ألاغا ت ىرب م هم عات ظرا ملا تقدم م
ني اب كل هات اجملاالس س وغع اب اغربجمع ألاغى امل غةاى
حيىوو برانمج ماتالب عةى ألسر برجمع آ ر وسى دم كل امل ندسني ألت ا هم وابا ألهو ألسر برجمع
احملاكا Simulinkهاا اغوست ت ت ت ت ت تتر وى امل غ م الع ألامر أل واتوعماس مكىوبع ألغك م الع
ص تتناءوق أل بةوكاس حماكا ض اكنر مثال س تتح ص تتندأل م تتدت إش تتات تىحكم اب ترءء ألمقدات هات
ا ش تتات م الع واص ت ،مث تس تتح ص تتندألقا آ ر سثل مرش تتخ تىحكم واب تتا اب واص تتع ب ث وقوم
هاا اغ ت ت ت ت ت تتندأل ىفغس ت ت ت ت ت تتااي غب اغ ءءاس ىفملرألت غة رج ألمنر اغب ا ر ،مث اب اغن اوع سكنر
تست ت تتح صت ت تتندألقا غثا سثل اعع تست ت تتار م الهلا عةى اعع ا اس ت ت ت اغاو تى امل م اغ ت ت تتوس
اخلاص ىف شات اخلاتاع م م دت ا شات ب ث وىم لغر ىفغطبر ب د توص ل هات اغبةوكاس مر ب اب ا
عةى اغىواىل إ هاا جمرء مثاع بس ر ىفسى دام ألالألع بةوكاس و رض ا اجلا ر ،ألغك ىفغطبر سك ت ا م
ظاع كامةع هبات اغطروقع ألءتاس ت ت ت ت ت تتع ءائ ا اب هاا اغوس ت ت ت ت ت تتر قبل اغبدل اب تن اها حيىوو املاتالب عةى
2
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
اغ دود م املكىباس املى ت تتع اب كل اجملاالس اب هات اغ تتوت م بةوكاس احملاكا ىفغطبر ضو ألستتر
برجمع احملاكا غ وىم شت ت ت تترب ىفغكامل اب هاا اغكىاب ألغك إ شت ت ت تتال ه س ت ت ت ت رء غ كىاب اص ب اب
املسىقبل اغقرو
وىكو برانمج املاتالب كنظام براجمى software systemم مخسع اعال ساس ع اكرها ض اا وةى:
-1وس ططرب ال ة :ألهو جماوعع م ااءألاس اغس ت ت ةع االست تتى دام ع فروق اغنقر ىفغ ت ألهو ألع
شت ت ت ت تتاشت ت ت ت تتع تظ ر غر عةى ست ت ت ت تتطخ املكى كرء اغنقر عةى وقو ع املاتالب ألاغد وع ض ألهات
اغشتتاشتتع مقستتاع إىل كثر م اعل من ا اعل اص ستتابع اغىش ت ل ،work spaceألانضا
ااألامر ،command windowألمس ت ت ت ت ت ت تتابتع اتوخ ااألامر command historyأل هتا
ل اب اجلعل اغىاىل م هاا اغ ل ألاغا س تى شرب ا ىفغى
-2مكتبة دوال ماتالب :ألهى مكىبع كب تابم اغ دود م اغدألاع سابقع اغىك ع اغا وىم تن اها
ما م ءاغع ت ت ت ت ت ت ت ت تتاس اغ ةا ع حب ث كرء كىابع ا ا ألت طى هات املكىبع تقروبا مج ر اغى
ترود إارالها اب م ظم اغى ت ت تتاس اغ ةا ع إال س تتىكدها ااهع اب مكىبع املاتالب ألما عة ر
غكى تن اها إال تكىب ا ب ت ت ت تتوت.ا اغ ت ت ت تتح حع تى هات اغدألاع م اغدألاع اغبس ت ت ت ت ت طع مثل
اجملاو ألاملىوس ت ت تتر ألا اغىاام sineأل cosineألاغى امل مر ااتقام املركبع إىل اغدألاع امل قد
3
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
لغر اغكث ألس ت ىم مثل ءتترب امل ت وضاس ألإماء م كوس ت ا ألءألاع ب س ت ل ألحموالس ضوتور أل
ا دوث ع هات اغدألاع اب ماكن ا
-3لغة بر ة ماتالب :ألهى غ ع عاغ ع املس تتىوو ألبد.ا هى امل ت ت وضع تش تتال كل اغ ناص تتر املطةوبع
او غ ع برجمع مثل اغش ت ت ت ت ت ت ترألك ألا ةقاس أله اكل اغب اانس ألا ء اع ألا راج ألاغربجمع املوا ع
هبدف مثة ا اب لغر مثل غ ع Cألاجلاضا ب ث ىفس ت تتى دام هات اغة ع سك ت ت تتا م ألبنال عقد
اخلواتوعماس هات اغة ع س ىم شرب ا اب ض ل اص باغر
-4مكتبة الرسط ط ططم :تاب ت ت تتم هات املكىبع اغ دود م ااألامر اغا سك هبا تس ت ت تتم و ءاغع أل ى كع اب
ااب اء اغثنائ ع أل اغثالأل ع وا ألامر قرال ألم اجلع ألعر اغ ت ت ت ت تتوت كل هاا وا ت ت ت ت ت تتا م
شتتاشتتاس اغى اعل مر املستتى دم Graphical user interface, GUIألست ىم شتتري لغر اب
ب ن وابا
The matlab Application Program -5برانمج تفططاعططل مططاتالب مب الت بيقططا
:Interface, APIألهات املكىبع تس ت ت ت ت ت تتاخ غةاس ت ت ت ت ت تتى دم بكىابع برامج بة ع Cأل اغ وتترا
الع ماتالب ألتوص ة ا أل تن اها م
4
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
4 1
2
3
تىكو شاشع سطخ املكى اب ماتالب م 4اعال أل واضا تئ س ع كاا اب شكل ( 1-1ألهى كاا
وةى :
-1انفذة األوامر :Command windowألض ا كى ااألامر اب باغع اسى ااع ماتالب
اب اغ وت اغى اعة ع أل كرغع باسبع ألتظ ر ض ا وابا ى كع تن ا و مر كاا سنرو ب د قة ل
-2انفذة اجمللد احلاىل :Current directoryب ث حتىوو هات اغناضا حمىوايس اجملةد املواوء
هاا اجملةد ىفسى دام اغس م اغنازع اب شباك اجملةد ا اىل Current ض املاتالب سك ت
directoryاب شرور ااوقوانس ىفغنقر مرتني عةى و مةف اب هاا اجملةد وىم ضىح
-3انفذة اتريخ األوامر :Command historyألحتىوو هات اغناضا عةى قائاع بكل ااألامر
اغا اسى دام ا اب انضا ااألامر م بداوع اةسع تش ل ماتالب با هناوع اجلةسع هات
ااألامر تكو مرتبع ألىفغنقر عةى و مر ض ا مرتني وظ ر هاا اامر اب انضا ااألامر ألوىم تن ات
سنىحدث ع لغر مر ا دوث بشىل م اغى ل ع انضا ااألامر اب اجلعل اغىاىل
-4انفذة مساحة العمل :Work spaceهات اغناضا تظ ر ىفغىباءع مر انضا اجملةد ا اىل ب ث
ىفغنقر عةى شرور مسابع اغ ال تظ ر انضا مسابع اغ ال ألختى ى انضا اجملةد ا اىل ،ألىفغنقر
5
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
عةى شرور اجملةد ا اىل مر رو تظ ر انضا اجملةد ا اىل مر رو ألختى ى انضا مسابع
اغ ال انضا مسابع اغ ال ت ر مج ر املى اس variablesاغا اسى دام ا اب و اةسع
تن ا م اةساس املا تالب إ نا ىن بكةاع اةسع هنا م بداوع تش ل ماتالب با اخلرألج
من اب و مر م املراس
-5نوافذ س ح املكتب غةااتالب املواوء اب شكل ( 1-1هى اغىقس اع اغىةقائ ع defaultهلات
ل مسابع كل انضا أل تكب ها أل إ ال ب اب ا ىفسى دام اغ ت كاا اغنواضا سك ت
مر و انضا اب برانمج اغنواضا كاا سك اغىحكم اب ترت هات اغنواضا ألفروقع ظ وتها ىفغك ع
اغا ورودها املسى دم كرء رألج املسى دم م و اةسع ألإ ال ماتالب ضو آ ر ألءر
هلات اغنواضا وىم االبى اظ ب
سك اغىحكم اب ك ع ظ وت سطخ املكى اب ماتالب ىفغنقر عةى قائاع Desktopألمن ا خنىات
Desktop Layoutمث خنىات من ا و شكل رود كاا اب شكل ( 2- 1البظ اال ى ات Default
6
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
هو اال ى ات اغىةقائى اغاو خيىاتت غر ماتالب ألهو املوءخ اب شكل ( 1-1ألهو ضابل اال ى اتاس
غةكث م املسى دمني ىفغنقر عةى اال ى ات Command Window Onlyسىظ ر انضا ااألامر
ضقر ،ألاغنقر عةى History and Command Windowتظ ر انضا ااألامر ألانضا اتوخ ااألامر
ضقر ،ألىفغنقر عةى All Tabbedسىظ ر غر بد هات اغنواضا مأل شاشع ا اس مر زتات tabs
غةنواضا اا رو حب ث سك اغىنقل بني هات اغنواضا ىفغنقر عةى اغعتات اخلاص بكل من ا ،باألع جتربع لغر
اب و ظع سكنر اغنقر عةى اال ى ات اغىةقائى Defaultغة وء إىل اغشكل اغىةقائى كاا اب شكل
(1-1
7
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
right • اب ألنال كىابع و مر سكنر اسى دام مج ر زتات ت ح خ اغنص مثل زتات اغس م ااس
arrowألاغس م ااوسر ألاغعتات Delألاغعتات Backspaceالبظ هات اازتات تساعد اب
اغى ح خ عةى ر أل سطر ألابد ضقر ضة هناك حترك اعةى أل اس ل مثال ىفسى دام اغس م
اعةى أل اغس م اس ل
د • اغس م اعةى ألاغس م اس ل سك اسى دام ا بابات و مر سبق كىابى بدال م
كىابى مر رو ضاثال إلا كن قد كىب ااألامر اغسابقع بن اغ ت اغسابق ضو بابرب زتات
اغس م اعةى س حابر غر اامر ،2^3ألبابرب اغعتات Enterوىم تن ات بابرب زتات اغس م
اغ ةوو مر رو وظ ر مامر اامر ،2\1ألإلا ءرب Enterوىم تن ات ألهكاا ىفسى دام
اغس م ااعةى ألااس ل سك اغىكوع اب كل ااألامر اغسابقع ب ث ب د ظ وت و مر ترودت سكنر
تن ات بابرب اغعتات Enter
• ماتالب ب اص ع مج ةع ألهى االسىدعال اغاكى غألألامر اغسابقع ،ضباكرء كىابع اابرف ااألىل م
و مر مث ابرب زتات اغس م اغ ةوو وظ ر اامر ىفغكامل ب ث سكنر تن ات بابرب اغعتات
8
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
Enterمثال اب ااألامر اغسابقع غو كىبنا >>2+مث ءربنا اغس م اغ ةوو ضو اامر تكىال كىابى
ض بخ >>2+3ألبابرب Enterتظ ر اغنى كع
ناسبع اغقساع مالا س كو موقف ماتالب عندما قسم عةى اغ ر ا ظر غألمر اغىاىل : •
>> 1/0
= ans
Inf
عند قساع ألابد عةى ص ر كا ى كع اغقساع هى Infألهى ا ى ات ملاالهناوع Infinityكاا ةم
هناك ى كع رو قد تقابة ا عند اغى امل مر ماتالب ا ظر غةاثاع اغىاىل:
>> 0/0
= ans
NaN
حمدء Not a Number, NaNكاا ت ونا هنا قسم ص ر عةى ص ر ألاغنى كع ىفغطبر
-2املتغريا
ابر و ق اع اب هاا املى املى اب و غ ع برجمع هو عنوا اب اغااكر حيال اسم املى ألسك
ىفسى دام اغ المع "=" بد ا إبارال هات ااألامر عةى ماتالب ب ث قانا بنس ا هنا با وسىط ر
اغقاتول إعاء.ا ألاغىدتو عة ا:
>> a=2
=a
2
قد خت ص كرء كىابع a=2مث ابرب Enterورء املاتالب ىف اابع ألهى وابا a=2ا و ىن
اغق اع 2غةاى ،aألسك االسى اء هبا كاا اب ااألامر اغىاغ ع:
>> a+9
= ans
11
ا اابع ،11 aألكا هنا مجر اغرقم 9مر املى
>> a*9
= ans
18
9
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
ألهنا ءرب aاب 9ألكا ا اابع 18البظ ق اع املى aالزاغ تساألو 2ألمل تى با ا
ىفغر م م إارال كل هات اغ اة اس اغسابقع عةى املى aا ظر هلاا اامر:
>> a=a+10
=a
12
ت س ق اع aأل صبح a=12اكى اامر اغىاىل: ا
;>> b=4
البظ اامر b=4هنا مىبوعا ىفغ اصةع املنقوفع ألاوء ضاصةع منقوفع ب د و مر منر م عر
اغنى كع ضقر ،ىن وىم اغىن ا ألت بخ ق اع املى bتساألو 4ألغك مل ت ر اغنى كع كاا كا اب
اامر a=2
>> c=a+b
=c
16
c bت بخ اغنى كع 16اغا وىم ألء ا اب املى آ ر ق اع غةاى aكا 12ألوا ا مر املى
ألعرء ا كاا ت ونا ا ظر غألمرو اغىاغ ني:
>> b
=b
4
>> B
??? Undefined function or variable 'B'.
و ى كع اامر ااألع >>bعر ق اع املى bاملواوء عندت ألهى ،4ب ناا اامر >>Bمل و ر
حمدء إن هذا يقودان إىل حقيقة مهمة وهى أن ماتالب حساس أل ءاغع املى Bمى بل قاع
ىةف ،أللغر عةى اغ ك املى bخيىةف ع املى ،Bكل من اا و ىرب مى لشكل احلرف .و
هلا ألاغكب ض وت ا رف اب هات اغة اس غ غ اس اغربجمع اغا ال ت ر بني اابرف اغ م ب
ق اع
اغسطر كاا وةى: اسى دام اغ اصةع املنقوفع مكنر م كىابع كثر م مر اب
10
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
اةسع سكنر اغنظر إىل انضا اتوخ تىابر ااألامر كاا اب شكل ( 3- 1تالبظ اب هات اغناضا ا
ماتالب هات كا ووم 2009/8/7اغساعع اغ اشر ألاألنني ألمخسو ءق قع صبابا مث ب د لغر عر
مج ر هات ااألامر بن فروقع كىابى ا اب انضا ااألامر ألغك فب ا ألكاا رو اب اغشكل ءأل عر ى كع
تن ا هات ااألامر ىفغنقر عةى و مر اب هات اغناضا وىم قة إىل انضا ااألامر ألتن ات ضحاألع جتربع
لغر
ش تتكل ( 4- 1وبني انضا مس تتابع اغ ال work spaceب ث ت ر هات اغناضا مج ر املى اس اغا
اس ت تتى دام ا اب اةس ت تتع اغربجمع ا اغ ع مرتبع حبست ت ت اس ت تتى دام ا اب انضا ااألامر هات اغناضا ت ر
وابا آ ر ق اع اها كل مى أل قل ق اع أل كرب ق اع وابا هلاا املى
11
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
12
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
)>> log(10
= ans
2.3026
ب ناا اغةو اتوىم غألساس 10ض كى عةى اغ وت :
)>> log10(10
= ans
1
حيىوو ماتالب عةى ااغ دود م اغدألاع ا ساب ع اغا قدم ب اب ا أل كثرها اسى داما اب ادألع 1-1
ضحاألع جتربع هات اغدألاع أل عةى ااقل ما خي ر من ا
13
حسن فؤاد.د.أ د اننسى سامل.م.أ حممد ابراهيم العدوى.د.أ
MATLAB مث اغد وع عةىHelp وع عةى قائاع كامةع هبات اغدألاع م قائاع املساعد سك ا
ب ث س و عرءا كامالElementary Math مثMathematics مثFunction Reference مث
غةكث م اغدألاع املسى دمع اب ماتالب مبوبع ألظ ا أل وداي
14
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
15
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
16
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
• هناك وابا إمكا ع ا وع عةى م ةوماس ع فروق كىابع و عنوا ترودت اب ا ع اغبحث
) (searchاملواوء اب شكل ( 6- 1ألاب ا اع س ر ماتالب كل ما وى ةق هباا اغ نوا
• سك وابا ا وع عةى مساعد ع و ءاغع مباشر ع فروق كىابع مر helpاب انضا ااألامر
كاا اب املثاع اغىاىل غطة املساعد ع اغداغع :sind
17
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
Overloaded methods:
distributed/sind
Reference page in Help browser
doc sind
اامر helpوسى دم مر اسم اغداغع غطة املساعد ع ءاغع م نع مثال مد ال.ا أل راا.ا أل با
ك ع اسى دام ا ألاملى اس ض ا ما اب باغع عدم تاكر اسم اغداغع أل عند اغبحث ع ءاغع تقوم ب ال
حمدء ضا نا سى دم اامر lookforالبظ االسم وكى ككةاع ألابد ألاغاو وبحث ع جماوعع
برف اب اغسطر ااألع غكل مة اس ا م املواوء اب املاتالب اغا حتىوو اغكةاع اغا تبحث عن ا
ألو ط ر اسم اغدألاع احملىووع عةى هات اغكةاع املثاع اغىاىل ووءخ ى كع اغبحث ع ءاغع ساب املىوسر
>> lookfor average
Localavfit - Construct "average fit" model
mean - Average or mean value.
gcrma )- performs GC Robust Multi-array Average (GCRMA
background
gcrmabackadj )- performs GC Robust Multi-array Average (GCRMA
background
movavg - Leading and lagging moving averages chart.
املاتالب اعطي مج ر اغدألاع اغا تقوم ب ال املىوسر ألعةى املسى دم حتدود اغداغع اغا ورود البظ
اسى دام ا
18
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
19
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
20
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
=a
12
aض ر غنا ماتالب ق اع ب ث هنا تن ا اامر clcضىنظ انضا ااألامر ،ألب دها س غنا ع املى
هاا املى ا وؤكد املى aمل سسخ م اغااكر
>> date
= ans
08-Aug-2009
هات اغداغع ت ر اغىاتوخ اب صوت اغ وم ألاغش ر ألاغسنع كاا ت ونا
>> calendar
Aug 2009
S M Tu W Th F S
0 0 0 0 0 0 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 0 0 0 0 0
ى كع اغش ر ا اىل كاا ت ونا اغداغع calendarت ر
اغداغع clockت ر غر اغىاتوخ ألاغوق اب مىك ىفغ ت اغىاىل م اغ سات غة اني :اغسنع 2009مثال،
مث اغش ر (ش ر 8مثال ،مث اغ وم ،مث اغساعع ،ألاغدق قع ألاغثا ع كاا وةى:
)>> fix(clock
= ans
2009 8 16 8 46 5
ا اابع ون خ ىفسى دام fixقبل اامر clockبا وىم عر ااتقام صح حع بدأل كسوت هنا كا
عام 2009ش ر 8ووم 16اغساعع 8ألاغدق قع 46ألمخ ألوا
21
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
-9األصوا ىف ماتالب
غقد ت ونا ب ما غدو ماتالب م اغى امل مر اغ وت ،ضاالا غدو ع اغى امل مر ااصواس؟ ا
اامرو اغىاغ ني ألاسىار:
>> load handel
)>> sound(y,Fs
22
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
اامر ااألع وناءو عةى مةف صوتى ،ألاغثاىن ورسل إشات هاا املةف إىل اعع ا از ا اس بث
هناك اغكث م مة اس اغ وس املواوء مر املاتالب تةقائ ا سكنر اع ا ألمن ا املة اس trainأل
splatأل chirpأل gongأل laughterضحاألع حتا ة ا ىفامر loadمث اع ا ىفامر soundكاا
اب اامرو اغسابقني سكنر تسك ل و مةف صوتى م عندك ألاغندال عة ىفملسات اغ ح خ أل اع
شكل ( 9- 1أتأل مرشخ اغوسر median filterعةى ءوءال املةخ ألاغ ة ل -اغ وت ااصة ع
ب -اغ وت ماباضا إغ ا اغابوءال ج -اغ وت ب د إزاغع اغابوءال
23
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
>> c=a+b
=c
8.0000 +10.0000i
>> c=a*b
=c
-9.0000 +38.0000i
)>> exp(a
= ans
1.4250e+002 -4.1469e+001i
)>> z=real(b
=z
3
مرك ، اامر )( realحيس اغق اع ا ق ق ع او مى
)>> y=imag(ans
=y
-41.4689
اغداغع )( imagت ر اغق اع اغى ة ع او مى كاا هو ألاءخ م اغنىائج
كاا ت ونا ضو ماتالب وى امل مر ااتقام ألاملى اس املركبع بس وغع مثل ااتقام ا ق ق ع ماما اب و غ ع
م غ اس اغربجمع اا رو البد م عال برانمج ارال و عاة ع بساب ع عةى املى اس املركبع
24
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
الفصل الثاىن
ملفا اإلم M files
1-2مقدمة
إ اغى امل مر امل اتالب ىفغطروقع اغى اعة ع اغا ت وناها اب اغ ل ااألع س ةع ألمباشر ألىفغااس اب باغع
اغىطب قاس اغق اغا تىطة سطرا ألابدا أل با عدءا قة ال م ااسطر أل ااألامر اغا وىم كىابى ا اب
انضا ااألامر command windowعندما تكو هناك بااع إىل برانمج وىكو م اغ دود م
اخلطواس اغا ترود تن اها غ ملر ألابد ألغك غة دود م املراس ألاب كل مر امالس أل بثواب
ىة ع ،أل ر ترود االبى اظ هباا اغربانمج كاةف وىم تن ات اب ألقاس رو ،ضو تن ا مثل هاا
اغربانمج م انضا ااألامر command windowتكو م اع ص بع أل عاة ع سنشري اب هاا
اغ ل ك ع اغى امل مر املاتالب بطروقع رو " اغطروقع اغى اعة ع"؛ ب ث سنوءخ ك ع كىابع ألتن ا
برانمج (جماوعع م ااألامر اب مةف مث ب د لغر ىطر غك ع ت امل امالس اب اغربانمج م م امالس
بىع إىل مى ألونى ى اغ ل بشري ك ع كىابع ءاغع تقوم بوظ ع حمدء م ال اغندال عة ا ألتن اها
ك و ءاغع بساب ع مثال اب املاتالب
،كاثاع ،نا رود اسى دام ماتالب اب بساب ااتو م اءغع م اغدتاع م لغر ت اع غكى
اغثا ع عةى اغ وت :
ax2+bx+c=0
ااتو هات امل اءغع -كاا ةم م ساس اس اغرايء اس -ت طى ىفمل اءالس اغىاغ ع:
)x1 = -b/(2*a) + sqrt(b^2 - 4*a*c)/(2*a
)x2 = -b/(2*a) - sqrt(b^2 - 4*a*c)/(2*a
اغق م اغىاغ ع غةثواب a=1 :أل b=5 ا سنسى دم انضا مسابع اغربجمع ساب هاو اجلاتو ب ر
أل c=6كاا وةى:
>> a = 1
=a
1
25
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
>> b = 5
=b
5
>> c = 6
=c
6
(>> x1 = -b/(2*a) + sqrt(b^2 - 4*a*c)/(2*a
=x1
-2
(>> x2 = -b/(2*a) - sqrt(b^2 - 4*a*c)/(2*a
=x2
-3
ىة ع ألغىك a=100أل b=50أل c=70 نا رود بساب اجلاتو x1أل x2ألغك غثواب اض ا
اب هات ا اغع ألاب انضا ااألامر سنكى ق م هات اغثواب ،مث كى ( أل ىفسى دام زتات ااس م سك
اسىدعال م اءغع اجلات x1ألتن اها غةح وع عةى ق اع x1مث اسىدعال م اءغع x2ألبساب ق اى
كاا رو ضو هات اغ اة ع سىحىاج إىل ألق كب ألىفغااس اب باغع اغربامج اغطووةع ،كاا هنا مناسبع فاملا
اةسع ماتالب ،ضولا إ ال ماتالب ألاغد وع مر ع ت ا حتىاج عاء كىابع كل نا ى امل اب
هات ااألامر مر ع ا عاة ع اسىدعال هات ااألامر مر رو م انضا ااألامر أل انضا اتوخ ااألامر
command historyسىكو ص بع ىفغااس مر االسى ااع املىكرت ملاتالب ،كاا ختعو س ع م
طواس ا ل كربانمج أل واتوعم وىم اغندال عة ألتن ات كاا اب غ اس اغربجمع اا رو غ س كن هباا
اغوءر غاغر كا ا ل هلات املشكةع هو اسى دام مة اس إم M filesاغا سنى رف عة ا اب اجلعل
اغىاىل
26
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
تن ا هاا اغربانمج كرء كىابع اسم هاا املةف ألءرب اغعتات ،Enterألهاا ىفغطبر إلا كا اغربانمج اىل
م اا طال اغة ووع ب ث ماتالب وقوم اب اغبداوع راا ع اغربانمج قبل تن ات ألاسى راج ما ب م
طال ألوطاغبر بى ح خ هات اا طال قبل تن ا اغربانمج ألباغر و بخ اغربانمج عان اب اغااكر سك
تكو غدور مكىبع ىفغربامج اخلاصع بر اغا حتل اغكث م اغندال عة ألتن ات اب و ألق ،ألسك
املسائل أل املشاكل اغا تى امل م ا اب جماع خت ر أل حبثر
طواس بساب ااتو امل اءغع م اغدتاع اغثا ع اب صوت غكى جن ل ااموت كثر ألءوبا سنكى
مةف إم أل ن اها كاا وةى:
27
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
طواس بساب ااتو امل اءغع م اغدتاع -2اب مسابع اغىحرور إبد بكىابع اغربانمج اغىاىل ألهو
اغثا ع مر ب ا ءاضاس اغبس طع كاا اب شكل (3- 2
28
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
-4ب د اال ى ال م كىابع مج ر طواس اغربانمج كاا اب شكل ( 3- 2قوم بى عون أبو اسم رود
ألقد ا ان هنا االسم ،example2_1.mألكاا لكران م قبل ض بر اب ا ى ات اسم املةف أل
وكو امىداءت هو .m
اغربانمج ،ضقر البد
-5ا م انضا ااألامر command windowاكى example2_1مث اءرب Enterسىظ ر
غر ا اابع ألهى ااألت امل اءغع كاغىاىل:
>> example2_1
= x1
-2
= x2
-3
ألباغر صبخ اغربانمج example2_1مواوءا اب اغااكر سكنر اغندال عة اب و ألق م
انضا ااألامر غىن ات كرء كىابع اسم اغربانمج كاغر سك تن ا مةف و امىداءت .mم
ااوقو ع املواوء عةى احملرت (editor
-6م قائاع املة اس Fileسكنر ضىخ املةف example2_1ألت دوة أل ا ءاضع إغ ك اا شئ
ألألقىاا شئ ألىفملناسبع سنكرو اغى دول اغىاىل عةى اغربانمج غنك ة كثر ت اعة ع مر املسى دم
ألغكى حيس ااتو امل اءغع او ق اع م اغثواب aأل bأل :c
% Finding roots of a second order equation
;)' a=input('write the value of a:
;)' b=input('write the value of b:
;)' c=input('write the value of c:
)x1=-b/(2*a)+sqrt(b^2-4*a*c)/(2*a
)x2=-b/(2*a)-sqrt(b^2-4*a*c)/(2*a
اجلدود هنا هو اامر )( inputاغاو عند تن ات وكى اغ بات املواوء بني عالما اغىن ص
' 'write the value of a:اب انضا ااألامر ألوقف اب ا ىظاتك تكى ق اع املى ،aب ث
كرء كىابع ق اع aألءرب اغعتات Enterواه غألمر اغىاىل ،ألهكاا با وكىال اغربانمج ا
اب انضا ااألامر سنكى example2_1أل ن ا اغربانمج اب صوتت اجلدود كاا وةى:
>> example2_1
29
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
= x1
-2
= x2
-3
مسى دم اب اغدألاع سابقع اغبنال اب عندما تقوم بى عو مةف ا م أبو اسم عة ر ا ى ات اسم
ماتالب ،ألعةى اغ اوم إلا باألغ ختعو مةف إم ادود بن االسم او مةف سابق اغبنال اب ماتالب
ضو ماتالب غ وقبة منر
سكنر اغد وع عة غالفال شركع MathWorkاملنىكع غربانمج ماتالب توضر موق ا عةى ا
عةى مة اس ا م امل ىة ع م إعداء ألت ا م مربجمى ماتالب م شا حنال اغ امل اغاو و رءو هات
املة اس غالسى دام اغ ام ألوىباءغوها ب ن م ،ألغىك ألابدا من م املوقر هو:
http://www.mathworks.com/matlabcentral/fileexchange/index.jsp
عندما وكو اغربانمج فووال ادا ،ألعند تن ات قد حيدث ط ض ،ضو عاة ع حتدود مكا اخلط تكو
ص بع ألغاغر ضقد قدم ماتالب كثر م ألس ةع تساعد املربمج عةى حتدود هات اا طال ألهات اغ اة ع
تساى اب عامل اغربجمع debuggingأل اسى راج اا طال شكل ( 4- 2وبني قائاع ااءألاس اب حمرت
وص مة اس ا م سناكر هنا طواس هات اغ اة ع:
30
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
-2سك تن ا اغربانمج ىفغكامل إما م مسابع اغ ال work spaceبكىابع اسم اغربانمج مث ءرب
اغعتات Enterأل م انضا كىابع ص املةف إم كاا اب شكل ( 4- 2ىفغابرب عةى وقو ع زتات
اغىن ا تقم 1هباتني اغطروقىني وىم تن ا اغربانمج م ألغ رت
-3اب م ظم ا االس شر بواوء ط عند مر م ني أل رود تن ا اغربانمج با هاا اامر أل ىوقف
عندت ملراا ع ق م مى اس اغربانمج غنرو ت رف اغربانمج عند هاا اامر اب هات ا اغع ابر قطع
توقف break pointعند هاا اامر اب هات ا اغع ىفغابرب عةى زتات اغىن ا تقم 1اب شكل
( 4-2س ىم تن ا اغربانمج با هاا اامر ألوىوقف اغىن ا قطع اغىوقف سك ألء ا مام و
مر بوءر عالمع اغكىابع cursorعند هاا اامر مث اغابرب عةى ااوقو ع تقم 2اب شكل (-2
4سىظ ر قطع محرال ع مام اامر ضوتا ألوا تقا كاا اب شكل ( 4- 2ب ث ألءر
قطع توقف مام اامر تقم 1
-4سك إزاغع قطع اغىوقف عند و مر ىفغنقر عةى اغعتات تقم 3اب شكل ( 4- 2أل با ىفغنقر
عةى اغنقطع ا ارال س ا
-5سك ألءر كثر م قطع توقف عند كثر م مر غىن ا اغربانمج عةى اعال ب ث ىفغابرب عةى
زتات اغىن ا تقم 1وىم اغىن ا با قطع اغىوقف اغىاغ ع
-6البظ اامر اغاو تقف عندت عاة ع اغىن ا ى كع ألاوء قطع توقف ،وىم ألءر س م ابر
وش انب ع اغ اني وا قطع اغىوقف اغا ألصة إغ ا عاة ع اغىن ا
-7عند توقف عاة ع اغىن ا عند مر م ني وشات إغ ىفغس م اا ابر سك تن ا ااألامر بنظام اخلطو
خبطو حب ث مر كل قر عةى امل ىاي تقم 4اب شكل ( 4- 2وىم تن ا طو ألابد ضقر م
طواس اغربانمج ت ىرب هات اخلاص ع م اع ادا اب اكىشاف اا طال ىفغااس اب اغربامج اغطووةع،
ب ث سك تن ا مر ألابد ألاغىوقف غرؤوع أتأل هاا اامر عةى اغنى كع ألهل هى اغنى كع املىوق ع م
ال
-8هناك جماوعع رو م زتات اغىحكم اب ت ح خ اغربامج ألهى اازتات 5أل 6أل 7أل 8اب شكل
( 4-2سكنر جتربى ا مباشر مر و برانمج غرؤوع أتأل كل من ا
-9سكنر فة املساعد اغى ة ع اب كل لغر م قائاع املساعد Helpألاغد وع عةى
MATLABمث Desktop tools and development environmentمث اغد وع اب
Editing and debugging M-Filesب ث سكنر االفال عةى املعود م امل ةوماس ع
مة اس ا م
31
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
-10هناك اامر pauseاغاو ووقف عاة ع اغىن ا إىل تابرب و زتات م زتات غوبع امل ات خ
برانمج بساب اجلاألت عدان كىابى مر ع ب د إءاضع ب ث ب دها تسى ف عاة ع اغىن ا
و تساغع بني عالما اغىن ص ألاامر pauseكاا وةى: اامر )' disp('..ألاغاو و ر
% Finding roots of a second order equation
;a=1
;b=5
;c=6
;)'disp('Hit any key to continue
pause
)x1=-b/(2*a)+sqrt(b^2-4*a*c)/(2*a
)x2=-b/(2*a)-sqrt(b^2-4*a*c)/(2*a
= x1
-2
= x2
-3
-11سك إءاضع تسائل م نع حتات م طال م نع قد حتدث اب اغربانمج ضاثال اب برانمج بساب
اجلاألت اغسابق غو نا ألء نا a=0سىظ ر اغنى كع اغىاغ ع:
>> example2_1
write the value of a: 0
write the value of b: 5
write the value of c: 6
= x1
NaN
32
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
= x2
-Inf
ىن السثل تقم ( Not a Numberأل x2=-Inf بوءر a=0كا اجلات ااألع x1=NaN
نا رود اب باغع و ساغ ماالهناوع ،ألكل من اا ىائج مىوق ع ى كع اغقساع عةى ص ر غن
إء اع a=0وىوقف تن ا اغربانمج ألو طى تساغع م نع اب هات ا اغع سك ت دول اغربانمج كاا
وةى:
% Finding roots of a second order equation
;)' a=input('write the value of a:
if a==0
;)'error('a must not equal to zero
end
;)' b=input('write the value of b:
;)' c=input('write the value of c:
)x1=-b/(2*a)+sqrt(b^2-4*a*c)/(2*a
)x2=-b/(2*a)-sqrt(b^2-4*a*c)/(2*a
-12ب اان ال رود ماتالب خيرج م اغربانمج اب باغع بدألث مثل هاا اغشرك ،ألغكننا رود ضقر
حياتان ماتالب م هاا اغشرك ألوكال اغربانمج با آ رت سن دع اغربانمج كاا وةى:
33
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
اامر )' error('..إىل )' warning('..و حتاور ،أل ى كع تن ا اغربانمج كا البظ ت
كاغىاىل:
>> example2_1
write the value of a: 0
Warning: a must not equal to zero, but any way we will continue
> In example2_1 at 4
write the value of b: 5
write the value of c: 6
= x1
NaN
= x2
-Inf
34
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
35
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
ساب كل م x1 • ىفقى اغربانمج كاا هو مل وى البظ نا ألء نا ضاصةع منقوفع ب د اامرو
أل x2ا اغداغع سى ر اخلرج مباشر
• ب د اال ى ال م كل هات اغى دوالس م ختعو املةف ىفسم اغداغع ،ألغاغر سن ع اغربانمج ىفسم
،eqrootsألهاا و ىرب شرفا ساس ا
36
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
-0.6250 - 1.0533i
ا عةى استتى دام اغدألاع؛ اب اغربانمج اغىاىل وقوم املستتى دم إبء اع ق اع ملعود م اغىوءت خ قدم مثاال
غن ف قطر اغدائر ألوقوم اغربانمج حبساب ألفباعع مسابى ا ألحم ط ا
% To calculate the area and circumference of a circle
;)' =)r=input('The radius of the circle(r
;A=pi*r*r
;C=2*pi*r
)])disp(['The area of the circle = ',num2str(A
)])disp(['The circumference of the circle = ',num2str(C
إلا تءان اسى دام اغدألاع اغوظ ع ء اع ألواب اغربانمج كا امالس مر االسم كاا وةى:
)[area, circumference] = cal_circle(r
و نا نشت ت ت ت تتىل ءاغع أت ا ق اع ت ت ت ت تتف اغقطر ألت طى ق اىني بدمها غةاس ت ت ت ت تتابع ألاا رو هى احمل ر
اسم اغداغع ألغاغر دع اغربانمج غة وت اغىاغ ع مر مراعا االسم ع ختعو اغربانمج وكو هو
)function [A,C]=cal_circle(r
% To calculate the area and circumference of a circle
;A=pi*r*r
;C=2*pi*r
37
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
غةاعود م اغىوء ت ت ت ت ت ت ت خ قدم ض اا وةى جماوعع م اغىااتو احملةوغع كىطب ق عةى ما شت ت ت ت ت ت تترب اب هاا
اغ ل
متارين حملولة
4( x 3 y ) 2 7 x
N أل M
y
:N -1اكى برانجما ساب ق اع Mأل
zw z 4 .5 w
% Solution of exercise 2-1
% Finding the values of a and b
;)' x=input('write the value of x:
;)' y=input('write the value of y:
38
حسن فؤاد.د.أ د اننسى سامل.م.أ حممد ابراهيم العدوى.د.أ
39
حسن فؤاد.د.أ د اننسى سامل.م.أ حممد ابراهيم العدوى.د.أ
40
حسن فؤاد.د.أ د اننسى سامل.م.أ حممد ابراهيم العدوى.د.أ
41
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
الفصل الثالث
أساسيا استخدام املاتالب كلغة بر ة عامة
1-3مقدمة
و ىرب ماتالب غ ع عامع مثة اب لغر مثل و ألابد م غ اس اغربجمع لاس املسىوو اغ اىل مثل غ ع C
أل C++أل C#أل Fortranأل ها اب هاا اغ ل سنى ةم ساس اس اسى دام املاتالب كة ع برجمع،
ألغاغر سنبد ىفغى رف عةى املى اس ألاملىك اس ألاغ اة اس ا ساب ع ألاملنطق ع عة ا مث ك ع اغى امل مر
اغب اانس ألفر إء اهلا ألإ راا ا ،ألب د لغر ىناألع شري ا ةقاس ألااألامر اغشرف ع غ م ك ع تكرات
تن ا جماوعع م ااألامر عدء حمدء أل حمدء م املراس غقد شران اب اغ ل ااألع إىل ااتقام املركبع
م هاا اغ ل غشري ك ع ت امل املاتالب ص اجلعل اا ( ، Complex Numbersألغاغر سن
مر املى اس املركبع
Variables 2-3املتغريا
حتقق اغشرفني اغىاغ ني : املى اس اب غ ع ماتالب مثل و غ ع برجمع رو م
-1تىكو م ا رألف اهلكائ ع aبا zألااتقام م 0با 9ألاغشرفع اغس ةى underscore
(_
وبد اسم و مى أببد ا رألف اهلكائ ع ،ضال وبد برقم أل حبرف م ا رألف اخلاصع -2م
مثل اغنكاع * أل & أل #أل ها
ما فوع املى ضا املاك و ل إىل و فوع ورودت املربمج ألغك ماتالب وىاكر ضقر ألع 63برف
م برف املى اامر اغىاىل و ر غر ق ى فوع او مى و ىربت ماتالب:
>> N = namelengthmax
=N
63
م مثةع املى اس اخلافئع أل اغا ال و ىربها ماتالب مى اس student-name ،غواوء عالمع اغطري
اب ألسط ،ألاملى 2xا وبد برقم ،ألاملى name$غواوء عالمع اغدألالت ك بد اابرف اخلاصع
سكنر تس ع ماتالب عاا إلا كا املى اغاو سىسى دم و ىرب مى ا صح حا م ال ع فروق اامر
42
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
43
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
44
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
Vectors 3-3املتجها
كاا لكران مسبقا ضو ساس املى اس اب ماتالب هو امل وضع ،با اغكا ع اغثابىع ااباءوع ت ىرب اب
ماتالب م وضع لاس صف ألابد ألعاوء ألابد امل وضع هى ك ا بساىب غ عدء م اغ وف ألعدء
م ااعاد ،ب ناا املىك ض و ك ا غ صف ألابد أل عاوء ألابد ا ظر إىل اامر اغىاىل:
45
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
2
3
4
5
bاب مخسع ص وف ألعاوء ألابد سك اسى دام املىك ماتالب قد مثل املى ب ث كاا رو
ك ن ر اب مىك آ ر كاا وةى ب ث اسى دام املىك ني aأل bغىكوو املىك :c
;]>> a=[1 2 3
;]>> b=[4 5
;]>> c=[a b
)>> disp(c
1 2 3 4 5
ا ظر هلاا املثاع:
;]>> a=[1;2;3
;]>> b=[4;5;6
;]>> c=[a b
)>> disp(c
=c
1 4
2 5
3 6
ضاتغ كاا وةى: سك ا عال ع مى
;] [=>> x
)>> disp(x
>>
ب ث عند حماألغع عر املى xمل وىم عر و شىل ،ا و ىن املى xضاتغ أل ال حيىوو و شىل
ركع هنا عةى املى xاب هات ا اغع ال وساألو ص ر ا اغ ر و ىن xعبات ع م وضع م
م صف ألابد ألعاوء ألابد غ اغق اع ص ر ،ما املى اغ اتغ ضال حيىوو و شىل با اغق اع ص ر
سك خت ص ق م ابىدائ ع غةاى اس أبكثر م فروقع كاا وةى:
;>> x=1:5
46
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
)>> disp(x
1 2 3 4 5
هنا اسى دام اغنقطىني (اغكوغو اب حتدود ق م ابىدائ ع غةاى xب ث سى ا xاغق م م ألابد با
مخسع ب ات ألابد بني كل عن ر ألاغىاىل غ هنا سنك ل املى xأي ا اغق م م ألابد با ألالألع ب ات
0.5بني كل ق اع ألاغىاغ ع هلا
;>> x=1:0.5:3
)>> disp(x
1.0000 1.5000 2.0000 2.5000 3.0000
البظ اخلطو أل اغ ر بني كل ق اع أل عن ر ألاغىاىل غ توءر بني اغق اع االبىدائ ع ألاغق اع اغن ائ ع
غةاى ألو ل بني كل من ا اغنقطىني أل اغكوغو سك غة طو تكو ساغبع غىوغ د مىك م اغق م
املىناق ع
اغداغع linspaceسك اسى دام ا وابا غوءر ق اا ابىدائ ع غةاىك اس اغداغع )linspace(x1,x2,N
تابر ق اا ابىدائ ع ملىك وىكو م Nم اغق م املىساألوع بني اغق اع x1ألاغق اع x2م مثةع لغر ما
وةى:
)>> linspace(0,10,5
= ans
0 2.5000 5.0000 7.5000 10.0000
)>> linspace(0,pi/2,5
= ans
0 0.3927 0.7854 1.1781 1.5708
اغداغع ) linspace(x1,x2تابر تةقائ ا مىك ا م 100ق اع مىساألوع بني اغق اع x1أل x2
عاة ع حتوول ااعاد إىل ص وف ألاغ وف إىل عاد او م وضع تساى transposeألعند تطب ق
عاة ع اغىحوول هات ورمع لغر عةى مىك اغ ف اغوابد ضو وىحوع إىل مىك اغ اوء اغوابد ألاغ ك
هلا ىفغرمع (' ألهى عالمع اغىن ص ااباءوع ا ظر إىل اامثةع اغىاغ ع:
]>> x=[1 2 3 4 5
=x
1 2 3 4 5
47
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
48
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
= ans
0.8147 0.1270 0.6324 0.2785
وابا سك عر مىك مكو م عناصر مى رقع م املىك rكاا وةى ب ث سن ر مىك مكو م
اغ ناصر اغثاىن ألاغسابر ألاخلام ألاغرابر:
)]>> r([2 7 5 4
= ans
0.9058 0.2785 0.6324 0.9134
سك ت روغ و عدء م عناصر امل وضع rو ة عن را ضات ا كاا وةى:
)>> disp(r
0.8147 0.9058 0.1270 0.9134 0.6324 0.0975 0.2785
] [=)]>> r([2 4 5 7
=r
0.8147 0.1270 0.0975
ألاغسابر اب املىك r ب ث البظ عدم ألاوء اغ ناصر اغثاىن ألاغرابر ألاخلام
ترق م عناصر املىك (ألكاغر امل وضع اب ماتالب وبد م اغ ن ر تقم ،1عةى البظ ا سبق
اغ ن ر ااألع اب ماتالب اغ ك م ب غ اس اغربجمع اا رو اغا تبد اغ ق م م اغ ر ،و
وكو اغ ن ر تقم ألابد
Matrices 4-3املصفوفا
م وضع مكو ع م سك اعىبات امل وضع ادألال مكوان م عدء م اغ وف ألااعاد سك عر
ص ني ألألالألع عاد كاا وةى ب ث تسى دم اغ اصةع املنقوفع غةدالغع عةى هناوع عاوء:
]>> a=[1 2 3;4 5 6
=a
1 2 3
4 5 6
سك تدألور امل وضع aو ل اغ وف عاد ألااعاد ص وف كاا وةى:
49
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
'>> a
= ans
1 4
2 5
3 6
سك تكوو امل وضع م عدء م مىك اس ااعاد ب ث سنكو م وضع ا ا tableاملكو ع م
اغ اوء ااألع اغاو سثل اغعألااي م ص ر با 180ءتاع خبطو مقداتها 30ءتاع ألاغ اوء اغثاىن هو
ا مام هات اغعألااي كاا وةى:
;>> x=0:30:180
]')>> table=[x' sin(x*pi/180
= table
0 0
30.0000 0.5000
60.0000 0.8660
90.0000 1.0000
120.0000 0.8660
150.0000 0.5000
180.0000 0.0000
50
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
>>help slash
ىفغنسبع غألتقام اب ماتالب وىم اغى ب عن ا اب اغ وت ا ق ق ع لاس اغ المع اغ شروع أل بدألهنا كاا وةى:
>> 1.234
= ans
1.2340
>> 456
= ans
456
>> 0.0092
= ans
0.0092
ى امل هبا الع املاتالب هناك وابا اغ وت اغ ةا ع أل اغ وت ااس ع ضكل هات صوتا اتقام سك
ألاغا تسى دم غةى ب ع ااتقام املىناه ع اغكرب أل اغ ر مثل 1.234x109ألاغا وىم اغى ب عن ا كاا
وةى:
>> 1.234e9
= ans
1.2340e+009
مثل: أل ااتقام اغ
>> 1.234e-20
= ans
1.2340e-020
البظ :
>> 1.234*10^9
= ans
1.2340e+009
اغرقم 1.234e+009ألغك ع فروق عاة ع ءرب غةرقم 1.234 و ىرب ت ب ا اب ماتالب حيس
م اغكا ع عةى اغ ك اب اغق اع ااس ع 9+10ألهات ت ىرب عاة ع بساب ع أت ا اغكث م اغوق
51
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
1.234e+009اغا ت ىرب تقاا أل بىا وىم ضقر بكع اغااكر اغالزمع غ إ ص ر تقم بق قى أل كرب
تقم بق قى سك اغى امل م اا اب ماتالب سك ب اهناا ىفسى دام اامرو اغىاغ ني:
>> realmin
= ans
2.2251e-308
308-
ص ر تقم بق قى هو 10*2.2251 ألاغاو وبني
>> realmax
= ans
1.7977e+308
308+
اغاو وبني كرب تقم بق قى هو 10*1.7977
وى امل أل ما اغدقع precisionاغا وى امل هبا ماتالب ألاغا مثل ص ر ضات بني و تقاني سك
م اا ماتالب ض اك إظ اتها ىفامر اغىاىل:
>> eps
= ans
2.2204e-016
ألاغا ت ىرب كا ع ص ادا ت ل إىل 16ا ع عةى سني اغ المع اغ شروع ىفغنسبع غطر مث ل هات
اغب اانس اب ماتالب س تى لكرها اب مواءر ىة ع البقا
52
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
رف ترت تن ا اغ اة اس ا ساب ع اب باغع ألاوء كثر م عاة ع بساب ع اب م امل م ادا
اغى ب ضاثال اب اغى ب g*t^2هل س قوم ماتالب بابرب gاب tمث ورضر اغناتج غألس ،2م س ضر t
غألس 2ألال مث وابرب اغناتج اب gإ ما م عةى لغر هو فروقع ماتالب اغا س ىب ا اب سبق ع
اغ اة اس precedence of operationsاجلدألع 2-3وبني ترت سبق ع هات اغ اة اس البظ
م هاا اجلد ألع ألع ما وبد ب ماتالب هو بساب ما بدا ل ااقواس ب د لغر ألع ما وىم تن ات
هو ااس م اغ سات غة اني ،مث اغابرب ألاغقساع م اغ سات غة اني ،مث ا اجلار ألاغطري م اغ سات
اغى ب ااسبق ع اب غة اني املق وء م اغ سات غة اني هنا هو اب باغع ألاوء عاة ىني هلاا
ضو ماتالب س ن ا ألع عاة ع من اا أتتى م انب ع اغ سات ضاثال اب اغى ب a/b*cس بد م انب ع
a=9أل b=3أل c=2ضو انتج اغ سات بقساع aعةى bمث وابرب انتج اغقساع اب cو ب ر
هاا اغى ب س كو 6ما ىفغنسبع غةى ب a+b*cضو مىالب س بد م اغ سات غ ن ا اغ اة ع لاس
ااسبق ع ااعةى ألهى ءرب bاب cمث مار اغناتج مر aا عاة ع اجلار هلا ألغووع قل م عاة ع
اغق م اغسابقع ضو انتج هاا اغى ب س كو 15 اغابرب ألعةى لغر ضو ىفسى دام
53
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
سك إارال عاة ع م نع عةى جماوعع م عناصر املىك اغوابد كاا اب املثاع اغىاىل:
]>> a=[1 2 3 4 5
=a
1 2 3 4 5
)>> 1 + a(1:5
= ans
2 3 4 5 6
إءاضع ألابد جلا ر اغ ناصر م حتدود املىك aم مخسع عناصر كاا اب اامر ااألع ،مث بث
ااألع با اخلام ألهو اغ اة ع ( 1:5إلا ناها عاة ع
املىك ني aأل bكاا وةى: سك إارال عاة اس عةى عناصر املىك اس املىساألوع اغطوع ضاثال غن
;]>> a=[1 2 3 4 5
;]>> b=[6 7 8 9 10
سنابرب كل عن ر اب املىك aض اا وقابة م عناصر املىك bكاا وةى: ا
>> c=a.*b
=c
6 14 24 36 50
البظ اغنقطع اغا قبل عاة ع اغابرب ،ألاغا ت ىن إارال اغ اة ع عةى مسىوو عناصر امل وضىني
54
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
مث سنقسم كل عن ر م عناصر املىك aعةى ما وقابة م عناصر املىك bقساع س ن ع كاا وةى:
>> d=a./b
=d
0.1667 0.2857 0.3750 0.4444 0.5000
مث سنقسم كل عن ر م عناصر املىك bعةى ما وقابة م عناصر املىك aقساع وساتوع كاا وةى:
>> x=a.\b
=x
6.0000 3.5000 2.6667 2.2500 2.0000
رضر مج ر عناصر املىك إىل ااس 2كاا وةى: سك
;]>> a=[1 2 3
>> c=a.^2
=c
1 4 9
كاا سك تضر عناصر عن ر م ني إىل ااس املواوء اب اغ ن ر املقابل غ اب مىك آ ر كاا وةى:
;]>> a=[1 2 3
;]>> b=[2 3 4
>> a.^b
= ans
1 8 81
سك ءرب أل قساع كل عناصر املىك عةى ق اع ألابد بىع ىفسى دام عاة اس اغابرب ألاغقساع
اغ اءوع بدأل اسى دام اغنقطع كاا وةى:
;]>> a=[1 2 3
>> c=a*2
=c
2 4 6
>> c=a/2
=c
0.5000 1.0000 1.5000
55
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
=c
3 5 7
>> d=a-b
=d
-1 -1 -1
البظ م لغر اغنقطع تكو ءرألتوع اب باالس ءرب أل قساع أل بساب ااس غكل عن ر اب
ءرألتوع اب باغا اجلار م وضع مر ما وقابة م عناصر امل وضع اا رو ،ب ناا هات اغنقطع تكو
ألاغطري
تكو هات امل وضاس ؤكد عةى اب باغع إارال اغ اة اس ا ساب ع اغنقط ع عةى امل وضاس البد
ا كم هلا
ا االس هناك ط ألمل وىم اغىن ا غ دم تساألو بكم اب ب البظ عند تن ا ااألامر ا ت ع
امل وضاس:
]>> a=[1 2 3; 4 5 6
=a
1 2 3
4 5 6
'>> b=a
=b
1 4
2 5
3 6
]>> c=[9 8 7; 6 5 4
=c
9 8 7
6 5 4
56
حسن فؤاد.د.أ د اننسى سامل.م.أ حممد ابراهيم العدوى.د.أ
>> a+b
??? Error using ==> plus
Matrix dimensions must agree.
>> a+c
ans =
10 10 10
10 10 10
>> a-b
??? Error using ==> minus
Matrix dimensions must agree.
>> a-c
ans =
-8 -6 -4
-2 0 2
>> a.*b
??? Error using ==> times
Matrix dimensions must agree.
>> a*b
ans =
14 32
32 77
>> a*c
??? Error using ==> mtimes
Inner matrix dimensions must agree.
>> a.*c
ans =
9 16 21
24 25 24
>> a/b
57
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
= ans
2.3333 -3.3333
3.3333 -4.3333
>> a./c
= ans
0.1111 0.2500 0.4286
0.6667 1.0000 1.5000
>> a+b+c
??? Error using ==> plus
Matrix dimensions must agree.
>> a+b'+c
= ans
11 12 13
14 15 16
58
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
59
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
1.5000
1.4167
1.4142
1.4142
1.4142
1.4142
Using the sqrt function
1.4142
املثاع اغىاىل واب تتا ووء تتخ اس تتى دام اامر forس تتاب مابت ترألب جماوعع م ااتقام با تقم م ني ألاب
هاا املثاع با اغرقم 6
;>> n = 6; fact = 1
for k = 1:n
;fact=k*fact
) ]disp( [k fact
end
1 1
2 2
3 6
4 24
5 120
6 720
أت ا اامر )] disp([k factاتج اسم ا ةقع، إلا كن ترود عر مابرألب آ ر تقم ضقر سكنر
و ب د اامر end
إل ألكاا البظ ا سبق وىم تن ا جماو ااألامر بني اامر forأل endعدء م املراس مساألو
غةق اع احملدء بواسطع مؤشر ا ةقع اغاو هو املى kاب املثاع اغسابق اغشكل اغ ام هلاا اغنو م
ا ةقاس سك ألء عةى اغ وت اغىاغ ع:
for index = j:m:k
;statements
end
60
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
61
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
ب ث عند تن ا هات اغىشتتك ةع م ا ةقع forست بد اغىن ا ىفع forاخلاتا ع ب ث مؤشتتر هات ا ةقع
اخلتاتا تع indexأي تا اغق اتع االبىتدائ تع ،jمث وتد تل عةى ا ةقتع forاغتدا ة تع ب تث وبتد مؤشت ت ت ت ت ت تترهتا
indexiىفغق ا تتع ،pمث ون تتا جماوع تتع ااألامر statementsبا ألع endمث و وء غ عو تتد املؤش ت ت ت ت ت تتر
indexiقدات اخلطو qمث ود ل اب تن ا استتم ا ةقع ،statementsألهكاا وستتىار اغىن ا غةحةقع
اغدا ة ع مس تتىارا با و تتل مؤش تترها indexiإىل اغق اع اغن ائ ع rب ث وىم تن ا ا ةقع ر مر ،مث
خيرج اغىن ا م ا ةقع اغدا ة ع غ ت ت ت تتطدم بن اوع endا ةقع اخلاتا ع ض ار مر رو غ عود مؤش ت ت ت تترها
indexقدات mألود ل غةحةقع اغدا ة ع ض ن اها ىفغكامل با و ت ت ت ت تتل مؤش ت ت ت ت تترها إىل اغق اع اغن ائ ع
ألخيرج من ا غ األء تن ا ا ةقع اخلاتا ع مر رو ،ألهكاا با ونى ى م تن ا ا ةقع اخلاتا ع ألخيرج
من ا غىكاةع اغربانمج و اسم ا ةقع اغدا ة ع statementsس ىم تن اها عدء م املراس وساألو
عدء مراس تن ا ا ةقع اغدا ة ع اب عدء مراس تن ا ا ةقع اخلاتا ع
وىابخ لغر م املثاع اغىاىل اغاو حيس امل وضع cاغا تساألو باصل مجر امل وضىني aأل bم
الع برانمج ألغ م الع مر املاتالب املباشر جلار م وضىني
% Nested for statements
;]a=[1 2 3;4 5 6;7 8 9
;]b=[1 2 3;4 5 6;7 8 9
;k=0
for i=1:1:3
for j=1:1:3
62
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
;)c(i,j)=a(i,j)+b(i,j
;k=k+1
end
end
;)disp(c
;)])disp(['Execution of the inner loop body equals: ' num2str(k
هاا اغربانمج وىكو م بةقىني forمىدا ةىني؛ مؤشر كل من اا وى م ألابد إىل ألالألع ألغاغر ضو
اسم ا ةقع اغدا ة ع س ن ا 9=3*3مراس ألغاغر ألء نا اغ داء kءا ل ا ةقع اغدا ة ع غن د عدء
املراس اغا س ن ا ض ا اغربانمج ا ةقع اغدا ة ع ،أل عر ق اع kغىكو ى كع اغربانمج كاا وةى:
2 4 6
8 10 12
14 16 18
Execution of the inner loop body equals: 9
ا ات م هناوع كل بةقع م تىدا ل او عاق بال بدألء ،ضقر م سك غةحةقاس for
تكو اب مكاهنا اغ ح خ أل س ا ظ ضو ألنال حترور ألكىابع اغربانمج ضو ماتالب وبني غر لغر ع
فروق تنس ق سطر اغكىابع كاا اب اغربانمج اغسابق
الع اغق اع االبىدائ ع ألاغق اع ا ةقع forم ا ةقاس اغا وكو عدء مراس تن اها م ةوما مقدما م
م رضع عدء مراس تن ا ا ةقع اغن ائ ع ألاخلطو ملؤشر هات ا ةقع هناك ب املواقف وكو م اغ
نا ام برانمج وقر ءتاع ا رات اسى ااع ا ةقع forكاثاع عةى لغر إض ا م ل م اغ
ألون ا طواس م نع فاملا ءتاع ا رات قل م 40ءتاع مئووع مثال ،ألخيرج م اغربانمج كرء ألصوع
ا رات إىل 40ءتاع هل و ةم مسى دم اغربانمج أل امل ام ما سى ل ءتاع ا رات إىل 40با حيس
عدء مراس تن ا اغربانمج؟ ىفغطبر ال ا ا رات تعود ألتنقص غاغر كا البد م ألاوء ألس ةع رو
غ ال بةقاس ال ةم عدء مراس تن اها مسبقا كاا اب ا ةقع forهاا اغنو م ا ةقاس سنؤاة ب د
ءتاسع اغقراتاس اب اجلعل اغىاىل
63
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
Decisions 8-3القرارا
اغشت ت ت ت ترألك اب غ ع ماتالب مثل و غ ع ب ث وىم اختال قراتا م نا بنال عةى ى كع ش ت ت ت تترك م ني اغ ت ت ت تتوت
اغ امع امر اغشرك اب ماتالب هى:
if condition statement, end
ب ث وىم ا ىبات اغشت ت ت تترك condition statementضولا كا بق ق ا س ت ت ت ت ىم تن ا جماوعع م ااألامر
ألإلا مل وك اغشرك بق ق ا س ىم تن ا جماوعع رو م ااألامر ا ظر مبدئ ا إىل املثاع اغىاىل:
%If statement
;'course_grade='fail
;course_mark=80
if (course_mark)>=60
;'course_grade='pass
end
;)]disp(['course_grade = ' course_grade
اع course_mark اب هاا املثاع اغشرك هو ،course_mark>=60ضولا كا اغشرك بق ق ا ىن
ض ال كرب م أل وساألو 60كاا هو ا اع ب ث course_mark=80ضو اغشرك س كو بق ق ا
ألس ن ا ماتالب ألامر اغشرك ألهى مر ألابد ضقر اب هات ا اغع ' course_grade='passألهو اامر
اغىاىل غةشرك مباشر مث واه غةىن ا ب د اامر endألهى مر اغ ر اغاو سىكو ى كى
،course_grade=passما إلا ألء نا املى course_mark=40مثال ،ضو اب هات ا اغع س كو
اغشرك بق ق ا ألىفغىاىل ضو مر اغشرك course_grade=passغ ون ا ألس نىقل اغىن ا مباشر ملا
course_grade=failاحملدء اب بداوع اغربانمج ى كع ب د اامر endب ث س ن ا مر اغ ر ألو ر
تن ا هاا اغربانمج هى:
course_grade = pass
ى كع هات ااألامر تكو بق قى true مج ر ألامر اغشرك اغا تسى دم هنا تكو ألامر منطق ع ىن
بق ق ع ألتكو ص ر إلا أل بق قى ، falseألغاغر ضو ى كع هات اغشرألك تكو ألابد إلا كا
بق ق ع ألغاغر ا ظر هلات ااألامر املنطق ع أل ى كع ماتالب هلا: كا
>> 2>0
= ans
1
64
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
ى كع ماتالب هلا تساألو ألابد اب هاا اامر ى كع اغشرك 2>0هى ىفغطبر ى كع بق ق ع ألغاغر كا
كاا ت ونا ما اغشرك اغىاىل:
>> 2<0
= ans
0
تكو شرألفا ض و ىفغطبر شرفا بق ق ا ألغاغر كا ى كى ص را كاا ت ونا سك هلات اغشرألك
مركبع أل كثر ت ق دا كاا سنرو اب اامثةع اغىاغ ع
اب مثاع بساب اغىقدوراس اغسابق إعىربان و ءتاع عةى م أل تساألو 60تقابل اغىقدور مقبوع
نا رود حندء اغىقدور مقبوع أب وقابل ضقر اغدتاع كرب م أل تساألو 60 passا إض
ألغكن ا قل م 70سن د كىابع اغربانمج اغسابق مر ع مر ت دول مر اغشرك غ حقق لغر كاا وةى:
%If statement
;'course_grade='fail
;course_mark=40
)if (course_mark >=60 && course_mark < 70
;'course_grade='pass
end
;)]disp(['course_grade=' course_grade
س طى اغدتاع ااكرب م أل تساألو 60أل قل م 70اغىقدور مقبوع pass املشكةع مر هاا اغربانمج
ألغك و ءتاع اتج هاا املدو سوال قل أل كرب من س ط ا اغىقدور تاس failألهاا ط ىفغطبر
غاغر سن دع اغربانمج اغسابق غ طى كل مدو اغدتااس م ص ر با 100ألو طى اغىقدور املناس
غكل مدو ،ألسنك ل اغربانمج كثر ت اعة ع م الع اسى دام اامر inputكاا وةى:
%If statement
;)' =course_mark=input('Mark
) if (course_mark < 60
;'course_grade='fail
end
)if (course_mark >=60 && course_mark < 70
;'course_grade='pass
65
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
end
)if (course_mark >=70 && course_mark < 80
;'course_grade='Good
end
)if (course_mark >=80 && course_mark < 90
;'course_grade='Very Good
end
) if (course_mark >=90
;'course_grade='Excellent
end
;)]disp(['course_grade = ' course_grade
ألهاا رج اغربانمج غ دء م ا االس ال ىباتت:
Mark = 30
course_grade = fail
Mark = 57
course_grade = fail
Mark = 72
course_grade = Good
Mark = 84
course_grade = Very Good
Mark = 91
course_grade = Excellent
ب ث ىفسى دام اامر inputوىم إء اع اغدتاع ألورء اغربانمج ضوتا ىفغىقدور املناس
ب اان حيىاج املوقف إىل ت ن ف ق اع م نع إىل ألابد م باغىني ،ضاثال رود إء اع تقاا م نا ألورء
عة نا اغربانمج هل اغرقم اغاو إء اغ تقاا زألا ا م ضرءاي هنا م امل ابل اسى دام اامر if….else
كاا اب املثاع اغىاىل:
66
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
%Odd even
;)' x=input('write any integer
if rem(x, 2) == 0
)'disp('This number is even
else
;)'disp('This number is odd
end
أل ى كع ا ىبات اغربانمج سىكو كاغىاىل:
write any integer 50
This number is even
غألمر ifهى اغ وت if…elseifألاغا سن د كىابع برانمج اغىقدوراس اغسابق ىفسى دام ا اغ وت اا
كاا وةى
%If statement
;)' = course_mark=input('Mark
) if (course_mark < 60
;'course_grade='fail
67
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
Mark = 30
course_grade = fail
هات اغ وت تكو م ابةع اب باغع اال ى اتاس اغ دود البظ وابا هنا كة ا ت ىرب بةوك م اغواءخ
ألابد غألمر ifألتنى ى بن اوع endألابد غاغر ضاغاو حيدث عند تن ا هاا اغشكل م اامر if
وىم ا ىبات اغشرك ااألع اغىاىل ع ifضولا كا حمققا وىم تن ا اامر اغىاىل غ مث اال ىقاع ملا ب د اع end
ما إلا مل وك اغشرك ااألع بق ق ا ضو اغىن ا ونىقل ال ىبات اغشرك اغثاىن ألبنال عة إما ون ا اامر
اغىاىل غ ألونىقل ملا ب د endأل ونىقل إىل اغشرك اغثاغث ألهكاا با ونى ى م مج ر اغشرألك البظ
elseifتكى كةاع ألابد م املسىح وابا اب مثل هات ااألامر وىم إء اع ااألامر إىل اغ اني
قة ال ع كةاع elseifبا وبدأل شكل هات اغ ك بع ألاءحا م ب ث اغبداوع ألاغن اوع ألتكو س ةع
املىاب ع إ هات اغ وت اغا سى دم ض ا اامر elseifتكو ضابل م اغطروقع ااألىل اغا سى دم
اغ دود م ااألامر if…endاب هات اغ وت وىم ا ىبات مج ر شرألك ااألامر if…endبا ل إىل
اغن اوع ،ب ناا اب اغشكل اغاو وسى دم elseifضو وىم ا ىبات اغشرألك با وىحقق بدها ب ث عندها
خيرج م اامر ألال خيىرب ىفقى اغشرألك غاغر ضو هات اغ وت elseifتكو سر اب اغىن ا ع اغ وت
ااألىل
68
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
69
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
endتى ر و ifكاغر اب هاا اغربانمج؛ ب د إء اع اغرقم وىم ا ىباتت ع فروق اع ifااألىل ضولا كا
اغرقم املد ل ضرءو واه إىل آ ر elseألون ا ألامرها ألخيرج ما إلا كا اغرقم زألاى ضو واه إىل
اع ifاغدا ة ع غ ىرب إلا كا اغرقم قل م 10م ال ألوكى اغرساغع املناسبع غ ألخيرج
األمر switch…case…otherwise
هات هى آ ر صوت م ألامر اغشرك ألاغ وت اغ امع هلاا اامرهى:
)switch expression (scalar or string
case value1
statements % Executes if expression is value1
case value2
statements % Executes if expression is value2
.
.
.
otherwise
statements % Executes if expression does not match any case
end
ب ث كل م كةاع switchأل caseأل otherwiseأل endهى كةااس م ىاب ع توءر كاا هى
ألبن اغ وت اغى ب expressionاغىاىل غكةاع switchوىم تن ات حب ث وؤألع إىل ق اع ألابد إلا
كا هات اغق اع تساألو اغق اع value1اغىاغ ع األع caseضو اامر أل ااألامر اغىاغ ع غ وىم تن اها،
ألإلا كا ق اع اغى ب تساألو اغق اع value2اغىاغ ع غثاىن caseضو اامر أل ااألامر اغىاغ ع هلات اع
caseوىم تن اها ،ألهكاا حب ث تب ا غق اع اغى ب expressionس ىم تن ا caseألابد ضقر ما
إلا كا ق اع اغى ب ال تساألو و ألابد م اغق م اغسابقع ضو اغىن ا س اه إىل ااألامر اغىاغ ع ب د
كةاع otherwiseألون اها ألىفغىاىل ونى ى اامر
70
حسن فؤاد.د.أ د اننسى سامل.م.أ حممد ابراهيم العدوى.د.أ
%switch statement
month_number=input('write month number from 1 to 12 ');
switch month_number
case 1
disp('this month is January');
case 2
disp('this month is February');
case 3
disp('this month is March');
case 4
disp('this month is April');
case 5
disp('this month is May');
case 6
disp('this month is June');
case 7
disp('this month is July');
case 8
disp('this month is August');
case 9
disp('this month is September');
case 10
disp('this month is October');
case 11
disp('this month is November');
case 12
disp('this month is December');
otherwise
disp('Impossible month number');
end
71
حسن فؤاد.د.أ د اننسى سامل.م.أ حممد ابراهيم العدوى.د.أ
72
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
ادألع 3-3وبني اغ اة اس اغ الق ع أل اغنسب ع اغا تسى دم غىكوو اغشرألك املسى دمع اب هاا اغنو
م ااألامر
جدول 3-3العمليات النسبية
العملية رمز العملية
أقل من <
أقل من أو يساوى =<
يساوى ==
ال يساوى =~
أكبر من >
أكبر من أو يساوى =>
ؤكد هنا عةى اغ ر بني عالمع اغىس ت تتاألو اغا تىكو م عالمىني تس ت تتاألو == ألعالمع اغى ت ت ت ص اغا
تىكو م عالمع تس ت تتاألو ألابد = اغى ب a=5م نات ء ت تتر اغق اع 5اب املى aألغاغر طةق عة ا
عالمع خت ت ص اهنا خت تتص أل تابتتر ق اع اب مى أل با مى اب مى آ ر مثل a=bألاغاو و ىن
ء تتر ق اع املى bاب املى aما اامر if a==bمثال ضو وس ت ت ع عاا إلا كا aتس تتاألو bم ال؛
ألغكن ال و ق اع املى aكاا اب مر اغى ص
9-3احللقة while
غكى م هاا اغنو م ا ةقاس سنقدم اغربانمج اغىاىل ألاغاو سثل غ بع اغىوقر اب ألع مر اسى دام
اغداغع randاغا ت طى تقاا عشوائ ا م ص ر با ألابد أل ءرب اب 10ألمجر ألابد عة مث إمهاع
و كسر ض ع فروق اغداغع floorغ كو اغرقم اغ شوائى م ألابد با 10كرقم صح خ ب د لغر
guess الغ توق اتر هلاا اغرقم ب ث وىم ألء ا اب املى اسى دام اامر inputغكى تد ل م
73
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
اامر load splatحيال مةف حيىوو صوس موس قى سىسا ب د تد ل توق اتر ع فروق اامر
soundهنا تبد ا ةقع whileألاغا هلا شرك ألهو هل توق اتر guessال تساألو اغرقم اغ شوائى
matnumب ث فاملا هنا ال تساألو ،و اغشرك حمقق ضو اغىن ا س د ل ا ةقع ألوسا ر اغ وس
ىفامر soundمث ونظر هل توق اتر عةى م اغرقم اغ شوائى م قل ع فروق اامر if…elseألاب كل
باغع س ط ر تساغع ت د لغر ب د لغر وس غر غى طى توقر ادود ألو وء غبداوع ا ةقع whileغ نظر
اب هاا اغىوقر تسىار هات احملاألالس إىل و بخ اغىوقر اغاو ء ةى مساألاي غةرقم اغ شوائى ب ث
عندها س بخ شرك ا ةقع حمقق أل ى كع غاغر س رج اغىن ا م ا ةقع إىل ما ب د اع endاخلاصع
هبا ،ب ث حيال مةف صوس ادود ألوسا ر إايت ىفغداغع soundاكى هاا اغربانمج اب مةف M
ألباألع تن ات ألسكنر فة املساعد ع اغدألاع loadأل soundغى رف املعود عن م
%While example
;)matnum = floor(10 * rand + 1
;) ' guess = input( 'Your guess please:
load splat
while guess ~= matnum
)sound(y, Fs
if guess > matnum
) 'disp( 'Too high
else
) 'disp( 'Too low
;end
;) ' guess = input( 'Your next guess please:
end
;) '!!!disp( 'At last
;load handel
)sound(y, Fs
اغ وت اغ امع غةحةقع whileسك كىابى ا كاغىاىل: م لغر رو
while condition
statements
74
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
end
األمر break
وسى دم اامر breakغة رألج م ا ةقع forأل ا ةقع whileوىم ألءر هاا اامر ءا ل ا ةقاس
ابر عداء اب ااماك اغا خناف ض ا م ء وع ا ةقع إىل تن ا ال هنائى ألغاغر م املسىحس
ءا ل ا ةقع ألإلا ألصل هاا اغ داء غق اع م نع ءأل تنى ى ا ةقع ،قوم إبهنال ا ةقع إاباتاي ىفسى دام
اامر ،breakب ث كرء تن ا خيرج اغىن ا م ب ع هات ا ةقع إىل اتا ا
ونقر و زتات با اخلطواس اغىاغ ع توءخ ك ع اغد وع اب بةقع الهنائ ع ب ث وطة م املسى دم
وىم اء اع ا رف qألعندها وىم اخلرألج م اغربانمج
)while(1
;)'req = input('Press any Key to continue or "q" to quit : ','s
)'if (req=='q
;break
end
;)disp(req
end
75
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
ألاغى ةى .إلا ضرءنا zهو عدء مرك أل xأل yمها عدءا بق ق ا ،أل iهو عدء خت ةي ،ضا املاك
مث ل اغ دء املرك zكاا وةي :
z=x+yi i 1
املرك : املى م رف مسبقا اب برانمج املاتالب عةى 1 املى iاغاو وساألو
”“the complex variable
البظ عند كىابع :
>> i
= ans
0 + 1.0000i
ألهاا ونطبق عةى املى jوابا:
>> j
= ans
0 + 1.0000i
حبرص شدود كاا اب اامثةع اغىاغ ع: كاغر سك اسى دام هاا املى
>> a=5+8i
=a
5.0000 + 8.0000i
>> a=5+8*i
=a
5.0000 + 8.0000i
>> i=4
=i
4
>> a=5+8*i
=a
37
76
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
غةى رف عةى هات اغدألاع؛ البظ جماوعع ااألامر اغىاغ ع ألانتج تن ا كل مر م هات ااألامر:
)>> z=complex(5,9
=z
5.0000 + 9.0000i
)>> conj(z
= ans
5.0000 - 9.0000i
)>> real(z
= ans
5
)>> imag(z
= ans
9
)>> abs(z
= ans
10.2956
>> angle(z) % phase angle in radians
= ans
1.0637
>> angle(z)*180/pi % to convert into degree
= ans
60.9454
)>> isreal(z
77
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
= ans
0
اامثةع ا ت ع توء خ عاة اس اجلار ،ألاغطري ،ألاغابرب ،ألاغقساع اب باغع ااعداء املركبع:
;>> a=3+7j
;>> b=2+4i
>> a+b
= ans
5.0000 +11.0000i
>> a-b
= ans
1.0000 + 3.0000i
>> a*b
= ans
-22.0000 +26.0000i
>> a/b
= ans
1.7000 + 0.1000i
متارين حملولة
-1اكى برانجما وقر عدء صح خ sألحيس جماو كل ااعداء املوابع ااقل من
% Solution of exercise 3-1
;)' s=input('Enter a positive integer number(s):
;sum = 0
for x=1:s
;sum = sum + x
end
78
حسن فؤاد.د.أ د اننسى سامل.م.أ حممد ابراهيم العدوى.د.أ
79
حسن فؤاد.د.أ د اننسى سامل.م.أ حممد ابراهيم العدوى.د.أ
if(n<=0)
error('n must be a positive integer')
end
for x = n:-1:1
f = f * x;
end
إىل1 اسى دم اغداغع اب اغىارو اغسابق غكىابع برانمج ساب ألفباعع مابرألب ااعداء م-6
:ىفسى دام10
for مجةع اغىكرات-1
% Solution of exercise 3-6-1
for x=1:10
f=myfact(x);
disp(['The factorial of ',num2str(x),' = ',num2str(f)])
end
while مجةع اغىكرات-2
% Solution of exercise 3-6-2
x=1;
while x<=10
f=myfact(x);
disp(['The factorial of ',num2str(x),' = ',num2str(f)])
x=x+1;
end
مث حيس ألوطبر انتجop( ( ب ن اا إشات عاة ع بساب عx,y) اكى برانجما غقرال عدءو بق قني-7
+,-,*,/( اغ دءو تب ا غة اة ع ا ساب ع
% Solution of exercise 3-7
s=input('Enter two numbers with an operation between them','s')
x=str2num(s(1));
op=s(2);
y=str2num(s(3));
z=0;
80
حسن فؤاد.د.أ د اننسى سامل.م.أ حممد ابراهيم العدوى.د.أ
if ( op == '+' )
z=x+y;
elseif( op == '-' )
z=x-y;
elseif( op == '*' )
z=x*y;
elseif( op == '/' )
z=x/y;
else
disp('Undefined operation')
end
disp(['The result of ',num2str(x),op,num2str(y),'=',num2str(z)])
:اكى برانجما وقر فواع ءال مثةث مث وطبر كةاع-8
يف باغع تساألي ااءالEquilateral •
يف باغع مىساألي اغساقنيIsosceles •
يف باغع ا ىالف ااءالScalene •
% Solution of exercise 3-8
% Program to determine the triangle type
L1=input('Enter the first side length: ');
L2=input('Enter the second side length: ');
L3=input('Enter the thirs side length: ');
if (L1==L2)&&(L2==L3)
disp('Equilateral')
elseif (L1==L2)||(L1==L3)||(L2==L3)
disp('Isosceles')
else
disp('Scalene')
end
81
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
غقد قدمنا اب هاا اغ تتل عرءتتا س ترو ا الستتى دام ماتالب كة ع برجمع عامع اا را ،ألإ املىارس عةى
اغربجمع بة ع Cس ت ش ت ر ب دم ألاوء ضرأل بني اغة ىني ألغقد تاع نا تكو املراا ع س ترو ع اعىااءا عةى
املس ت تتى دم غدو ضكر ع غ ع Cألإ كا لغر ء ت ت ترألتو ا ما عرء ت ت ت اب هاا اغ ت تتل و ىرب
كاض ا غوءت تتر املست تتى دم عةى بداوع فروق اغربجمع ىفملاتالب املراار [ ]1-8تقدم شت تتربا م ت تتال غةربجمع
ىفسى دام املاتالب مر اغ دود م اامثةع ألاغىطب قاس
82
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
الفصل الرابب
املصفوفا ىف ماتالب
1-4مقدمة
امل وضع هى جماوعع م اغب اانس املوءوعع اب صوت ألنائ ع ااب اء ،و اب صوت ص وف أل عاد أل عةى
ه ئع ادألع و ىرب ماتالب كاا ت ونا مسبقا ألكاا و ك ا أب هو غ ع امل وضاس ب ث
MATLABهى ا ى ات غ بات MATrix LABoratoryأل م ال امل وضاس ب ث كاا ت ونا
و مى اب ماتالب ونظر إغ عةى م وضع سنى ةم اب هاا اغ ل ك ع ت امل املاتالب مر
امل وضاس ألك ع بد ها ألت رو ا مث نىقل إىل اغ اة اس امل ىة ع عةى امل وضاس م مجر ألفري ألءرب
ألعك أل ت ،مث ب د لغر سنى ةم ك ع اغى امل مر سالسل اابرف
]>> a=[a;x
83
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
=a
1 2 3
4 5 6
7 8 9
هنا ت روف املى xكا وضع م صف ألابد غ ألالث عناصر مث اسى دم اامر ] a=[a;xغوءر
املى xك ف اب هناوع امل وضع aغى بخ م وضع م ألالألع ص وف ألألالث عاد بدال م اسى دام
اغ اصةع املنقوفع ك اصل بني ااعاد سك اسى دام اع Enterهلاا اغ ر كاا وةى:
>> a=[1 2 3
456
]7 8 9
=a
1 2 3
4 5 6
7 8 9
التعبري عن عناصر املصفوفة
اغ ناصر امل ىة ع اب و م وضع سك اغى ب عن ا كاغىاىل a(2,3) :ألاغاو و ىن اغ ن ر املواوء اب اغ ف
اغثاىن ألاغ اوء اغثاغث م امل وضع aألغاغر غو لهبنا ا إىل بقل انضا ااألامر ألكىبنا ) a(2,3مث
Enterس ء عة نا ماتالب بق اع هاا اغ ن ر كاا وةى:
)>> a(2,3
= ans
6
ألهكاا سك عر ق اع و عن ر م عناصر امل وضع البظ اسى دام ااقواس املرب ع ] [ غةدالغع عةى
بداوع ألهناوع امل وضع ب ناا اغقوس املسىدور ) ( غةدالغع عةى عن ر م وضع سكنر خت ص ق اا عدءوع
غ ناصر امل وضع املن رء كاا وةى:
;>> a(2,2)=50
>> a
84
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
=a
1 2 3
4 50 6
7 8 9
ان ق اع اغ ن ر املواوء اب اغ ف اغثاىن ألاغ اوء اغثاىن م 5إىل 50مالا غو فةبنا عر ب ث قد
عن ر اتج ب اء امل وضع مثال ) ، a(2,4ا ظر غةىاىل:
)>> a(2,4
??? Attempted to access a(2,4); index out of bounds because size(a)=[3,3].
وضع أل آ ر عن ر هو )a(3,3 ب ث تء ماتالب أب نا حناألع اغوصوع إىل عن ر مواوء اب امل
ص اغىاىل حنات هنا م شىل اوع اب اخلطوت ألهو نا عةى ضر بطروق اخلط كىبنا مر اغى
،a(2,4)=12ا ظر مالا ض ل املاتالب:
>> a(2,4)=12
=a
1 2 3 0
4 50 6 12
7 8 9 0
غقد مدء امل اتالب ب اء امل وضع بعايء عاوء هلا غىسىوع هاا اغ ن ر اجلدود مر ألءر ص اتا اب
اغ ناصر املاباضع اا رو حب ث صبح ب اء امل وضع 3x4بدال م 3x3
85
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
=b
1 4
2 5
3 6
وضع aحب ث صبخ اغ ف ااألع اب aهو اغ اوء ااألع اب b ب ث امل وضع bىك م تدألور امل
ألاغ ف اغثاىن اب aهو اغ اوء اغثاىن اب bالبظ فروقع إ شال امل وضع aىفسى دام عاة ع اغنقطىني
ب ث اغ ف ااألع كى 1:3مث اغ اصةع املنقوفع مث 4:6ألهاا ك كاا ت ونا فاملا اغ ر بني عن ر
ألاغىاىل غ هو ضر ب إ عاة ع اغنقطىني ت ىرب م اغ اة اس اغا ون رء هبا ماتالب ع ىفقى غ اس
اغربجمع ألاغا سك اسى دام ا بكثر ا ظر ملا وةى:
]>> a=[1:3;4:6;7:9
=a
1 2 3
4 5 6
7 8 9
)>> b=a(2:3,1:2
=b
4 5
7 8
ب ث إ شال امل وضع aىفغكامل ىفسى دام م امل اغنقطىني ،مث إ شال امل وضع bم اغ ني 2أل
وضع a 3ألاغ اوءو 1أل 2م امل وضع aكاا ت ونا ،ب ث إ شال امل وضع bككعل م امل
)>> b=a(2,:
=b
4 5 6
وضع a ب ث تشك ل امل وضع bم اغ ف اغثاىن ألكل ااعاد اب امل
)>> a(1:2,2:3)=ones(2
=a
1 1 1
4 1 1
7 8 9
86
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
ب ث جن ل اغ وف ألابد ألاألنني ألااعاد األنني ألألالألع اب امل وضع aتساألو ألباود كاا ت ونا امل وضع
) ones(nت طى م وضع مرب ع nxnكل عناصرها ألباود كاا وةى:
)>> b=ones(3
=b
1 1 1
1 1 1
1 1 1
امل وضع ) zeros(nت طى م وضع مرب ع كل عناصرها ص اتا كاا وةى: كاا
)>> zeros(3
= ans
0 0 0
0 0 0
0 0 0
87
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
;)>> b=zeros(3
;)>> a=ones(3
)]>> a(:,[1 3]) = b(:,[1 2
=a
0 1 0
0 1 0
0 1 0
اامر )sum(x
مار كل عناصر املىك :x
88
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
89
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
)>> c=cumsum(a
=c
1 2 3
5 7 9
12 15 18
90
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
nxnوابا كل عناصرها ألباود هناك وابا امل وضع ) eye(nاغا ت طى م وضع قطروع مرب ع قطرها
اغرئ سى ألباود ألىفقى عناصرها ص اتا كاا وةى:
)>> eye(3
= ans
1 0 0
0 1 0
0 0 1
اغ دود م هات اامر help elmatكرء كىابى اب انضا ااألامر command windowس ر
امل وضاس ألاغدألاع ألاغا ال جماع غ رء ا كة ا هنا ألغك ك اغقاتول غةاحاألغع م ا ألجتروب ا بن س
م هات امل وضاس اغا قد سى دم ا امل وضع ) rand(nاغا ت طى م وضع مرب ع nxnق م عناصرها
عشوائ ع م ص ر با ألابد كاا وةى:
)>> rand(3
= ans
0.5469 0.1576 0.4854
0.9575 0.9706 0.8003
0.9649 0.9572 0.1419
امل وضع ) rand(m,nت طى م وضع عشوائ ع مكو ع م mم اغ وف أل nم ااعاد ب ناا
امل وضع randبدأل و م امالس ضى طى م وضع م عن ر ألابد (ق اع ألابد بق اع عشوائ ع م
ص ر با ألابد
هناك امل وضع ) randn(nمثل ظ .ا ) rand(nألغك اغق اع اغ شوائ ع تكو بق اع مىوسطع ص ر ،و
هنا ت طى ق اع عشوائ ع ساغبع ألموابع حب وء م اتو مقداتت ألابد
)>> randn(3
= ans
-0.4326 0.2877 1.1892
-1.6656 -1.1465 -0.0376
0.1253 1.1909 0.3273
91
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
هناك ب امل وضاس اخلاصع مثل امل وضع ) magic(nاغا ت طى م وضع تى ق ا ا م ص ر با
اجملاو كاا اب n2ألجماو و صف ض ا أل و عاوء أل و قطر كة ا تكو مىساألوع ألت طى
امل وضع اغىاغ ع:
)>> magic(3
= ans
8 1 6
3 5 7
4 9 2
اغا هى م وضع مرب ع 3x3جماو و صف أل و عاوء أل و قطر ض ا وساألو 15
=a
1 1 1
1 1 1
1 1 1
>> a=2*a
=a
2 2 2
2 2 2
2 2 2
هنا سنكرو اغداغع sinعةى مج ر عناصر م وضع كاا وةى:
]>> a=[0:30:120
=a
0 30 60 90 120
)>> b=sin(a*pi/180
92
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
=b
0 0.5000 0.8660 1.0000 0.8660
ألكاغر عاة ع ااس عةى كل عن ر م عناصر امل وضع عةى بد ىفسى دام عاة اس اغنقر اغا
شرب ا مسبقا مثل * .أل ^ .أل ./أل ها:
]>> a=[1 2 3;4 5 6
=a
1 2 3
4 5 6
>> b=a.^2
=b
1 4 9
16 25 36
اكر هنا عةى هناك ب اغدألاع اغا عندما وىم إاراؤها عةى م وضع ضوهنا جترو عةى عاد امل وضع
ضقر مثاع لغر اغداغع sumاغا ت طى جماو عاد و م وضع إلا كا جترو عةى م وضع ألنائ ع
ااب اء
اغداغع اغا تسى دم ا ت ال عةى اغ ناصر أل عةى ااعاد ض ة ر فة مى كد م إلا كن
املساعد helpم ماتالب ألهو س ربك
هناك اغ اة اس ا ساب ع عةى زألج م امل وضاس أل كثر مثل مجر ألفري كثر م م وضع اب هات
تكو امل وضاس مىساألوع ااب اء سك مجر ألفري م وضىني كاا وةى: اغ اة اس البد
;)>> a=ones(3
;)>> b=ones(3
>> c=a+b
=c
2 2 2
2 2 2
2 2 2
>> d=a-b
93
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
=d
0 0 0
0 0 0
0 0 0
هناك و م ءرب م وضىني ألهو ءرب كل عن ر اب م وضع اب ظ ت اب امل وضع اا رو كاا وةى:
]>> a=[1 2 3;4 5 6
=a
1 2 3
4 5 6
]>> b=[6 5 4;3 2 1
=b
6 5 4
3 2 1
>> c=a.*b
=c
6 10 12
12 10 6
اغابرب ا ساىب مل وضىني و ىرب م هم اغ اة اس ا ساب ع اغا جترو عةى م وضىني ألاغا تسى دم اب
حتة ل اغدألائر اغك رب ع ألبل امل اءالس اخلط ع ألاغىحوول بني ظم ا بداأل اس امل ىة ع هاا اغنو م
اغابرب وكى عةى اغ وت c=a*bأل c=abب ث اغ ن ر cijوساألو باصل ءرب اغ ف iاب
امل وضع aاب اغ اوء jاب امل وضع bألغاغر ضو م شرألك هاا اغنو م اغابرب وكو عدء
ىاكر بنال عةى لغر ضو abال تساألو ص وف امل وضع aوساألو عدء عاد امل وضع bم
،baو عاة ع اغابرب هات غ س تباءغ ع كاثاع هلاا اغنو م اغابرب ا ظر غةاثاع اغىاىل:
1 2 5 6 5 4
3 4 0 1 15 14
غنرو هنا ك ف وسى دم املاتالب اب تن ا هاا اغنو م اغابرب ب ث سنابرب امل وضع aاملكو ع م
ص ني ألألالث عاد اب امل وضع bاملكو ع م ألالث ص وف ألعاوءو غى طى امل وضع cاملكو ع م
ص ني ألعاوءو كاا وةى:
94
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
تكو امل وضع مرب ع ألغاغر ضو عاة ع ترب ر م وضع ت ىن ءرب امل وضع اب س ا ،ألغاغر البد
اغ اة ع ^ تكاابل اغ اة ع * ،كاثاع عةى لغر:
]>> a=[1 2;3 4
=a
1 2
3 4
>> b=a^2
=b
7 10
15 22
وابا اكر هنا عةى اغ ر بني اغ اة ع a^2ألاغ اة ع a.^2ألاغا تقوم ب ب ر كل عن ر م عناصر
امل وضع
اامر ) inv(xأل امل وضع اغ كس ع ( matrix inversionغةا وضع املرب ع xكاا اب املثاع اغىاىل:
95
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
]>> a = [1 2; 3 4
=a
1 2
3 4
)>> y = inv(a
=y
-2.0000 1.0000
1.5000 -0.5000
اامر ) diag(xو طى اغ ناصر املواوء اب اغقطر اغرئ سى غةا وضع xكاثاع عةى لغر:
]>> a=[1 2 3;4 5 6;7 8 9
=a
1 2 3
4 5 6
7 8 9
)>> diag(a
= ans
1
5
9
وضع a امل ألاامر ) fliplr(xاغاو و ك امل وضع xم اغشااع غة اني ،إبارال هاا اامر عةى
اغسابقع حن ل عةى اغىاىل:
)>> fliplr(a
= ans
3 2 1
6 5 4
9 8 7
امل وضع aاغسابقع ألاامر) flipud(xو ك امل وضع xم ضو غىح ،ألإبارال هات اغ اة ع عةى
حن ل عةى اغىاىل:
)>> flipud(a
96
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
= ans
7 8 9
4 5 6
1 2 3
مث اامر) rot90(xاغاو ودألت امل وضع بوع س ا قدات 90ءتاع ،ألإبارال هات اغ اة ع عةى
امل وضع aحن ل عةى اغىاىل:
)>> rot90(a
= ans
3 6 9
2 5 8
1 4 7
امل وضع مث اامر ) tril(xاغاو و طى املثةث ااس ل م امل وضع ،xألإبارال هات اغ اة ع عةى
aحن ل عةى اغىاىل:
)>> tril(a
= ans
1 0 0
4 5 0
7 8 9
امل وضع أل ا اامر ) triu(xاغاو و طى املثةث ااعةى م امل وضع ،xألإبارال هات اغ اة ع عةى
aحن ل عةى اغىاىل:
)>> triu(a
= ans
1 2 3
0 5 6
0 0 9
سك بساب ق اع احملدء امل اببع او م وضع م الع اامر ) det(xاغاو ورء عة ر بق اع هات
احملدء حيىوو املاتالب عةى اغ دود م اغدألاع اغا تسى دم اب اجلرب اخلطى ألارب امل وضاس ألاغا
ل هنا ملا حتىاا م مسابع ألألق لكرها ىفغى و
97
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
)>> det(a
= ans
-2
6-4سالسل األحرف Strings
سةسةع اابرف هى جماوعع م اابرف أل با برف ألابد اغا قد مثل اسم ش ص مثال أل ت ة ق
وى امل ماتالب مر سةسةع اابرف عةى هنا مىك أل م وضع باءوع اغب د ألكل عن ر ض ا سثل برضا
م برف هات اغسةسةع مثال:
'>> s='mohamed
=s
mohamed
ب ث إء اع اغسةسةع mohamedكق اع غةاى sألالبظ البد م ألءر هات اغسةسةع بني
عالما اغىن ص ااباءوع بات ماتالب هاا املى غ مى ا تقا ا ألغكن مى براب حيىوو
سةسةع برف ت اع سى ةم م ماتالب ع ك ع ت امة ألختعون هلات اغسةسةع أللغر ىفسى دام اامر
whosكاا وةى:
>> whos s
Name Size Bytes Class Attributes
s 1x7 14 char
ب ث تبني املى sهو مى براب charوىكو م 7برف اب صوت م وضع باءوع م سب ع
عناصر ألوش ل 14ىفو ا ظر غألمر اغىاىل:
)>> s(7:-1:1
= ans
demahom
ب ث عر امل وضع sىفغ ك بدلا م آ ر عن ر با ألع عن ر
98
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
اغسةسةع كاا لكران ضو اغسةسةع كاى البد توءر بني عالما تن ص باءوع ،ألغك مالا غو
س ا حتىوو بد عالماس اغىن ص ،اب هات ا اغع وىم تكرات عالمع اغىن ص كاا وةى:
'>> s='8 O''clock
=s
8 O'clock
سك اسى دام اامر inputء اع سالسل اابرف كاا وةى :
)' >> name=input('Enter your name
Enter your name Mohamed
??? Error using ==> input
Undefined function or variable 'Mohamed'.
99
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
= full_name
Mohamed Eladawy
full_nameمكو م املىك ني first_nameأل last_name اب هاا املثاع عال مىك ا
وىم تسك ل و برف اب ماتالب اب 16ب ،ألااكواء م 1با 127مثل اابرف اهلكائ ع ألهات
م A هى اغش ر ASCIIامل رألضع ضاثال ااكواء اغسى شروع م 65با 90مثل اابرف اغكب
aبا ، zألهات االكواء كة ا مواوء با ،Zب ناا ااكواء م 97با 122مثل اابرف اغ
سكنر تى رف ش ر ااسكى او سةسةع اب اغ دود م املراار ألاب ماك عدود عةى ا
ىفسى دام اغداغع doubleكاا وةى:
)'>> double('mohamed
= ans
109 111 104 97 109 101 100
ب ث 109مثل ش ر ا رف mأل 111مثل ش ر ا رف oألهكاا اغداغع ) ( charتقوم ب ك ما
تقوم ب اغداغع doubleب ث ت طى ا رف اهلكائى املقابل او ش ر م ش راس ااسكى كاا وةى:
)>> char(80:85
= ans
PQRSTU
تسى دم اب اغكث م اغ اة اس ا ساب ع كاا وةى : سةسةع اابرف مثة ا مثل و مىك سك
;'>> s='a
)'>> double('a
= ans
97
>> s=s+1
=s
98
)>> char(98
= ans
b
100
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
s ب ث ألءر ا رف aاب املى ،sمث عرءنا ش رت ااسكى ألهى ،97مث زايء ألابد عةى املى
ألىفغىاىل صبح اغش ر ااسكى املواوء اب sهى 98مث عرءنا ا رف املقابل هلات اغش ر ألهو ا رف
b
سك مقات ع سةسةا برف بطروقىني ،ااألىل ىفسى دام اغ اة اس اغ الق ع < أل > أل ها كاا وةى:
;'>> s1='ant
;'>> s2='bny
>> b=s1<s2
=b
1 0 1
>> c=s2<s1
=c
0 0 0
b=s1<s2وقات برف حبرف م اغ سات ألو طى إاابع منطق ع ألابد أل ص ر غكل عاة ع ب ث املى
مقات ع ألال هل ا رف aاب اغسةسةع ااألىل قل م ا رف bاب اغسةسةع اغثا ع ،ىفغطبر ا اابع م
ألىفغىاىل ضو ماتالب وابر 1اب املى bمث هل ا رف اغثاىن nاب املىك ااألع قل م ا رف اغثاىن
nاب املىك اغثاىن ،ىفغطبر ا اابع ال ،ألىفغىاىل ضو ماتالب س ابر ص ر اب املى bألهكاا تسىار
اب املقات ع با آ ر برف ا ظر إىل املى cاغسابق ألبدء ملالا حيىوو عةى ألالألع ص ات البظ
كل هات املقاتانس تىم املقات ع عةى ش راس ااسكى
اغسةسةىني مىطابقىني ماما ألت طى ص را هناك اغداغع strcmpاغا تقات سةسةىني ألت طى 1إلا كا
اغسةسةىني ىة ىني كاا وةى: إلا كا
)>> strcmp(s1,s2
= ans
0
'>> s2='ant
= s2
ant
)>> strcmp(s1,s2
101
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
= ans
1
ب ث مر املقات ع ااألع قات اغسةسةع ااألىل ' s1='antألاغسةسةع اغثا ع ' s2='bnyضكا اغنى كع
ص را ا اغسةسةىني مىساألوىني ،ما عندما ا ةنا اغسةسةع اغثا ع تساألو ااألىل أل اان مر املقات ع
ضكا اغنى كع 1غىساألو اغسةسةىني
102
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
'what is your nameاملنى ع ب دء م ب ث هنا إ شال اغسةسةع sاغا تساألو اغ بات '
اابرف اغ ات ع ألاغا كا فوهلا 24برضا ب د لغر ش ان امل وضع bاغا تساألو امل وضع sب د إزاغع
اابرف اغ ات ع اب هناوى ا ض صبخ فوهلا 17برضا كاا ت ونا
أل اغ ك كاا وةى: إىل برف كب اغداغع lowerألاغداغع upperحتوال و سةسةع م برف ص
;'>> x='ABCDEF
)>> lower(x
= ans
abcdef
اغداغع eval
سك ألءر و ت ب أل ءاغع سك تن اها كنص أل كسةسةع برف اب بد املى اس اغن ع حب ث سك
اغندال عةى اغداغع evalاغا وكو م امة ا هو املى ا راب ض قوم ماتالب بىن ا هات اغداغع أل اغى ب
املواوء ءا ل هاا املى اغن ى ا ظر إىل املثاع اغىاىل:
;'>> x='a*b
;>> a=2
;>> b=3
)>> c=eval(x
=c
6
ب ث املى اغن ى xحيىوو عاة ع ءرب املى aاب املى bكنص موءو بني عالما تن ص ب د
لغةر بدءان a=2أل b=3مث اامر ) c=eval(xب ث س قوم ماتالب بقرال اغنص املواوء اب املى
c اغنى كع اب املى عاة ع بساب ع وقوم بىن اها تب ا غق اع كل م aأل bألو ر اغن ى xعةى
كاا سبق
ا ظر هلاا املثاع وابا كىطب ق عةى اغداغع :eval
% The eval function
;)'f = input( 'Enter function (of x) to be plotted: ', 's
;x = 0:0.01:10
plot(x, eval(f)),grid
103
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
اامر inputوطة منر إء اع اغداغع اغا ترود ت ا كنص ألكاا لكران ضقد ألء نا ا رف ' 'sغكى
ت ى م ألءر ما ترود كىابى بني عالما تن ص غقد اان اغربانمج اغسابق مر اغداغع املراء ت ا غق م
xاحملدء اب اغربانمج كاا وةى:
)Enter function (of x) to be plotted: exp(-0.5*x) .* sin(x
ألكا شكل اغداغع كاا اب شكل (1- 4
وكو املى اغن ى مى ا تب ا اامر evalو ىرب م ااألامر امل اع عند كىابع اغربامج ب ث سك
ملىطةباس اغربانمج ألغ س بىع م بداوى اب م ظم ااب ا عند اسى دام اامر evalوكو املى
اغن ى انجتا ع جتا ر ب سالسل اابرف ألاملى اس -اغا تى ق اى ا مر تن ا اغربانمج ألألضقا
وع عةى جماوعع م ملد الت – تكو مواوء ءا ل قوسني مرب ني املثاع اغىاىل ووءخ ك ع ا
امل وضاس اخلاصع magicاغا حتدألنا عن ا سابقا
for n = 1:12
)]')eval(['M' num2str(n) ' = magic(n
end
0.6
0.5
0.4
0.3
0.2
0.1
0
-0.1
-0.2
0 1 2 3 4 5 6 7 8 9 10
104
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
وع عة ا البظ ألاوء عالمع = ألضكر ملالا هى ) magic(nض ى عبات ع اسم امل وضع املطةوب ا
مواوء ؟
اغن ى وكو اب باغع n=1ضو املى اغن ى عبات ع ) ،M1 = magic(nما عند n=2ضو املى
) M2 = magic(nألهكاا هاا موءخ كناتج غىن ا اامر اغىاىل:
>> n=6
[')>>]'M' num2str(n) ' = magic(n
=ans
(M6 = magic(n
متارين حملولة
-1اكى برانجما غقرال ألالث عداء م اغنو اغ ح خ مث تت هات ااعداء ت اعداي ىفسى دام اغداغع
) (. sort
% Solution of exercise 4-1
% Program to order 3 integer numbers
;b(1:3)=0
for x=1:3
;)' a=input('Please enter an integer:
;b(1,x)=a
end
disp(['You entered the numbers :', num2str(b(1)),' , ', num2str(b(2)),' and ',
)]))num2str(b(3
)b_sorted=sort(b
برانجما غقرال تبر مى اس بق ق ع مث اسى دم اغداغع maxماء كرب ق اع م هات املى اس. -2اكى
% Solution of exercise 4-2
% Program to find the maximum of 4 real numbers
;z(1:4)=0
for x=1:4
;)' a=input('Enter a real number :
105
حسن فؤاد.د.أ د اننسى سامل.م.أ حممد ابراهيم العدوى.د.أ
z(1,x)=a;
end
disp(['You entered the real numbers :', num2str(z(1)),' , ', num2str(z(1)),' , ',
num2str(z(3)),' and ', num2str(z(4))])
z_max=max(z)
تقاا مث وقوم اغربانمج بطباعع ااتقام اغيت ق اى ا20 اكى برانجما وقر م وضع باءوع اغب د مكو ع م-3
مر فباعع ماك تواادھا ءا امل وضع10 كرب م
% Solution of exercise 4-3
m(1:20)=0;
for i=1:20
n=input(['Enter m(1,',num2str(i),')']);
m(1,i)=n;
end
[c]=find(m>10);
value=m(1,c);
disp(['The numbers greater than 10 are :', num2str(value)])
disp(['Their location:', num2str(c)])
اكى برانجما وقوم إبء اع م وضىني لاس ب دو م اغنو اغ ح خ مث وقوم إبارال عاة ع اجلار-4
.عةي امل وضىني
% Solution of exercise 4-4
A=input('Enter the first matrix')
B=input('Enter the second matrix')
if (size(A))==(size(B))
C=A+B
else
disp('Matrix dimentions must agree')
end
.وضع اكى برانجما غقرال عناصر م وضع لاس ب دو مث إماء ألفباعع ص ر عن ر يف امل-5
% Solution of exercise 4-5
106
حسن فؤاد.د.أ د اننسى سامل.م.أ حممد ابراهيم العدوى.د.أ
m=input('Enter a matrix')
m_min=min(min(m));
disp(['Te minimum of the matrix = ',num2str(m_min)])
اكى برانجما غقرال عناصر م وضع لاس ب دو مث إماء باصل ءرب عناصر اغقطر اغرئ سي-6
.غةا وضع ألفباعع كرب عن ر يف امل وضع
% Solution of exercise 4-6
A=input('Enter a square matrix')
[r,c]=size(A);
A_diag=diag(A)
A_max=max(max(A));
m=1;
for i=1:r
m=m*A_diag(i);
end
diagonal_mul=m;
A_max=max(max(A));
disp(['Multiplication of elements of the main diagonal = ',num2str(m)])
disp(['Te maximum of the matrix = ',num2str(A_max)])
:اكى برانجما ل مل اءالس ا ت ع ىفسى دام امل وضاس-7
2x 3y 4z 5
x y 4 z 10
3x 4 y 2 z 0
% Solution of exercise 4-7
C=[2,-3,4;1,1,4;3,4,-2]
B=[5;10;0]
A=C\B;
x=A(1)
y=A(2)
z=A(3)
107
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
الفصل اخلامس
أساسيا الرسم ىف ماتالب
1-5مقدمة
حيىوو ماتالب عةى اغ دود م ءألاع ألألسائل اغرسم ألنائى ألألالألى ااب اء اغا تسى دم اب كل اغىطب قاس
بال اسىثنال سوال اغىطب قاس اهلندس ع من ا أل اهلندس ع؛ ضاغكث منا ورود ءائاا تؤوع ى كع تن ا برانجم
أل اخلواتوعم اخلاص ب اب صوت م رب ألنائ ع أل ألالأل ع ااب اء ألحن سن طى اب هاا اغ ل اغكث م
اغدألاع اغا تسى دم غرسم اغدألاع اب ظم ىة ع غةاحاألت أل اغرسم ألالألى ااب اء كاغر سن ر ك ع
ت امل املاتالب مر اغرسم م الع واضا ااشكاع ،ألاامناك امل ىة ع غةرسم اب املاتالب اكر هنا
ماتالب غدو ألسائل مساعد helpاوع اب اغس وغع ألاالكىااع ،ضولا كن ترود املعود م امل ةوماس ع
و ءاغع ض ة ر فة املساعد ع هات اغداغع م انضا ااألامر command window
108
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
اغداغع ) plot(yس سم املى yمر ض رس و ب ت قر هاا املى و عند اغنقطع 1أل 2أل 3
ألهكاا غاغر ضو نا غو اان لغر عةى اغرسم اغسابق سنح ل عةى اغشكل ( 2- 5ب ث البظ
احملوت xهنا وى م ص ر با 120ب ث هناك 100قطع غةاى ،xب ناا اب شكل ( 1- 5ضقد
تسم املى yمر ق م xاغا تنى ى عند اغق اع 10
1
0.8
0.6
0.4
0.2
0
-0.2
-0.4
-0.6
-0.8
-1
0 1 2 3 4 5 6 7 8 9 10
1
0.8
0.6
0.4
0.2
0
-0.2
-0.4
-0.6
-0.8
-1
0 20 40 60 80 100 120
109
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
سك اغ ىحكم اب غو املنحىن ألإءاضع ال غةاحاألت ألعنوا غةشكل كاا اب شكل ( 3- 5اب
اامر)( plotاغىاىل إءاضع عالما تن ص ووءر ب ن ا ا ى ات اغةو ىف رف rغةو اامحر أل ' '+غىوق ر
قر اغرسم أل ا ل قطع اغرسم هى ا رف ، +أل ' ':جل ل املنحىن منقر بدال م منحىن مى ل ب د
لغر إءاضع اسم غةاحوت xىفامر)( ،xlabelألإءاضع اسم غةاحوت yىفامر )( ،ylabelمث إءاضع
عنوا غةشكل ىفامر titleالبظ إءاضع املسا اس اغسابقع البد تكو بني عالما تن ص (اب
اغشكل ( 3- 5غو املنحىن محر ألغكن فب ا س ظ ر سوء عند فباعع اغكىاب ألغاغر وصى اغداتس
بكىابع هات ااألامر ألمالبظع اخلرج
)'>> plot(x,y,'r+:
>> grid
)'>> xlabel('x in radians
)')>> ylabel('y=sin(x
)'>> title('Plotting functions in two dimensions
Plotting functions in two dimensions
1
0.8
0.6
0.4
0.2
)y=sin(x
0
-0.2
-0.4
-0.6
-0.8
-1
0 1 2 3 4 5 6 7 8 9 10
x in radians
110
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
ادألع 1-5وبني ا رألف املسى دمع ال ى ات اغةو ألمنر املنحىن ضحاألع جتربع هات املى اس امل ىة ع
ادألع 1-5غو ألمنر املنحىن ألمنر اغىنق ر مر اغداغع )(plot
لون املنحىن منرب التنقيرب منرب املنحىن
زت b blue . قطع point - ر مسىار solid
ابر g o ءائر circle : ر منقر dotted
green
محر r red عالمع x x mark x -. شحط أل قطع dashdot
األو c cyan عالمع اجلار + plus -- ر مىقطر dashed
سك تسم كثر م منحىن ىفامر )( plotاغاو سنسى دم غرسم اغداغع ) sin(xأل ) cos(xكاا سنرو
اغشكل أل إءاضع م ىاي legend اب شكل ( 4- 5ب ث اب هاا اغشكل تسم منحن ني اب
هلاا اغشكل من ع ب كل منحىن ع ا ر كاا اب اغشكل ب ث ووءخ امل ىاي املنحىن املنقر ب المع
111
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
زائد سثل املنحىن ) ،sin(xب ناا املنحىن املنقر ىفملثةثاس هو منحىن اغداغع ) cos(xهناك مى اس كث
ع م ىاي اغشكل م ب ث مكا ألبكا أل و اخلر ض سكنر م رضى ا ىف ى ات بكىابع اامر help
legendأل م رضى ا ىفغى ل ىفغنقر عةى قائاع helpمث احبث ع legendم مكا اغبحث ب ث
س ظ ر غر م ةوماس ت ة ع أبمثةع توء ح ع ع اامر legendالبظ ىفغنقر مرتني عةى امل ىاي
سكنر ت دول اغن وص املكىوبع ض مباشر كاا سكنر اغوقوف عةى امل ىاي ألاغاب ر عة ىفغ ت
مرتني مر اغسح ألا سقاك اب و مكا عةى اغشكل اغناتج م ماتالب غى مكا امل ىاي ،ضحاألع
لغر باألع تن ا اغربانمج اغىاىل غةح وع عةى شكل (4- 5
;>> x=0:0.1:10
;)>> y=sin(x
;)>> z=cos(x
)'>> plot(x,y,'r+:',x,z,'b>:
>> grid
)'>> title('Plotting two functions in two dimensions
)')>> ylabel('y=sin(x),z=cos(x
)'>> xlabel('x in radians
)')>> legend('sin(x)','cos(x
)')>> gtext('function sin(x
)')>> gtext('function cos(x
112
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
0.4
)y=sin(x),z=cos(x 0.2
0
-0.2
)function cos(x
-0.4
-0.6
-0.8
-1
0 1 2 3 4 5 6 7 8 9 10
x in radians
سكنر وابا كىابع و ص ووات و منحىن اب اغشكل ألاب و مكا ىفسى دام اغداغع )( gtextاب
شكل ( 4- 5كىبنا اغنص ) function sin(xألاغنص ) function cos(xىفسى دام هات اغداغع
عندما وبد ماتالب بىن ا هات اغداغع س ظ ر مامر عةى اغشكل طا مىقاف ا أل قطع تقافر هاا
اخلطا تىحرك مر اغ ت ،إ املكا اغاو ترود كىابع اغنص عندت ،ألقف ىفغ ت عند هاا املكا مث ا قر
املكا اغ ت ،سىكد اغنص املواوء اب اغداغع )( gtextبني عالما اغىن ص قد إسقاف اب
ماما كاا اب شكل ( 4- 5هناك ب املى اس امل د غةداغع )( gtextسكنر االفال عة ا بطة
املساعد م ماتالب ىفامر help gtextألاغاو ر اعلا من كاا وةى:
>> help gtext
GTEXT Place text with mouse.
GTEXT('string') displays the graph window, puts up a
cross-hair, and waits for a mouse button or keyboard key to be
pressed. The cross-hair can be positioned with the mouse (or
with the arrow keys on some computers). Pressing a mouse button
or any key writes the text string onto the graph at the selected
location.
113
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
ت اعة ا ىف ى ات اغنقطع اغطروقع اغسابقع ءاضع اغنص عةى اغرسم تساى اغطروقع اغى اعة ع ب ث تقوم
عةى اغرسم اغا سىابر عندها اغنص مث تابرب enterض ظ ر اغنص كاا سبق أل ألءحنا سك إءاضع
هات اغن وص عةى اغرسم بىحدود املكا اغاو سىابر عندت هاا اغنص كاا وةى :
;)'text(x,y,'text
ب ث وىم ألءر اغنص ' 'textعند اغنقطع xأل yعةى اغرسم شكل ( 5- 5وبني اغداغع sinب د إءاضع
ص عة ا ىفسى دام اغربانمج اغىاىل
%Plotting 1
;x = 0:pi/40:4*pi
;)plot(x, sin(x),'k','LineWidth',2
;)'xlabel('Time
;)'ylabel('Value of the sine
;)'title('Plotting the sine function
;)'text(3,0.6,'Zero phase shift
grid
اغوق ضو اب اغ اء وىوىل ماتالب بن س ءبر احملاألت عةى ءول اغب اانس املىابع غةاى اس اب
ماتالب عطى ا روع غةاسى دم وة ى لغر ألوقدم هو اغق اع اغ ظاى ألاغ رو غةاحوتو ىفامر
اغىاىل:
;)]axis ([xmin, xmax, ymin, ymax
ب ث xminأل xmaxهى اغق اع اغ رو ألاغ ظاى غةاحوت xألكاغر yminأل ymaxهى اغق اع
اغ رو ألاغ ظاى غةاحوت y
ع ع فروق اامر: سك إتاا اغىحكم اب احملاألت إىل ماتالب مر
axis auto
سك اسى دام حمرت اغرسم غىحسني و شكل اب املاتالب ع فروق ضىخ قائاع Toolsم شرور اغقوائم
مث ا ى ات Edit plotألىفغنقر مرتني عةى اغشكل وىم ضىخ احملرت كاا اب شكل ( 6- 5هنا سك ت
غو املنحىن ألمنر اخلر ألكاغر إءاضع ال احملاألت ألعنوا م ىاي غةشكل ألاغكث م ا ءاضاس اغا م
ش هنا حتسني اغشكل
114
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
115
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
وع عةى س ع م و شكل ع فروق ضىخ قائاع Editم شرور اغقوائم مث ا ى ات Copy سك ا
figureمث غ ق هات اغنس ع اب و مةف ألألتء أل بوتبوون
116
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
;)subplot(2,2,2
;)plot(x, cos(x),'k','LineWidth',2
;title('subplot(2,2,2)');grid
)subplot(2,2,3
;)plot(x, sin(x+pi/2),'k','LineWidth',2
;title('subplot(2,2,3)'); grid
;)subplot(2,2,4
;)plot(x, cos(x+pi/2),'k','LineWidth',2
;title('subplot(2,2,4)'); grid
117
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
yب د قرال و عدء م اغنقاك اغا ترودها إءرب enterب ث س ظ ر غر ضوتا ا بداأل اس امل ع ع
اب املى و xأل yشكل ( 9- 5ووءخ ءغ ل ا ى ات اغنقاك املراء قرال إبداأل ا.ا
هناك وابا اغداغع semilogxب ث اب هات ا اغع س كو احملوت ااضقى هو احملوت اغةو اتوىاى هناك
وابا اغداغع loglogاغا ترسم عةى حموتو غو اتوىا ني ااضقى ألاغر سى
118
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
119
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
عال اغداغع )( plot3ألغك ب وت برك ع ب ث ترو قطع اغرسم ألنال اغداغع )( comet3ت ال
املنحىن اغسابق ألغك ت ا غةانحىن اغثالألى ااب اء ألهى تىحرك م بداوع اغرسم إىل هناوى :باألع
هات املر ىفسى دام اامر )(comet
%training with 3D comet
;t = 0:pi/50:10*pi
;)comet3(exp(-0.02*t).*sin(t), exp(-0.02*t).*cos(t),t
120
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
سك تسم اغقب ع املكس ك ع ىفسى دام اغداغع )( meshgridاغا تشب إىل بد كب اغداغع )( plot3أل
)( comet3كاغىاىل:
ألقد ت ا ىفسى دام ااتب ع ألامر اغسابقع ضقر ا شكل ( 13- 5وبني اغقب ع امل كس ك ع اغش
الع إءاضع وبني س وغع اغرسم ألالألى ااب اء اب ماتالب ألتألعى سكنر ا وع عةى شكل مجل م
ظالع هلاا اغشكل اغثالألى ىفامر ) surf(zألكاا هو موءخ اب شكل (14- 5
121
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
1
0.5
0
-0.5
40
30 40
20 30
20
10 10
0 0
1
0.5
0
-0.5
40
30 40
20 30
20
10 10
0 0
122
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
كى ى هباا اغكم م ألامر اغرسم ،ألىفغطبر سنرو اب اااعال اغقاءمع ألامر ألبرامج ونىج عن ا فر مىقدمع
ت ر منافا رو م اغرسم
123
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
اب اامر )( plotس سنرو هنا ك ف سك ت مظ ر هاا اغرسم ع فروق ألامر اتا ع ألم سطخ
املكى ءأل اغد وع اب برانمج اغرسم أل ت دول مر اغرسم أللغر ىفالسى اء م اخلاص ع اغ رود اب
ماتالب ألهى ونظر غناضا اغرسم عةى هنا هدضا أل ش ئا من ال ،ألهاا اغشكل سك اغى امل م م
الع مساى handleألهو اب اغ اء وكو تقم هات اغناضا اغشكة ع ضاثال إلا قران عةى اغناضا
اغشكة ع figure 1غىكو هى اغناضا اغشكة ع اغ اغع مث اان اامر:
>> hf=gcf
= hf
1
ضو hfاب هات ا اغع تكو هى مساى هات اغناضا اغشكة ع كاغر اامر:
>> hf=gcf
= hf
2
اغاو و طى مساى اغناضا اغثا ع figure 2ب د اغنقر عة ا البظ مساى اغناضا وكو هو تقم
اغناضا اغاو وظ ر اب شرور اغ نوا هلات اغناضا رضع هاا املساى او انضا سك اغى غكث م
اخلواص اغظاهروع هلاا اغشكل إ كل تسم ءا ل و انضا وكو غ مساى آ ر ألسك م رضع هاا املساى
ىفغنقر عةى هاا اغرسم ضاثال إلا قران عةى املنحىن )( cosس اب اغناضا اغشكة ع 2مث كىبنا اامر
اغىاىل:
>> ho=gco
= ho
345.0042
منحىن اع cosاب اغناضا اغشكة ع 2هو 345.0042ألهاا املساى م قبل ماتالب م ىن لغر
اغشكل اغظاهرو هلاا املنحىن كاا اب م عةى سطخ املكى ت س رضع هاا املساى سك ا
اامر اغىاىل:
)>> set(ho,'linewidth',4
شكل املنحىن ىفسى دام ر ر املنحىن إىل 4ء اض كاا سك ت ألاغاو سىكو ى كى هى ت
اامر:
)'>> set(ho,'linestyle','-.
124
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
شكل ر احملاألت رضع مساى حماألت غ كو اغشكل املنقر كاا اب شكل ( ، 16- 5كاا سك ت
هاا اغشكل ىفامر:
>> ha=gca
= ha
344.0051
ر احملاألت ىفامر: مث ت
)>> set(ha,'linewidth',6
هات ااألامر جمىا ع سىك ل figure 2وبدأل كاا اب شكل (16- 5
125
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
'EraseMode: 'normal
'LineStyle: '-.
LineWidth: 2
'Marker: '.
MarkerSize: 6
hoاب اامر getهى مساى منحىن اع )( cosاب انضا اغشكل 2 البظ
126
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
ان غو إىل اغةو اامحر ىفامر اغىاىل، لغر ىفغنقر عةى منحىن اع )( sinغةح وع عةى مساات مث
ك ىفامر اغىاىل غ : مث ت
)'>> set(gco,'color','r
)>> set(gco,'linewidth',4
>> bo=gco
= bo
173.0059
ك ألشكة ىفامرو اغىاغ ني: لغر وابا ىفغنقر عةى منحىن اع )( cosمث ت
)>> set(gco,'linewidth',3
)'>> set(gco,'linestyle','-.
127
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
سن بد هنا ب ر عال وقو ع عر /إ ال ءألاس عر اغرسم ب ث ىفغنقر عةى هات ااوقو ع سىظ ر
مامر انضا اغرسم ألحتى ا مسابع حترور واص اغشكل ب ث م هات املسابع سك عال اغكث م
را حترور حمىوايس اغشكل سن ر هنا اغشكل اغاو حيىوو عةى ءاغا اع )( sinألاع )( cosغن ر
عة اا ى كع هاا اغىحرور اب شكل ( 20- 5سننقر عةى منحىن اع )( sinمرتني ب ث سىظ ر مامر
واص هلاا املنحىن ألاغا من ا سك خنىات شكل اخلر م الع اخلاص ع lineمث ر هاا اخلر م
اغرقم اجملاألت مث غو اخلر أل املنحىن م املربر اجملاألت ،سك كاغر ا ى ات شكل اغنقاك markerأل ر
هات اغنقاك ألغوهنا م املرب اس اجملاألت ب د لغر قر عةى املنحىن اغثاىن منحىن اع )( cosألا ىات غ هات
اخلواص ب د لغر نقر عةى و قطع رو اب اغشكل ب دا ع املنحن اس ب ث سىظ ر غر جماوعع
رو م اخلواص ألاغا من ا عنوا هلاا اغشكل titleب ث هناك مربر سكنر تابر ض و عنوا
هلاا اغشكل ألقد كىبنا Sin and Cos curvesك نوا هلاا اغشكل سكنر من ا ختىات غو غةشكل
ألغو غةانحن اس مث ا ى ات عنوا غكل حموت ب ث ا ان عنوا احملوت xهو Phaseألعنوا احملوت y
هو Magnitudeسك ت بكم ألغو اغكىابع عةى كل منحىن وابا ،كاا سك ت بدألء كل
حموت اب باغع إلا كا ا دألء اغىةقائ ع مرء ع سك وابا إءاضع م ىاي أل Legendاب عةى سني
اغشكل ب ث وىم لغر م الع وقو ع ألءر م ىاي اغرسم هات هى هم ا ءاضاس اغا سك عاة ا
م الع حمرت انضا اغشكل ألاغا ألءحناها اب شكل ( 20- 5باألع اغىكربع مر ىفقى هات اخلواص
128
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
129
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
;]>> x=[0:0.2:30
;)>> y=sin(x)./sqrt(x+1
)>> stairs(x,y
شكل (21- 5
ءألاع تسم اخلطوك سك ب ا عال اغداغع contourم الع تسم امل اءغع ) z=exp(-x2-y2اب
أل املنحن اس.
املدو اغىاىل -2≤x≤2أل -2≤y≤3البظ اغداغع contourترسم
اتت اعاس املى zضو مسىوو املى و xأل yاغربانمج اغىاىل ألشكل ( 23- 5وب نا هات اغداغع
املساعد help contour ألسكنر فة املساعد عن ا ىفسى دام فة
130
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
0.8
0.6
0.4
0.2
0
-0.2
-0.4
-0.6
0 5 10 15 20 25 30
اغنار اغثاىن م مناك اغرسم هو ىفسى دام ااعاد هناك اغداغع stemاغا تسى دم كث ا اب جماع
امل اجلع اغرقا ع غإلشاتاس شكل ( 24- 5وبني اسى دم هات اغداغع اب تسم اخلطواس اغىاغ ع:
;]>> x=[0:0.5:30
;)>> y=sin(x)./sqrt(x+1
)>> stem(x,y
131
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
اغقة ل من ا مر هناك اغكث م هات اغدألاع اغا ال وىسر املكا غىكربى ا كة ا ألغك سنكى ى ب ر
عر مة ص هلات اغدألاع كاا اب شكل ( 25- 5شكل ( 26- 5ألشكل ( 27- 5وب نا اغكث
132
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
م ءألاع اغرسم أبمناك ىة ع ضحاألع جتربع كل من ا ألتؤوع اغى أل اس امل ىة ع هلا ظرا غاب ق املسابع غ ر
ت اص ل كل هات اغدألاع
133
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
134
حسن فؤاد.د.أ د اننسى سامل.م.أ حممد ابراهيم العدوى.د.أ
0.8
0.6
0.4
0.2
-0.2
-0.4
0 2 4 6 8 10
15
10
-5
-10
-15
0 2 4 6 8 10
135
حسن فؤاد.د.أ د اننسى سامل.م.أ حممد ابراهيم العدوى.د.أ
w=(5-x).^(1/2)./(4-x.^2);
figure, plot(x,w)
5
-1
-2
-3
-4
-5
0 2 4 6 8 10
0.5
-0.5
-1
3
2.5 4
2 3.5
3
1.5 2.5
y 1 2
x
136
حسن فؤاد.د.أ د اننسى سامل.م.أ حممد ابراهيم العدوى.د.أ
0.5
-0.5
-1
3
2.5 4
2 3.5
3
1.5 2.5
y 1 2
x
0.5
-0.5
-1
3
2.5 4
2 3.5
3
1.5 2.5
y 1 2
x
137
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
0.1
0.05
0
-0.05
-0.1
4
2 4
0 2
0
-2 -2
y -4 -4
x
0.1
0.05
0
-0.05
-0.1
4
2 4
0 2
0
-2 -2
y -4 -4
x
138
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
3
2
1
0
y
-1
-2
-3
-3 -2 -1 0 1 2 3
x
139
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
الفصل السادس
شاشا التعامل مب املستخدم GUI
1-6مقدمة
حتىوو شاشاس اغى امل مر املسى دم عةى اغ دود م املكوانس اغا مك املسى دم م اغى امل ت اعة ا
مر اغربامج م الع فرقا ىة ع تىة ص اب ءربع م ىاي أل اال ى ات م اغ دود م صناءوق اال ى ات
أل حترور بد اازتات املنعغقع أل ها اغكث امل ع هنا املسى دم غ م اغابرألتو وكو عةى
ءتاوع بكىابع مر م ني م ألامر املاتالب اب انضا ااألامر command windowأل با وكو مابطرا
غكىابع برانمج م ني اب مةف م مة اس ا م إ ضقر س نقر عةى بد امل ات خ أل خيىات ىفغ ت م بد
اال ى اتاس إ و ش ص قد كى برامج ىفسى دام غ ع اغباوس ر املرئى أل غ ع رو م غ اس اغربجمع
املرئ ع س قدت ق اع هات ا مكا ع اغا وقدم ا برانمج ماتالب اب هاا اغ ل شري ك ع اسى دام حمرت
اغى ا م غبنال شاشع غةى امل مر املسى دم مث ب د لغر -ألبدأل اغد وع اب اغكث م اغى اص ل -قوم
الع جماوعع م ااألمر اغشاشع م ببنال
140
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
اغاب ر إما surfغة ر اب صوت مسطخ ،أل meshغة ر اب صوت شبكع ،أل contourغة ر
اب صوت اتفع اتت اعاس ؤكد هنا عةى املسى دم حي ل عةى لغر ءأل كىابع و مر أل كىابع و
برانمج أل با ءأل و ءتاوع بربانمج ماتالب عةى ا فال ،إ وى امل مر هات اغشاشع كاا غو كا
وى امل مر بد تطب قاس امل كرألسوض مثل برانمج اغوألتء أل اغبوتبوون
141
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
-2كرء اغنقر عةى زتات OKسىظ ر غر شاشع حترور كاملوءحع اب شكل ( 3- 6ب ث حتىوو هات
اغشاشع عةى مسابع حترور س ىم ألءر مج ر املكوانس عة ا كاا سنرو اب اخلطواس اغىاغ ع عةى وسات
هات اغشاشع وواد صندأل هلات املكوانس اغا سن ىات من ا ما شال أل اب عةى شاشع اغىحرور البظ
هات اغشاشع صبخ هلا اسم ألهو untitled1.figني ت هاا االسم ألختعون اب املكا املناس ،
ألهاا االسم مواوء اب شرور اغ نوا ألاغاو وة شروطني آ رو بدمها شرور قوائم حيىوو اغقوائم اغش
اب كل تطب قاس واضا م كرألسوض ،مث شرور وقوانس حيىوو اغ دود م ااوقوانس امل رألضع وا ب
ااوقوانس اخلاصع اغا س ىم شرب ا ض اا ب د مر ب ا طواس اغى ا م ااءألاس املواوء اب شرور أل
صندأل ااءألاس عةى وسات اغشاشع سك اغى رف عةى اسم كل من ا كرء اغوقوف عة ىفغ ت أل
سك إظ ات اسم كل من ا ووات ااوقو ع اخلاصع ب ع فروق اغنقر عةى قائاع املة اس fileمث اغنقر عةى
ال املكوانس show names ا ى ات preferenceسىظ ر غر شاشع ادود قر عةى ات ب ا
in component paletteمث قر OKس ظ ر غر شرور املكوانس حب ث وظ ر كل مكو ألا
142
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
وواتت إلا كن ت ابل هاا املظ ر سك اغىحكم اب مسابع شاشع اغىحرور ىفغوقوف ىفغ ت عةى املربر
ااسوء اب س ل سني اغشاشع مث سح اغ ت ب ث سىالبظ ت مسابع اغشاشع مر عاة ع اغسح
كا لغر سثل اخلطو ااألىل م ت ا م شاشاس اغى امل مر املسى دم ألهى جت ع شاشع اغ ر ألءبر
مسابى ا
143
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
عةى display alignment toolsم هات اغقائاع سك ألءر احملالا أل ا ى ات منر احملالا سوال
احملالا ااضق ع أل اغر س ع ،ألكاغر سكنر ءبر املساضاس بني املكوانس ألب اب ا سوال كا هات املساضاس
ت س ع أل ضق ع
-5ب د إءاضع املكوانس عةى اغشاشع سنبد اب تسا ع كل مكو م هات املكوانس:
• مساى اغعتات ااألع وىم ت ت م Push Buttonإىل مسطخ أل Surfألاغعتات اغثاىن سن ط
االسم شبكع Meshألاغثاغث س طى االسم Contourوىم لغر ىفغنقر عةى قائاع View
م شرور اغقوائم مث ا ى ات ضابص اخلواص Property Inspectorب د لغر نقر عةى اغعتات
املراء ت ا ألغ ك اغعتات ااألع ،مث اه إىل اخلاص ع Stringم ضابص اخلواص مث قف
ض ا أل ها إىل اغكةاع Surfقر اب و مكا اتج جماع اخلاص ع Stringسىكد اسم
اخلطواس اغسابقع اغعتات قد ت إىل االسم اجلدود إء ر عةى اغعتات اغثاىن مث اغثاغث ألكرت
ال ىفقى اغعتاور كاا اب شكل (5- 6 غى
144
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
• مساى اغقائاع ألحمىواي.ا وىم ت ت ع فروق اغنقر عة ا مث اغاهاب إىل اغشرور املقابل غة اص ع
Stringألىفغنقر عةى هات اخلاص ع س ىخ غر مربر ادود إبد اب إءاضع مكوانس اغقائاع اب
هاا املربر كاا هو موءخ اب شكل ( 6- 6البظ حمىوايس هات اغقائاع هى اغدألاع اغا
س ىم عرء ا اب مسابع اغرسم أل بني احملاألت ألهى Peaksأل Membraneأل Sincب د
اال ى ال م إء اع هات املكوانس إء ر اغعتات OKغىسك ل هات املكوانس اجلدود
• ت مست ت تتاى اغنص اغثاب static textس ت ت ت ىم بن اغطروقع ع فروق اغنقر عة مث اغاهاب
إىل اخلاص ع Stringألت مساى اغنص اغثاب إىل Select Dataمث ا قر OK
• املربةع اا م مرابل إ شال شاشع اغى امل مر املسى دم -ب د اال ى ال م إء اع مسا اس
مج ر املكوانس -هى ختعو هات اغشاشع ألوىم لغر م الع اغنقر عةى زتات اغىش ل اا ابر
املائل س نا ب ث س ظ ر غر مربر بواتو خيربك بى عو هات اغشاشع وىم اغى عو اب مة ني
بدمها حيىوو اغشكل س اب مةف ىفمىداء .figألا ر مةف إم ىفمىداء .mكرء اغنقر
عةى هاا اغعتات اا ابر س ظ ر غر مربر بواتو خيربك هباا اال ى ات س ىم ختعو اغشكل اب
مة ني كاا لكران ،ألاب هات ا اغع عة ر اغنقر عةى اال ى ات yesغىسىار اب عاة ع اغى عو م
145
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
146
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
147
حسن فؤاد.د.أ د اننسى سامل.م.أ حممد ابراهيم العدوى.د.أ
ءف ااألامر اغىاغ ع اغا سىحس ب اانس املنحن اس املراء ت ا مباشر ب د اغى ة ق اغاو وبد بكةاع-9
: اب ءاغع االضىىاي كاا وةى%varagin….
% varargin command line arguments to SimpleGUI (see VARARGIN)
% Create the data to plot.
handles.peaks=peaks(35);
handles.membrane=membrane;
[x,y] = meshgrid(-8:.5:8);
r = sqrt(x.^2+y.^2) + eps;
sinc = sin(r)./r;
handles.sinc = sinc;
% Set the current data value.
handles.current_data = handles.peaks;
surf(handles.current_data)
148
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
-10اغسىع سطر ااألىل م هاا اغكوء توغد اغب اانس غةدألاع peaks, membrane, sincىفسى دام
املاتالب إهنا تقوم بى عو اغب اانس اب منش اغىداألع handles structureب ث س ىم مرورها إىل مج ر
برجم اس تن ا املكوانس ،ضاثال سك ازتات اغاب ر اغثالألع تناءو عةى هات اغب اانس م منش اغىداألع
آ ر سطرو اب هاا اغكوء توغد ب اانس اغداغع peaksألت ر مسطخ surfهات اغداغع كاا اب شكل
( 9-6كرسم تةقائى عند تش ل برانمج simpleGUI
-11اب هات اخلطو سنربمج قائاع اغ ر حب ث ت ر اغداغع املراء ت ا عند ا ى اتها م ءا ل هات
اغقائاع عندما وقوم املسى دم ىف ى ات ألابد م اغرسوماس اغثالألع ضو ماتالب وابر اخلاص ع Value
اب شرور اخلواص حب ث تساألو تقم اغرسم املطةوب peaks, membrane, contourمث م ل ب اانس
اغىداألع ا اىل handles.current_dataحب ث ت ر هاا اغرسم غكى ل إىل برجم ع قائاع اغ ر
إلا مل تك م ىوبع مامر م اخلطو اغسابقع ضو سكنر عال لغر ىفغنقر ىفغعتات ااس غة ت عةى
من ا View Callbackألمن ا قائاع اغ ر ب ث سىنعع مامر قائاع رو اصع هباا املكو ،
ا ىات ،Callbackب ث س ىخ مامر برانمج اع simpleGUIإلا مل وك م ىوبا ألس قف ءغ ل
اغكىابع عند برجم ع قائاع اغ ر اغا حتىوو ااسطر اغىاغ ع:
% --- Executes on selection change in popupmenu1.
)function popupmenu1_Callback(hObject, eventdata, handles
)% hObject handle to popupmenu1 (see GCBO
% eventdata reserved - to be defined in a future version of MATLAB
)% handles structure with handles and user data (see GUIDATA
% Hints: contents = get(hObject,'String') returns popupmenu1 contents as
cell array
% contents{get(hObject,'Value')} returns selected item from popupmenu1
149
حسن فؤاد.د.أ د اننسى سامل.م.أ حممد ابراهيم العدوى.د.أ
:%handles… ءف سطر اغكوء اغىاغ ع اب برجم ع قائاع اغ ر ب د اغسطر اغاو وبد ب-12
% handles structure with handles and user data (see GUIDATA)
% Determine the selected data set.
str = get(hObject, 'String');
val = get(hObject,'Value');
% Set current data to the selected data set.
switch str{val};
case 'Peaks' % User selects peaks.
handles.current_data = handles.peaks;
case 'Membrane' % User selects membrane.
handles.current_data = handles.membrane;
case 'Sinc' % User selects sinc.
handles.current_data = handles.sinc;
end
% Save the handles structure.
150
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
-13سنربمج اازتات اغثالألع بن فروقع برجمع قائاع اغ ر ع فروق اسىدعال برجم ع كل من ا مث إءاضع
ااكواء اغىاغ ع إغ ا ب د اغسطر اغاو وبد بكةاع %handlesاب كل من ا كاا وةى :ىفغنسبع غةعتات surf
ءف اغسطرو اغىاغ ني:
% Display surf plot of the currently selected data.
;)surf(handles.current_data
ىفغنسبع غةعتات Meshءف اغسطرو اغىاغ ني:
% Display mesh plot of the currently selected data.
;)mesh(handles.current_data
ىفغنسبع غةعتات contourءف اغسطرو اغىاغ ني:
% Display contour plot of the currently selected data.
;)contour(handles.current_data
151
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
-14باغر كو قد ا ى نا م برجمع هات اغشاشع غةى امل مر املسى دم ألسك ختعون ا ا ألاغىكربع
اغشاشع ،أل إلا مل تك هات اغشاشع م ا م الع اغىن ا ىفسى دام اغعتات اا ابر املواوء اب
أل مسابع اغىش ل بكىابع اسم اغربانمج SimpleGUIكاا م ىوبع ضو سك اغىن ا م سطخ املكى
ن ا و برانمج م مسابع اغىش ل
باغر كو قد ا ى نا م تقدمي مثاع مىكامل عةى بنال شاشع ت امل مر املسى دم ىفسى دام فروقع
املرشد GUIDEهناك فر رو غربجمع شاشاس اغىقابل مر املسى دم ع فروق اغربجم اس ألغكن ا
اب اغ اغ ال تكو بن س وغع هات اغطروقع ب ث هنا توغد اغشاشع ىفغكامل م الع ألامر تكى
اب مةف إم غةح وع عةى اغنى كع اغسابقع ن خ املسى دم بكىابع اغداغع اغىاغ ع ألختعون ا مث اسىدعائ ا
بكىابع اسم اغداغع م مسابع اغ ال:
function simple_gui
% Create and then hide the GUI as it is being constructed.
;)]f = figure('Visible','off','Position',[360,500,450,285
% Construct the components.
hsurf = uicontrol('Style','pushbutton','String','Surf',...
'Position',[315,220,70,25],...
;)}'Callback',{@surfbutton_Callback
hmesh = uicontrol('Style','pushbutton','String','Mesh',...
'Position',[315,180,70,25],...
;)}'Callback',{@meshbutton_Callback
hcontour = uicontrol('Style','pushbutton',...
'String','Countour',...
'Position',[315,135,70,25],...
;)}'Callback',{@contourbutton_Callback
htext = uicontrol('Style','text','String','Select Data',...
;)]'Position',[325,90,60,15
hpopup = uicontrol('Style','popupmenu',...
'String',{'Peaks','Membrane','Sinc'},...
'Position',[300,50,100,25],...
152
حسن فؤاد.د.أ د اننسى سامل.م.أ حممد ابراهيم العدوى.د.أ
'Callback',{@popup_menu_Callback});
ha = axes('Units','Pixels','Position',[50,60,200,185]);
align([hsurf,hmesh,hcontour,htext,hpopup],'Center','None');
153
حسن فؤاد.د.أ د اننسى سامل.م.أ حممد ابراهيم العدوى.د.أ
switch str{val};
case 'Peaks' % User selects Peaks.
current_data = peaks_data;
case 'Membrane' % User selects Membrane.
current_data = membrane_data;
case 'Sinc' % User selects Sinc.
current_data = sinc_data;
end
end
% Push button callbacks. Each callback plots current_data in
% the specified plot type.
function surfbutton_Callback(source,eventdata)
% Display surf plot of the currently selected data.
surf(current_data);
end
function meshbutton_Callback(source,eventdata)
% Display mesh plot of the currently selected data.
mesh(current_data);
end
function contourbutton_Callback(source,eventdata)
% Display contour plot of the currently selected data.
contour(current_data);
end
end
ت ىرب فروقع س ةع ب ث مج ر املكوانس تكو مواوء اب صندأل أل اب شرورGUIDE اغطروقع
ألسك سح و م هات املكوانس ألألء ا عةى اغشاشع اب املكا املناس ألىف كم املناس ب ث
سك ت كل لغر ع فروق اغسح ىفغ ت ألغ م الع ألامر كاا اب اغطر اا رو كى ى
هباا اغكم ع إ شال شاشاس اغى اعل مر املسى دم ألهناك اغكث م ا ءاضاس اغا سك االسى اء
]11- 9[ من ا مل ورود م ألسر املساعد اخلاص ىفملاتالب اب هاا املوءو أل ىفغبحث اب املراار
154
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
الفصل السابب
برانمج احملاكاة Simulink
1-7مقدمة
اغشركع املنىكع غةااتالب ألهاا اغربانمج سك وغ نر simulinkهو بد منىكاس برانمج احملاكا
اسى دام اب حماكا و ظام أل مشكةع قد ختطر عةى ىفغر ،بدلا م اغسؤاع اغاو قد خيطر عةى ىفغر
ع هات املشكةع إىل ألءر منولج ل هات املشكةع وىم ض حماكا اغد ل ألاخلرج هلاا اغنظام إىل مىاب ع
سةوك اغنظام م ب ث عالقع اخلرج ىفغد ل مر اغعم كل لغر وىم م الع بةوكاس ألظ ع ىة ع
وىم سحب ا ىفغ ت ألألء ا اب منولج مىكامل ودعم هاا اغربانمج اغكث م اغىطب قاس امل كا ك ع
ألاغك رب ع ألم اجلع ا شاتاس ألاغ وت ا اب لغر اغىطب قاس اخلط ع من ا أل اخلط ع ألاملاثةع اب اغعم
املسىار أل اب اغعم املىقطر اغكث م اغ ةاال ألامل ندسني اب اغكث م اغىطب قاس وبد عاء اب حماكا
مشكةى عةى هاا اغربانمج ألءتاسى ا ا دا ،ألتؤوع اسىكابع هاا اغنظام عند ماك ىة ع م الع ا ع
عر وىم ألء ا عند ااماك املراء ءتاسى ا ،أللغر قبل وبد اب اغىن ا اغ اةى هلا حيىوو ماتالب
عةى اغ دود م اغربامج اغىكروب ع املىكامةع اغا سكنر اغندال عة ا م انضا ااألامر command
windowم الع املساعد simulink demo modelsوبد هاا اغ ل بشري ك ع تش ل
برانمج اغسا وغ نر مر مثاع غ ال منولج بس ر ،مث طى مثاال تطب ق ا ع اغ اة اس املنطق ع ،ألب د لغر
ى ر غأل ظاع اغ رع ع حماكا امل اءالس ا ساب ع ألءألاع اغ بوت غأل ظاع م اغىطب قاس اهلامع ألاغا
ىناألهلا ىفغشري وابا ونى ى هاا اغ ل بىناألع ك ع تنش ر اا ظاع ألإءاضع فرف قدي غأل ظاع اغ رع ع
وىم حماكات ىفسى دام برانمج اغسا وغ نر: مثةع ملا سك
• حماكا اغس ألءتاسع ءاؤها اب اغظرألف امل ىة ع
• حماكا املركباس اجلووع ءونام ك ا ألءتاسع ءاؤها اب اغظرألف امل ىة ع
• حماكا اغس اتاس ألءتاسع ءاؤها وابا اب اغظرألف امل ىة ع
• حماكا سوا املاع ألت ا.ا اغ وم ع
• حماكا ظاع االت االس امل ىة ع
• حماكا اا ظاع ا ووع اغطب ع
155
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
عاة ع احملاكا أل اغناااع او ظام أل او مشكةع اب ألسر اغس ا وغ نر مر ىفملرابل اغىاغ ع:
-1حتدود اغنظام أل املشكةع املراء حماكا.ا
-2حتدود مكوانس هاا اغنظام
-3حماألغع منااع هاا اغنظام اءغع
-4اسى دام اغسا وغ نر اب بنال اغرسم اغ ندألقى غةنظام
-5تن ا هاا اغناولج
-6اغىحقق م ىائج هاا اغنظام
تبد اب اسى دام هاا ألع ألالث طواس وىم ت ن اها اتج طا اغسا وغ نر ألقبل البظ
اغربانمج
اب اخلطو ااألىل وىم ءتاسع اغنظام املق ي ألهل هاا اغنظام كب ا حب ث وىم جتعئى إىل ظاع ص ر ألوىم بنال
مث وىم جتا ا كة ا اب ظام ألابد وىم جتربى اب اغن اوع كل ألابد م هات اا ظاع اغ
اب طو حتدود مكوانس اغنظام ،هناك ألالألع وا م املكوانس:
بى ها • امل امالس ،أل اغثواب اغا تظل بىع ءائاا إال إلا قا
• املى اس ،أل اغق م املى اغا تى مر اغعم
ءونام ك ا مر اغعم • ا شاتاس ،ألهى إشاتاس اغد ل ألاخلرج بني بةوكاس اغسا وغ نر ألاغا تى
ألنال احملاكا
عةى هات ااسئةع: تس ع سر ألجت غكل ألابد م هات اا ظاع ااساس ع أل اجلا ب ع عة ر
• كم عدء إشاتاس اغد ل هلاا اغنظام؟
• كم عدء إشاتاس اخلرج هلاا اغنظام؟
• كم عدء املى اس اب هاا اغنظام؟
• كم عدء اغثواب اب هاا اغنظام؟
• هل هناك إشاتاس مربة ع أل ءا ة ع اب هاا اغنظام؟
غةبدل اب منااع اغنظام كرء ا اابع عةى هات ااسئةع تكو مسى دا ا
156
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
كاا سكنر تش ل اغسا وغ نر ىفغنقر عةى ااوقو ع اخلاصع ب اب شرور ااوقوانس اب شاشع ماتالب
اغرئ س ع ،أل م قائاع startمث اغاهاب إىل simulink
new بد اب عال موءول ادود م قائاع املة اس fileاب شاشع مكىبع وغ نر إ ا سك
مث إ modelسىظ ر غر مسابع عال ادود كاملوءحع اب شكل (2- 7
157
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
158
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
• م دت مواع ا ب ع م مكىبع امل اءت sourcesىفغنقر مرتني عةى وقو ع امل اءت املواوء اب
مسىكشف املكىبع كاا اب شكل ( 1- 7سى ىخ غر مكىبع رو م امل اءت اغ دود
كاملوءحع اب شكل ( ، 4- 7إ من ا امل دت Sine Waveألاسحب ىفغ ت إىل اغناولج
ألاترك اب املكا املناس كاا اب شكل (4- 7
• مبني لباىفس scopeم مكىبع اغباغوعاس Sinksسنسح وقو ع اع Scopeأل اب ا اب
مكا مناس عةى اغناولج بن اغطروقع اغسابقع
• بةوك تكامل Integratorم مكىبع اغعم املسىار Continuous
• بةوك توزور Muxم مكىبع توزور ا شاتاس Signal Routing
159
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
160
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
-4ع فروق اغنقر مرتني عةى و ألابد م هات املكوانس سى ىخ غر انضا سك م الهلا ءبر
م امالس هاا املكو أل هاا اغبةوك ضاثال سك ءبر مقدات ألترءء ألفوت م دت ا شات اجل ب ع ىفغنقر
مرتني عة
-5ا سك ختعو هاا اغناولج ىفغنقر عةى قائاع املة اس fileمث Save asب ث سكنر ختعو
اغناولج أبو مساى ترودت ،ألغقد نات ex1
-6قبل تن ا اغناولج قر عةى قائاع Simulationألمن ا إ Configuration parameters
ب ث س ىخ غر مربر بوات سك م
الغ ءبر ب م امالس اغىن ا مثل
زم بدل اغىن ا ،ألزم هناوع اغىن ا أل
لغر
-7ب د ءبر هات امل امالس سك
تن ا اغناولج ىفغنقر عةى زتات اغىش ل
(اغس م ااسوء املائل س نا اب شاشع
اغناولج
-8ىفغنقر مرتني عةى وقو ع اع scope
وظ ر س ظ ر اخلرج اغاو م امل رأل
كاا اب شكل (7-7
-9اب اغن اوع سكنر إءاضع وص
توء ح ع عةى اغناولج اب و مكا ترود
ع فروق اغوقوف ىفغ ت عةى املسابع
شكل ( 7-7تن ا اغناولج ألعر اخلرج
املراء اغكىابع عندها ألاغنقر مرتني ب ث
سىظ ر غر مسابع ء اع اغنص سكنر اغبدل اب كىابع اغنص املطةوب تاكر غسول ا ظ ضو
اغناولج ماتالب غ ب إمكا ع كىابع مثل هات اغن وص ىفغة ع اغ رب ع شكل ( 8- 7وبني
اغن وص اغىوء ح ع عة اغسابق ب د إءاضع ب
161
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
162
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
163
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
164
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
165
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
-19م اغبةوكاس اغكث االسى دام وابا بةوك موغد ا شاتاس Signal Generatorاغاو سك
ا وع من عةى موااس ا ب ع أل موااس مرب ع أل س املنشات أل مواع عشوائ ع ع فروق اغد وع يف
قائاع واص ألا ى ات شكل املواع املراء إ راا ا شكل ( 13- 7وبني تبر م هات اغبةوكاس ألقد
ءبر كل من ا عةى بد هات املوااس ألعرء ا مج ا عةى ألسوغوسكوب ألابد
-20سكنر ت مدو احملاألت اغناجتع م ااألسوغوسكوب ألألءر عنوا غ أللغر ىفغوقوف ىفملاألس عةى
احملوت اغر سى ألاغنقر ىفغعتات ااس ب ث س ظ ر غر مربر سكنر م الغ ت اغق م اغ ظاى ألاغ رو
غةاحوت ألألءر عنوا هلاا اغشكل
-21بةوك اغىوزور MUXغ كثر م ء ل ،ألغ رج ألابد ،ب ث وقوم املوز ىف ى ات هات ا شاتاس
كثر م إشات عةى اغدا ةع ألإ راا ا عةى رج ألابد اغوابد ب د اا رو حب ث سك عر
166
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
الهلا ا ى ات عدء ااألسوغوسكوب ىفغنقر املعءألج عةى هاا اغبةوك ت ىخ غر قائاع واص سكنر م
املدا ل هلاا اغبةوك
167
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
اخلرج عةى ااألسوغوسكوب باألع بنال هاا بواىفس اع ANDألاع NOTألاع ORمر عر
اغناولج ألجتربى
168
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
إ كا هناك محل ادألع 1-7وبني ت اص ل هاا اجلدألع البظ اغ ت املنطقى غةد ل بدلا م اغرقم
000با اغرقم 111ألاب مقابل كل ء ل ألءر اغد ل اب اغ اوءو S, Cnشكل ( 18- 7وبني
حماكا غدائر منطق ع مكو ع م ادألع بق قع غ ألالث مدا ل أل راا إظ اتمها عةى بد املظ راس
اغرقا ع ء اع ادألع ا ق قع نقر مرتني عةى اغبةوك Combinational logicألاب املكا truth
tableد ل ص ى اخلرج S, Cn-1ضقر اب صوت ص وف م وضع و ل كل من ا ض ةع منقوفع
ألموءوعع بني اغقوسني اغىاغ ني ] [ كاا اب شكل (17- 7
جدول ( )1- 7جدول الحقيقة للمجمع الكامل
a b Cn-1 S Cn
0 0 0 0 0
0 0 1 1 0
0 1 0 1 0
0 1 1 0 1
1 0 0 1 0
1 0 1 0 1
1 1 0 0 1
1 1 1 1 1
169
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
Bus creatorاب شكل ( 18- 7وقوم بىكا ر إشاتاس اغد ل (اب هات ا اغع 3مدا ل ألخيرا ا
اب صوت مسات مىوازو جمار اب ر ألابد كاا اب اغشكل با ال وعءبم اغشكل ىفخلطوك البظ
عدء طوك اخلرج وساألو عدء املدا ل ألسك اغىحكم اب هاا اغ دء ىفغنقر املعءألج عةى اغبةوك ألءبر
هاا اغ دء آ ر بةوك اب شكل ( 18- 7هو اغبةوك Constantاغاو و طى ق اع بىع عةى اخلرج
سك حتدودها م شاشع مواص اس هاا اغبةوك اغا تظ ر عند اغنقر عة مرتني اب هات اغشاشع قر
عةى شباك واص ا شات Signal attributesألا و اغب اانس اغا ونىاى إغ ا اغثاب اغاو
تكو مىاباع ع اغدقع Doubleأل Single سى رج ق اى عةى رج اغبةوك ،ض ات اغب اانس سك
أل Fixedألهناك اغكث م وا اغب اانس اغا سك اال ى ات من ا ،ألغك اب باغع اغى امل مر اغب اانس
اغرقا ع كاا اب هاا املثاع ض ة ر ختىات اغنو Boolean
170
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
171
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
172
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
وع عةى ظام ضرعى ىفغطروقع اغثا ع طواس ا شكل (21- 7
هاا اغنظام اغ رعى اجلدود سوال ا وع عة ىفغطروقع ااألىل أل اغثا ع سكنر ت ط و اسم ترود
ع فروق اغوقوف عة ىفغ ت ألاغنقر عةى اغعتات ااس ب ث سىظ ر غر قائاع إ من ا Block
اخلاص ع name Propertiesب ث سى ىخ غر انضا بوات إ من ا Block Annotationمث ا
ألاب املقابل ءر االسم اغاو ترود ب ث س ظ ر حت وقو ع اغنظام اغ رعى
ا سنسى دم هاا اغنظام اغ رعى XORمر ب املكوانس اا رو غبنال ءائر جمار كاا اب شكل
(22-7
173
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
شكل ( 22- 7ءائر جمار كامل ىفسى دام بةوك اغنظام اغ رعى XOR
ا سن ىات كل املكوانس املواوء اب شكل ( 22- 7ألجنا ا ءا ل بةوك ظام ضرعى ادود سنسا
Full Adderألهاا اغبةوك غ ألالث مدا ل أل راا كاا اب شكل (23- 7
با ا ت ونا ك ف جتا ر ب اغبةوكاس غىكوو ظام ضرعى سثل بوابع ،XORب د لغر اسى دمنا
هاا اغنظام اغ رعى مر ب اغبةوكاس اا رو غبنال جمار كامل مث ألء نا كل هات املكوانس اب ظام
ضرعى ادود سثل اجملار اغكامل
غكى جنار اغرقاني A=a3a2a1a0أل B=b3b2b1b0سنحىاج اتب ع جما اس كامةع ،Full Adder
اجملار ااألع س كار اغب a0مر اغب b0ألسنابر اغد ل اغثاغث اب هاا اجملار ب ر ،رج هاا اجملار
س كو S0أل C0اجملار اغثاىن س كار a1مر b1مر ا ال م املربةع اغسابقع C0ألسى طى اخلرج
ا اجملار اغرابر S1أل C1اجملار اغثاغث س كار a2مر b2مر C1ألس طى اخلرج S2أل C2
س كار a3مر b3مر C2ألس طى S3ألا ال C3بن اغطروقع سك زايء ألبداس جتا ر رو
جلار و بىاس رو وراء مج ا
شكل ( 24- 7وبني ءائر جتا ر اغرقاني Aأل Bىفسى دام بةوك اغنظام اغ رعى Full Adderكوبد
بنال
174
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
ا سك جتا ر كل حمىوايس اغدائر املواوء اب شكل ( 24- 7غى بخ ءا ل بةوك ظام ضرعى سنسا
جمار 4ب ،ب ث وقوم هاا اجملار وار اغرقاني Aأل Bكل من اا 4ب ألو طى اغناتج Sاملكو م
4ب وابا ألا ال Cإىل املربةع اغىاغ ع كاا اب شكل ( 25- 7البظ اب شكل (25- 7
وغ نر قد عاء ترت اافراف حب ث تكو مرتبع ءا ل اغبةوك س حب ث وكو اغد ل ااألع In1
م انب ع اغ سات ألب دت اغد ل اغثاىن In2ألهكاا با اغد ل اغىاسر In9اب ق ى اغ اني
اغشىل ىفغنسبع غةا اتج Out1ألب دت امل رج Out2ألهكاا با امل رج اا Out5اب ق ى
اغ اني هنا وابا اكر سكنر ت مسا اس اغد ل ألاخلرج إىل و ال ترودها ،ضاثال سك تسا ع
اغد ل In1ىفالسم b0ألاغد ل In2ىفالسم a0ألاغد ل In3ىفالسم c0ألهكاا أللغر م الع
واص هاا اغبةوك
175
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
شكل ( 23- 7جتا ر بةوك ظام ضرعى غةاكار اغكامل Full Adder
البظ ىفغنقر املعءألج عةى و ظام ضرعى ضو و ىخ شاشع تبني حمىوايس هاا اغنظام اغ رعى ،ضاثال
ىفغنقر املعءألج عةى اغنظام اغ رعى غةاكار 4ب SubFullAdderCircuitاملبني اب شكل (- 7
25س ىخ غر شاشع تبني حمىوايس هاا اغبةوك املوءحع اب شكل ( 24- 7ألىفغنقر املعءألج عةى
بد اا ظاع اغ رع ع املواوء اب شكل ( 24- 7ألهو FullAdderس ىخ غر شاشع ادود تبني
حمىوايت كاا اب شكل ( 23- 7اغاو حيىوو عةى ظاع ضرع ع رو ألهى SubXorب ث ىفغنقر
عة س ىخ غر شاشع ادود تبني حمىوايس هاا اغنظام اغ رعى م بواىفس اع ANDألاع ORباألع
جتربع لغر
176
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
شكل ( 24- 7بنال جمار 4ب ىفسى دام 4ألبداس م بةوك اغنظام اغ رعى
Full Adder
177
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
شكل ( 26- 7حماكا م اءغع اغىحوول م ءتااس برات اب اغنظام املئوو إىل
اغنظام اغ رهن ا
م املاك اسى دام اغراسم xyأل اع XY plotterغرسم اغ القع بني ءتاع ا رات ىفغىدتوج املئوو
ألاغىدتوج اغ رهن ا كاا اب شكل ( 27- 7ع فروق ألءر م دت ءاغع ت اعدوع ط ع Ramp
functionبدال م امل دت اغثاب Constant
178
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
شكل ( 27- 7اسى دام اع XY Plotغرسم اغ القع بني اغدتاع املئووع ألاغدتاع
اغ رهن ا
سك وابا حماكا و م اءغع تايء ع مثل امل اءغع اغىاغ ع:
f 5 x 3 3x 2 4 x 2
شكل ( 28- 7وبني حماكا هات امل اءغع م الع اسى دام بةوك Math functionأل اغداغع ا ساب ع
ألم الع واص خنىات اغداغع Powب ث وقوم هاا اغبةوك حبساب اغد ل ااألع (ااعةى مرضوعا إىل
اغقو املواوء عةى اغد ل اغثاىن (ااس ل بةوك اغداغع ا ساب ع ااألع س حس اغد ل xاغقاءم م
اغداغع اخلط ع مرضوعا إىل اغقو 5اسى دمنا وابا بةوك اغىكا ر Addجلار كثر م ء ل ب ث ىفغنقر
املعءألج عةى هاا اغبةوك سك زايء عدء املدا ل إىل اغ دء املطةوب ع فروق زايء ا شات ) (+غةد ل
ى كع حماكا هات امل اءغع عةى اع اغاو س د ل غ ىم مج ألا شات ( -غةد ل اغاو س ىم فرب
اغشكل (28- 7 XY Plotموءحع اب
179
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
180
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
رج ااألسوغوسكوب هاا اغشكل ألءر اغد ل اب صوت مواع مرب ع حتاكى ءاغع اخلطو با وكو
ثال السىكابع اخلطو هلاا اغنظام
هناك اب مكىبع اغدألاع ا ساب ع Math functionsوواد بةوك ا ءاغع اغ بوت Transfer fcnب ث
سك مث ل و ءاغع عبوت (ءا ل هاا اغبةوك اب حموع البالس Laplace transformationبا سك
ءتاسع و اسىكابع هلاا اغنظام غىاث ل و م اءغع ت اءة ع اب حموع البالس قوم إبارال حموع البالس
عةى هات امل اءغع كاا وةى:
) dx(t
) 2 x ( t ) u ( t
dt
181
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
اغ ةاة اس اغبس طع حن ل عةى ما وةى: إبارال حتوول البالس هلات امل اءغع ألإارال ب
Sx 2 x u
x 1
u S2
سك جتا ر اغبةوكاس املب نع اب شكل ( 30- 7ألاغا حتاكى هاا اغنظام بةوك ءاغع اغ بوت ا
Transfer Fcnسك ا وع عة م مكىبع وغ نر غةدألاع املسىار Continuousىفغنقر مرتني
عةى هاا اغبةوك ألإء اع م امالس اغبسر ألهى ] ،[1ألم امالس املقام ألهى ] ،[1 2ألءبر ترءء إشات
اغد ل ألاغىن ا حن ل عةى اخلرج عةى شاشع ااألسوغوسكوب كاا اب شكل ( 30- 7البظ
أن ا اب االعىبات اغشرك ااألىل Initial condition االسىكابع كاا اب شكل ( 29- 7م
وساألو ص ر
شكل ( 30- 7اسىكابع اخلطو ىفسى دام بةوك ءاغع اغ بوت Transfer
Fcnم مكىبع Continuous
182
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
م امالس كاثاع آ ر سنقدم اسىكابع ظام حتكم م اغدتاع اغثا ع كاا اب شكل ( 31- 7باألع ت
ءاغع اغ بوت ألم امل اغىكب غ و اغنى كع عةى ااألسوغوسكوب
183
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
اب شكل ( 32- 7قانا بى ا م ظام بس ر مكو م بوابع ANDألا ةنا بد هات اافراف
وساألو ألابد م الع اغبةوك Constantأل ما اغطرف ا ر ض و عبات ع املد ل ( 1أل رج اغبوابع
عةى امل رج ( 1كاا اب اغشكل ب د لغر قانا بوءر كل هات املكوانس اب ظام ضرعى كاا سبق ب د
لغر قوم ب ىخ هاا اغنظام اغ رعى ىفغنقر عة مرتني مث اب ف هلاا اغنظام اغ رعى اغبةوك ،enableألهاا
اغبةوك حن ل عة م مكىبع وغ نر Ports&subsystemsب د ألءر هاا اغبةوك ءا ل اغنظام
اغ رعى قوم إب الق ،ب ث سنرو م إءاضع مد ل غةنظام اغ رعى سك تنش ط م الغ كاا اب
اغشكل (32- 7
البظ بةوك اغىنش ر enableال سك إءاضى إال عةى ظام ضرعى subsystemألهاا هو اغسب
اب نا اب شكل ( 32- 7قانا بىكوو ظام ضرعى مث ضىحنا هاا اغنظام مث ء نا اغبةوك enableمث
ةقنا اغنظام اغ رعى مر رو ا ب د إءاضع فرف اغىنش ر سك اسى دام ب ث سنقوم اب هاا
املثاع بىوص ل م دت غةنباباس عةى هاا اغطرف سنك ل عر اغنبابع عةى هاا اغطرف كرب كث ا م
عر اغنبابع اب م دت اغنباباس اغدا ل عةى اغبوابع ANDمث ن ا اغنظام ب ث سنرو اغنباباس
اغدا ةع عةى اغبوابع ANDغ مر إال اب اغ اس اغا وكو ض ا اغطرف Enableوساألو ألابد كاا
اب شكل ( 33- 7اب شكل ( 33- 7ا شات ااألىل اب رج ااألسوغوسكوب مثل ا شات املواوء
عةى اغطرف enableألا شات اغثا ع هى ا شات املوصةع عةى ء ل اغبوابع ANDأل ما ا شات اغثاغثع
ض ى ا شات اخلاتاع م اغبوابع ANDب ث رو أتأل فرف اغىنش ر enable
184
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
185
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
186
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
البظ م رج ااألسوغوسكوب ك ف مر ا اضع اغ اعد اب فرف اغقدي وىم مسر اخلرج عةى ق اع
املواع اجل ب ع عند هات اغةحظع كاا ألءحنا سابقا
غكى رو اغ ر بني أتأل فراب اغقدي ألاغىنش ر سن ىخ اغنظام اغ رعى اغسابق أل اب ف غ بةوك تنش ر
ألبةوك قدي (إلا باألغ إءاضع بةوك تنش ر غنظام ضرعى ب بةوك قدي ت ا ال وواضق اغنظام عةى لغر ،اب
هات ا اغع قم إبغ ال بةوك اغقدي مث ءف بةوك اغىنش ر مث ءف ب دت بةوك اغقدي مر ع ضس ىم
عندما وكو فرف اغىنش ر ص را كاا اءبر اغ ءءاس اب امل اءت امل ىة ع ب ث سنالبظ قبوغ
187
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
اب رج ااألسوغوسكوب اغثاىن ضو رج اغنظام اغ رعى وكو ص را أل ما عندما وكو فرف اغقدي ص را
ضو رج اغنظام اغ رعى وكو هو ق اع اخلرج عند ظع اغقدي ألغ ص را كاا اب باغع فرف اغىنش ر
ألكاا هو موءخ اب اغشكل (35- 7
188
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
اغ رعى اغثاىن (ااس ل حيىوو بةوك تكب Gainم امل تكب ت وساألو -1غ ك اغن ف اغساغ
غةاواع ،أل توص ل فرف اغىنش ر هلاا اغنظام اغ رعى عةى بةوك املواع اجل ب ع م الع بةوك تكب
امل تكب 1-غ كو شطا اب اغن ف اغساغ م املواع ضقر رج اغنظام اغ رعى مرورت إىل
ااألسوغوسكوب م الع بةوك اغدمج وابا كاا اب شكل ( 36- 7اغاو وبني رج ااألسوغوسكوب
وابا
189
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
بةوك اغدمج Mergeغ عد ء وع أل رج ألابد ألوقوم هاا اغبةوك بدمج كل هات اغد وع اب رج ألابد
حب ث وكو اخلرج مساألاي غةد ل اغقاءم م اغبةوك اغ اع أل اغاو و ال هاا اغبةوك م ول م مكىبع
وغ نر Signal Routing
سنكى ى هباا اغقدت م اامثةع ألاملواء ر اخلاصع بربانمج وغ نر ا اغسا وغ نر غكى وىم ت ط ى
ىفغكامل ضو غ وك هاا اغكم اب هاا اغكىاب ألغكن حيىاج غكىاب من رء ألغكننا ىقد هباا اغكم
م امل ةوماس ع اغسا وغ نر كو قد كش نا ظةااس هاا اغربانمج حب ث وسىط ر اغقاتول ب د لغر
ألاسى دام ا اب هات اغىطب قاس و ىاد عةى س اب جتربع ىفقى اغبةوكاس امل اع اب جماع خت
أل ش وابا إىل املراار [ 12أل ]13
190
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
الفصل الثامن
Data acquisition اكتساب البياان
1-8مقدمة
عاة ع إء اع ألإ راج اغب اانس سوال اغىااألة ع أل اغرقا ع م املواء ر لاس اامه ع غةكث م امل ندسني اب
اس م الع كاتس اكىساب اس ب ث تكو هناك بااع ء اع هات اغب اانس إىل ا مج ر اغى
ع اب هاا م اغشركاس املى اغب اانس Data acquisition cardاغاو وىم ت ن ع فروق اغكث
،ألاغاو سنسى دم اب اغكث اجملاع بد مثةع هات اغكرألس هو كاتس اغ وس املثب ءا ل ا اس
بد هاا اغ ل بشري اس م اامثةع اب هاا اغ ل ء اع ألإ راج إشات اغ وس م ألإىل ا
غةدألاع املسى دمع اب إ راج ألإء اع اغب اانس اغىااألة ع ،مث ى ر جل از اوع اب اامه ع ألهو
ااألسوغوسكوب ب د لغر ر بةوكاس اغس ا وغ نر اغا ختص اكىساب اغب اانس مر شري م ل
السى دام بةوك ا ء اع ب د إء اع ا شات إىل ا اس تكو هناك اب اغ اء مربةع م اجلع هلات
اغب اانس اغا تىم ءا ل ا اس ألىفغطبر ضو هات املربةع ت ىرب اتج هداف اغكىاب اغن حع هنا هى
عةى اغقاتول ورار ءائاا إىل املساعد helpاغا ووضرها ماتالب ألاغا حتىوو اغكث م اغدألاع
أل واص كل من ا ألاغا هى اتج طا اغكىاب ألاغا ال وىسر اجملاع غةشري اغى ةى هلا هنا ،ألغكننا
اكى نا هنا بىقدمي اغقة ل م ااضكات اب اجملاع ألألءر اغقاتول عةى اغطروق غ سىار هو اب االسىعاء إ
تاء
191
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
راج هات اغب اانس م هدف ا راج إىل ا از عند إ شال هدف غإل راج مثل AOال وىم ضىخ قنا
ا راج س غكى وىم لغر سى دم اامر ) ( addchannelسكنر تى ل اهلدف اغاو تقوم
إب شائ عةى ا ر أل حمىوو خترج من هات اغقنواس channelsأل اخلطوك ،ب ث اغقنواس تسى دم
مر ا راج اغىااألةى ،ألاخلطوك linesتسى دم مر ا راج اغرقاى شكل ( 2- 8وبني ت ا توء ح ا
مل ىن اهلدف ألاغقنواس املةحقع ب اب باغع ا راج اغرقاى وىم اسىبداع اغقنواس خبطوك مثل اغب اانس
اغرقا ع اامرا اغىاغ ا وب نا إ شال هدف aoألضىخ قناتني غإل راج اغىااألةى م الع هاا اهلدف
192
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
;)'ao = analoginput('winsound
)addchannel(ao,1:2
193
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
ىفغنسبع غكرألس اغ وس املةحقع ىف اس قل م دع ع ناس هو 8ك ةوهرتع ،أل عةى م دع ع ناس هو
44.1ك ةوهرتع ،ألقد مىد با 96ك ةوهرتع اب ب اغكرألس اغق م احملدء أل اغق اس ع مل دع اغ ناس
هى 8أل 11.025أل 22.05أل 44.1ك ةوهرتع
اخلاص ع اغثا ع اغا م حتدودها غكل هدف هى اص ع اغقدي triggerهات اخلاص ع حتدء توق
إ راج اغب اانس عةى ا از إ راج اغب اانس اغىااألة ع اغاو هو اغسااعع اب باغع كاتس اغ وس هناك
وعا شائ ا م اغقدي وىم ا ى ات بدمها ىفامر TriggerTypeاغنو ااألع م اغقدي هو
Immediateألاغاو وبد إ راج اغب اانس كرء تن ا اامر startاغنو اغثاىن م اغقدي هو اغ دألو
Manualألاغاو وبد إ راج اغب اانس ب د تن ا اغداغع triggerم مسابع اغ ال workspace
كع م اغربانمج اغىاىل وبني كل هات اغ اة اس ،كرء تن ا هات اغ وت م اغربانمج سىسار ص ات
اعع ا اس مباشر
%Output analog data to the sound card
;)'ao = analogoutput('winsound
;)addchannel(ao,1:2
)set(ao,'SampleRate',44100
;)')data = sin(linspace(0,2*pi*500,44100
)]putdata(ao,[data data
)start(ao
اب اغ وت اغىاغ ع م اغربانمج إءاضع مر غىحدود فروقع اغقدي أب تكو ودألوع ،ألغاغر ضو بىن ا
اغربانمج ضة تسار اغ وس إىل تكى اغداغع ) trigger(aoاب مسابع اغ ال ب ث ب دها سىسار
اغ وس
%Reading analog data from the sound card
;)'ao = analogoutput('winsound
;)addchannel(ao,1:2
)set(ao,'SampleRate',44100
;)'set(ao,'TriggerType','Manual
;)')data = sin(linspace(0,2*pi*500,44100
)]putdata(ao,[data data
194
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
)start(ao
اب اغربانمج اغسابق اغب اانس dataاغا س ىم إ راا ا عبات ع اغداغع اجل ب ع ) ( sinجملاوعع م قر
اغب اانس املوغد ىفامر ) ( linspaceهاا اامر ووغد مىك م اغب اانس عدءها 44100بني اغق اع
ص ر ألاغق اع 2*pi*500حب ث تكو املساضع أل اغعم بني هات اغنقاك ط ع البظ مد هاا
اغ وس سىكو ع ألابد ب ث عدء اغنقاك وساألو م دع اغ ناس اب اغثا ع احملدء أبمر حتدود
م دع اغ ناس سك اغىحكم اب ترءء اغ وس اغناتج ع فروق ت اغرقم 500ب ث بعايء هاا اغرقم
س عود اغ ءء اغناتج
راج ع فروق اامر (putdata ب د جت ع اغب اانس ىفامر dataم ألء ا اب فابوت عةى ا از ا
) كاا اب اغربانمج اغسابق البظ هدف ا راج aoحيىوو قناتني 1:2كاا اب مر إءاضع اغقنواس
) ( addchannelاب اغربانمج اغسابق غاغر عند ألءر اغب اانس عةى ا از ا راج البد م ألء ا
عةى كل قنا ضىح ا اب هاا اهلدف ،غاغر ألءر اغب اانس اب صوت عاوءو ] [data dataكاا اب
اغربانمج سكنر اغىكربع مر قنا ألابد أل كثر م قنا
ألءر اغب اانس اب صوت فابوت مام كل قنا سكنر تن ا اغربانمج ىفامر ) ( startكاا اب بد
اغربانمج ب ث كرء تن ا هاا اامر سىسار اغ وس مباشر إلا مل وك اغقدي ودألاي تاكر البد م
تن ا هاا اامر غكى تسار اغ وس إلا كا زم إ راج ا شات عةى ا از ا راج فووال سكنر إوقاض
اب و ألق ع فروق اامر ) (stop
195
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
;)'ai = analoginput('winsound
اب باغع اسى دام اغكاتس امل نر م شركع National Instrumentمثال سك اسى دام اامر اغىاىل:
;)'ai = analoginput('nidaq','Dev1
أل وع حب ث سكنر اغسؤاع عن اا كاا وةى: كرء ضىخ هدف ا ء اع وقوم ماتالب بىحدود ا
;)'>> ai = analoginput('winsound
)}'>> get(ai,{'Name','Type
= ans
''winsound0-AI' 'Analog Input
اب ااألامر اغسابقع ضىخ اهلدف ىفامر ) ( ،analoginputألب د لغر اغسؤاع ع هاا اهلدف ىفامر
) ( getغةسؤاع ع اسم هاا اهلدف أل وع ضكا ا اابع اسم هاا اهلدف هو winsound0-AI
هدف إء اع ب اانس Analog Input أل وع
كاا اب باغع إ راج اغب اانس ضو اب باغع إء اع اغب اانس البد م ضىخ قنواس ب د إ شال اهلدف اب
باغع كاتس اغ وس املةحق ىف اس سك ضىخ قنا ألابد أل قناتني اب باغع ضىخ قنا ألابد ضو منر
اغ وس اب هات ا اغع س كو باءو monoألاب باغع ضىخ قناتني س كو منر اغ وس ألنائى أل جمسم
stereoااألامر اغىاغ ع تسى دم اب ضىخ هات اغقنواس:
;)addchannel(ai,1
اهلدف أللغر غ ىخ قنا ألابد اب اهلدف aiاب كاتس اغ وس اامر اغىاىل س ىخ اغقنا اغثا ع اب
اغسابق:
;)addchannel(ai,2
اامر كاا وةى: ألسك ضىخ اغقناتني بن
;)addchannel(ai,1:2
سكنر باف و ألابد م اغقناتني ىفامر اغىاىل:
))delete(ai.Channel(2
196
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
عندما تكو اب اغنار اغثنائى ألترود باف قنا ،ضالبد تكو هات اغقنا هى اغقنا اغثا ع ،إلا باض
اغقنا ااألىل ألترك اغثا ع ضو ماتالب س طى تساغع ط عةى لغر
هناك واص جل از (كاتس ا ء اع البد م ءبط ا ،ماما كاا ض ةنا مر ا ع ا راج م هات
اخلواص م دع ا اغ ناس sampling rateألاغاو سك ءبط كاا اب ااألامر اغىاغ ع:
;)'ai = analoginput('nidaq','Dev1
;)addchannel(ai,0:1
)set(ai,'SampleRate',100000
وكو ألاق ا ءا املدو احملدء ع فروق كاا لكران مسبقا م دع اغ ناس اب ااألامر اغسابقع م
اغشركع املنىكع هلاا اجل از إلا مل تك اغق اع احملدء اب اامر مىواضقع مر اغق م احملدء اب كىاغوج اغكاتس
ضو ماتالب وساألو ا أبقرب ق اع اب اغق م احملدء اب كىاغوج اغكاتس ،ألسك االسى سات ع اغق اع ا ق ق ع
اغا اعىباتها ىفملىالب كاا اب اامر اغىاىل:
;)'ActualRate = get(ai,'SampleRate
اخلاص ع اغثا ع هى اص ع اغقدي ألهى كاا شربنا مسبقا إما وكو اغقدي ضوتاي immediateب ث
حتدث عاة ع إء اع اغب اانس ب د تن ا اامر startضوتا ،أل ودألاي ب ث حتدث عاة ع اغقدي ب د تن ا
حتدث عاة ع اغقدي برجم ا كرء تىحقق شرألك عاة ع مر اغقدي triggerودألاي وابا سك
اغقدي اب اغربانمج اامر اغىاىل ووءخ مثاال عةى فروقع اغقدي:
)'set(ai,'TriggerType
هناك وابا اخلاص ع SamplesPerTriggerاغا حتدء عدء اغ ناس اغا وىم اكىساهبا مر كل عاة ع
قدي كاا اب املثاع اغىاىل:
)set(ai,'SamplesPerTrigger',500000
197
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
اب هات ا اغع سىسىار عاة ع اكىساب اغب اانس إىل وىم تن ا اامر أل اغداغع stop
املثاع اغىاىل س قر ب اانس م الع امل كرألضو املةحق بكاتس اغ وس مث قوم إب راج هات اغب اانس عةى
اغسااعع غنسا ا ب ث ءبر م دع اغ ناس عةى 8ك ةوىفو ،أل حتدود عدء اغ ناس املطةوب
قرال.ا بوابد ع اب م دع اغ ناس ،أل ءبر اغقدي غ كو ودألاي حب ث تبد عاة ع اغقرال ضوت تن ا
اامر ) trigger(AIمر اال ىظات waitتن ات با وىم اال ىظات ني اال ى ال م عاة ع اغقرال
غةب اانس أل زايء هاا اغعم قدات ألابد ع إءاض ع با وىم اغى كد م اال ى ال م عاة ع اغقرال اب
آ ر عاة ع اغقرال اسى دام اامر ) getdata(AIغوءر اغب اانس املقرألل اب امل وضع dataم دا
راا ا عةى اغسااعع اب اجلعل اغثاىن م اغربانمج تاكر وكو م دع اغ ناس اب باغع اغقرال مساألاي
مل دع اغ ناس اب إ راج هات اغب اانس
%Reading analog data from a mic and output to loudspeaker on the
soundcard
;)'AI = analoginput('winsound
;)chan = addchannel(AI,1
duration = 1; %1 second acquisition
;)set(AI,'SampleRate',8000
;)'ActualRate = get(AI,'SampleRate
)set(AI,'SamplesPerTrigger',duration*ActualRate
)'set(AI,'TriggerType','Manual
;)start(AI
;)trigger(AI
;)wait(AI,duration + 1
;)data = getdata(AI
;)'ao = analogoutput('winsound
;)addchannel(ao,1:2
)set(ao,'SampleRate',8000
)]putdata(ao,[data data
)start(ao
198
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
قرال.ا ألإ ال هدف اغقرال ب د اال ى ال م عاة ع اغقرال سكنر اغى ةص م هات اغب اانس اغا
امل ىوي ىفسى دام اامرو اغىاغ ني:
)delete(AI
clear AI
إ اغب اانس اغا تسك ة ا اب امل وضع dataاب اغربانمج اغسابق سك االسى اء من ا اب اغكث م
اع ا ضقر ضاثال سك إارال حموع ضوتور عةى هات اغب اانس حب ث ىاك م اغىطب قاس ألغ ب ر
ا غى ط نا حموع ضوتور غةب اانس تؤوع احملىوايس اغ ءءوع ض ا غقد ألضر ماتالب اغداغع اغىاغ ع ألامل د
اغا اكىساهبا:
;)[f,mag] = daqdocfft(data,Fs,blocksize
م امالس هات اغداغع هى امل وضع dataاغا حتىوو اغب اانس اغا اكىساهبا ،ألم دع اغ ناس Fsأل
ترءء اغ ناس ،ألعدء اغب اانس املكىسبع املراء بساب حموع ضوتور هلا هات اغداغع daqdocfftت طى
اغ القع بني املقدات magألاغ ءء fاغةاا سك ت اا كاا اب اغربانمج اغىاىل ألكاا اب شكل (3- 8
اغاو ووءخ ى كع حموع ضوتور غة وس املد ل
%Reading analog data and drawing its fourier transform using the
soundcard
;)'AI = analoginput('winsound
;)chan = addchannel(AI,1
duration = 1; %1 second acquisition
;)set(AI,'SampleRate',8000
;)'ActualRate = get(AI,'SampleRate
)set(AI,'SamplesPerTrigger',duration*ActualRate
)'set(AI,'TriggerType','Manual
;)start(AI
;)trigger(AI
;)wait(AI,duration + 1
;)data = getdata(AI
;)[f,mag] = daqdocfft(data,Fs,blocksize
199
حسن فؤاد.د.أ د اننسى سامل.م.أ حممد ابراهيم العدوى.د.أ
200
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
الع هدف ا ء اع AI اغداغع ) data=getdata(AIاب املثاع اغسابق تقر اغب اانس املكىسبع م
ألواب ا اب امل وضع dataكرء ا وع عةى هات اغب اانس اب امل وضع سك توظ ا اب و ر
ألم لغر بساب احملىوايس اغ ءءوع كاا ت ونا اب املثاع اغسابق ،أل سك ت ا مر اغعم كاا سنرو اب
اغربانمج اغىاىل البظ ر سكنر قرال و عدء م اغب اانس املواوء اب هدف ا ء اع ع فروق
حتدود عدء اغ ناس اغا ترودها اب اغداغع اغسابقع كاا اب اغداغع ) data=getdata(AI,4000ب ث هات
اغداغع سىقر 4000ع نع ضقر م هدف ا ء اع ألتاب ا اب امل وضع dataو إلا مل ونص عةى
عدء اغ ناس اب اغداغع getdataضو عدءها وكو كل اغ ناس املواوء اب اهلدف ألاحملدء ىفخلاص ع
SamplesPerTriggerألاغا حتدء عدء اغ ناس املكىسبع ب د كل عاة ع قدي البظ وابا ب د
تن ا اغداغع ) data=getdata(AI,samplesضو اص ع اغ ناس املىابع SamplesAvailableوىم
إ قاص ا قدات اغب اانس اغا اكىساهبا ىفغداغع getdataإلا زاء عدء اغ ناس اب اغداغع getdataع
اغ ناس املىابع اب هدف ا ء اع ضو ماتالب س طى إشات ط ا ظر اغربانمج اغىاىل اغاو ورسم م
201
حسن فؤاد.د.أ د اننسى سامل.م.أ حممد ابراهيم العدوى.د.أ
ع نع اغىاغ ع باألع تن ا اغربانمج ألارب كثر م3000 ع نع مث اع4000 ع نع املىابع ألع8000 اع
وبني تسم هات اغ ناس مر اغعم4- 8( ق اع غة ناس شكل
202
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
;)data = getdata(AI,4000
subplot(211), plot(data), grid on
)'title('Half of the Acquired Data
)'xlabel('Samples
)')ylabel('Signal level (volts
;)data = getdata(AI,3000
subplot(212), plot(data), grid on
)'title('Another part of the Acquired Data
)'xlabel('Samples
)')ylabel('Signal level (volts
4-8األوسولوسكوب
ووضر ماتالب ألسوغوسكوب سكنر م الغ عر ا شاتاس اغا تى امل م ا سوال امل راع أل املد ةع
ااألامر اغىاغ ع ت ىخ هدف إء اع ،ألت ىخ ض قنا ،مث ىفامر softscopeوىم ضىخ ااألسوغوسكوب كاا
اب اغشكل (: 5- 8
;)'>> ai=analoginput('winsound
;)>> addchannel(ai,1
)>> softscope(ai
م شاشع ااألسوغوسكوب ألىف ى ات قائاع اغىحرور ،Editمث م قائاع اغىحرور سكنر ا ى ات
Hardwareب ث سى ىخ شاشع سك م الهلا ءبر اغكث م امل امالس ألمن ا اهلدف أل اجل از
203
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
ىفغاب ر عةى زتات اغقدي Triggerوبد عر ا شات عةى ااألسوغوسكوب ألوبد تنش ر
ااألسوغوسكوب كاا اب شكل ( 6- 8سكنر مالبظع إشات اغ وس ب ث كرء اغاب ر عةى زتات
اغقدي Triggerس و إشات اغ وس اغا وةىقط ا امل كرألضو ألس و أتأل صوتر عند اغكالم مام
امل كرألضو سكنر ا اسىكشاف زتات ا زابع Offsetسوال ااضق ع أل اغر س ع ع فروق اغاب ر عةى
اغعتات ااوسر غة ت مر ا ركع ب ث س و إزابع ر ا شات م ر سكنر وابا ت مسطر اجل د
Scaleاغا حتدء كم ضوغ غكل ب د ت سى عةى اغشاشع ضحاألع جتربع لغر وابا ىفغوقوف ىفغ ت عةى
و قطع عةى ا شات س ر غر ماتالب إبداأل اس هات اغنقطع م ب ث اغعم عند هات اغنقطع
ألمقدات ا شات ىفغ وغ كاا اب شكل (6- 8
204
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
كاا لكران م قبل ضو كاتس اغ وس سكن حيىوو عةى قنا أل األنني ضقر ،ألاب باغع ضىخ اغقناتني
م ا ىفمر addchannelضو ااألسوغوسكوب س ر اغقناتني كاا اب اغربانمج اغىاىل ألكاا هو مبني اب
شكل (: 7- 8
;)'>> ai=analoginput('winsound
;)>> addchannel(ai,1:2
)>> softscope(ai
اب شكل ( 7- 8كرء اغاب ر عةى زتات اغقدي س بد عر إشات اغقناتني ب ث سى ر اغقنا ااألىل
ا شات اغ اىن rightألسى ر اغقنا اغثا ع ا شات اغ سرو leftا كاتس اغ وس اب هات ا اغع و ال
اب اغنار اغثنائى أل اجملسم أل االسى وو ،stereoمر اغ ةم هاا اغى ص وكو تةقائ ا
اب شكل ( 7- 8البظ ألاوء زتاتو اغىحكم leftأل ،rightعةى سني شاشع اغ ر ،اب باغع اغنقر
عةى اغعتات leftضو زتات اغىحكم اخلاصع ىف زابع ألمقدات اجل د سى ال مر اغقنا ااألىل ،ألاب باغع اغنقر
عةى اغعتات rightضو زتات اغىحكم ألمقدات اجل د سى ال مر اغقنا اغثا ع
اب باغع اسى دام ا ع ا ء اع اخلاتا ع م شركاس رو ألاغا حتىوو عةى اغ دود م اغقنواس اغا
سك ضىح ا م الع تةر ااهداف ضو اب هات ا اغع سك عر كل قنا عةى قنا اصع م قنواس
ااألسوغوسكوب
205
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
206
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
ألسنىحدث هنا اب هاا اجلعل ع بد هات اغبةوكاس ألهو بةوك ا ء اع اغىااألةى أل سى دم اب مثاع
توء حى غ ر إشات صوس
سك اغد وع عةى مكىبع بةوكاس اكىساب اغب اانس بطروقىني :
ااألىل :م انضا ااألامر ملاتالب اكى اامر daqlibب ث س نقةر ماتالب إىل اغسا وغ نر ألمن إىل
مكىبع اكىساب اغب اانس
اغثا ع :ىفغنقر عةى وقو ع اغسا وغ نر ألاغد وع ض قر عةى جماوعع بةوكاس اكىساب اغب اانس Data
acquisition toolboxب ث سىظ ر جماوعع اغبةوكاس اغا لكرانها سابقا ألاملب نع اب شكل (8-8
ب د اغد وع عةى مكىبع بةوكاس اكىساب اغب اانس سكنر ا ضىخ موءول ادود ألإءاضع بةوك إء اع
ماألةى ،مث إءاضع بةوك ألسوغوسكوب ألتوص ة عةى رج بةوك ا ء اع اغىااألةى غ ر إشات اغ وس
اغا س قر ها اغبةوك م كاتس اغ وس م الع امل كرألضو كاا اب شكل ( 9- 8اب شكل (- 8
9قر مرتني عةى بةوك ا ء اع ب ث سىظ ر مامر شاشع تبني اغ دود م واص هاا اغبةوك ،ترك
كل شىل كاا هو ض اا عدا اخلاص ع block sizeها م 1إىل 5ألهى ت ىن عدء اغ ناس اغا وىم
اها اب كل مر قرال م اغكاتس وابا زم اغ ر إىل 20ع بدال م 10اغا مثل اغق اع
اغىةقائ ع ،مث ابد اغربانمج ألتكةم مام امل كرألضو ب ث س و صوتر عةى شاشع ااألسوغوسكوب ب د
اغنقر عة مرتني غ ىخ غر هات اغشاشع
207
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
سنكى ى هباا اغقدت ب ث اغى امل مر ىفقى اغبةوكاس مشاب ماما ملا قدمنات اب بةوك ا ء اع اب اجلعل
اغسابق ،ضقر عة ر اغنقر عةى كل بةوك سىسى دم غىظ ر غر واص هاا اغبةوك ضحاألع ت دع ض ا
ما شئ غىىناس مر اغىطب ق اغاو تى امل م ألاب باغع و ص وبع عة ر اغةكول إىل املساعد help
املواوء اب ماتالب
208
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
الفصل التاسب
احلسااب الرمزية ىف برانمج ماتالب
1-9مقدمة
غقد ت وءان عةى اغى امل اغرقاى مر برانمج ماتالب ضاثال سكننا اسى دام املاتالب اب بساب ق اع ءاغع
مثل اغداغع ) cos(xأل اغداغع ) sin(xب ث املى xوؤألع إىل ق اع م نع ىفغدتااس اجلدود هنا نا
سكننا طة م ماتالب بساب ت اءل أل تكامل و ألابد م هات اغدألاع ض ط نا اغداغع )cos(x
كى اءل غةداغع ) sin(xكل هاا وىم م الع صندأل ءألاس Tool boxاص ىف ساىفس اغرمعوع
ألوساى Symbolic Math Tool Boxاغاو سنقدم شربا غ اب هاا اغ ل ب ث وسى دم
املاتالب ارال ب اغ اة اس اغ تقا ع عةى اغدألاع اغرمعوع مثل عاة اس اغى اءل ألاغىكامل ألاغن اايس
ألمجر املىواغ اس سنرو كاغر ك ع ب ل امل اءالس اب عدء م اجملاه ل بس وغع ألوسر بدال م اغطر
اغا اسى دمناها سابقا كاغربجمع أل اسى دام امل وضاس إ اغى امل مر املى اس اغرمعوع س ىخ جماال
ضقر غةا ندسني ألغك غكل ألاس ا ألادودا م جماالس اسى دام املاتالب ،ألهاا اغىطب ق م د ادا غ
م وى امل مر اغرايء اس
ءألاس ا ساب اغرمعو وسى دم وعا م املى اس اخلاصع تساى املى اس اغرمعوع إ صندأل
symbolic variablesاغا ترمع غةاى بسةسةع برف وىم ب ظ ا اب هاا املى املثاع اغىاىل ووءخ
اغ ر بني مى اس ماتالب ا ساب ع اغ اءوع مثل املى اس مىاباع ع اغدقع doubleألاملى اس اغرمعوع
ااألامر اغىاغ ع تبني س ع م انضا ااألامر command windowاب ماتالب ب ث فةبنا اجلات
اغ ب ى غةرقم ا ساىب 2ىفامر ) sqrt(2ضكا ا اابع هى ،1.4142ما عندما ت روف اغرقم 2
عةى ب تمعو symbolicىفسى دام اامر ) sym(2ضكا ا اابع هى ) 2^(1/2ب ث اغ المع
^ ت ىن ااس ،ا و ىن املى a 2ألعةى لغر صبخ اغرمع 2حم وظا اب املى aكرمع بدأل
بساب ق اى
)>> sqrt(2
=ans
1.4142
)>> a=sqrt(sym(2
209
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
=a
)2^(1/2
سك اسىدعال ق اع aا ساب ع مر ع ع فروق حتوول املى aم صوتت اغرمعوع إىل صوتت املىاباع ع
أللغر ىفسى دام اامر ) double(aكاا وةى:
(>> double(a
=ans
1.4142
اب صت ت تتوت عند ا عال ع كست ت تتر حيىوو كل م اغبست ت تتر ألاملقام ألواب تمعوع ضو ماتالب وابت ت تتر املى
تمعوع كسروع ألال حيس ق اع اغكسر كاا وةى:
)>> a=sym(2)/sym(5
=a
2/5
ى كع مجر اغكست ت ترو 2/5أل 1/3مر مثاع آ ر ووء ت تتخ فروقع اغى امل مر املى اس اغرمعوع س ت تتنحست ت ت
عةى هنم ألواب م اغنو املاباعف ألمر عةى هنم ألواب تمعوع:
>> a=2/5+1/3
=a
0.7333
)>> a=sym(2)/sym(5)+sym(1)/sym(3
=a
11/15
اب اغ وت اغرمعوع مجر اغكسرو بطروقع مجر اغكسوت االعى اءوع ب ث توب د مقام كل م اغكسرو
ألبساب اغبسر غكل من اا مث مجر اغبسطني ضكا اغنى كع اغكسر االعى اءو 11/15
وىم ا عال ع و مى اب اغ وت اغرمعوع ىفسى دام اامر )( symكاا ت ونا ،أل symهى ا ى ات
غكةاع symbolicاغا ت ىن تمعو اغ وت اغ امع هلاا اامر هى:
)'X=sym('X
210
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
Xا ظر غةاثاع اغىاىل: ب ث ألءر اغرمع Xبني اغ المىني ' ' با ووءر هاا اغرمع اب املى
)'a=sym('alpha
اغرمعو aسك ألءت ت ت ت ت ت تتر ت ب بس ت ت ت ت ت ت تتاىب كتتامتتل مثتتل اغى ب ب تتث ألءت ت ت ت ت ت تتر اغرمع ' 'alphaاب املى
تمعو كاا وةى: 1كرمع اب مى 5
2
)'rho=sym('(1+sqrt(5))/2
rhoكاا وةى: ب د لغر سك إارال عاة اس بساب ع عةى اغى
)'>> rho=sym('(1+sqrt(5))/2
= rho
(1+sqrt(5))/2
>> f=rho^2-rho-1
=f
)(1/2+1/2*5^(1/2))^2-3/2-1/2*5^(1/2
)>> simplify(f
= ans
0
البظ ك ف اس ت ت ت ت تتى دام املى اغرمعو rhoك ن ت ت ت ت تتر اب ت ب كامل fأل بس ت ت ت ت تتاب ق اع fاغرمعوع مث
تبس ط ا ىفامر ) simplify(fاغاو عطى اغنى كع ص ر
ا ظر إىل م اءغع اغدتاع اغثا ع ، f ax 2 bx cهنا املى fسك ألء ت ت ت اب اغ ت ت تتوت اغرمعوع ىفامر
)' f=sym('a*x^2+b*x+cاملى اس aأل bأل cأل xاب هاا اغى ب fغ ست ت ت ت ت مى اس تمعوع ألغاغر
ال سك استتى دام ا اب عاة اس بستتاب ع تمعوع مثل اغى اءتتل ألاغىكامل كاا ستتنرو غاغر اب هات ا اغع
البد م حتدود هات املى اس عةى هنا مى اس تمعوع هى اا رو سك اس ت تتى دام اامر syms a b
c xاغاو واب ت ت تتر كل هات املى اس اب اغ ت ت تتوت اغرمعوع مر ألابد بدال م اس ت ت تتى دام اامر symغكل
مى عةى بد
مل رضع ك ع بل م اءغىني اب جم وغني ىفسى دام اامر solveباألع كىابع ااألمر اغىاغ ع:
>> syms x y
'>> eq1='0.5=(200+3*x+4*y)^2/(20+2*x+3*y)^2/x
'>> eq2='10=(20+2*x+3*y)*y/x
211
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
)>> [x y]=solve(eq1,eq2,x,y
بة ا اب اغىارو احملةوع :7-4 اغطروقع سك بل امل اءالس ا ت ع ألاغا سبق أل بن
2x 3y 4z 5
x y 4 z 10
3x 4 y 2 z 0
;>> syms x y z
'>> eq1='2*x-3*y+4*z = 5
'>> eq2='y+4*z+x = 10
'>> eq3='-2*z+3*x+4*y = 0
)>> [x,y,z]=solve(eq1,eq2,eq3,x,y,z
اامر findsymحيدء غر و املى اس اب و ت ب م اغنو اغرمعو
حتدود كل هات املى اس م اغنو اغرمعو >> syms a b n t x z % هنا
>> f=x^n حتدود ءاغع اب مى و %
=f
x^n
رو اب 3مى اس >> g = sin(a*t + b) % ألءاغع
=g
)sin(a*t+b
اغسؤاع ع املى اس اغرمعوع اب هاا اغى ب >> findsym(f) %
= ans
n, x
>> findsym(g) % ألاغسؤاع وابا ع املى اس اغرمعوع اب هاا اغى ب
= ans
a, b, t
أبو ق اع بىع ع و مى اب و ت ب : اامر subsو و
>> f = 2*x^2 - 3*x + 1 هنا ضر ت ب كداغع اب املى % x
=f
2*x^2-3*x+1
>> subs(f,2) % f xاب اغى ب ىفغق اع 2ع املى رود اغى وو
212
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
= ans
3
>> syms x y
ت ب ب املى و x, yم اغنو اغرمعو >> f = x^2*y + 5*x*sqrt(y) %
=f
)x^2*y+5*x*y^(1/2
xاب اغى ب fىفغق اع >> subs(f, x, 3) % 3 ع املى اغى وو
= ans
)9*y+15*y^(1/2
yاب اغى ب fىفغق اع >> subs(f, y, 3) % 3 ع املى اغى وو
= ans
)3*x^2+5*x*3^(1/2
سك تطب ق لغر عةى امل وضاس كاا اب املثاع اغىاىل اغاو و طى م وضع هةربس:
)>> A = hilb(3
=A
1.0000 0.5000 0.3333
0.5000 0.3333 0.2500
0.3333 0.2500 0.2000
ىفامر اغىاىل سنحوع هات امل وضع إىل اغ وت اغرمعوع:
)>> A = sym(A
=A
][ 1, 1/2, 1/3
][ 1/2, 1/3, 1/4
][ 1/3, 1/4, 1/5
213
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
غكى ت اءل ب البد ألال م ت روف هاا اغثاب اب اغ وت اغرمعوع اب و مى كاا وةى:
;)'>> c = sym('5
)>> diff(c
= ans
0
ألمثاع آ ر:
214
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
ىفغنس ت تتبع غةدألاع مى دء املى اس ضو سك بس ت تتاب اغى اء ت تتل اجلعئى ىفغنس ت تتبع غوابد ضقر م مى اس
هات اغداغع كاا وةى:
>> syms s t
)>> f = sin(s*t
=f
)sin(s*t
)>> diff(f,t tضقر % هنا مطةوب ت اءل fىفغنسبع غةاى
= ans
cos(s*t)*s
)>> diff(f,s sضقر % هنا مطةوب ت اءل fىفغنسبع غةاى
= ans
cos(s*t)*t
ألسك إارال اغدتااس ااعةى م اغى اءل اجلعئى كاا وةى:
>>diff(f,t,2) % t ب ث س حس اغى اءل اغثاىن غةداغع fىفغنسبع غةاى
= ans
-sin(s*t)*s^2
سك غةداغع fتى امل مر م ت ت وضاس وابت تتا حب ث تكو كل عناصت تتر امل ت ت وضع م اغنو اغرمعو ،ألاب
هات ا اغع س ىم اغى اءل عةى مج ر عناصر امل وضع عن ر ب ن ر كاا وةى:
>> syms a x
215
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
])>> A = [cos(a*x),sin(a*x);-sin(a*x),cos(a*x
=A
])[ cos(a*x), sin(a*x
])[ -sin(a*x), cos(a*x
)>> diff(A
= ans
][ -sin(a*x)*a, cos(a*x)*a
][ -cos(a*x)*a, -sin(a*x)*a
اب املثاع اغس ت ت ت تتابق كىبنا اغداغع ) diff(Aألاغداغع Aهبا مى و aأل ،xضةاالا ضاء ت ت ت تتل ىفغنس ت ت ت تتبع ع xألمل
و اءل ىفغنسبع ع a؟ اب مثل هات ااألءا إلا مل حتدء غةااتالب املى اغاو س اءل ىفغنسبع غ ضو
تةقائ ا وبحث ع قرب برف أل تمع غةحرف xاب اغداغع ألو اءت تتل ىفغنست تتبع غ اب املثاع اغست تتابق قرب
برف غةرمع xهو ا رف xس ألغاغر اغى اءل ىفغنسبع غ اغقرب هنا وق د ب اغقرب وداي
3-9النهااي Limits
سك بست ت ت ت ت ت تتاب اغن اوع اغا تؤألع إغ ا و ءاغع عندما وؤألع و ألابد م مى اس هات اغداغع إىل ق اع
م نع ضاثال Lim f ( x) :تكى كاا وةى limit(f(x),x,0) :ألهاا هو اغوءر اغىةقائى
x0
و نا إلا كىبنا )) limit(f(xضقر ضو ماتالب س ت ت ت حس ت ت ت اغن اوع ىفغنست ت تتبع غةاى xعندما وؤألع إىل
اغ ر بن اغطروقع كى ) Lim f (xكاغىاىل lim(f(x),x,a) :ا ظرإىل املثاع اغىاىل:
x a
216
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
اب ب اغدألاع باءوع اجلا البد حندء هل مى اغداغع وق ب م ا د املطةوب م انب ع اغ اني
م م انب ع اغ س تتات كاثاع عةى لغر ا ظر إىل اغداغع | f(x)=x/|xاملوء تتحع اب ش تتكل ( 1- 9اب
هات اغداغع عندما تق ب xم اغ ت ت ت ر قاءمع م ا ع اغ ست ت تتات ،ضو اغداغع fتؤألع إىل ،-1ب ناا عندما
تق ب xم اغ ت ت ت ت ت ر قاءمع م اغ اني ضو اغداغع fتؤألع إىل +1كاا اب اغش ت ت ت تتكل اب مثل هات اغدألاع
ضو البد م ت روف ماتالب هل رود بست ت ت ت ت ت تتاب هناوع اغداغع ألحن ق ب م ا ع اغ اني م م ا ع
اغ س ت ت ت ت ت ت تتات اب هتتات ا تتاغتتع ضتتو اغن تتاوتتع تكىت كاتتا وةى limit(f(x),x,0,left) :ا ظر غةاثتتاع اغىتتاىل:
Lim xب ث سك بساهبا ىفملاتالب كاا وةى:
x 0 x
)'>> limit(x/abs(x),x,0,'left
= ans
-1
أل : Lim x
x 0 x
)'>> limit(x/abs(x),x,0,'right
= ans
1
217
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
اغداغع اغا وكو هلا هناوع م اغ اني ختىةف ع اغن اوع م اغ س ت تتات كاا اب اامثةع اغس ت تتابقع ضو البد م
حتدود اجتات اغىقاتب املطةوب إلا مل وىم حتدود اجتات اغىقاتب ضو ماتالب و طى اغرست ت ت ت ت ت تتاغع NaNألاغا
ت ىن Not a Numberكاا وةى:
)>> limit(x/abs(x),x,0
= ans
NaN
4-9التكامل Integration
ألابد سك ارال اغىكامل عةى املى اس اغرمعوع ضو ماتالب وسى دم اغداغع ) int(fغةدألاع اب مى
vإغ ر ب حتدود مى اغىكامل كاا اب اغداغع ) int(f,vاغا ت طى تكامل اغداغع fىفغنسبع غةاى
اامثةع عةى لغر:
x n dxسك بساهبا كاا وةى:
>> syms a b x t
)>> int(x^n
= ans
)x^(n+1)/(n+1
/2
sin(2 x)dxألاغا سك بساهبا كاا وةى:
0
)>> int(sin(2*x),x,0,pi/2
= ans
1
ألغك اغىكامل وكو ىفغنسبع ابد هات املى اس كاا وةى: ألسك تكامل ءاغع اب كثر م مى
)>> g = cos(a*t + b
=g
)cos(a*t+b
)>> int(g,t
= ans
)1/a*sin(a*t+b
218
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
ااألامر اغىاغ ع توء ت ت تتخ ك ع بس ت ت تتاب قاك اال قالب او ءاغع ب ث وىم ت اء ت ت تتل اغداغع ألمس ت ت تتاألا هاا
اغى اء ت ت ت ت ت ت تتل ىفغ ت ت ت ت ت ت ت ر س ت ت ت ت ت ت تتاب ااألت هات امل اءغع اغا مثل قاك اال قالب هلات اغداغع اغداغع اغا
3x 2 6 x 1
: f ( x) 2 سنسى دم ا اب هات اخلطواس هى اغداغع
x x3
>> syms x
;>> num = 3*x^2 + 6*x -1
;>> denom = x^2 + x - 3
>> f = num/denom
=f
)(3*x^2+6*x-1)/(x^2+x-3
)>> limit(f, inf
= ans
3 هات اغداغع تؤألع إىل 3عندما تؤألع xإىل ماالهناوع
2
3 x + 16 x + 17
- ----------------
2 2
)(x + x - 3
3x 2 16x 17
اغا ساألا.ا ىفغ ر ألبة ا ت طى قاك اال قالب كاا وةى: ألهى اغداغع
x 2
x 3 2
219
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
= crit_pts
)-8/3-1/3*13^(1/2
)-8/3+1/3*13^(1/2
8 13 8 13
ألهى قاك اال قالب أل اغنقاك ا راع هلات x2 أل x1 ألهات اغنقاك هى
3 3
اغداغع ،ض ل هى قاك ا قالب عظاى maximumم قاك ا قالب ص ت ت ت ت ت ت ت رو ،minimumباألع
حتدود لغر
هناك وابا اغىكامل احملدألء اغاو وىم إاراؤت ىفامر اغىاىل:
)int(f,a,b
اغاو وقوم بىكامل اغداغع fم aبا bكاثاع عةى لغر اغىكامل اغىاىل:
;>> sym x
;>> f=x^7
)>> int(f,0,1
= ans
1/8
ألكاغر اغىكامل اغىاىل:
;)>> f=log(x)*sqrt(x
)>> int(f,0,1
= ans
-4/9
5-9موع املتواليا
اجملاو اغىاىل: تسى دم اغداغع symsumساب مثل هات املىواغ اس مثال م امل رألف
1 1
1 2
2
2 3
وساألو ، π2/6ألسك بساب ىفسى دام ماتالب كاا اب ااألامر اغىاغ ع:
>> sym k
)>> s1 = symsum(1/k^2,1,inf
= s1
1/6*pi^2
220
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
أل وابا 1 x x 2 x 3 سك بساب ىفسى دام ماتالب وابا ىفاألامر اغىاغ ع:
;>> syms x,k
)>> s2 = symsum(x^k,k,0,inf
= s2
)-1/(x-1
اب اامثةع اغسابقع infت ىن ماالهناوع أل infinityسك بساب مىىاب ع اوةوت كاا اب املثاع اغىاىل:
;>> syms x
;))>> f = 1/(5+4*cos(x
)>> T = taylor(f,8
=T
1/9+2/81*x^2+5/1458*x^4+49/131220*x^6
ءألاس ا ساىفس اغرمعوع Symbolic خبالف كل هات اامثةع اب املواء ر امل ىة ع ضو صندأل
Mathematics Tool Boxحيىوو عةى اغ دود م اغدألاع ا ساب ع اا رو ألاغطر امل ىة ع
لكرها هنا ىفغى ل عةى م ورود االسىعاء اب هاا املسى دمع اب شا ضر اغرايء اس ألاغا و
اجملاع ورار إىل املساعد اغا ووضرها ماتالب ألاغا حتىوو عةى اغ دود م اامثةع املساعد اب اغكث
م اغىطب قاس اغرايء ع كاا لكران ضو هاا اغكىاب غ كىاىف ت ة ا ع ماتالب ا ماتالب ود ل
ت ط ى ا اب كثر م كىاب ،ألغك اغن ج اغاو اس اهلندس ع ألاغ ةا ع ألاغا و اب مج ر اغى
ى ات هنا هو ضىخ هات املواء ر ألت روف اغقاتول هبا ألت ى ح ا مام أل ك اغباقى غ غكى وسىار اب
االسىعاءت إ تاء أل إ كا هاا املوءو وقر اب جماع خت
221
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
الفصل العاشر
أساسيا استخدام املاتالب ىف معاجلة الصور الرقمية
1-10مقدمة
ووضر املاتالب مكىبع اصع اجلع اغ وت اغرقا ع تسى دم اب اغ دود م اغىطب قاس ألاغا تىنو ما بني
ل إىل اسى راج م ةوماس قرال اغ وت ألحتس ن ا ،أل تقس ا ا ألحتدود ب ااماك امل اع ض ا ،إىل
ألاختال قرات بنال عةى حمىوو اغ وت اب هاا اغ ل ر مقدمع ع ساس اس اسى دام املاتالب اب
م اجلع اغ وت اغرقا ع بداوع م قرال ألعر اغ وت ،مرألتا بى مسىوايس شد اغةو ألت ب اء اغ وت
مث حتووة ا إىل صوت ألنائ ع ،مث ى ر ملوءو حتسني اغ وت ألاغىن م ىفسى دام املرشحاس امل ىة ع أل ا
وءخ ك ع عال جتعئع غة وت أل تقس م هلا مدت بنا اكر اغقاتئ اسى دام املاتالب اب امل اجلع
ت رء غ مراار اصع ،ألغكننا ابر اغقاتئ عةى بداوع اغطروق غةبحث اب هاا اغرقا ع غة وت م
املوءو
إ اغ وت اغرقا ع سك اغى امل م ا عةى هنا ءاغع ألنائ ع ااب اء ) f(x,yىفعىبات xأل yمها ب دو اب
مسىوو اغسطخ ،ألمقدات هات اغداغع عند و قطع ( x,yو رب ع شد إءال هات اغنقطع أل بد.ا
وطةق عةى هات اغق اع اغكثاضع intensityأل مسىوو اغرماءوع هلات اغنقطع gray levelعندما تكو
ا بداأل اس xأل yألق اع اغداغع ) f(x,yق اا حمدء أل تقاما؛ ضو اغ وت اب هات ا اغع وطةق عة ا
صوت تقا ع؛ ألىفغىاىل ضو اغطر املسى دمع مل اجلع هات اغ وت سىكو وابا فرقا تقا ع سى دم ض ا
ا اسباس أل امل اجلاس اغرقا ع ،ألهاا هو ىفغاببر املق وء م امل اجلع اغرقا ع غة وت
تىكو اغ تتوت اغرقا ع م عدء حمدء م اغ ناص تتر كل من ا وش ت ل مكا م ني ألق اع أل مس تتىوو تماءي
م ني ،كل م هات اغ ناصتتر وستتاى عن تتر صتتوت picture elementأل pixelألحن ستتنستتى دم هنا
املنطو ،بكستتل ،غكثر ش ت و اغة ظ ورار موءتتو م اجلع اغ تتوت إىل بداوع اغ ش تروناس م اغقر
املاء ت ت تتى (عام 1920عندما قل ص ت ت تتوت عرب احمل ر م مروكا إىل ألتىف م الع كابل حبرو ألتواىل
ىربها فرقا ب د لغر تطوت س ترور اب فر قل ألحتستتني هات اغ تتوت ،ألغك كل هات اغطر ال سك
تقا ع اهنا مل وك ا است ت ت ت ت ت قد ظ ر اب هاا اغوق ألمل وىم اس ت ت ت ت تتى دام غاغر ضو اغىقدم ا ق قى اب
222
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
فر امل اجلع اغرقا ع غة تتوت ألفر ب ظ ا كا ب د اال كات اغاو بدث اب تكنوغوا ا ا اس تتباس اغا
بد س مر هناوع اغسب ناس م اغقر اغسابق
اب هات ا اغع؛ ضو املاتالب وى امل مر اغنقطع ( 1,1عةى هنا مركع اغ وت ألوكو ا بداألى (1,2
سثل اغبكسل اجملاألت ألاغا تقر اب اغ ف ااألع ألاغ اوء اغثاىن ما اغنقطع ( 1,3ض ى اغبكسل اجملاألت
اغ ف ،ألهكاا كاا اب امل اءغع اغىاغ ع: عةى
) f (1,1 f (1,2) f (1, N )
) f (2,1 f (2,2) f (2, N )
f ( x, y )
) f ( M ,1 f ( M ,2) f ( M , N )
ألسك كىابع هات امل اءغع بشكل بسر كاغىاىل:
a1,1 a1, 2 a1, N
a a2, 2 a2, N
A
2 ,1
223
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
3وىم مث ل اغ وت اب شكل م وضع ألنائ ع ااب اء كاا اب شكل (1- 10ج ألهاا اغنو م د
عند عر اعل م اغ وت ألحتة ل اغق م اغرقا ع عند ت ا م ألا ىبات ب اخلواتوعم اس
1
0.8
0.6
0.4
0.2
0
30
30
20
20
10
10
0 0
أ ب
0 0 0 0 0 0 0 0 0 ... 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 ... 0 0 0 0 0 0 0 0 0
0 0 0.5 0.5 0.5 0.5 0.5 0.5 0.5 ... 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0 0
0 0 0.5 0.5 0.5 0.5 0.5 0.5 0.5 ... 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0 0
. . .
. . .
. . .
0 0 0.5 0.5 0.5 0.5 0.5 0.5 0.5 ... 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0 0
0 0 0.5 0.5 0.5 0.5 0.5 0.5 0.5 ... 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0 0
0 0 0 0 0 0 0 0 0 ... 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 ... 0 0 0 0 0 0 0 0 0
ج
شكل ( 1- 10اغ وت امل ىة ع غىاث ل صوت -عةى شكل سطخ ب -تب ا ملسىوو اغرماءو
ج-عةى شكل م وضع ألنائ ع ااب اء
224
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
أل اسى دام ءاغع رو ءاضع املسات اغاو ووءخ مكا اغ وت ألهى اغداغع addpathكاا وةى:
>>addpath D:/myimages
;)'>>I=imread('aseel_01.jpg
)>> imshow(I
تس تتى دم اغداغع imshowغ ر اغ تتوت اغا ختعون ا اب امل ت ت وضع أل املى Iالبظ عدم ألء تتر
اغ ت ت تتةع املنقوفع اب هناوع اغست ت تتطر أللغر اهنا التؤألر اب هات ا اغع ،ألعةى لغر ضوهنا التوءت ت تتر عاء مر
هات اغداغع ى كع تن ا هاا اامر موءحع اب شكل (2- 10
225
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
ب ث وىم عر امل وضع Iاغا ختعو اغ وت عةى ه ئى ا ىفسى دام مسىوايس غشد اغةو عدءها
، Gما عند عدم لكر اغق اع ضو املاتالب وسى دم اغق اع 256كق اع إض اء ع defaultأل وىم
حتدود اغق اىني اغ ظاى highألاغ رو lowاملسى دمىني غشد ا ءال غكل بكسل اب اغ وت اب
اغداغع س ا ألعند عر اغ وت ضو اغق م ااقل م اغق اع lowأت ا اغةو ااسوء ،ألاغق م ااعةى م
ألتىم اب هات ا اغع كىابع اغداغع ىفغشكل اغىاىل: اغق اع highأت ا اغةو ااب
)]imshow(I,[low high
اب ب اغىطب قتتاس اغا وكو ض تتا ( dynamic rangeطتتا أل متتدو مست ت ت ت ت ت تتىوايس اغرمتتاءو اغتتاو
حتىاا اغ تتوت ص ت ت ،و مدو اغى بني ق م اغبكس تتالس املواوء اب اغ تتوت وكو ت ا بس ت ت طا
ألاغبكستالس أت ا ق اا مىقاتبع ،أل ب اغق م موابع ألب ابت ا ستاغبع اب هات ا اغع م ااضابتل وىم
عر كل صوت ىفسى دام عدء م مسىوايس اغةو تب ا هلات اغ وت ألعةى لغر تكو اغق اع high
هى كرب ق اع غشتتد ا ءتتال ألاغق اع lowهى قل ق اع غشتتد ا ءتتال اب اغ تتوت تىم كىابع اغداغع اب
هات ا اغع ىفغشكل اغىاىل:
)] [imshow(I,
اب باغع اغر بع اب عر كثر اب كل مر سى دم هات اغداغع البظ اغ وت امل رألءع ا اغ ع تى
م ص تتوت س تتى دم اامر figureمر كل مر غ ر اغ تتوت اب ب ا االس اغا اب تتل ألاوء كثر
ستتى دم اغداغع subplotاغا ستتبق استتى دام ا مر ءألاع اغرستتم اغشتتكل سك م صتتوت اب
Gكاا اب اخلطواس البظ اغ ر بني اغ تتوت امل رألء تتع اب ش تتكل ( 3- 10ألاغاو ووء تتخ أتأل املى
اغىاغ ع:
>> figure,
)'] [ = >> subplot(1,3,1), imshow(I,[]), title('G
)']>> subplot(1,3,2), imshow(I,[ 64 128]), title('G = [64 128
)']>> subplot(1,3,3), imshow(I,[ 0 100]), title('G = [0 100
226
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
227
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
228
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
'' FormatSignature:
NumberOfSamples: 1
' CodingMethod: 'Huffman
' CodingProcess: 'Sequential
}{ Comment:
3-2-10أنواع الصور
وى امل املاتالب مر تب ع وا م اغ وت:
-1صوت اغكثاضع intensity image
أل صوت مىدتاع اغرماءو grayscale imageاب هاا اغنو م اغ وت ضو اغبكسالس أت ا اغق م م
0إىل 255إلا كا اغب اانس م اغنو uint8ب ث سثل اغ ر اغةو ااسوء أل 255اغةو ااب
ألما ب ن اا تدتااس اغةو اغرماءو ما اب باغع uint16تكو اغق م م 0إىل 65535
-2صوت اغ رسع indexed image
اب هاا اغنو م اغ وت ضو اغبكسالس أت ا اغق م م 0إىل 1ألتكو اغب اانس م اغنو doubl
-3صوت ألنائ ع binary image
ألتكو اب هاا اغنو م اغ وت ضو اغبكسالس أت ا ق اىني ضقر 0غةو ااسوء أل 1غةو ااب
اغب اانس م اغنو logical
-4صوت مةو ع RGB image
اب هاا اغنو م اغ وت ضو كل بكسل أت ا ألالألع ق م ىة ع مثل ااغوا اامحر ،اا ابر ،ألاازت
ألتكو اغب اانس م اغنو uint8
229
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
4-2-10املقدرة التحليلية
م هم واص اغ وت اغا تى ألر هبا اغ ني مباشر اص ع اغىحدود أل املقدت اغىحة ة ع resolutionألاغا
عةى ءوئ ا تىحدء اوء ا از أل فروقع عر اغ وت كاا لكران سابقا ضو اغ وت اغرقا ع وىم عرء ا
اب صوت عدء م اغبكسالس اب ألبد املسابع ضكةاا زاء عدء اغبكسالس اب ألبد املسابع زاءس
اوء اغ وت ،ضشاشع اغ وت املقساع إىل 512×512بكسل ىفغطبر سىكو ضابل بكث م شاشع
املسابع ألغكن ا مقساع إىل 16×16بكسل خت ل ر ترود عال صوت مكرب بطروقع ودألوع ع
فروق تقس م هات اغ وت ااصة ع إىل مرب اس مث قل حمىوايس كل مربر عةى بدت م اغ وت ااصة ع إىل
اغ وت املكرب ىفغطبر ضو اوء عاة ع اغنسخ سىكو ضابل بكث كةاا كا عدء املرب اس املسى دمع
اب عاة ع اغنسخ كرب ،هنا عدء املرب اس املسى دمع وقابل عدء اغبكسالس أل عناصر اغ وت اغا لكرانها
شكل ( 4- 10وبني صوت 'مىن' ألقد ت ها عةى مرابل ع فروق باف صف م اغبكسالس
م بني كل ص ني ،أل وابا عاوء م اغبكسالس م بني كل عاوءو ب ث وىم تقس م اغ وت إىل عدء
م اغ وف ألعدء م ااعاد م اغبكسالس
اغداغع imresizeتسى دم غى دول ب اء اغ وت إىل عدء م ني م اغ وف ألااعاد ألشكة ا اغ ام:
)B = IMRESIZE(A, SCALE
)]B = IMRESIZE(A, [NUMROWS NUMCOLS
وع عة بىن ا ااألامر اغىاغ ع: ا شكل (4- 10
;)'>> M = imread('mona001.jpg
;)]>> M1 = imresize(M,[256 256
)>> figure, imshow(M1
230
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
اغ وت امل رألءع اب شكل ( 4- 10تىكو م 256صف أل 256عاوء م اغبكسالس ألغاغر ضو نا
قوع هنا 256×256بكسل أل ا وع عة ا بى عدء اغ وف ألااعاد ىفسى دام اغداغع
عدء imresizeشكل (4- 10ب ووءخ اغ وت ألقد صبح 128×128بكسل أللغر بى
اغ وف ألعدء ااعاد اب اغداغع imresizeكاا اب اامر اغىاىل
;)]>> M2 = imresize(M,[128 128
عدء اغ وف ألااعاد غىكو ى كع ت اغ وت امل رألءع اب شكةى (4- 10ج أل 4-10ء
اغ وت 64×64أل 32×32عةى اغىواىل
أ
ب
ج
د
231
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
سثل شكل ( 5- 10وبني أتأل اوء اغىحدود resolutionب ث البظ اب شكل (5- 10
اغ وت ااصة ع 256×256بكسل ألشكل (5- 10ب سثل اغ وت 128×128بكسل م رألءع اب
مسابع اغ وت ااصة ع ألشكل (5- 10ج عبات ع صوت 64×64بكسل م رألءع اب
مسابع مسابع اغ وت ااصة ع ،أل ا شكل (5- 10ء سثل صوت 32×32بكسل م رألءع اب
اغ وت ااصة ع البظ اب هات ااشكاع ظ وت ع اغ ندقع blocking effectب ث تظ ر اغ وت
اب صوت بةوكاس تشاب بةوكاس غوبع اغشطر ج تىسب اب عدم ألءوي اغ وت ألعدم حتدودها ،ألهاا ع
م رألف اب ألسر امل اجلع اغرقا ع غة وت ألهناك اغ دود م فر اغى ةص من
أ ب
ج د
د ج
شكل ( - 5- 10اغ وت ااصة ع ب -صوت 128×128بكسل
ج -صوت 64×64ء -صوت 32×32بن مسابع اغ وت
ااصة ع
كاا لكران ضو اغ وت اغرقا ع عبات ع م وضع م ااتقام؛ كل تقم سثل كثاضع intensityأل شد
ا ءال عند هات اغبكسل اغرقم املاثل غكثاضع كل قطع وىم اغى ب عن ب دء م اغبىاس اب باغع اغ وت
اغرماءوع ضاثال اب باغع اسى دام ىفو كامةع ( 8ب غىاث ل هات ااتقام ضو كل تقم م هات ااتقام
س األي م ص ر با ، 255و عدء مسىوايس اغرماءوع اب هات ا اغع س كو 256مسىوو
232
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
غدونا صوت مسابى ا 64×64بكسل ضو هات اغ وت سىحىاج غااكر مقداتها 1×64×64 بر
ىفو = 4096ىفو ىفغنسبع غة وت املةو ع RGBضو كل بكسل مثل بثالألع ىفو ب ث مثل ءتاع
كل غو بباو ،ىفو مثل كثاضع اغةو اامحر ،أل رو مثل كثاضع اغةو اا ابر ،ألاغثاغثع مثل كثاضع اغةو
اازت ،حب ث عند مجر اغثالث مركباس حن ل عةى اغةو اغطب ى غةبكسل اب هات ا اغع ضو اغ وت
اغسابقع سىحىاج غااكر كرب ب ث سىكو 3×64×64بكسل = 12288بكسل
وىابخ ا سبق بعايء عدء اغبكسالس اب ألبد املسابع تكو اغ وت ضابل أل ىن آ ر اغى اص ل
اغدق قع اب اغ وت ت بخ كثر ألءوبا ألم اغ وامل املؤألر اب ألءوي اغ وت وابا ا ى ات عدء مسىوايس
مث ل مسىوو اغرماءوع اب اغ وت ضاثال عند مث ل اغ وت سىووني تماءوني ضقر ض اا و ىن اغبكسالس
إما أت ا اغةو ااب أل ااسوء ألهاا وؤءو اىل نا حنىاج 1ب غىاث ل كثاضع اغةو عند و بكسل
(ا اغق اع اب هات ا اغع ص ر أل ألابد هات مثل اغ وت اغثنائ ع اغا لكرانها ك بد وا اغ وت اغا
وى امل م ا املاتالب سك حتوول اغ وت اغا حتىوو عةى عدء كرب م مسىوايس اغرماءو ع فروق
ألءر مسىوو تشبر م ني ،thresholdحب ث وىم ألءر مج ر اغبكسالس اغا هلا مسىوو تماءو كرب
م أل وساألو مسىوو اغىشبر ىفغق اع ألابد ألألءر مج ر اغبكسالس اغا هلا مسىوو تماءو قل م هاا
املسىوو ىفغق اع ص ر م اجلدور ىفغاكر ا ى ات اغق اع املناسبع د اغىشبر غ س ىفامر اغ س ألهى
م املشكالس اغشائ ع اب كث م اغىطب قاس ب ث ختىةف م صوت ا رو ألم تطب ق ر وؤألر
ا ى ات بد اغىشبر عةى شكل اغ وت اغناجتع سك اسى دام اغداغع imshowأل اغداغع im2bw
غةح وع عةى صوت ألنائ ع باألع جتربع اامرو اغىاغ ني ألالبظ اغ ر بني اغ وتتني اغناجتىني
)>> figure, imshow(I>128
;)>> J = im2bw(I, 0.5
)>> figure, imshow (J
ألااسوء ىفسى دام كثر م مسىوو ض ل صوت س ل اب املسىووني ااب شكل ( 6- 10وبني
ألىفسى دام اغداغع im2bwألصوت.ا اغ امع كا تى:
)BW =im2bw(I,level
233
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
ب ث BWهى اغ وت ااب ألااسوء اغناجتع ،أل Iهى اغ وت املراء مث ة ا ىفملسىووني ااب ألااسوء
أل levelهو املسىوو اغاو سىكو كثاضع اغبكسالس ااعةى من ىفغةو ااب ألاغبكسالس اغا سىكو
كثاضى ا قل من ىفغةو ااسوء كاا اب شكل (6- 10
د و
هـ
أل سوء م اغ وت اغرماءوع أبكثر م مسىوو تشبر وع عةى صوت ب شكل ( 6- 10ا
-اغ وت ااصة ع ب level=0.4 -ج level=0.5 -ءlevel=0.6 -
هت level=0.65-ألlevel=0.7 -
شكل ( 7- 10وبني مث ل اغكثاضع أبعداء ىة ع م اغبىاس بدلا م 7ب = 128مسىوو ألا ى الا
ب ا ب = مسىووني ضقر البظ بعايء عدء مسىوايس مث ل مسىوو اغرماءوع ضو اغ وت تكو
ضابل ألمرحيع كثر غة ني اغبشروع اغداغع histeqتسى دم غ ر صوت ب دء م ني م املسىوايس ألس ىم
شرب ا البقا اب هاا اغ ل ألغك ك املسى دم غ كرب ااألامر اغىاغ ع غةح وع عةى اغ وت املواوء
اب شكل (7- 10
)>>figure, subplot(2,3,1), histeq(I,128
)>> subplot(2,3,2), histeq(I,64
234
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
235
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
البظ عند كىابع اامر ىفغشكل )] T = imadjust(I,[0 1], [1 0ضو حيوع اغ وت إىل اخلرج
املوءخ اب شكل ( 8- 10ألاغاو وكاضئ اغ وت اغساغبع ب ث اسىبدغنا اغق اع اغ ظاى ىفغ رو ألاغق اع
قوع اامر هباا اغشكل وكاضئ اسى دام اغداغع imcomplementاب اغ رو ىفغ ظاى سك
اغ اء وكو هناك صوت إلا عكس ا تكو اغ وت ضابل ألمب نع غةكث م اغى اص ل كاا اب شكل
( 8 -10اغاو وبني صوت ش ع إك غثدو وىم ضح غىش ص ألاوء سرفا م عدم اب هاا
اغثدو ب ث البظ اغ وت ااصة ع حتىوو اغكث م اغسواء ا ى اغكث م ت اص ة ا ،ألغك
ب كس ا ظ ر اغكث م اغى اص ل
أ ب
املى gammaحيدء فروقع االسقاك أل اغىحوول بني ق م اغبكسالس اب اغ وت ااصة ع إىل اغ وت اب
ط ع؟ عند ق اع gammaتساألو 1اغ القع تكو ط ع ما عند اخلرج (هل اغ القع ط ع م
236
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
ق اع gammaقل م 1ضو صوت اخلرج تكو ضىخ ( كثر اءال م اغ وت ااصة ع ألعندما تكو
ق اع gammaكرب م 1تكو اغ وت اغناجتع اق م اغ وت ااصة ع غىوء خ أتأل هاا املى ضو نا
ن خ اغقاتئ بكىابع ااألامر ألمالبظع اغ وت اغناجتع عند ق م ىة ع غةاى gamma
;)'>> N=imread('tire.tif
;)>> T1=imadjust(N,[],[],1); figure,imshow(T1
;)>> T2=imadjust(N,[],[],0.4); figure,imshow(T2
;)>> T3=imadjust(N,[],[],3); figure,imshow(T3
237
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
أ
5000
4500
ب
4000
3500
3000
2500
2000
1500
1000
500
0
البظ اغشرور املواوء اب س ل اهلسىوارام ألاغاو وبني ق ى مسىوو اب اغةو ااب هو املسىوو
256ب ناا املسىوو ص ر سثل ق ى اغةو ااسوء البظ وابا م اهلسىوارام اغ وت م ل إىل اغةو
اغ امق ب ث البظ مركع اهلسىوارام انب ع اغةو ااسوء امل رأل با تكو اغ وت لاس تباو ا د
وكو اهلسىوارام اخلاص هبا منىظم تقروبا عةى كل املسىوايس اغرماءوع أل أي ا شكل اجلرس حب ث
وكو عاغ ا قة ال عند املسىوايس اغرماءوع املىوسطع ألوقل تدتم ا عند مسىوايس اافراف هناك فر
غىحسني اغ وت ع فروق ءبر اهلسىوارام واب ق املكا غشرب ا هنا ألغك سك قرال ت اص ة ا اب و
مرار م مراار م اجلع اغ وت برانمج املاتالب ب ءاغع تقوم باببر هسىوارام و صوت تساى
histogram equalizationألتكى كاا وةى:
)J = histeq(I, n
ب ث Jهى اغ وت اغناجتع ب د ت دول هسىوارام اغ وت Iأل nمثل عدء املسىوايس اغا وىم مسىوو
اغرماءوع هبا ألاغا ألءحنا أتأل ها عةى اغ وت اب شكل ( 7- 10ىفسى دام اغداغع اغسابقع غى دول
هسىوارام صوت س ةع اب شكل ( 9- 10حن ل عةى اغ وت اجلدود ألاهلسىوارام اخلاص هبا كاا اب
شكل (10-10
238
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
أ
7000
ب
6000
5000
4000
3000
2000
1000
0
اب شد إءال اغبكسالس امل ىة ع ع فروق ما وساى سك وابا ع فروق اهلسىوارام
histogram specificationو حنوع اهلسىوارام م شكل إىل آ ر ا ونىج عن ت اب اغ وت
تسى دم هات اغطروقع اب ب اغىطب قاس اخلاصع ألاغا حتىاج ى امل مر ب مسىوايس ا ءال
ءا ل اغ وت بطروقع م نع ألمر ب املسىوايس اا رو بطروقع رو
-1مرشت تتحاس تن م اغ ت تتوت :ت ىاد اب ظروى ا عةى است تتىبداع مست تتىوو اغرماءوع غكل بكست تتل ىوس تتر
مس ت ت تتىوو اغرماءوع غةبكس ت ت تتالس احمل طع هبا عةى بست ت ت ت مس ت ت تتابع املرش ت ت تتخ برانمج املاتالب غدو اغداغع
239
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
imfilterاغا تقوم ب شت ت خ اغ تتوت امل طات تب ا غنو املرش تتخ املس تتى دم واب تتا اغداغع اب ص تتوت.ا اغ امع
هى:
imfilter(input_image, mask, filtering_mode, boundary_option,
)size_option
اخلطواس اغىاغ ع تبني مثاع عةى لغر :
;)'>> I=imread('d:\aseel\aseel256.jpg
;)>> J = rgb2gray(I
;)]>> J = imresize(J,[256 256
)'>> imshow(J); title('Original Image
;>> h = ones(11,11) / 121
;)'>> I2 = imfilter(J,h,'conv
)'>> figure; imshow(I2); title('Filtered Image
ب ث حتدود املرشخ اغاو س ىم اسى دام ىفمل وضع hألب د لغر إارال عر غة وتتني ااصة ع
ألاملرشحع كاا اب شكل ( 11- 10اغداغع imfilterسك اسى دام ا بدأل اال ى ات ’ ‘convب ث
اب هات ا اغع س ىم ءرب بكسالس املرش خ مباشر اب اغبكسالس املقابةع هلا اب اغ وت ااصة ع بدأل
عاة ع اغدألتا 180ءتاع كاا اب باغع ءاغع االغى اف convolutionهات هى ا اغع اغىةقائ ع غةداغع
،imfilterو إلا مل تكى هبا اال ى ات ’ ‘convضو اغداغع غ تن ا اغابرب االغى ااب ،ألغكن ا سىن ا
اغربانمج اغسابق بن بكم اغناضا أل املرشخ اغابرب اغ القى correlationضحاألع تن ا
( 11×11بكسل ألكة ا ألباود ألا ظر هل هناك ضر بني ا اغىني م ال؟ امل رأل ال وكو هناك ضر
ا م وضع املرشخ أل انضا اغ ش خ كة ا ألباود ألغ تى ألر ب اة ع اغدألتا 180ءتاع ى كع إارال
اغابرب االغى ااب
240
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
أ ب
اغ وت ب د تطب ق مرشخ اغىن م. شكل ( - 11- 10اغ وت ااصة ع ب-
هناك مالبظع ع عةى اغ وت اغناجتع م مرشخ اغىن م اب اغشكل ( 11- 10ألهى ألاوء إفات سوء
أل بدألء بوع اغ وت اغناجتع م اغ ش خ ألهاا ا فات أل هاا ا د مل وك مواوءا اب اغ وت ااصة ع،
ضاا هو سب ألاوء هاا ا فات؟ سب ألاوء هاا ا فات ا غو ض انا فروقع تطب ق هاا املرشخ كاا
لكران وىم تطب ق مسابع املرشخ عةى مسابع اغ وت غى دول أل تن م مسىوو قطع املركع اب مسابع
املرشخ ،مث بد اب حترور املرشخ ىفغنسبع غة وت م اغ سات غة اني ألم عةى اس ل إىل نى ى م
مسخ اغ وت كة ا
اغسؤاع ا هو ما هو موقف اغنقر املواوء عةى باضع اغ وت أل عةى إفاتها عندما تكو ألابد م
هات اغنقر هى مركع مسابع املرشخ ضو اعل م مسابع املرشخ س قر اتج قاك اغ وت ب ث ال تواد
بكسالس م رألضع غة وت سك اغابرب ض ا ،ضاا هو املوقف اب هات ا اغع ألك ف سنى امل مر بكسالس
املرشخ اغا تقر اتج طا اغ وت هناك كثر م بل هلاا املوقف ،بدها وىم ضر مسىوو تماءوع
هات اغبكسالس أبص ات ألهاا ما و ة املاتالب ض ال ألهو اغسب اب ظ وت ا فات ااسوء بوع اغ وت
ألهو ما وساى zero paddingهناك بل آ ر ألهو كل بكسل اتج طا اغ وت أت ا
مسىوو اغرماءوع اب اغنقطع اجملاألت هلا عةى باضع اغ وت أل ىن آ ر وىم تكرات قاك ا اضع كبكسالس
اتج اغ وت ألهو ما وساى border replicationألسك عال لغر اب اغداغع imfilterإبءاضع
كةاع replicateهلا كاا وةى ألكاا هو موءخ اب شكل ( 12- 10ب ث البظ ا ى ال ا اضع
اخلاتا ع تقروبا ىفملقات ع ىفغ وت املواوء اب شكل (11- 10ب
241
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
-2مرشحاس اغوسر :هاا اغنو م املرشحاس م د ادا اب إزاغع و م ني م اغابوءال اغا تقر عةى
اغ وت ألاغا تكو اب صوت قاك سوءال ادا اب ألسر قل سواءا ،أل اغ ك قاك ب ابال ادا اب ألسر
قل ب اءا وابا هاا اغنو م اغابوءال وساى ءوءال املةخ ألاغ ة ل salt and pepper noiseاهنا
مرشخ اغوسر median filterعبات ع انضا تشب بباس اغ ة ل ااسوء املنىشر اب املةخ ااب
مرب ع ال حتىوو و م امالس منسخ هبا اغ وت كاا سبق ،ألغكننا قر مسىوايس بكسالس اغ وت حت
هات اغناضا أل رتب ا ترت با ت اعداي ألأن ا اغق اع املىوسطع ض ا أل بدع هبا ق اع اغبكسل اغا رشح ا أل
اجل ا ألاغا هى اغبكسل املواوء اب مركع اغناضا ضاثال غو ضرءنا بكسالس اغ وت اغا كا حت
انضا ب اءها 3×3مسىواي.ا اغرماءوع كاغىاىل ( 50, 10, 80, 30, 0, 100, 25, 88, 90غىطب ق
مرشخ اغوسر عةى هات اغناضا قوم ب ت اغبكسالس اغسابقع ترت با ت اعداي م اغ سات غة اني كاغىاىل
( ، 0, 10, 25, 30, 50, 80, 88, 90, 100ألعةى لغر تكو اغق اع اغوسطى هى اغق اع 50ب ث
قبة ا 4قرالاس قل من ا ألب دها 4قرالاس كرب من ا كاا ترو ب د لغر قوم ىفسىبداع ق اع اغبكسل
اغا اب مركع املرشخ ىفغق اع 50البظ نا بحث ع اغق اع اغوسر اب اغناضا ،و اغا اب منى ف
اغقائاع ب د اغ ت ألقبة ا عدء م اغنقاك وساألو اغ دء اغاو ب دها اغب و ىقد نا حنس مىوسر
قاك اغناضا ألهاا ط برانمج املاتالب ووضر اغكث م اغدألاع غةاساعد اب لغر ألمن ا مثال اغداغع:
;)J = imnoise(J,'salt & pepper',0.02
242
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
اغا تاب ف اغابوءال م و املةخ ألاغ ة ل غة وت بنسبع 0.02م عدء بكسالس اغ وت ،ألكاغر ضو
كثاضع كل بكسل أل مسىوو اغرماءوع هلا وكو 0.02وابا اغربانمج اغىاىل س اب ف هاا اغنو م
اغابوءال عةى صوت س ل ااصة ع مث وسى دم مرشخ ألسر ىفاب اء 3×3زاغع هات اغابوءال كاا اب
شكل ( 13- 10اغاو وبني اغ وت ااصة ع ألاغ وت مر اغابوءال مث اغ وت ب د إزاغع هات اغابوءال
أ ب ج
شكل ( 13- 10أتأل مرشخ اغوسر median filterعةى ءوءال املةخ ألاغ ة ل -اغ وت
ااصة ع ب -اغ وت ماباضا إغ ا اغابوءال ج -اغ وت ب د إزاغع اغابوءال
;)'I=imread('d:\aseel\aseel256.jpg
;)J = rgb2gray(I
;)]J = imresize(J,[256 256
)'imshow(J);title('Original Image
;)J = imnoise(J,'salt & pepper',0.02
)figure, imshow(J
;)]L = medfilt2(J,[3 3
)figure, imshow(L
غنرو مدو اوء مرشخ اغوسر اب إزاغع هاا اغنو م اغابوءال سنحاألع إزاغع هات اغابوءال رشخ تن م
كاغىاىل:
;h = ones(3,3) / 9
;)I2 = imfilter(J,h
مرشخ اغىن م مل وعول هات اغابوءال كاا ض ل مرشخ اغوسر شكل ( 14- 10وبني ك ف
243
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
244
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
245
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
246
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
ع [ ]18 -14اب جماع املراار املى اكر فر اغىقس م ألغك م هنا سنىطر إىل ب
م اجلع اغ وت باضةع ىفغكث م اغطر اا رو اغا الجماع غاكرها اب هاا اغكىاب
حتديد اخل وط واحلواف
سك حتدود اخلطوك ااضق ع ع فروق اسى دام انضا تركع عةى اخلر ااضقى مر املرشخ كاا سبق ألشربنا
اب تن م اغ وت اب باغع اخلطوك اغر س ع ألاملائةع سك حتدودها ىفسى دام جماوعع م اغنواضا كاا اب
شكل (17- 10
2 - - - 2 - - - 2 - - -
1 1 1 1 1 1 1 1 1
- 2 - - 2 - - 2 - 2 2 2
1 1 1 1 1 1
- - 2 - 2 - 2 - - - - -
1 1 1 1 1 1 1 1 1
د ج ب أ
شكل ( 17- 10جماوعع م اغنواضا اظ ات اخلطوك -ااضق ع
ب -املائةع °45+ج -اغر س ع ء -املائةع °45-
اغربانمج اغىاىل ووءخ ك ع حتدود اخلطوك ااضق ع ألاغر س ع اب صوت مبىن ع فروق اسى دام اغنواضا
املوءحع اب شكل ( 17- 10ألشكل (17- 10ج انتج تن ا اغربانمج موءخ اب شكل (-10
18
;]w1 = [-1 -1 -1;2 2 2;-1 -1 -1
;]w2 = [-1 2 -1;-1 2 -1;-1 2 -1
;)g1 = imfilter(I,w1
;)g2 = imfilter(I,w2
)figure, imshow(g1
)figure, imshow(g2
247
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
هات كل هات اغطر اغسىع مواوء كا ى اتاس غةداغع edgeشكل ( 19- 10وبني تطب ق ب
اخلواتوعماس عةى صوت ىفسى دام اغربانمج اغىاىل:
;)'I=imread('aseel256.jpg
;)J = rgb2gray(I
;)]J = imresize(J,[256 256
;)'imshow(J);title('Original Image
;)'BW1 = edge(J,'sobel
;)'figure; imshow(BW1);title('Edges by Sobel
;)'BW2 = edge(J,'prewitt
;)'figure; imshow(BW2);title('Edges by Prewitt
;)'BW3 = edge(J,'roberts
248
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
البظ م اغشكل اخلرج عبات ع صوت ألنائ ع ،و ق م اغبكسالس أت ا إما اغق اع ص ر أل
اغق اع ألابد سك اسى دام اغداغع edgeمر فر رو مثل حتدود اغىقافر مر ر اغ ر باألع
جتربع لغر مر ا سى ا ع ساعد املاتالب ع هات اغداغع ىفسى دام اامر:
>> help edge
هناك ب اغطر اا رو اغا تسى دم غىحدود ا واف مثل حتوول هوف Houghاغاو وسى دم
غىحدود اخلطوك أل ا واف ألاب ب اغىطب قاس وسى دم غىحدود اغدألائر
ك غةقاتئ جتربع اسى دام هات اغطر مر ب اغ وت املواوء اب مكىبع املاتالب غ م اغ ر بني رج
كل فروقع ألأتأل املى اس امل ىة ع مر هات اغطر
متارين حملولة
-1اكى برانجما وقر اغ توت ا ت ع ،ألحيست بكا ا ،مث و ر كل من ا اب شتكل من تل حب ث وكو
عنوا اغشكل هو اسم اغ وت :
tire.tif -1
249
حسن فؤاد.د.أ د اننسى سامل.م.أ حممد ابراهيم العدوى.د.أ
moon.tif -2
cameraman.tif -3
peppers.png -4
ج
Edges by la ب
Edges by Canny أ
Edges by Roberts
250
حسن فؤاد.د.أ د اننسى سامل.م.أ حممد ابراهيم العدوى.د.أ
tire.tif
251
حسن فؤاد.د.أ د اننسى سامل.م.أ حممد ابراهيم العدوى.د.أ
cameraman.tif
252
حسن فؤاد.د.أ د اننسى سامل.م.أ حممد ابراهيم العدوى.د.أ
7000
6000
5000
4000
3000
2000
1000
253
حسن فؤاد.د.أ د اننسى سامل.م.أ حممد ابراهيم العدوى.د.أ
إىل صت تتوت ألنائ ع اغق اع ىفست تتى دام ق م ىة عrice.png غىحوول اغ ت تتوتim2bw است تتى دم اغداغع-4
د اغىشبر
%Solution of exercise 10-4
R=imread('rice.png');
figure,
BW1=im2bw(R,0.25);
BW2=im2bw(R,0.5);
BW3=im2bw(R,0.75);
subplot(2,2,1), imshow(R),title('The original image')
subplot(2,2,2), imshow(BW1),title('Thresold = 0.25')
subplot(2,2,3), imshow(BW2),title('Thresold = 0.5')
subplot(2,2,4), imshow(BW3),title('Thresold = 0.75')
254
حسن فؤاد.د.أ د اننسى سامل.م.أ حممد ابراهيم العدوى.د.أ
255
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
سنكى ى هباا اغقدت كاقدمع ع اسى دام املاتالب اب امل اجلع اغرقا ع غة وت ،ضكاا ألءحنا قبال
وكو اب كىاب اص ب ألغكننا ضقر تءان قدم غةقاتئ اسى دام املاتالب اب م اجلع اغ وت م
مقدمع ع ساس اس اسى دام املاتالب اب م اجلع اغ وت اغرقا ع ألعةى اغقاتئ امل ىم هباا اغى ص
ع اب هاا اجملاع ألما كثرها ألمن ا ما ألتء لكرت اب اجلعل اخلاص ىفملراار [-14 اغةكول إىل املراار املى
]20
256
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
257
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
ماتالب س حس هاا املىك ألغكن غ و رء عةى قبل ضو اغ اصةع املنقوفع (; اب هناوع اامر ت ىن
شاشع ا اس اب جماع اغ ال
ا سك ا وع عةى اغ دود م املوااس اجل ب ع ىفسى دام هاا املىك اغعمىن ألكاثاع عةى لغر املواع
yاغىاغ ع اغا تىكو م جماو مواع ا ب ع ب ءء 50هرتع مر رو ب ءء 120هرتع ألمقداتها ء ف
مقدات ااألىل كاا وةى:
;)>> y = sin(2*pi*50*t) + 2*sin(2*pi*120*t
سكنر إءاضع ءوءال غإلشات yألتسم ألع 100قطع من ا كااوةى ،ألكاا هو مبني اب شكل (-11
:1
;')>> t=(0:0.001:1
;)>> y = sin(2*pi*50*t) + 2*sin(2*pi*120*t
;)>> randn('state',0
;))>> yn = y + 0.5*randn(size(t
))>> plot(t(1:100),yn(1:100
258
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
سك توغ د اخلطو اغوابد أل ألبد اخلطو unit stepىفسى دام كاغىاىل:
;)>> y = ones(100,1
ألهى عبات ع عاوء م 100صف كل من ا ب اغق اع ألابد
سك توغ د ءاغع اغ وء ( أل االحندات كاا وةى:
;')>> t = (0:0.001:1
;>> y = t
ءاغع اغ ب ر سك توغ دها كاغىاىل:
;>> y = t.^2
شكل ( 2- 11وبني كل م ءاغع اغ وء ألءاغع اغ ب ر
ا شات املكو ع م عاوء ألابد تساى إشات لاس قنا ألابد single channel signalمثل ا شات
اغىاغ ع اغا تىكو م قنا ألابد (عاوء ألابد كل صف ض ( أل كل ع نع تساألو ألابد:
'])>> a=[1 ones(1,3
=a
1
1
1
1
ا شات املكو ع م كثر م قنا multichannelتىكو م كثر م عاوء ،كل عاوء سثل قنا ،ألكل
صف م هات اغقنواس سثل (ع نع ضاثال سك توغ د إشات لاس ألالث قنواس بدالغع ا شات aاغسابقع
كاا وةى:
]>> b=[a 2*a 3*a
=b
1 2 3
1 2 3
1 2 3
1 2 3
259
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
260
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
حيىوو ماتالب وابا عةى اغ دود م اغدألاع اغ ءألتوع مثل اغداغع gauspulseاغا توغد بابع ااألس ع
ب ءء تاءوو عند زم ،tألب ءء مركعو fcهرتع ألعر جماع ،bwألاغ وت اغ امع هلات اغداغع هى:
)yi = gauspuls(t,fc,bw
جماع 60%ألم دع ع نا.ا وساألو ألابد ااألامر اغىاغ ع ت طى بابع ااألس ع ب ءء 50kHzألعر
م كاهرتع ،أل ما احمل ر اخلاتاى هلات اغداغع ض ىناقص قدات 40dBحت قاع اغنبابع
شكل ( 4- 11وبني هات اغداغع املرسومع بنال عةى ااألامر اغىاغ ع:
;)tc = gauspuls('cutoff',50e3,0.6,[],-40
;t = -tc : 1e-6 : tc
;)yi = gauspuls(t,50e3,0.6
)plot(t,yi
261
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
ءألتوع ألاغا من ا اغدألاع اغىاغ عchirp, cos, diric, : اغدألاع اا رو اغدألتوع ألاغ هناك ب
gauspuls, rectpuls, sawtooth, sin, sinc, square, tripulsألسن ك غةقاتول امل ىم أبو
وقر املساعد helpاملواوء اب ماتالب ألابد م هات اغدألاع
262
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
ماتالب سنكى اامر ،fdatoolب ث سىظ ر غر اغشاشع ااساس ع غى ا م املرشخ املواوء اب شكل
(5 -11
سك تقس م شاشع اغ اغ ع اب شكل ( 5- 11إىل عد قسام ،اجلعل اغ ةوو م اغ اني وبني االسىكابع
اغ ءءوع غةارشخ ألاغا ت طى اغ القع بني مقدات رج املرشخ منسوىف إىل ء ة ىفغدوسبل مر اغ ءء ىفهلرتع
مب نا اغ ءءاس ا راع مثل ترءء اغقطر cut of freq.ألترءء جماع اغوقف band stop freq.ألترءء جماع
املرألت pass band freq.
اب اجلعل اغ ةوو م اغ سات ترو مرب ا حيىوو مة ا مل امالس هاا املرشخ البظ املرشحاس اغا وىم
ماتالب ق اا اغى امل م ا هنا هى مرشحاس تقا ع digital filtersألغ س ماألة ع اب اغبداوع و
تةقائ ع ملرشخ اض اءى وىم اض اء اب بداوع اغى امل ألسك تؤوع م امالس هاا املرشخ اب ألع شاشع وىم
ضىح ا
263
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
اب اجلعل ااس ل م اغشاشع املوءحع اب شكل ( 5- 11وواد كثر م مربر سك م الهلا ا ى ات
اغى ا م غةارشخ املطةوب م ب ث وع هل هو مرشخ غة ءءاس املن ابع م غة ءءاس املرت ع م جملاع
لغر م امل امالس م ني م اغ ءءاس كاا سك ا ى ات ترءءاس اغقطر امل ىة ع ألم دع اغ ناس أل
كاا سنرو
1مثال م مربر ا ى ات و االسىكابع ،Response Typeإ Bandpassو من ا جملاع م
اغ ءءاس
Butterworth ،IIRمث ا 2م الع مربر ا ى ات فروقع اغى ا م ،Design Methodإ
م قائاع اال ى ات
3إ ءتاع املرشخ ألاا ة ا تساألو 6م اغ نوا Specify order
4إءبر ترءءاس املرشخ غىكو كاا وةى :ترءء اغ ناس sampling frequencyوساألو
،Fs=4800Hzترءء اغقطر ااألع (عندها وىناقص املقدات 3ءوسبل قبل جماع املرألت ،Fc1=22Hz
ترءء اغقطر اغثاىن (عندها وىناقص املقدات 3ءوسبل ب د جماع املرألت Fc2=45Hz
5ب د اال ى ال م حتدود م امالس املرشخ ،إء ر عةى زتات ت ا م املرشخ ،Design Filterب ث
وقوم ماتالب حبساب املرشخ ألتسم مقدات االسىكابع اغ ءءوع غةارشخ البظ زتات ت ا م املرشخ
و بخ ض اع ب د اغنقر عة ،ألغك عند ت و ألابد م م امالس املرشخ ضو هاا اغعتات
ونشر مر ع حب ث وقوم كرء اغاب ر عة مر ع بى االسىكابع عةى بس امل امالس
اجلدود شكل ( 6- 11وبني شاشع ت ا م املرشخ عق ا ى ال مرابل ا ى ات م امالس اغى ا م
امل ىة ع
6اب هناوع مربةع اغى ا م سكنر ختعو هاا املرشخ بس آ ر م امالس اغى امل م ا ىفغنقر عةى
اغعتات Store Filterاب س ل املربر اغ ةوو وساتا ب ث س ىخ غر مربر بواتو ختىات م الغ
اسم هلاا املرشخ
7اغشاشع اغرئ س ع غى ا م املرشخ حتىوو اب عالها عةى شرور وقوانس سكنر اغىكربع مر كل من ا
غى ر م امالس ألاسىكابع املرشخ بطر ىة ع هناك مثال وقو ع ىفغنقر عة ا و ر مامر ص ات
اجملاوعع أل قطاب املرشخ اب املسىوو Zسكنر تؤوع االسىكابع اغطوتوع غةارشخ أل وابا أت
،Group delayكاا سكنر تؤوع اسىكابع اخلطو Step responseألاسىكابع اغ دمع implse
responseهناك وابا اب عةى هات اغشاشع شرور غةقوائم ألاغا من ا شرور اغىحرور Editاغاو
سكنر م الغ سخ االسىكاىفس امل ىة ع غةارشخ ألت بداوع ألهناوع أل طو تسم كل ألابد م
264
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
حماألت اغرسم هات اغشرائر تسىحق تباع ب اغوق اب جتربى ا غ و اغكث م ا مكا اس اغا
سكنر ا وع عة ا ألاغا تقر اتج طا اغكىاب
265
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
9اب شاشع ت ا م املرشحاس ااساس ع؛ إء ر عةى اغعتات File Managerاب املربر ااوسر اب
عةى اغشاشع ب ث سىظ ر مامر انضا ادود حتىوو ال مج ر املرشحاس اغا ت ا ا ا اب
اخلطو 8شكل ( 7- 11وبني هات اغشاشع اغا حتىوو عةى مخسع مرشحاس ت ا ا ا
الع شاشاس اغى اعل مر املسى دم اب اجلعل اغسابق ألءحنا ك ع ت ا م ألحتة ل املرشحاس م
خنىم بدوثنا اب موءو م اجلع ا شاتاس ىفسى دام املاتالب، ىفسى دام اامر fdatoolألقبل
سى ر سرو ا اغداغع fvtoolألاغداغع sptool
اغداغع ) fvtool(b,aألاغا هى ا ى ات غةا ىن ,ءألاس تؤوع املرشخ Filter visualization toolت ىخ
مقدات اسىكابع املرشخ اغرقاى امل رف بقساع bعةى a شاشع ت اعة ع ألحتس
شكل ( 8- 11ووءخ تن ا اامر اغىاىل:
;)]>>b1 = firpm(20,[0 0.4 0.5 1],[1 1 0 0
;)>> fvtool(b1,1
266
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
267
أ.د .حسن فؤاد أ.م.د اننسى سامل أ.د .حممد ابراهيم العدوى
ألاغداغع sptoolألاغا هى ا ى ات غةا ىن ،ءألاس م اجلع ا شاتاس Signal processing toolت ىخ
خ ا شاتاس signal شاشع ت اعة ع مر املسى دم مكن م تب ع ءألاس ىة ع بدمها اصع بى
,browserألاغثا ع بى ا م املرشحاس ,filter designألاغثاغثع ,fdatoolما اا ض ى ختىص
اونع ألمشاهد اغط ف .spectrum viewerشكل ( 10- 11و ر هات اغشاشع كناتج تن ا
اامر اغىاىل:
>> sptool
اب هناوع هاا اغ ل ن خ اغقاتول وسىكشف اغداغع fvtoolألاغداغع sptoolع فروق جتربع ااءألاس
املىابع غكل من ا غةاعود م اامثةع ألاغىطب قاس ن خ اغقاتئ راا ع ب ض وع املرار []22
268
حسن فؤاد.د.أ د اننسى سامل.م.أ حممد ابراهيم العدوى.د.أ
املراجب
269
حسن فؤاد.د.أ د اننسى سامل.م.أ حممد ابراهيم العدوى.د.أ
270