هر دانش آموخته کنجکاو و علاقهمند این سوال در ذهنش به وجود میآید که به ازای چند جمله سری فوریه قادر خواهد بود تقریب مناسبی از این تابع را به ما بدهد. اگر T را 1 در نظر بگیریم و بازه زمانی t را از -1.1 تا 1.1 در نظر بگیریم، برنامه زیر جواب شما را خواهد داد.
در ناپیوستگی های تابع(نقاط مرزی) سری فوریه رفتاری نوسانی از خود نشان میدهد که به پدیده گیبس معروف است. جالب است بدانید با افزایش k پدیده گیبس شارپ تر می شود.
#Gibs, #Fourier
@MatlabTips
در ناپیوستگی های تابع(نقاط مرزی) سری فوریه رفتاری نوسانی از خود نشان میدهد که به پدیده گیبس معروف است. جالب است بدانید با افزایش k پدیده گیبس شارپ تر می شود.
#Gibs, #Fourier
@MatlabTips
Forwarded from Deleted Account
If you can't explain it simply, you don't understand it well enough. Albert Einstein
@MatlabTips
@MatlabTips
🔵 معادلات دیفرانسیل - قسمت دوم: نگاهی کوتاه به حوزهی کاربردها 🔵
سطح پیچیدگی: 🌑🌑🌑🌑🌑
پیش نیاز: علاقه
برای: همه
📝هدف از این پست: (آشنایی مختصر با حوزههایی که معادلات دیفرانسیل کاربرد دارد
مطالعه معادلات دیفرانسیل شاخهای بسیار پهناور در ریاضیات محض و کاربردی، فیزیک، شیمی و مهندسی است. ریاضیات محض تمرکزش را روی وجود و یکتایی جوابهای معادلات قرار داده، در حالی که ریاضیات کاربردی توجه را روی تقریب زدن جوابها نهاده است.
معادلات دیفرانسیل نقش مهمی در مدل کردن پدیدههای فیزیکی، تکنیکی یا بیولوژیکی دارد، از حرکتهای سماوی و طراحی پلها گرفته تا کنشهای بین نورونها. بسیاری از قوانین بنیادی فیزیک و شیمی را می توان توسط معادلات دیفرانسیل فرمول بندی کرد. در بیولوژی و اقصاد، معادلات دیفرانسیل برای مدل کردن رفتار سیستمهای پیچیده استفاده می شود.
معادلات دیفرانسیل نظیر آنهایی که برای حل مسائل مربوط به دنیای خودمان به کار می رود لزومی ندارد که به طور مستقیم حل شوند. یعنی لزومی ندارد که جواب های آنها را به صورت بستهای بیابیم، در واقع جوابها را می توان با روشهای عددی تقریب زد.
سطح پیچیدگی: 🌑🌑🌑🌑🌑
پیش نیاز: علاقه
برای: همه
📝هدف از این پست: (آشنایی مختصر با حوزههایی که معادلات دیفرانسیل کاربرد دارد
مطالعه معادلات دیفرانسیل شاخهای بسیار پهناور در ریاضیات محض و کاربردی، فیزیک، شیمی و مهندسی است. ریاضیات محض تمرکزش را روی وجود و یکتایی جوابهای معادلات قرار داده، در حالی که ریاضیات کاربردی توجه را روی تقریب زدن جوابها نهاده است.
معادلات دیفرانسیل نقش مهمی در مدل کردن پدیدههای فیزیکی، تکنیکی یا بیولوژیکی دارد، از حرکتهای سماوی و طراحی پلها گرفته تا کنشهای بین نورونها. بسیاری از قوانین بنیادی فیزیک و شیمی را می توان توسط معادلات دیفرانسیل فرمول بندی کرد. در بیولوژی و اقصاد، معادلات دیفرانسیل برای مدل کردن رفتار سیستمهای پیچیده استفاده می شود.
معادلات دیفرانسیل نظیر آنهایی که برای حل مسائل مربوط به دنیای خودمان به کار می رود لزومی ندارد که به طور مستقیم حل شوند. یعنی لزومی ندارد که جواب های آنها را به صورت بستهای بیابیم، در واقع جوابها را می توان با روشهای عددی تقریب زد.
🔵نمونه برداری تصادفی از یک تابع توزیع احتمال پیوسته🔵
سطح پیچیدگی:🌕🌕🌑🌑🌑
پیشنیاز:(کد نویسی متوسط)
برای:(متوسط و پیشرفته)
در قسمت قبل نحوه ی نمونه برداری تصادفی از توزیع احتمال گسسته (با چندین احتمال متناهی و مشخص) را بررسی کردیم. متوجه شدیم که تابع ransample بهترین گزینه برای این کار است و آرگومان ها و حالات مختلف آن را بررسی کردیم. در این بخش به نمونه برداری تصادفی از یک تابع توزیع پیوسته می پردازیم.
هرچند نمونه برداری تصادفی از توزیع های یکنواخت و گاوسی(نرمال) در متلب فراهم شده است اما ما می خواهیم این کار را برای هر تابع توزیع احتمالی بتوانیم انجام دهیم. روش عمومی برای این کار "نمونه گیری تبدیل معکوس"(Inverse transform sampling) است. ایده ساده ای در پشت این تکنیک است. ابتدا شما یک نمونه تصادفی از تابع توزیع یکنواخت می گیرید. می دانیم که مقداری که حاصل می شود بین صفر و یک است. از طرفی می دانیم مساحت زیر نمودار هر تابع توزیعی برابر با یک است(مجموع تمام احتمال ها همیشه یک است) حالا کافی است عددی که از نمونه گیری تصادفی از توزیع یکنواخت بدست آورده ایم را برابر با قسمتی از نمودار بگیریم که مساحتش از منفی بی نهایت تا یک نقطه است. آن نقطه نمونه تصادفی مورد نظر ماست!
ممکن است قدری گیج شده باشید. به صورت تکنیکی اگر x نمونه تصادفی یکنواخت ما باشد. u نمونه تصادفی توزیع مورد نظر است:
سطح پیچیدگی:🌕🌕🌑🌑🌑
پیشنیاز:(کد نویسی متوسط)
برای:(متوسط و پیشرفته)
در قسمت قبل نحوه ی نمونه برداری تصادفی از توزیع احتمال گسسته (با چندین احتمال متناهی و مشخص) را بررسی کردیم. متوجه شدیم که تابع ransample بهترین گزینه برای این کار است و آرگومان ها و حالات مختلف آن را بررسی کردیم. در این بخش به نمونه برداری تصادفی از یک تابع توزیع پیوسته می پردازیم.
هرچند نمونه برداری تصادفی از توزیع های یکنواخت و گاوسی(نرمال) در متلب فراهم شده است اما ما می خواهیم این کار را برای هر تابع توزیع احتمالی بتوانیم انجام دهیم. روش عمومی برای این کار "نمونه گیری تبدیل معکوس"(Inverse transform sampling) است. ایده ساده ای در پشت این تکنیک است. ابتدا شما یک نمونه تصادفی از تابع توزیع یکنواخت می گیرید. می دانیم که مقداری که حاصل می شود بین صفر و یک است. از طرفی می دانیم مساحت زیر نمودار هر تابع توزیعی برابر با یک است(مجموع تمام احتمال ها همیشه یک است) حالا کافی است عددی که از نمونه گیری تصادفی از توزیع یکنواخت بدست آورده ایم را برابر با قسمتی از نمودار بگیریم که مساحتش از منفی بی نهایت تا یک نقطه است. آن نقطه نمونه تصادفی مورد نظر ماست!
ممکن است قدری گیج شده باشید. به صورت تکنیکی اگر x نمونه تصادفی یکنواخت ما باشد. u نمونه تصادفی توزیع مورد نظر است:
به جای بیان انتگرال می توان این تکنیک را بر اساس تابع تجمعی هم توضیح داد. یعنی ما به دنبال نقطه ای هستیم که در معادله زیر صدق کند:
بزرگترین مانع در این راه روش دشوار بودن انتگرال گیری در مواردی است که تابع توزیع احتمال خود دشوار باشد.
اکنون به یک مثال عملی می پردازیم: تابع توزیع Rayleigh به صورت زیر است:
اکنون به یک مثال عملی می پردازیم: تابع توزیع Rayleigh به صورت زیر است:
پس نمونه گیری از آن به این صورت است که ابتدا یک x به صورت یکنواخت تولید می کنیم و سپس در فرمول زیر می گذاریم:
به عبارتی دیگر:
در این قسمت مبحث ما بر روی نمونه برداری تصادفی به پایان می رسد.
@MatlabTips
sigma = 3;
x = rand; % x drawn from uniform distribution in the [0 1] interval
u = sigma*sqrt(-2*log(1-x)); % u drawn from the Rayleigh distribution
در این قسمت مبحث ما بر روی نمونه برداری تصادفی به پایان می رسد.
@MatlabTips
🔵توجه🔵
در حال تهیه یک پک بی نظیر از آموزش متلب هستیم. که به زودی در اختیار شما عزیزان قرار خواهد گرفت.
@MatlabTips
در حال تهیه یک پک بی نظیر از آموزش متلب هستیم. که به زودی در اختیار شما عزیزان قرار خواهد گرفت.
@MatlabTips
🔵انداختن عکس بر روی رویه🔵
سطح پیچیدگی: 🌕🌓🌑🌑🌑
پیش نیاز: آشنایی با رسم رویه در متلب
برای: متوسط
📝هدف از این پست: سرگرمی و درک قابلیت های متلب
همگی با دستورا Surf آشنا هستیم. ای دستور یک رویه سه بعدی را در متلب رسم میکند. اما یک کاربرد جذاب این دستور پهن کردن یک تصویر بر روی رویه می باشد.
دستور surf ویژگی های زیادی دارد( که دانشجوی علاقه مند می تواند به help متلب رجوع کند). در این پست خاص ما ویژگی FaceColor را به texturemap تنظیم میکنیم و ویژگی CData را همان اطلاعات سه بعدی تصویر را قرار میدهیم. در ضمن باید ویژگیEdgeColor را به none تغییر دهیم. این که وظیفه هر یک از این ویژگی ها چیست، ممکن است قدری خسته کننده و طولانی باشد. به همین دلیل در صورت علاقه میتوانید در help متلب یا اینترنت آن را دنبال کنید.
در این پست می خواهم یک تصویر را بر روی یک کره (شما می توانید هر رویه ای را تعریف کنید)پهن کنم.
1⃣توجه: کره در مختصات کروی تعریف شده است(اگر حال فکر کردن دارید به آن فکر کنید)
2⃣توجه:(اگر دوست داشتید در متلب کد را اجرا کنید آدرس تصویر را تغییر دهید)
3⃣توجه: تشریح این کد در ویدئوی آموزشی آمده است.
#Surface, #Surf, #Image, #For_intermediate
@MatlabTips
سطح پیچیدگی: 🌕🌓🌑🌑🌑
پیش نیاز: آشنایی با رسم رویه در متلب
برای: متوسط
📝هدف از این پست: سرگرمی و درک قابلیت های متلب
همگی با دستورا Surf آشنا هستیم. ای دستور یک رویه سه بعدی را در متلب رسم میکند. اما یک کاربرد جذاب این دستور پهن کردن یک تصویر بر روی رویه می باشد.
دستور surf ویژگی های زیادی دارد( که دانشجوی علاقه مند می تواند به help متلب رجوع کند). در این پست خاص ما ویژگی FaceColor را به texturemap تنظیم میکنیم و ویژگی CData را همان اطلاعات سه بعدی تصویر را قرار میدهیم. در ضمن باید ویژگیEdgeColor را به none تغییر دهیم. این که وظیفه هر یک از این ویژگی ها چیست، ممکن است قدری خسته کننده و طولانی باشد. به همین دلیل در صورت علاقه میتوانید در help متلب یا اینترنت آن را دنبال کنید.
در این پست می خواهم یک تصویر را بر روی یک کره (شما می توانید هر رویه ای را تعریف کنید)پهن کنم.
1⃣توجه: کره در مختصات کروی تعریف شده است(اگر حال فکر کردن دارید به آن فکر کنید)
2⃣توجه:(اگر دوست داشتید در متلب کد را اجرا کنید آدرس تصویر را تغییر دهید)
3⃣توجه: تشریح این کد در ویدئوی آموزشی آمده است.
% planet
% place image on surface
% Author: Jabbar Kamali
%% set parameters
N=100;
lambda=1;
%% make grid
theta=linspace(0, pi, N);
phi=linspace(0, 2*pi, N);
r = 1;
[phi,theta]=meshgrid(phi,theta);
x = r .* sin(theta) .* cos(phi);
y = r .* sin(phi) .* sin(theta);
z = r .* cos(theta);
axis([0, 1, -1, 1, 0, 1]);
%% get image
flower=imread('C:\Users\jegerz\Desktop\flower.jpg' );
for k=1:3
flower(:,:,k)=flipud(flower(:,:,k));
end
%% plot surface
surf(x,y,z,...
'FaceColor', 'texturemap', 'CData', flower,...
'EdgeColor', 'none');
axis equal
#Surface, #Surf, #Image, #For_intermediate
@MatlabTips