(۱۳۹۵/۱۰/۲۹, ۰۲:۰۰ ق.ظ)f4r3in نوشته:سلام(۱۳۹۵/۱۰/۲۸, ۰۹:۳۶ ب.ظ)m-r-v نوشته:ممنون از پاسختون مشکل حل شد ولی تو متلب در خروجی همین سوال مقدار سینوس 5 رو محاسبه نمیکنه و بجاش همون سینوس 5 مینویسه چیکار کنم که مقدار عبارت های مثلثاتی محاسبه بشه.(۱۳۹۵/۱۰/۲۷, ۰۴:۳۶ ب.ظ)f4r3in نوشته: با سلام خدمت دوستانسلام دوست عزیز
من در برنامه نویسی متلب تازه واردم و به تازگی میخوام یاد بگیرمش چون پروژه دانشجویی خودم سری فوریه در متلب بود نحوه نوشتنش رو از این سایت یاد گرفتم ولی وقتی اجراش میکنم نتیجه درست از آب در نمیاد.
این برنامه متلب من :
کد:clear
clc
syms x
f=sin(x);
N=10;
a_0=(1/2*pi)*int(f,-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;
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)
اینم نتیجش :
کد:a_n =
[ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]
b_n =
[ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]
ans =
0
ans =
sin(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
لطفا راهنماییم کنین که ایراد از کجاست چون من تازه میخوام متلبو یادبگیرم و برام ضروری هم هست.
شما در خط دستوری مربوط به b هر دو بازه رو منفی درنظر گرفتید کافی منفی pi دومی رو بردارید تا به جواب مدنظر برسید
موفق باشید
کد: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 =
(5734161139222659*pi*sin(5))/18014398509481984
ans =
sin(5)
فرمی که نوشتید درسته ،من کد رو اجرا می کنم در خروجی سینوس رو محاسبه می کنه، شما در کامن ویندو عبارت سینوس رو تنها محاشبه کنید ببینید جواب میده یا خیر ؟
موفق باشید
rezavalizadeh95@gmail.com