سبد خرید (0)

تبلیغات

عملیات بر روی بردارها و ماتریس ها در متلب

عملیات عددی را می توان بر روی تمام بردارها و ماتریس ها انجام داد. بعنوان مثال فرض کنید بخواهیم تمام درایه های یک بردار به نام v را در 3 ضرب کنیم. در متلب، به راحتی می توانیم برای انجام این کار بردار v را در عدد 3 ضرب کنیم و آن را دوباره در متغیر v ذخیره کنیم: 

مثال (عملیات بر روی بردارها و ماتریس ها در متلب)

 بعنوان یک مثال دیگر، می توانیم هر عنصر این بردار را بر عدد 2 تقسیم کنیم:

مثال (عملیات بر روی بردارها و ماتریس ها در متلب)

برای ضرب کردن تمام عناصر یک ماتریس در عدد 2 به صورت زیر عمل می کنیم:

مثال (عملیات بر روی بردارها و ماتریس ها در متلب)




 به این عملیات بالا، ضرب اسکالر گفته می شود. در این نوع ضرب، ما هر عنصر از یک بردار یا ماتریس را در یک عدد(اسکالر) ضرب می کنیم. و یا در تقسیم اسکالر، هر عنصر از یک بردار یا ماتریس را بر یک عدد تقسیم می کنیم.

سوال سریع!

هیچ تابعی برای ایجاد یک ماتریس از اعداد 10 وجود ندارد، بنابراین اگر بخواهیم چنین ماتریسی ایجاد کنیم باید چکار کنیم؟

پاسخ: دو راه برای این کار وجود دارد. راه حل اول این است که از تابع ones استفاده کنیم و آن را در عدد 10 ضرب کنیم. و راه حل دوم این است که از تابع zeros استفاده کنیم و به آن عدد 10 را اضافه کنیم. به مثال زیر توجه کنید:

 عملیات آرایه ای(Array operation)  عملیاتی هستند که جمله به جمله یا عنصر به عنصر، بر روی بردارها یا ماتریس ها اعمال می شوند. این بدین معنی است که دو آرایه یا بردار یا ماتریس مورد نظر باید سایز یکسانی داشته باشند. 

مثال های زیر عملیات آرایه ای جمع و تفریق را نشان می دهند:

مثال (عملیات بر روی بردارها و ماتریس ها در متلب)

 اما توجه کنید که برای انجام هر عملیاتی که به ضرب وابسته باشد( مانند عمل ضرب و عمل تقسیم و عمل توان)، باید برای انجام عملیات آرایه ای، در جلوی عملگر از یک علامت نقطه استفاده کنید. بعنوان مثال برای انجام عمل توان، باید از علامت ^. استفاده کنید. بعنوان مثال، به توان 2 رساندن یک بردار، به معنی ضرب کردن هریک از عناصر در خوشان است، بنابراین باید از عملگر ^. استفاده کنیم:

مثال (عملیات بر روی بردارها و ماتریس ها در متلب)

 به طور مشابه، برای انجام ضرب آرایه ای، باید از عملگر *. استفاده کنید، و برای تقسیم آرایه ای باید از عملگر های /. یا \. استفاده نمایید. 

در مثال زیر، انواع عملیات ضرب و تقسیم آرایه ای نشان داده شده است:

مثال (عملیات بر روی بردارها و ماتریس ها در متلب)

 به عملگر های ^. و *. و /. و \. عملگرهای آرایه ای گفته می شود و به هنگام تقسیم یا ضرب بردارها یا ماتریس ها بصورت عنصر به عنصر مورد استفاده قرار می گیرند. توجه داشته باشید که عملیات ضرب  یک عمل کاملاً متفاوت می باشد و بعداً مورد بررسی قرار خواهد گرفت. 

 

دیدگاه‌ها  

0 # 925110 1396-05-09 16:37
سلام و از پاسخگویی شما ممنونم
میخوام یک فرمول رو در متلب شبیه سازی کنم.
فرول من نیازمند یکسری بردار و عدد متغیر و توابع موهومی هست.

يک عدد رو input مى کنم
و یک رشته عدد رو
حالا بایستی این عدد گرفته شده بر بردار یا رشته از اعداد تقسيم بشه
به هر روشی که این کار رو می کنم ارور مى ده. چطور اینکارو انجام بدم؟
پاسخ دادن | پاسخ به نقل قول | نقل قول کردن
0 # احسان عباسی 1396-05-10 13:14
سلام
دستورات زیر معادل هستند:
c = rdivide(a,b)
c = a./b

برای تقسیم شما از چه اپراتور یا تابعی استفاده می کنید؟
پاسخ دادن | پاسخ به نقل قول | نقل قول کردن