۱۳۹۱/۱۱/۱۴, ۱۱:۲۵ ق.ظ
سلام .
بعد از جایگذاری V و [L]f در معادله ، آنگاه سه مجهول داریم . دستور solve برای حل معادلات به کار میره اما چون سه مجهول داریم ، پاسخ مربوط به یک متغیر رو بر حسب دو متغیر دیگر می نویسه . کدهای متلب به صورت زیر میشه :
دقت کنید که در انتهای پرانتز دستور solve ، نام متغیر g را نوشته ایم که یعنی g بر حسب دو متغیر مجهول دیگر محاسبه شود .
با اجرای کد متلب بالا ، نتیجه به صورت زیر هست :
حالا فرض کنید معادله رو بر حسب K بخواهیم حل کنیم ، کدهای متلب زیر رو می نویسیم :
نتیجه اجرای کد متلب بالا به صورت زیر هست :
و برای حل معادله بر حسب n ، کد متلب زیر را می نویسیم :
نتیجه اجرای کد متلب بالا :
بعد از جایگذاری V و [L]f در معادله ، آنگاه سه مجهول داریم . دستور solve برای حل معادلات به کار میره اما چون سه مجهول داریم ، پاسخ مربوط به یک متغیر رو بر حسب دو متغیر دیگر می نویسه . کدهای متلب به صورت زیر میشه :
کد:
clear all
close all
clc
syms g K n
solve('1*(1+(K*0.016)^n)=g*(K*0.016)^n',g)
دقت کنید که در انتهای پرانتز دستور solve ، نام متغیر g را نوشته ایم که یعنی g بر حسب دو متغیر مجهول دیگر محاسبه شود .
با اجرای کد متلب بالا ، نتیجه به صورت زیر هست :
کد:
ans =
((0.016*K)^n + 1.0)/(0.016*K)^(1.0*n)
حالا فرض کنید معادله رو بر حسب K بخواهیم حل کنیم ، کدهای متلب زیر رو می نویسیم :
کد:
clear all
close all
clc
syms g K n
solve('1*(1+(K*0.016)^n)=g*(K*0.016)^n',K)
نتیجه اجرای کد متلب بالا به صورت زیر هست :
کد:
Warning: The solutions are parametrized by the symbols:
k = Z_ intersect Dom::Interval([(0.31830988618379067153776752674503*(0.5*Im(ln(1/(g -
1.0))/n) - 1.5707963267948966192313216916398))/Re(1/n)],
(0.31830988618379067153776752674503*(0.5*Im(ln(1/(g - 1.0))/n) +
1.5707963267948966192313216916398))/Re(1/n))
> In solve at 94
In Untitled2 at 6
ans =
62.5*(1/exp((6.283185307179586476925286766559*k*i)/n))*(1/(g - 1.0))^(1/n)
و برای حل معادله بر حسب n ، کد متلب زیر را می نویسیم :
کد:
clear all
close all
clc
syms g K n
solve('1*(1+(K*0.016)^n)=g*(K*0.016)^n',n)
نتیجه اجرای کد متلب بالا :
کد:
ans =
log(1/(g - 1.0))/log(0.016*K)
لطفا برای درج کد، از دکمه مخصوص درج کد در ادیتور انجمن استفاده کنید.
در مورد برنامه نویسی، مدیران تنها راهنمایی می کنند و نوشتن برنامه نهایی، به عهده کاربران می باشد (اینجا محلی برای یادگیری است، نه سفارش کدنویسی).
کاربران باید ابتدا خود به خطایابی برنامه بپردازند، نه اینکه به محض دیدن خطا، کدها را در انجمن، copy و paste کرده و از مدیران انتظار بررسی داشته باشند.