home *** CD-ROM | disk | FTP | other *** search
/ NetNews Usenet Archive 1992 #18 / NN_1992_18.iso / spool / sci / math / symbolic / 2204 < prev    next >
Encoding:
Internet Message Format  |  1992-08-14  |  972 b 

  1. Path: sparky!uunet!gatech!destroyer!ncar!vexcel!copper!slate!news
  2. From: jkc@keller.Mines.Colorado.EDU (Jack K. Cohen)
  3. Newsgroups: sci.math.symbolic
  4. Subject: Re: Mathematica: defining functions. HELP!
  5. Message-ID: <1992Aug14.155245.22729@slate.mines.colorado.edu>
  6. Date: 14 Aug 92 15:52:45 GMT
  7. References: <l8mkk4INN5ll@halcyon.usc.edu>
  8. Sender: news@slate.mines.colorado.edu
  9. Organization: Colorado School of Mines
  10. Lines: 20
  11.  
  12. In article <l8mkk4INN5ll@halcyon.usc.edu> rao@halcyon.usc.edu (Anil Rao)  
  13. writes:
  14. > ... I want a function to behave 'differently' in different regions.
  15. > How does one do this in Mma?    ...
  16.  
  17. Here's one I did recently:
  18.  
  19. MeyerPhiHat[v_, xi_] :=
  20.         Which[
  21.                 (* If *)     Abs[xi] <= 1/3, (* then *) 1,
  22.                 (* Elseif *) Abs[xi] >= 2/3, (* then *) 0,
  23.                 (* Else *)   True,  (* then *) Cos[Pi/2 v[3 Abs[xi] - 1]]
  24.         ]
  25.  
  26.  
  27. Another way is to use /; as in:
  28.  
  29. f[x_] := ...  /; 0 < x < 1
  30. f[x_] := ...  /; 1 <= x
  31.