حل معادلات در متلب :

در متلب، می توان با دو دستور solve یا fzero ، معادلات شامل متغیرها را حل نمود.

دستور solve :

 

دستور solve در متلب، برای حل معادلات چندجمله ای به کار می رود.

مثال :

 

solve(‘x^2-2*x-4=0’)

نتیجه :

 

ans =

5^(1/2) + 1
1 – 5^(1/2)

دقت شود که معادله باید بین علامت ‘ قرار بگیرد.
دو پاسخ معادله در خروجی نمایش داده شده است. دو پاسخ معادله، پاسخ های دقیق معادله می باشند و چنانچه بخواهیم آنها را به صورت عددی ببینیم باید دستور double(ans) و یا vpa(ans) را اجرا کنیم. به عنوان مثال با دستور double داریم :

 

A=solve(‘x^2-2*x-4=0’)
B=double(A)

نتیجه :

 

A =

5^(1/2) + 1
1 – 5^(1/2)

B =

3.2361
-1.2361

و با دستور vpa داریم :

 

A=solve(‘x^2-2*x-4=0’)
B=vpa(A)

نتیجه :

 

A =

5^(1/2) + 1
1 – 5^(1/2)

B =

3.2360679774997896964091736687313
-1.2360679774997896964091736687313

 

دستورsolve  همچنین قادر است که معادلات شامل دو متغیر را حل نماید:

مثال: 

 

solve(‘2*x-log(y)=1′,’y’)

نتیجه: 

 

ans =

exp(2*x – 1)

دقت شود چون می خواهیم متغیرy  را بر حسبx  به دست آوریم، باید عبارت ’y‘ را پس از معادله بنویسیم.

مثال: 

چنانچه دو معادله بر حسبx  وy  داشته باشیم، آنگاه می توان مقادیر دو متغیرx  وy  را به دست آورد:

 

[x,y]=solve(‘x^2-y=2′,’y-2*x=5’)

نتیجه: 

 

x =

2*2^(1/2) + 1

1 – 2*2^(1/2)

y =  4*2^(1/2) + 7

7 – 4*2^(1/2)

این دو معادله دارای دو سری پاسخ است، پاسخ سری اول  (1x(و  (1y(و پاسخ سری دوم  (2x(و  (2y(می باشد. چنانچه پاسخ اول مورد نظر ما باشد، می نویسیم:

 

x1=x(1)  y1=y(1)

نتیجه: 

 

x1 =  2*2^(1/2) + 1

y1 =  4*2^(1/2) + 7

دقت شود که در مثال قبل، پاسخ دو معادله را به بردار[x,y]  نسبت دادیم و پاسخ ها در خروجی نمایش داده شدند. چنانچه پاسخ دو معادله را به بردار[x,y]  نسبت ندهیم، آنگاه پاسخ ها در خروجی نمایش داده نمی شوند:

 

solution=solve(‘x^2-y=2′,’y-2*x=5’)

نتیجه: 

 

solution =

x: [2×1 sym] y: [2×1 sym]

برای دیدن مقادیر بردارهایx  وy  ، کافی است که دستوراتsolution.x  وsolution.y  را اجرا کنید:

 

x=solution.x  y=solution.y

نتیجه: 

 

x =

2*2^(1/2) + 1

1 – 2*2^(1/2)

y =  4*2^(1/2) + 7

7 – 4*2^(1/2)

پاسخ سری اول  (1solution.x(و  (1solution.y(و پاسخ سری دوم  (2solution.x(و  (2solution.y(می باشد .چنانچه پاسخ اول مورد نظر ما باشد می نویسیم:

 

x1=solution.x(1)  y1=solution.y(1)

نتیجه: 

 

x1 =  2*2^(1/2) + 1

y1 =

4*2^(1/2) + 7

دانلود این مقاله:

 

2 thoughts on “حل معادلات ریاضی در متلب”

  1. محمدرضا میگوید:

    سلام خسته نباشین
    یک سوالی میخواستم بدونم با متلب اعداد موهومی و فازی را چجوری میشه حل کرد؟
    یک معادله برای حل دارم ولی نمیتونم با متلب حل کنم میخواستم ببینم میتونم روش حلش رو بدونم؟
    ممنون:)

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *