264 مبحث (کلید)


آموزش متلب (MATLAB)

شماره کلید :   103            
دسته بندی :   عملیات های ریاضی در متلب

نویسنده :   علیرضا گلمکانی ( admin )

محاسبه ضرایب سری فوریه یک تابع متناوب در متلب :

با استفاده از ضرایب سری فوریه یک تابع متناوب، می توانیم آن تابع را بر حسب مجموعه ای از توابع پایه تقریب بزنیم. فرض کنید تابع f(x) دارای دوره تناوب باشد. در این صورت این تابع را می توانیم بر حسب ضرایبی از sin و cos به دست آوریم. این ضرایب به صورت زیر محاسبه می شوند :

\[ a_n={1 \over \pi}\int_{-\pi}^{\pi} f(x)cos(nx)\,dx, ~~~~~ n \geq 0 \] \[ b_n={1 \over \pi}\int_{-\pi}^{\pi} f(x)sin(nx)\,dx, ~~~~~ n \geq 1 \]

نکته مهم این است که برای به دست آوردن ضرایب سری فوریه، تابع f(x) حتما باید در بازه دوره تناوب خود، انتگرال پذیر باشد.

تابع f(x) را نیز به وسیله این ضرایب می توانیم به صورت زیر تقریب بزنیم :

\[ (S_Nf)(x)={a_0 \over 2} + {\sum_{n=1}^N [a_ncos(nx)+b_nsin(nx)],} ~~~~~ N \geq 0 \]

حال می خواهیم با متلب برنامه ای بنویسیم که ضرایب سری فوریه تابعی دلخواه را برای ما به دست آورده و همچنین مقدار تقریب زده شده این تابع به وسیله این ضرایب سری فوریه را در یک x مشخص حساب کند. فرض می کنیم تابع به صورت f(x)=sin(x) باشد و کدهای زیر را می نویسیم :


clear all
clc
syms x
f=sin(x);
N=10;
a_0=(1/pi)*int(f*cos(0*x),-pi,pi)
for n=1:N
    a_n(n)=(1/pi)*int(f*cos(n*x),-pi,pi);
    b_n(n)=(1/pi)*int(f*sin(n*x),-pi,pi);
end
a_n
b_n
 
f_new=a_0/2;
for n=1:N
    f_new=f_new+a_n(n)*cos(n*x)+b_n(n)*sin(n*x);
end
 
subs(f_new,x,5)
subs(f,x,5)

تابع f_new که بر حسب ضرایب سری فوریه به دست می آید، تقریبی از تابع f می باشد. دستور subs(f_new,x,5) ، در تابع f_new ، مقدار x=5 را جایگذاری می کند. همچنین در خط بعدی، مقدار subs(f,x,5) را محاسبه کرده ایم تا بتوانیم مقدار تقریبی f_new(5) را با مقدار f(5) مقایسه کنیم.

نتیجه :


a_0 =
 
0
 
 
a_n =
 
[ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]
 
 
b_n =
 
[ (5734161139222659*pi)/18014398509481984, 0, 0, 0, 0, 0, 0, 0, 0, 0]
 
 
ans =
 
   -0.9589
 
 
ans =
 
   -0.9589

مشاهده می کنید که دو مقدار، دقیقا با هم برابر شده اند.



مبحث بالا، مفید بود و سایت کلیدستان را دوست داشتم :
محبوب کردن این مبحث در گوگل :
اون چیزی که میخواستم نبود :
سوال دارم :


ورود ثبت نام
جستجو در عنوان کلیدها (مبحث ها) در کلیدستان
(توصیه : یک یا دو کلمه جستجو شود)

شماره کلید :



راهنمای دستورات متلب بر اساس حرف اول دستور :


A B C D E F G H I J K L M N O P Q R S T U V W X Y Z

آخرین ارسال های انجمن (در زمینه برنامه نویسی متلب)
انجمن آخرین ارسال نویسنده تاریخ و زمان موضوع
سوال و جواب در مورد نرم افزار متلب (MATLAB)
pinkng123
pinkng123
۱۳۹۴/۶/۴, ۰۸:۲۰ عصر
علامت ([]) در متلب نشانه چیست؟
سوال و جواب در مورد نرم افزار متلب (MATLAB)
mo na
mo na
۱۳۹۴/۶/۳, ۰۶:۵۷ صبح
سوال حلقه for (در برنامه نویسی متلب)
سوال و جواب در مورد نرم افزار متلب (MATLAB)
سامرند
شیدا خانوم 22
۱۳۹۴/۶/۲, ۱۱:۳۶ عصر
نقطه تلاقی دو خط (در برنامه نویسی اندروید)
سوال و جواب در مورد نرم افزار متلب (MATLAB)
MATLAB
pinkng123
۱۳۹۴/۵/۳۱, ۱۰:۳۰ عصر
کار دستور spectrum.periodogram در متلب چیست
سوال و جواب در مورد نرم افزار متلب (MATLAB)
M.S.Gol
M.S.Gol
۱۳۹۴/۵/۳۰, ۰۳:۱۵ صبح
چگونگی رسم معادلات پیچیده (در برنامه نویسی متلب)
سوال و جواب در مورد نرم افزار متلب (MATLAB)
pasiran
pasiran
۱۳۹۴/۵/۲۷, ۱۲:۳۴ عصر
اندیس گذاری و رسم فضای فاز در متلب
سیمولینک در متلب (MATLAB)
ملیکا
ملیکا
۱۳۹۴/۵/۲۶, ۱۰:۳۵ صبح
تبدیل ماتریس به آرایه یک بعدی و ذخیره در rom در سیمولینک
سوال و جواب در مورد نرم افزار متلب (MATLAB)
ملیکا
ملیکا
۱۳۹۴/۵/۲۶, ۱۰:۳۲ صبح
تبدیل ماتریس به آرایه یک بعدی و ذخیره در rom در سیمولینک
سوال و جواب در مورد نرم افزار متلب (MATLAB)
sinap
sinap
۱۳۹۴/۵/۲۵, ۱۰:۱۰ عصر
سوال در مورد مقایسه دو تابع در متلب
سوال و جواب در مورد نرم افزار متلب (MATLAB)
سامرند
سمانه
۱۳۹۴/۵/۲۵, ۰۲:۴۶ عصر
تشکیل آرایه 20 تایی و دریافت مقادیر از کاربر (در برنامه نویسی متلب)
سوال و جواب در مورد نرم افزار متلب (MATLAB)
سامرند
Alireza
۱۳۹۴/۵/۲۵, ۰۲:۰۵ صبح
گرفتن معادله دیفرانسیل از کاربر (در برنامه نویسی متلب)
سوال و جواب در مورد نرم افزار متلب (MATLAB)
سامرند
pinkng123
۱۳۹۴/۵/۲۵, ۰۱:۵۱ صبح
مشکل اندیس گذاری در حلقه for (در برنامه نویسی متلب)
سوال و جواب در مورد نرم افزار متلب (MATLAB)
سامرند
yshahsavari
۱۳۹۴/۵/۲۵, ۱۲:۱۹ صبح
حل دستگاه معادلات با تعداد خیلی زیاد مجهول
راهنمایی در مورد توابع متلب (MATLAB)
سامرند
pinkng123
۱۳۹۴/۵/۲۴, ۱۱:۱۲ عصر
تابع علامت (sgn(x در متلب را با چه دستوری معرفی میشود؟
بردارها و ماتریس ها در متلب (MATLAB)
monfared
monfared
۱۳۹۴/۵/۲۱, ۰۸:۴۴ صبح
راهنمایی
سوال و جواب در مورد نرم افزار متلب (MATLAB)
hamedhatami
hamedhatami
۱۳۹۴/۵/۱۹, ۱۲:۱۵ عصر
کمک اورژانسی و فوررررری
بردارها و ماتریس ها در متلب (MATLAB)
aria7012
mina
۱۳۹۴/۵/۱۹, ۱۱:۱۸ صبح
حذف سطر یا ستون ماتریس (در برنامه نویسی متلب)
سوال و جواب در مورد نرم افزار متلب (MATLAB)
Alireza_R
Alireza_R
۱۳۹۴/۵/۱۸, ۱۰:۵۵ عصر
کار با dsp.AudioRecorder در متلب
سوال و جواب در مورد نرم افزار متلب (MATLAB)
milad.m
milad.m
۱۳۹۴/۵/۱۸, ۱۲:۲۳ عصر
یک سوال کوچک
سوال و جواب در مورد نرم افزار متلب (MATLAB)
admin
free1010100
۱۳۹۴/۵/۱۷, ۱۲:۲۷ عصر
راهنمایی
رسم شکل در متلب (MATLAB)
اشرف
bita
۱۳۹۴/۵/۱۳, ۰۱:۵۰ عصر
ساخت انیمیشن در متلب
سوال و جواب در مورد نرم افزار متلب (MATLAB)
demahsa
demahsa
۱۳۹۴/۵/۱۲, ۰۸:۴۸ عصر
مولفه ی فرکانس پایین مولفه های استخراجی در تابع ویولت
سوال و جواب در مورد نرم افزار متلب (MATLAB)
demahsa
دارا
۱۳۹۴/۵/۱۲, ۰۸:۲۹ عصر
حل معادله خاص
سوال و جواب در مورد نرم افزار متلب (MATLAB)
mr_morteza
mr_morteza
۱۳۹۴/۵/۴, ۰۳:۱۳ عصر
کمک فوریییییییییییییی
سوال و جواب در مورد نرم افزار متلب (MATLAB)
m.r
m.r
۱۳۹۴/۵/۳, ۰۷:۲۱ عصر
سرعت اجرا در پردازش موازی
مشاهده 1000 ارسال آخر انجمن (در زمینه برنامه نویسی متلب)