رفتن به مطلب

سوال درمورد دستور solve در متلب


ارسال های توصیه شده

با سلام

من با دستور solve تو متلب دوتا مشکل دارم!

مشکل اول: باید حتما تابع را به طور کامل در دستور solve بنویسی با یه مثال ساده بخوام توضیح بدم:

solve('2*x+1')

این برنامه جواب میده ولی اگه y=2*x+1 رو قبلا تعریف کرده باشیم نمیشه برنامه رو به صورت زیر بنویسیم:

syms x,y=2*x+1,

solve('y=0','x')

اینطوری جواب نمیده! راهی نیست که بشه یه تابع از قبل تعریف شده رو در دستور solve فراخوانی کنیم؟

مشکل دوم: اگه از قبل به یه متغیری عدد نسبت داده باشیم بعد از اون متغیر در دستور solve استفاده کنیم متوجه نمیشه! برای مثال:

a=2;

solve('a*x+1','x')

من انتظار دارم جواب منفیه 1/2 بهم بده ولی منفیه 1/a رو میده! راهی هست برای رفع این مشکل؟

البته مسئله ی من به این سادگی نیست خواستم با یه مثال ساده توضیح بدم واضح باشه!

ممنون میشم اگه راهنماییم کنید

  • Like 4
لینک به دیدگاه
با سلام

من با دستور solve تو متلب دوتا مشکل دارم!

مشکل اول: باید حتما تابع را به طور کامل در دستور solve بنویسی با یه مثال ساده بخوام توضیح بدم:

solve('2*x+1')

این برنامه جواب میده ولی اگه y=2*x+1 رو قبلا تعریف کرده باشیم نمیشه برنامه رو به صورت زیر بنویسیم:

syms x,y=2*x+1,

solve('y=0','x')

اینطوری جواب نمیده! راهی نیست که بشه یه تابع از قبل تعریف شده رو در دستور solve فراخوانی کنیم؟

مشکل دوم: اگه از قبل به یه متغیری عدد نسبت داده باشیم بعد از اون متغیر در دستور solve استفاده کنیم متوجه نمیشه! برای مثال:

a=2;

solve('a*x+1','x')

من انتظار دارم جواب منفیه 1/2 بهم بده ولی منفیه 1/a رو میده! راهی هست برای رفع این مشکل؟

البته مسئله ی من به این سادگی نیست خواستم با یه مثال ساده توضیح بدم واضح باشه!

ممنون میشم اگه راهنماییم کنید

 

 

سلام:a030:

 

http://www.noandishaan.com/forums/thread114914-4.html#post1341229

:a030::icon_gol:

  • Like 4
لینک به دیدگاه
×
×
  • اضافه کردن...