Re: Boolean Integral

• To: mathgroup at smc.vnet.net
• Subject: [mg62388] Re: Boolean Integral
• From: "Valeri Astanoff" <astanoff at yahoo.fr>
• Date: Wed, 23 Nov 2005 01:12:05 -0500 (EST)
• References: <dlupfj\$nb2\$1@smc.vnet.net>
• Sender: owner-wri-mathgroup at wolfram.com

```This is the way I would do it.
(not very clever, but it works):

In[1]:=
chi[func_,y1_,y2_]:=Boole[y1<func<y2];
foo[x_]:=-BesselJ[1,x]
y1=.12; y2=.16;
x1=0; x2=20;

r1=Table[FindRoot[foo[x] == y1,{x,u}],{u,x1,x2,(x2-x1)/100}];
r2=Table[FindRoot[foo[x] == y2,{x,u}],{u,x1,x2,(x2-x1)/100}];

s1=Select[Union[r1,SameTest -> (Abs[(x/.#2)-(x/.#1)]<10^-5&)],
x1<(x/.#)<x2&];
s2=Select[Union[r2,SameTest -> (Abs[(x/.#2)-(x/.#1)]<10^-5&)],
x1<(x/.#)<x2&] ;

xx=Union[{x1},x /. s1, x /. s2,{x2}]//Sort;
Sum[ NIntegrate[chi[foo[x],y1,y2],{x,xx[[i]],xx[[i+1]]}],
{i,1,Length[xx]-1}]//Timing

Out[9]={0.485 Second, 1.33977}

hth

v.a.

```

• Prev by Date: How does NIntegrate suppress messages?
• Next by Date: Re: Confusing results with N[expr]?
• Previous by thread: Re: Boolean Integral
• Next by thread: Re: Boolean Integral