MathGroup Archive 2004

[Date Index] [Thread Index] [Author Index]

Search the Archive

Re: Piecewise functions


You CAN do it without UnitStep if you really want:

   y[x_] := Which[x > 3, x, -1 < x < 3, -x, True, 1]
   Plot[y[x], {x, -5, 5}];

But you'll get the same spurious vertical line segment at x = 3 that you 
will if you do use UnitStep:

   y[x_]:=x UnitStep[x - 3] - x(-UnitStep[x - 3] + UnitStep[x + 1]) +
            (1 - UnitStep[x + 1]
   Plot[y[x], {x, -5, 5}];

Luca wrote:
> Hi all. I'm studying for the exam of signals and systems and I was
> trying to plot some kind of functions I transformed for exercise. So, I
> need to plot piecewise functions like:
> 
> y(x) = x if x > 3
> y(x) = -x if -1 < x < 3
> y(x) = 1 else
> 
> (should have been a system).
> I found out in the guide the chapter about this, and I learned that it
> is possible with the function UnitStep, which I know. Anyway, I found
> it difficult to determine the equation of the function using this
> method. Is it possible to do it simply writing everything like I did
> before, more or less? i.e. without having to determine the equation
> with the UnitStep function.

-- 
Murray Eisenberg                     murray at math.umass.edu
Mathematics & Statistics Dept.
Lederle Graduate Research Tower      phone 413 549-1020 (H)
University of Massachusetts                413 545-2859 (W)
710 North Pleasant Street            fax   413 545-1801
Amherst, MA 01003-9305


  • Prev by Date: Re: [Help]How to reprensent the result in vector form?
  • Next by Date: f'[t]== x[t]+u[t] ?
  • Previous by thread: Re: Piecewise functions
  • Next by thread: Re: Piecewise functions