پدیده ی گیبس حالت خاصی از سری فوریه هست ، ابتدا برنامه و توضیحات سری فوریه رو ملاحظه بفرمایید
توضیحات بیشتر در ادامه ی مطلب
تو سری فوریه متوجه شدیم که اگر بخایم یه تابع رو برحسب مجموعه ای از توابع سینوس و کسینوس بسط بدیم تا شکل موجگونه پیدا کنه ، از سری فوریه استفاده میکنیم . سری فوریه یکی از قوی ترین مباحث ریاضی هستش که به قول خودمون مو لا درزش نمیره ، اما خواهید دید که این تبدیلات هم دارای کاستی هست !
سری فوریه برای تمام توابع به خوبی و بدون خطا جواب میده و همون طور که تو برنامه ای که برای سری فوریه گزاشتم میبینید اگر مقدار n رو به اندازه ی کافی بالا ببرید شکل تابع اصلی و شکل سری فوریه اون ، کاملاً روی هم منطبق میشن . اما اگر تابع شما دارای این خواص باشه سری فوریه دچار خطا میشه :
هموار ، دوره ای ، پیوسته و تکه ای
حالا اینا یعنی چی ؟؟ ؛ بیاد با مثال ببینیم این توابع چه جورین ؛ توابع دندان اَره ای ، یا تابع موج مربعی از این دسته توابعان .
اتفاقی که برای سری فوریه ی این توابع میوفته اینه که در نقاط ناپیوستگی این نوع توابع ، سری فوریه ی اونها دارای یک مقدار اضافه میشه که به این مقدار اضافه "جهش" میگن در اصطلاح و حتی با افزایش n هم این مقدار اضافه از بین نمیره .
همون طور که تو برنامه میبینید ، مثلاً برای موج مربعی در نقاطی که عدد صحیح هستند شکل بسط فوریه ی تابه دارای یک بالا رفتگی یا پایین رفتگی هستش .
این باعث این میشه که سری فوریه مقدار واقعی تابع رو نده و ایجاد خطا بکنه . این کاستی سری فوریه تو مخابرات و الکترونیک خیلی خوب شناخته شده هستش و برای از بین بردن اثرات اون تا اونجایی که من میدونم از خازن های ته چین و سر چین (صافی خازنی) استفاده میکنن .
خب بریم سراغ برنامه نویسی این پدیده ی جالب ؛ همون طور که گفتم شما اول باید به برنامه ای که برای سری فوریه گزاشتم تسلط پیدا کنید ، چون این برنامه یک حالت خاصی از همون برنامه هست ، با این تفاوت که چون ما میدونیم با چه تابعی سروکار داریم از قبل a[n] و b[n] رو حساب میکنیم ، مثلا برای تابع موج مربعی چون این تابع فرد هست ، a[n]= 0 و b[n] هم از قبل محاسبه شده که تو برنامه میتونید مقدارشو ببینید .
تو برنامه ی مربوط به تابع موج مربعی معنای مقدار عبارت b[n_] این هست : اگر مقدار n زوج بود مقدار عبارت رو صفر بده ، در غیر این صورت مقدار عبارت رو 4/(n Pi) بده و محاسبه کن . دلیلشم گفتم چرا از این عبارت استفاده کردم ، چون از قبل مقدار b[n] رو جای دیگه محاسبه کرده بودم و دیدم که عبارت بدست اومده این شرایطی که گفتمو داره و به زوج یا فرد بودن n بستگی داره . برای موج دندان اره ای هم همین طور .
توضیح بیشتری فکر نکنم نیاز باشه چون مسائل مهم و اصل کاری تو برنامه مربوط به سری فوریه گفته شده ؛ تنها چیزی که تو این پدیده (گیبس) مهمه اینه که وقتی تابع شرایطی رو که گفتم داشته باشه ، بسط فوریه ی اون مقداری ناصحیح رو میده که شما میتونید این رو تو برنامه به شکل مصور ببنید .
نکته ی دیگه اینکه این مقدار جهش به سادگی قابل اندازه گیریه و تقریباً برابر 18درصد مقدار تابع در نقطه ی ناپیوستگیه . بعدها برنامه ای برای اندازه گیری این مقدار هم براتون میزارم .