تولید اعداد تصادفی در متلب (قسمت ششم)

تولید اعداد تصادفی در متلب
سلام از سری آموزش متلب با آموزش تولید اعداد تصادفی در متلب با شما هستیم
در بسیاری از پردازش های فیزیکی و کاربردهای مهندسی تولید اعداد تصادفی نقش فراوانی در حل مسائل ایفا می کند. در نرم افزار MATLAB از دو دستور rand و randn جهت تخصیص اعداد تصادفی به متغیرها استفاده می شود.
دستور rand یک توزیع یکنواخت از اعداد در بازهی [1 , 0] تولید می کند. با استفاده از این دستورات می توان یک اسکالر، یک بردار یا یک ماتریس تصادفی مانند جدول زیر تولید کرد.
مثال | توضیحات | دستور |
---|---|---|
rand ans = 0.8147 | این دستور، تنها یک عدد تصادفی بین صفر ویک تولید می کند. | rand |
(rand(1,3 =ans 0.9058 0.1270 0.9134 | این دستور یک بردار سطري n عضوی از اعداد تصادفی در بازه ی [0, 1] تولید می کند. | (rand(1,n |
(rand(2 =ans 0.6324 0.2785 | این دستور یک ماتریس n*n با اعداد تصادفی در بازه ی [1 , 0] تولید می کند. | (rand(n |
(rand(2,3 =ans 0.9575 0.1576 0.9572 | این دستور یک ماتریس m*n با اعداد تصادفی در بازه ی [1 , 0] تولید می کند. | (rand(m,n |
(randperm(3 =an 2 3 1 | این دستور یک بردار سطری n عضوی و به صورت جایگشت اعداد بین 1 تا n تولید می کند (اعداد بین 1 تا n به صورت تصادفی جایگشت می شوند). | (randperm(n |
دستور تصادفی randn در متلب
با استفاده از این دستور، نرم افزار MATLAB مقادیر گوسی، با میانگین صفر و واریانس ( در صورتی که توزیع نرمال تعیین شده باشد تولید می کند. در MATLAB از دستورات زیر جهت تولید مقادیر گوسی استفاده می شود:
- ( Randn( n :این دستور یک ماتریس n*n شامل اعداد تصادفی گوسی (نرمال) تولید می کند کهمیانگین آن صفر و انحراف معیار آن یک است
- ( Randn( n , m: این دستور یک ماتریس m*n شامل اعداد تصادفی گوسی (نرمال) تولید می کند کهمیانگین آن صفر و انحراف معیار آن یک است.
اگر تمایل داشته باشیم که یک عدد تصادفی گوسی با میانگین و انحراف معیار متفاوت تولید کنیم برای این کار می توانیم به صورت زیر عمل کنیم. این دستور مجموعه ای از اعداد تصادفی با میانگین او انحراف معیار ۲ تولیدمی کند:
1 2 3 4 5 6 7 8 9 | >> r = 1+2.*randn(5,1) r = -2.9218 0.6046 -1.4157 6.8160 2.6504 |
مثال 1 :فرض می کنیم برداری بانام a موجود است، قرار است n عضو را به صورت تصادفی از این بردار انتخاب کنیم. برای این کار روش های گوناگونی ممکن است ارائه گردد که در ادامه به معرفی یک روش می پردازیم.
حل:
(طول بازه ی B = ceil ( rand ( 1 , n ) * a
(d=a (b
به عنوان مثال اگر بردار a یک بردار ۵۰۰۰ عضوی باشد و بخواهیم ۳۲ عنصر را به صورت تصادفی از آن انتخاب کنیم به صورت زیر عمل می کنیم:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 | a=100*rand (1,5000); >> b=ceil (rand (1,32) *5000); >> d=a(b) d = Columns 1 through 8 58.9104 81.2944 58.0634 30.8915 88.0604 62.6954 50.2662 33.0669 Columns 9 through 16 65.9617 58.2382 23.6022 0.8248 17.3069 60.3902 84.3616 27.2725 Columns 17 through 24 79.6915 25.4169 96.1285 10.1762 39.3613 99.5324 16.5891 77.7265 Columns 25 through 32 95.5726 56.9829 67.3995 29.2279 5.8007 61.0371 4.1336 90.1803 |
مثال 2 : در مثال زیر اعداد تصادفی بین دو عدد (۱۰ تا ۲۰) را محاسبه خواهیم نمود.
حل:
1 2 3 4 5 6 7 | a=10:20; b=randperm(10); a=a(b) a = 13 18 15 17 10 14 12 16 19 11 |
مثال 3 : ماتریسی ۱۰ در ۱۰ ایجاد کنید که مقادیر داخل آن فقط اعداد تصادفی 1 و 1- باشد.
حل:
برای حل این مثال از دو حلقه ی for به صورت تودرتو استفاده شده است.
1 2 3 4 5 | for n=1:10 for m=10:-1:1 w(n,m)=(-1).^(fix(10*rand)); end end |
پیشنهاد مطالعه: چندجمله ای ها در متلب (قسمت هفتم)
برای رفتن به لیست آموزش های متلب روی دکمه زیر کلیک کنید
به این آموزش امتیاز بدهید
نظرات کاربر
3.67 (3 رای)درباره فرهاد حمیدی
مدیرسایت فراکد،دانشجوی رشته ی مهندسی مکانیک،علاقه مند به برنامه نویسی و طراحی صنعتی که دوست دارم تجربیاتم رو با دیگران به اشتراک بگذارم.
نوشته های بیشتر از فرهاد حمیدیمطالب زیر را حتما بخوانید
بهترین نرم افزارهای طراحی خودرو برای مهندسان مکانیک و طراحان صنعتی
408 بازدید
آموزش نصب pdms v12.1 به همراه فعالسازی به صورت قدم به قدم
1.18k بازدید
آموزش نصب کی شات (keyshot) به همراه فعالسازی نرم افزار کی شات
1.18k بازدید
نرم افزارهای مهندسی مکانیک در لینوکس به همراه روش نصب
1.14k بازدید
آموزش نصب کامسول (Comsol) + ویدیو
1.07k بازدید
2 دیدگاه
به گفتگوی ما بپیوندید و دیدگاه خود را با ما در میان بگذارید.
بسیار سپاسگزارم از توضیح کامل و روانتون. 🙂
خواهش می کنم