Re: Number of interval Intersections for a large number of intervals
- To: mathgroup at smc.vnet.net
 - Subject: [mg81718] Re: [mg81679] Number of interval Intersections for a large number of intervals
 - From: DrMajorBob <drmajorbob at bigfoot.com>
 - Date: Tue, 2 Oct 2007 05:36:10 -0400 (EDT)
 - References: <4236415.1191246194428.JavaMail.root@m35>
 - Reply-to: drmajorbob at bigfoot.com
 
[WRI: there's a Plot/Piecewise insect (bug?) noted below.]
I'm having to guess a bit, but maybe this is what you mean:
intervals = Sort /@ RandomReal[{-1, 1}, {10^5, 2}];
trans = Transpose@intervals;
{{min, maxLow}, {minHigh, max}} = Through[{Min, Max}@#] & /@ trans;
{low, high} =
   Interpolation[Transpose@{Sort@#, -1 + Range@Length@#},
      InterpolationOrder -> 0] & /@ trans;
Clear[count]
count[x_] /; x < min = 0;
count[x_] /; x > max = 0;
count[x_] /; x < minHigh := low[x]
count[x_] /; x > maxLow := low[maxLow] - high[x]
count[x_] := low[x] - high[x];
First@Timing@Plot[count@x, {x, -1, 1}]
0.031
or
Clear[count2]
count2[x_] =
   Piecewise[{{0, x < min}, {low[x], x < minHigh}, {low[x] - high[x],
      x <= maxLow}, {low[maxLow] - high[x], x <= max}}];
First@Timing@Plot[count2@x, {x, -1, 1}]
0.047
INSECT report: If I use a small number of Intervals -- 10, say -- the two  
plots are different. The Piecewise version doesn't have "returns" at some  
of the discontinuities, even though the following plots the zero function  
as expected:
Plot[count2@x - count@x, {x, -1, 1}]
Is this an example of Exclusions->Automatic at work?
If so, why aren't all the returns omitted?
Bobby
On Mon, 01 Oct 2007 03:50:26 -0500, P_ter <peter_van_summeren at yahoo.co.uk>  
wrote:
> Hello,
> I have as example on the interval [0.0,12000.0] thousands of smaller  
> intervals which overlap. I construct for each interval a UnitStep up and  
> one down(a block). I order and sum them and I give it to Reduce with the  
> question Reduce[SumOfAllBlocks[x]==<number>,x]. The result gives me the  
> overlapping intervals  which overlap <number>. From the result I take 
> out the length of the overlaps and Tally them. It is safe, but slow.
> Does anyone know something about this type of problems? With better  
> algorithms?
>
>
-- 
DrMajorBob at bigfoot.com
- Follow-Ups:
- Re: Re: Number of interval Intersections for a large number of intervals
- From: Brett Champion <brettc@wolfram.com>
 
 
 - Re: Re: Number of interval Intersections for a large number of intervals