پروژه متلب انتگرال گیری به روش مونت کارلو
انتگرال تابع مساحت زیر نمودار منحنی پیوسته هست. برای بدست آوردن انتگرال با مونت کارلو به دو پارامتر نیازمندیم:
دامنه انتگرال. در شکل بال از ۰ تا xmax ادامه دارد. دوم بیشینه تابع در محدوده انتگرال گیری که آن را fmax میگیریم.
دو مقدار xmax و fmax ابعاد یک مستطیل را تشکیل میدهند که تابع را محیط کرده است. انتگرال تابع بخشی از مستطیل است. یک سری اعداد تصادفی تولید میکنیم (xr,fr) و چک میکنیم که این نقطه در بالای منحنی است یا زیر آن.
__________________
مراحل:
۱- تولید یک جفت عدد رندم به نام r1 وr2 . دقت کنید که این دو عدد بین ۰و۱ باشد.
۲- محاسبه xr=r1*xmax و fr=r2*fmax. (مشخص است، من در محدوده فضای جستجو اعداد تصادفی تولید میکنم)
۳- چک کنیم که آیا نقطه زیر منحنی است یا خیر (fr<f(xr))
۴- اضافه کردن یک عدد به شمارنده در صورتی که نقطه زیر منحنی افتاد
۵- تکرار مراحل بالا به تعداد کافی
۶- انتگرال را با نسبت گیری تعداد نقاطی که زیر منحنی افتاده اند با تعداد کل نقاط شبیه سازی ضربدر کل ناحیه مستطیلی بدست می آید.
__________________
دقت کنید که مقدار تابع درون انتگرال برای به ازای مقادر بزرگتر از ۵ تقریبا صفر می شود بنابراین صرفا برای کاهش زمان محاباتی بازه بالای انتگرال را برابر ۵ در نظر گرفته شده است. در نظر داشته باشید میتوان مقدار را بسیار بزرگ فرض کرد در مقابل زمان محاسباتی بالا میرود. مقدار اتگرال برابر خواهد بود با احتمال نقاط زیر نمودار (قرمز) به کل مساحت (که از ضرب بازه در نظر گرفته شده برای اعداد رندوم بدست می آید)ضربدر مقدار مساحت
لطفاً براي ارسال دیدگاه، ابتدا وارد حساب كاربري خود بشويد