بستن منو
۲۹۴
تعداد کلیدهای این موضوع
لیست همه کلیدهای این موضوع
مباحث اولیه برای آشنایی با متلب
7
بردارها و ماتریس ها در متلب
47
دستورهای ساده و پرکاربرد در متلب
6
توابع در متلب
10
متغیرها و تبدیل متغیرها در متلب
8
m-file ها در متلب
2
نمایش اطلاعات در خروجی متلب (پنجره commands)
0
رسم شکل های دو بعدی در متلب
14
رسم شکل های سه بعدی در متلب
12
رسم چند شکل با هم، در متلب
5
رسم شکل ها و نمودارهای خاص، در متلب
11
رسم شکل های هندسی ساده، در متلب
6
تعیین ویژگی های خط های رسم شده در شکل، در متلب
6
تعیین ویژگی های محورهای مختصات شکل، در متلب
6
نمایش متن در شکل (عنوان، توضیح و ...)، در متلب
5
تعیین یا تغییر ویژگی های شکل (قبل از رسم شکل)، در متلب
10
تعیین یا تغییر ویژگی های شکل (بعد از رسم شکل)، در متلب
9
پردازش تصویر و کار با عکس ها، در متلب
13
ساخت انیمیشن در متلب
1
عملیات های ریاضی در متلب
42
متغیرها و معادلات سمبلیک در متلب
4
رشته ها (متن ها - strings) در متلب
14
حلقه ها (for و while)، در متلب
3
آرایه های سلولی (cell arrays) در متلب
6
خطاهای رایج در متلب
2
برنامه نویسی شیء گرا (object oriented programming) در متلب
1
سیمولینک (Simulink) در متلب
5
GUI و واسطه های گرافیکی، در متلب
5
کار با فایل ها و پوشه ها، در متلب
9
برنامه های متلب آماده برای دانلود
1
Excel و متلب
1
مباحث عمومی در متلب
23
×

دانلود فروشگاه اندروید کلیدستان

5

نویسنده

علیرضا گلمکانی ( admin )

شماره کلید
دسته کلید - دسته بندی

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

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

دستور solve :


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

مثال

solve('x^2-2*x-4=0')

نتیجه :


ans =
 
 5^(1/2) + 1
 15^(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)

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


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: [2x1 sym]
    y: [2x1 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)

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


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

نتیجه :


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

برخی معادلات نمی توانند به صورت سمبلیک حل شوند و در اینگونه موارد دستور solve سعی می کند که یک حل عددی را بیابد. به مثال زیر توجه کنید :

مثال

solve('sin(x)=2-x')

نتیجه :


ans =
 
1.1060601577062719106167372970301

در بعضی موارد، معادله بیش از یک پاسخ دارد و دستور solve پاسخی را برمی گرداند که مد نظر ما نبوده است. به عنوان مثال :

مثال

solve('exp(-x)=sin(x)')

نتیجه :


ans =
 
0.5885327439818610774324520457029

به شکل زیر توجه کنید :

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

با توجه به شکل بالا، پاسخ دیگری مد نظر ما بوده است که حدود x=3 می باشد. چنانچه بخواهیم این پاسخ را به دست آوریم باید از دستور fzero در متلب استفاده کنیم که در ادامه در مورد آن توضیح خواهیم داد.

دستور fzero :

همان مثال قبل را این بار با fzero حل می کنیم و برای دستور fzero مشخص می کنیم که پاسخ نزدیک x=3 را بیابد :

مثال

fzero(inline('exp(-x)-sin(x)'),3)

نتیجه :


ans =
 
    3.0964

بنابراین دستور fzero دقیقا همان پاسخ مد نظر ما که نزدیک x=3 می باشد را برگرداند.
دقت شود که در تعریف معادله، از علامت = استفاده نکردیم و دستور به طور خودکار، عبارت درون دو علامت ' را برابر صفر قرار می دهد.

کپی برداری از محتوای سایت کلیدستان، ممنوع بوده و پیگرد قانونی دارد. (تنها استفاده شخصی کاربر، مجاز است) (کپی برداری توسط سایر وب سایت ها = حرام) (بیشتر بدانید)

خوانده شد
مبحث بالا، مفید بود و سایت کلیدستان را دوست داشتم :
محبوب کردن این مبحث در گوگل :
اون چیزی که میخواستم نبود :
سوال دارم :
ارسال نظر :
نظرات 3 3 0
فرهاد
۱۳۹۵/۰۹/۰۸
۱۵:۵۱

سلام و خسته نباشین .0=(0.4164sin(6t)+.017sin(14.49t
ببخشید من این معادله رو به این روشهایی که گفتین نمیتونم حل کنم

رضا
۱۳۹۵/۱۲/۰۲
۱۱:۰۷

سلام میخاستم معادله     x*tan(x)=3.896*10^-6  را چطور میشه حل کرد
مقادیر مختلف x را میخاستم
و میخاستم بدونم میشه رسمش کرد
با تشکر

aryan
۱۳۹۶/۰۲/۲۸
۱۸:۵۵

سلام من با این کد ها مشکل دارم حل نمیشه

syms X0 Z0 p k w Y0
s=solve('(108354-Z0)*(-4.617*(cosd(p)*cosd(k))+0.392*(-cosd(p)*cosd(k))-151.992*(sind(p)))/(-4.617*(-cosd(w)*sind(p)*cosd(k)+sind(w)*sind(k))+0.392*(cosd(w)*sind(p)*sind(k)+sind(w)*cosd(k))-151.992*(cosd(w)*cosd(p)))=4296851-X0','(108354-Z0)*(-4.617*(sind(w)*sind(p)*cosd(k)+cosd(w)*sind(k))+0.392*(-sind(w)*sind(p)*sind(k)+cosd(w)*cosd(k))-151.992*(-sind(w)*cosd(p)))/(-4.617*(-cosd(w)*sind(p)*cosd(k)+sind(w)*sind(k))+0.392*(cosd(w)*sind(p)*sind(k)+sind(w)*cosd(k))-151.992*(cosd(w)*cosd(p)))=4233813-Y0','(123791-Z0)*(87.296*(cosd(p)*cosd(k))+(-0.309)*(-cosd(p)*cosd(k))-151.992*(sind(p)))/(87.296*(-cosd(w)*sind(p)*cosd(k)+sind(w)*sind(k))+(-0.309)*(cosd(w)*sind(p)*sind(k)+sind(w)*cosd(k))-151.992*(cosd(w)*cosd(p)))=4553579-X0','(123791-Z0)*(87.296*(sind(w)*sind(p)*cosd(k)+cosd(w)*sind(k))+(-0.309)*(-sind(w)*sind(p)*sind(k)+cosd(w)*cosd(k))-151.992*(-sind(w)*cosd(p)))/(87.296*(-cosd(w)*sind(p)*cosd(k)+sind(w)*sind(k))+(-0.309)*(cosd(w)*sind(p)*sind(k)+sind(w)*cosd(k))-151.992*(cosd(w)*cosd(p)))=4473130-Y0','(112791-Z0)*(83.690*(cosd(p)*cosd(k))+(-100.003)*(-cosd(p)*cosd(k))-151.992*(sind(p)))/(83.690*(-cosd(w)*sind(p)*cosd(k)+sind(w)*sind(k))+(-100.003)*(cosd(w)*sind(p)*sind(k)+sind(w)*cosd(k))-151.992*(cosd(w)*cosd(p)))=5483104-X0','(112791-Z0)*(83.690*(sind(w)*sind(p)*cosd(k)+cosd(w)*sind(k))+(-100.003)*(-sind(w)*sind(p)*sind(k)+cosd(w)*cosd(k))-151.992*(-sind(w)*cosd(p)))/(83.690*(-cosd(w)*sind(p)*cosd(k)+sind(w)*sind(k))+(-100.003)*(cosd(w)*sind(p)*sind(k)+sind(w)*cosd(k))-151.992*(cosd(w)*cosd(p)))=3900089-Y0')
s=[s.X0 x.Z0 s.p s.k s.w s.Y0]
کسی میدونه چطور باید حلش کنم؟!
تصویر ارور رو زمینه میکنم...

http://uupload.ir/files/tu0t_ewqe.jpg

*** نظر بدهید

دسترسی سریع

×

شماره کلید


کلید
×

شماره دسته کلید


دسته کلید
×

جستجو


جستجو

راهنمای دستورات متلب (MATLAB)

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

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

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

Introduction to Programming with MATLAB Image Processing Using MATLAB
مجموعه ویدئوهای آموزشی مقدمه ای بر برنامه نویسی متلب (MATLAB) - مجموعه Introduction to Programming with MATLAB
42
مجموعه ویدئوهای آموزشی پردازش تصویر در متلب (MATLAB) - مجموعه Image Processing Using MATLAB
37
بستن منو
۳۳
تعداد کلیدهای این موضوع
لیست همه کلیدهای این موضوع
انواع رسم شکل در متلب
24
ساخت انیمیشن در متلب
3
GUI در متلب
6

آخرین ارسال های انجمن (در زمینه برنامه نویسی متلب)

آخرین ارسال های انجمن (در زمینه برنامه نویسی متلب)
موضوع تاریخ و زمان نویسنده آخرین ارسال تعداد پاسخ انجمن
ارور Matrix is close to singular or badly scaled. Results may be inaccurate. RCOND =
۱۳۹۶/۰۴/۲۹, ۰۶:۵۹ ب.ظ
farhads
farhads
0 بردارها و ماتریس ها در متلب (MATLAB)
باز کردن فایلهای با پسوند grib2 در متلب
۱۳۹۶/۰۴/۲۷, ۰۵:۰۹ ب.ظ
leilisadeghi
leilisadeghi
0 سوال و جواب در مورد نرم افزار متلب (MATLAB)
حل معادله درجه n (متلب - MATLAB)
۱۳۹۶/۰۴/۲۴, ۱۲:۳۵ ق.ظ
Mohammadrezabaradaran
Mohammadrezabaradaran
1 سوال و جواب در مورد نرم افزار متلب (MATLAB)
سوال در مورد کد نویسی متلب
۱۳۹۶/۰۴/۱۸, ۰۷:۲۵ ب.ظ
mah
mah
0 سوال و جواب در مورد نرم افزار متلب (MATLAB)
مشکل در حلقه for (متلب - MATLAB)
۱۳۹۶/۰۴/۱۳, ۰۱:۴۸ ب.ظ
Ali1885
maryam_f123
3 سوال و جواب در مورد نرم افزار متلب (MATLAB)
به دست آوردن ریشه اعداد مختلط (متلب - MATLAB)
۱۳۹۶/۰۳/۲۹, ۰۶:۵۴ ب.ظ
saeid.deh
admin
1 سوال و جواب در مورد نرم افزار متلب (MATLAB)
معرفی کتاب
۱۳۹۶/۰۳/۱۹, ۰۹:۳۰ ب.ظ
s.saeid
missHakimi
2 معرفی کتاب های مرتبط با نرم افزار متلب (MATLAB)
انتخاب مقادیر مرجع
۱۳۹۶/۰۳/۱۷, ۰۲:۴۱ ب.ظ
soheiljj25
soheiljj25
0 سوال و جواب در مورد نرم افزار متلب (MATLAB)
درخواست دانلود مقاله از سایت های مرجع
۱۳۹۶/۰۳/۱۵, ۰۳:۳۹ ب.ظ
admin
aydafhm70
1 معرفی کتاب های مرتبط با نرم افزار متلب (MATLAB)
live script چیست؟
۱۳۹۶/۰۳/۱۵, ۰۳:۳۷ ب.ظ
aaalian
aydafhm70
1 سوال و جواب در مورد نرم افزار متلب (MATLAB)
موتور مغناطیس دایم
۱۳۹۶/۰۳/۱۴, ۱۱:۴۹ ق.ظ
soheiljj25
soheiljj25
0 سوال و جواب در مورد نرم افزار متلب (MATLAB)
موتور BLDC
۱۳۹۶/۰۳/۱۴, ۱۱:۰۹ ق.ظ
soheiljj25
soheiljj25
0 سوال و جواب در مورد نرم افزار متلب (MATLAB)
خطای double
۱۳۹۶/۰۳/۱۲, ۰۹:۱۰ ب.ظ
اندیشه برتر
اندیشه برتر
0 سوال و جواب در مورد نرم افزار متلب (MATLAB)
رسم چند نمودار در متلب
۱۳۹۶/۰۳/۰۸, ۰۴:۲۲ ب.ظ
vahid397
admin
1 سوال و جواب در مورد نرم افزار متلب (MATLAB)
تبدیل قطبی به دکارتی و برعکس در متلب
۱۳۹۶/۰۳/۰۸, ۱۰:۱۲ ق.ظ
hossein373
m-r-v
1 سوال و جواب در مورد نرم افزار متلب (MATLAB)
وارد کردن یک فایل متنی به عنوان ورودی یک کد (متلب - MATLAB)
۱۳۹۶/۰۳/۰۱, ۱۰:۲۲ ب.ظ
shadi_sh
shadi_sh
2 سوال و جواب در مورد نرم افزار متلب (MATLAB)
مشکل در کاربرد سیمبولیک
۱۳۹۶/۰۲/۳۱, ۱۲:۵۱ ب.ظ
NIMANIMAX72
NIMANIMAX72
0 سوال و جواب در مورد نرم افزار متلب (MATLAB)
مخفی کردن چند خط از کد در MATLAB
۱۳۹۶/۰۲/۳۰, ۰۹:۱۳ ق.ظ
fa_shinobi
admin
1 سوال و جواب در مورد نرم افزار متلب (MATLAB)
محاسبه مجموع چند عدد با حلقه for و while
۱۳۹۶/۰۲/۱۹, ۱۰:۲۷ ق.ظ
farhad1793
m-r-v
3 سوال و جواب در مورد نرم افزار متلب (MATLAB)
مشکل در استفاده از دستور if و while
۱۳۹۶/۰۲/۱۷, ۰۷:۲۱ ب.ظ
farhad1793
m-r-v
1 سوال و جواب در مورد نرم افزار متلب (MATLAB)
ایجاد پالس فشار
۱۳۹۶/۰۲/۱۷, ۰۷:۰۷ ب.ظ
zahra90
m-r-v
1 سوال و جواب در مورد نرم افزار متلب (MATLAB)
معدل گیری در متلب
۱۳۹۶/۰۲/۱۷, ۰۵:۲۲ ب.ظ
farhad1793
farhad1793
0 سوال و جواب در مورد نرم افزار متلب (MATLAB)
sphere-topography
۱۳۹۶/۰۲/۱۶, ۰۸:۴۴ ب.ظ
arminfahandezh
arminfahandezh
0 سوال و جواب در مورد نرم افزار متلب (MATLAB)
توربین بادی
۱۳۹۶/۰۲/۱۶, ۱۲:۲۱ ب.ظ
Pars
m-r-v
1 سوال و جواب در مورد نرم افزار متلب (MATLAB)
فیلتر پایین گذر ایده آل
۱۳۹۶/۰۲/۱۲, ۰۲:۲۰ ق.ظ
Ali1885
Ali1885
0 سوال و جواب در مورد نرم افزار متلب (MATLAB)
مشاهده 1000 ارسال آخر انجمن (در زمینه برنامه نویسی متلب)

آخرین کلیدهای غیررایگان

شما هم می توانید کلیدهای غیررایگان منتشر کنید (بیشتر بدانید)