Mathematica 9 is now available
Services & Resources / Wolfram Forums
-----
 /
MathGroup Archive
2002
*January
*February
*March
*April
*May
*June
*July
*August
*September
*October
*November
*December
*Archive Index
*Ask about this page
*Print this page
*Give us feedback
*Sign up for the Wolfram Insider

MathGroup Archive 2002

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

Search the Archive

Integrate using UnitStep[*]

  • To: mathgroup at smc.vnet.net
  • Subject: [mg34901] Integrate using UnitStep[*]
  • From: michael_chang86 at hotmail.com (Michael Chang)
  • Date: Wed, 12 Jun 2002 02:15:33 -0400 (EDT)
  • Sender: owner-wri-mathgroup at wolfram.com

Hi,

I recently read with interest the postings on how to define piecewise
continuous functions of, say, one variable using UnitStep or Condition
(/;).  Since I need to perform integration, I've tried to use UnitStep
in the simple functions f[x] and g[x] defined below using Mathematica
4.1 for Winduh XP (x,y are both supposed to be Real numbers).

In[1]:=  f[x_]:=1/40(4(-100+x)UnitStep[x-100]+(355-4x)UnitStep[x-90]+(45-4x)UnitStep[x-10]+4x
UnitStep[x]);

In[2]:=  g[x_]:=UnitStep[x-500];

A couple of things perplex my little mind ... the first being that

In[3]:= Integrate[f[x],{x,0,5000}]

works and correctly evaluates to 100, but

In[4]:= Integrate[f[x],{x,0,\[Infinity]}]

remains unevaluated due to warnings such as

Out[4]:= Integrate::idiv : Integral of -100+x does not converge on
{100,\[Infinity]} (I've cut out the other Integrate warnings for
brevity)

It appears that Mathematica is trying to actually integrate the
individual UnitSteps, thereby resulting in some indeterminate results
... is this correct, and if so, is there a way around this?

Secondly, I want to integrate f[x-y]*g[x] over x (I kinda want
something like convolution, but not quite ...), so I define

In[5]:= ans=Integrate[f[x-y] g[x],{x,0,5000}];

However when I try something like

In[6]:= Plot[ans,{y,0,1000}];

I get a NIntegrate::inum warning *and* a Graphics output, but I get no
warning *and* a Graphics output when I try

In[7]:= Plot[Evaluate[ans],{y,0,1000}];

I was just wondering why do these two situations arise?  Again, the
collective wisdom of this group is most appreciated!

Michael


  • Prev by Date: Re: 3d table or list to file
  • Next by Date: Re: A friendly challenge: Generalized Partition
  • Previous by thread: Specifying Nonstandard Font Familes in Graphics
  • Next by thread: Developer packages