به محفل ریاضی ایرانیان خوش آمدید! لطفا برای استفاده از تمامی امکانات عضو شوید
+2 امتیاز
21,042 بازدید
در دانشگاه توسط terorist (41 امتیاز)
ویرایش شده توسط UnknownUser

چطور یک تابع چندضابطه‌ای در نرم‌افزار متلب Matlab تعریف کنم؟ برای $n$ ضابطه که $n$ یک عدد طبیعی است.

مثلاً:

$$ f(x)=\begin{cases}a & ; & x = 0\\ b & ; & 0<x\\ c & ; & -2<x<0 \end{cases}$$

3 پاسخ

+3 امتیاز
توسط
ویرایش شده توسط admin

سلام

برای مثال همین تابع رو به شکل زیر می نویسیم:

function z = myfun(x,a,b,c) 
if x == 0
z = a;
elseif x > 0
z=b
elseif x<0 && x>-2
z=c;
end
+1 امتیاز
توسط
ویرایش شده توسط admin

سلام به این صورت هم می توان نوشت:

x = -1.8 : 0.5 : 10 ;

f = a*(x==0) + b * (x>0) + c*( (x<0)&(x>-2) ) ;

بازه x را فرضی گرفتم. به جای a و b و c می توان هر عدد دلخواهی قرار داد

0 امتیاز
توسط AmirHosein (19,718 امتیاز)
ویرایش شده توسط AmirHosein

چند روش بوسیلهٔ کاربرهای دیگر پیشنهاد شد. بد نیست بدانید که دستور از پیش تعریف‌شده در نرم‌افزار Matlab برای تعریف تابع چندضابطه‌ای وجود دارد (نرم‌افزار Maple نیز همین دستور را با شکل یکسان دارد). این دستور piecewise است که نامش واژهٔ انگلیسی به معنای تکه‌ای یا همان پاره‌ای است، که اشاره به این دارد که تابع تکه‌تکه تعریف شده و سپس کنار هم قرار داده‌ شده‌است. برای نوشتن تابع چندضابطه‌ای شما این دستور به کار می‌رود. که البته من فرض کرده‌ام که $x$ را یک متغیر نمادین symbolic و $a$ و $b$ و $c$ را سه عدد که از قبل در برنامه‌تان تعریف کرده‌اید در نظر گرفته‌اید.

    syms x
    f(x)=piecewise(x<0,a,x=0,b,-2<x<0,c)

یک مزیت این روش این است که برای برخی دستورهای محاسبه‌های نمادین symbolic computation به مشکل نخواهید خورد. به هر حال یک مثال دیگر می‌توانید تابع $f(x)$ تعریف شده در پاسخ گذاشته شده در این پست را به روش زیر به Matlab بدهید و سپس رسم نمودار توان دوی مشتق سوم آن را بخواهید.

    syms x
    f(x)=piecewise(x<0,-x^3/6,x>=0,x^4/24-x^3/6);
    g(x)=diff(f(x),x,3)^2;
    X=linspace(-5,5,100);
    Y=g(X);
    plot(X,Y)
    ylabel('y-axis');
    xlabel('x-axis');
    axis([-5,5,-5,5]);
    title('Graph of y=(f^{(3)}(x))^2');
    grid on

شکل بدست‌آمده در زیر قرار داده‌شده‌است که با شکل رسم‌شده با نرم‌افزار Maple و در پست اشاره‌شده برابر است.

این چرخ فلک که ما در او حیرانیم<br> فانوس خیال از او مثالی دانیم<br> خورشید چراغ دان و عالم فانوس<br> ما چون صوریم کاندرو حیرانیم
...