حل دستگاه سه معادله و سه مجهول (مثل $ \left\{ {\matrix{ {x + y + z = 9} \hfill \cr {2x + y - 3z = 5} \hfill \cr {x - y + z = 3} \hfill \cr } } \right. $ )، با دستور solve ، در متلب (MATLAB)
دستور
solve
در متلب (MATLAB)، برای حل معادلات به کار می رود و چنانچه بخواهیم یک دستگاه چند معادله و چند مجهول را حل کنیم، باید معادلات را به دستور
solve
بدهیم تا این دستور، پاسخ دستگاه را محاسبه کند (
کلید شماره 28198 ).
بنابراین برای حل یک دستگاه سه معادله و سه مجهول، باید سه معادله مورد نظرمان را به دستور
solve
بدهیم.
دستور
solve
در نسخه های قدیمی متلب (MATLAB)، تعریف معادلات را به صورت ذکر شده در بین علامت های
'
دریافت می کرد (مثل کد
solve('x+2*y=7','x-y=1')
)، اما در نسخه های جدید متلب (MATLAB)، دیگر علامت
'
در تعریف معادله به کار نمی رود و به جای آن، از دستور
syms
برای تعریف متغیرها به صورت سمبلیک (Symbolic) و همچنین ازعلامت های
==
در تعریف معادله استفاده می شود (مثل کدهای
syms x y
و
solve(x+2*y==7, x-y==1)
).
با توجه به این نکته، این آموزش برای نسخه های جدید متلب (MATLAB) است، بنابراین اگر از نسخه های قدیمی متلب (MATLAB) استفاده می کنید، به جای این آموزش، کلید شماره 140 را بخوانید.
به مثال زیر توجه کنید :
فرض کنید بخواهیم دستگاه سه معادله و سه مجهول زیر را حل کنیم :
\[ \left\{ {\matrix{ {x + y + z = 9} \hfill \cr {2x + y - 3z = 5} \hfill \cr {x - y + z = 3} \hfill \cr } } \right. \]کد متلب (MATLAB) زیر را اجرا می کنیم :
3 خط اول کدها، برای عدم تداخل برنامه فعلی با برنامه های قبلی اجرا شده در متلب (MATLAB) می باشد.
نتیجه :
می توانیم کد متلب (MATLAB) مورد نظر را به شکل دیگری نیز بنویسیم :
نتیجه :
فرض کنید بخواهیم دستگاه سه معادله و سه مجهول زیر را حل کنیم :
\[ \begin{aligned} \begin{cases} x+y+z=6 \\ x-y^2+2z=7 \\ x+y-z=0 \end{cases} \end{aligned} \]کد متلب (MATLAB) زیر را اجرا می کنیم :
نتیجه :
مشاهده می کنید که دستگاه سه معادله و سه مجهول فوق، دارای دو سری پاسخ می باشد.
می توانیم کد متلب (MATLAB) مورد نظر را به شکل دیگری نیز بنویسیم :