MathGroup Archive 2008

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

Search the Archive

RE: Something very simple.....

  • To: mathgroup at smc.vnet.net
  • Subject: [mg87117] RE: [mg87103] Something very simple.....
  • From: "David Annetts" <davidannetts at aapt.net.au>
  • Date: Tue, 1 Apr 2008 05:18:58 -0500 (EST)
  • References: <200804010819.DAA11874@smc.vnet.net>

Hi Steve,

> 1. I have a list of sphere centers and radii like this:
> 
> sphlst={{{ 5.11,  0.76, -0.32}, 100.39}, 
> 	{{ 7.18, -1.86, -8.19},  98.02}, 
> 	{{26.71, -9.30, -6.85}, 111.27},
> 	{{    0,     0,     0}, 100.00},
> 	{{ 8.65,  4.28, -3.81}, 103.87}}.
> 
> If I do Map[Sphere,sphlst] I get too many braces, like this:
> 
> {Sphere[{{ 5.11,  0.76, -0.32}, 100.39}],  Sphere[{{ 7.18, 
> -1.86, -8.19}, 98.02}],  Sphere[{{26.71, -9.30, -6.85}, 111.27}], 
>  Sphere[{{    0,     0,     0}, 100.00}], 
>  Sphere[{{ 8.65,  4.28, -3.81}, 103.87}]}
> 
> and Sphere needs for example Sphere[{1.11, 2.22, 3.33},4.5]. 
> What simple thing am I missing to remove the extra braces?
> (I know I can use Table but isn't there a "one-step" method?) 
> Flatten doesn't seem to be useful here, or I'm using it wrong.

Apply[Sphere, sphlst, 1] does the trick.
 
> 2. I have two lists, lsta={a,b,c,d,e,f} and lstb={1,3,4}.
> I want the elements of lsta that do NOT correspond to 
> elements of lstb, in this case everything from lsta except 
> elements 1,3, and 4: result={b,e,f}. 
> (lstb won't have entries larger than Length[lsta]).

For this, I'd use

	lstc = lsta[[#]] & /@ lstb
	lstd = Complement[lsta, lstc]

but there are undoubtedly other ways.

Regards,

Dave.

No virus found in this outgoing message.
Checked by AVG. 
Version: 7.5.519 / Virus Database: 269.22.3/1354 - Release Date: 1/04/2008
05:38
 



  • Prev by Date: Re: Something very simple.....
  • Next by Date: Re: Something very simple.....
  • Previous by thread: Re: Something very simple.....
  • Next by thread: Re: Something very simple.....