PDA

View Full Version : Matlab function


matematikawan
Oct29-09, 11:33 AM
I normally create anonymous function in order to avoid creating extra m-file if the function is simple enough. For example if I want to integrate the function f(x)=x2+x, I just write a simple matlab script like

myfun=@(x) x.^2 + x;
quad(myfun,0,1)


But how do we create an anonymous function for the following function

f(x)=\left\{\begin{array}{ccc}x,&\mbox{ } 0 \leq x <1\\
1-x, & \mbox{ } 1 \leq x <2\\
0 , & \mbox{ elsewhere } \end{array}\right.


The function look simple to me and I know how to write a function m-file for it. But I want to avoid it. Is it possible to create an anonymous function for it?

matonski
Oct30-09, 07:26 PM
Here you go.
f = @(x) x.*(0<=x & x<1) + (1-x).*(1<=x & x<=2);

matematikawan
Oct31-09, 12:53 AM
Thanks alot matonski. This is really :cool: