در این دوره آنلاین آموزش متلب به صورت رایگان با سری آموزشهای نرم افزار متلب در خدمت شما هستیم. جلسه گذشته با دستور clc در متلب آشنا شدید. در این جلسه از آموزش؛ کارشناسان تیم کارت به صورت کاملا تصویری شما را با نحوه اجرای دستور clc در متلب آشنا خواهند کرد. در واقع آنچه که شما به طور کاملا عملی برای استفاده در انجام پروژه متلب نیاز دارید در این جلسات ارائه خواهد شد.
نحوه اجرای دستور range در متلب
میتوانیم برای تعریف ماتریسها از range نیز استفاده کنیم. در حالت کلی رنج به این صورت تعریف میشود. تابع range یک آرایه ایجاد میکند که دربردارنده ی یک محدوده از عناصر است. این تابع، یک آرایه را برمیگرداند که ترتیب آن از کوچک به بزرگ است.
نکته: اگر که پارامتر کوچکتر، بزرگتر از مقدار پارامتر بزرگتر باشد، تابع range از بزرگتر به کوچکتر نوشته میشود.
برای تعریف ماتریس با دستور range در نرم افزار متلب باید به این صورت بنویسیم: a:b
آموزش دستور range در متلب مرحله اول
برای مثال این عدد a برابر با ۷ است و عدد b برابر با ۳ است. این تصاعد حسابی است که وقتی a:b مینویسید، با قدر نسبت ۱، یکی یکی به جلو میرود. مثلاً a,a+1,a+2, …, b یعنی از a تا b هر عددی که باشد. مثلا اگر از ۱ تا ۱۰ بنویسیم، میآید از ۱ تا ۱۰ به جلو میرود: 1,2,3,4,… ,10 اما 7:3 یک ماتریس خالی را به ما نشان میدهد. آن را باید به گونهای دیگر بنویسیم که بعداً برای شما تعریف میکنم.
آموزش دستور range در متلب مرحله دوم
اگر بخواهیم مثال بزنیم، همان ۱ تا ۱۰ را نشان داد که به صورت تصاعد حسابی است. تصاعد حسابی چیست؟ آن را در ریاضیات دبیرستان خواندید. به دنبالهای از اعداد گفته میشود که اختلاف هر دو جملهی متوالی آن مقداری ثابت باشد که آن مقدار ثابت را با d نشان میدادیم که به d هم قدرنسبت میگفتیم. به این تصاعد، تصاعد حسابی میگفتیم. در ریاضی تصاعدهای دیگری نیز داشتیم. در مثال بالا اختلاف این اعداد ۱ است. یکی یکی به جلو میرود. به ۱ قدرنسبت میگویند که با d نشان میدهند. ما میخواهیم قدرنسبت ۱ نباشد و ۲ باشد و ۲ تا ۲ تا جلو برویم. بنابراین باید به صورت زیر بنویسیم:
آموزش دستور range در متلب مرحله سوم
مشاهده میکنید که قدرنسبت ما در اینجا ۲ است که اعداد به صورت ۲تا ۲تا افزایش پیدا میکنند و جلو میروند. حال اگر بخواهیم 7 : 3 را بنویسیم، چگونه باید بنویسیم؟ کمی روی آن فکر کنید. قدر نسبت را در اینجا تغییر میدهیم و آن را ۱- در نظر میگیریم و به صورت تصویر زیر کد را مینویسیم.
آموزش دستور range در متلب مرحله چهارم
مشاهده میکنیم که یکی یکی از اعداد کم میشود و بسیار ساده است. حال میخواهیم یک ماتریس دیگری به نام F تعریف کنیم که این ماتریس به صورت زیر نشان داده میشود: F = [1 2 3 4 ; 5 6 7 8 ; 9 10 11 12]
آموزش دستور range در متلب مرحله پنجمنمایش ماتریس F در متلب
یک ماتریس به صورت بالا خواهیم داشت که تعداد سطرهای آن ۳ تا و تعداد ستونهای آن ۴ تا است. ما میخواهیم ۶ و ۷ و ۸ را از داخل ماتریس به دست آوریم. چگونه باید آن را به دست آوریم؟ راه حل آن ساده است. کمی در مورد آن فکر کنید. در اینجا علامت «:» به معنی «تا» بود. 1 : 10 یعنی ۱ تا ۱۰ را به ما بدهد. در اینجا ۶ تا ۸ را میخواهیم. آن را چگونه باید به دست آوریم؟ میگوییم که ماتریس F از سطر۲ و ستون ۲ یعنی عدد ۶ تا ۸ را بدهد. هم میتوانیم تا ۸ بنویسیم و هم میتوانیم بگوییم تا آخرش را به ما نشان دهد.
آموزش دستور range در متلب مرحله ششم
F (2 , 2 : end) ans = 6 7 8 مشاهده میکنید که ۶ و ۷ و ۸ را به سادگی به ما نشان داده است.
آموزش دستور range در متلب مرحله هفتم
باز در همین ماتریس F برای مثال سطر ۲ و ستون ۱ تا انتهای آن را میخواهیم. یعنی ۵ و ۶ و ۷ و ۸ را به ما نشان دهد. F (2 , 1 : end) ans = 5 6 7 8
اما این را میتوان به صورت دیگری نیز نوشت. به طور کلی سطر ۲ است. پس به این صورت مینویسیم:
نحوه تعریف ماتریس با range در متلب
آموزش دستور range در متلب مرحله هشتم
ماتریس F از ۲ تا آخر به صورت زیر باید نوشته شود: F (2:end) ans = 5 9 2 6 10 3 7 11 4 8 12 که در جواب سطر۲ را به ما نشان داده است.
آموزش دستور range در متلب مرحله نهم
البته در اینجا یک اشتباه وجود دارد که از ۵ شروع کرده است و تا ۱۲ آن را به صورت افقی نوشته است. آن چیزی که ما میخواستیم، باید بنویسیم در ماتریس F سطر دوم تا (وقتی علامت : قرار میدهیم، یعنی همهی سطر دوم) پس مشاهده میکنیم که ۵ و ۶ و ۷ و ۸ را نمایش داد. توجه: کوتیشن مارک رو در هنگام اجرای دستور range در پنجره command window ننویسید. “F(2 , :)” ans = 5 6 7 8
آموزش دستور range در متلب مرحله دهم
برای مثال ما در ماتریس F سطر سوم را میخواهیم. این سطر را چگونه به دست آوریم؟ به این صورت مینویسیم: “F(3, :)” یعنی سطر سوم : یعنی همهی عددهای این سطر را میخواهیم. ans = 9 10 11 12 که به راحتی سطر آخر را هم به ما نشان داد.
آموزش دستور range در متلب مرحله یازدهم
به طور مثال میتوانیم بگوییم که در ستون سوم همه درایهها را میخواهیم. آن را چگونه به دست آوریم؟ به این صورت مینویسیم که: “F(: , 3)” ans =
نمایش ستون ماتریس f در متلب مرحله اولآموزش دستور range در متلب مرحله دوازدهم
که همانطور که مشاهده میکنید ستون سوم یعنی
نمایش ستون ماتریس در متلب مرحله دوم
را به ما داده است. حال به نظر شما F اگر به صورت زیر باشد، چه چیزی را نشان میدهد؟ “(: , :)F”
آموزش دستور range در متلب مرحله سیزدهم
دقیقا خود F را به ما نشان میدهد. ans =
نمایش ماتریس f در متلب با دستور range
حال به نظر شما این F که به صورت زیر تعریف شده است، چه چیزی را نشان میدهد؟ F(:)
نحوه آموزش دستور range در متلب مرحله چهاردهم
در اینجا همهی اعداد در زیر هم قرار میگیرند. چرا به این صورت میشود؟ زیرا سطر به ستون ارجح است. ans =
نمایش ارجحیت سطر به ستون در متلب
و اینجا ماتریس ما به یک بردار تبدیل شده است و خود این یک روشی برای تبدیل ماتریس به بردار است. حال اگر بخواهیم بیشتر توضیح دهیم که چرا به این صورت درآمده است، با استفاده از تصویر زیر آن را توضیح میدهم.
آموزش دستور range در متلب مرحله چهاردهم
همیشه اولویت با سطر است.
نمایش مولفه های اول ماتریس در متلب
یعنی ابتدا a1، بعد a2، بعد a3 را داریم. فرض کنیم این ماتریس تا سطر سوم فقط باشد و بعد از آن سطر دیگری نداشته باشیم. پس به مؤلفهی دوم اضافه میشود. مؤلفهی اول ۱ میشود و به ستون دوم میرود. باز هم اولویت با سطر است. در اینجا هم داریم:
نمایش مولفه های دوم ماتریس در متلب
باز عدد سطر ۱ میشود و ستون سوم را داریم.
نمایش مولفه های سوم ماتریس در متلب
دقیقا در جایی که ما هم اشتباهی انجام دادیم، اگر ویدیو را به عقب ببرید، مشاهده میکنید به همین دلیل بود که از سطر دوم آغاز کرد و زیر هم و کنار هم شروع به نوشتن کرد.
اگر ماتریس ما سهبُعدی هم بود، اولویت باز به همین ترتیب است. اول سطر، بعد ستون و بعد از آن به اصطلاح طبقهی ما قرار میگیرد. ولی آیا فقط میتوان آنها را زیر هم یا به صورت عمودی نوشت؟ نمیتوان آن را به صورت افقی نوشت؟ میتوانیم به صورت افقی نیز بنویسیم.
در صورتی که شما پس از خواندن محتوای جلسات قبلی و این بخش که به سادهترین زبان ممکن دربارهی برنامهی متلب و محیط کاربری آن توضیح داده باز هم سردرگم هستید. میتوانید با برون سپاری انجام پروژه متلب خود به کارشناسان حرفهای کارت پروژه میباشد. میتوانید از طریق شمارهی 09104503300 با پشتیبانان کارت از طریق پیام یا تماس در ارتباط باشید.
ارسال پاسخ