[Date Index]
[Thread Index]
[Author Index]
Re: Sphere formula
*To*: mathgroup at smc.vnet.net
*Subject*: [mg109499] Re: Sphere formula
*From*: "Alexander Elkins" <alexander_elkins at hotmail.com>
*Date*: Sat, 1 May 2010 06:50:52 -0400 (EDT)
*References*: <hr65rj$jq6$1@smc.vnet.net> <hrbach$hq9$1@smc.vnet.net>
"S. B. Gray" <stevebg at ROADRUNNER.COM> wrote in message
news:hrbach$hq9$1 at smc.vnet.net...
> On 4/27/2010 1:05 AM, S. B. Gray wrote:
> > 1. The center of a sphere through 4 points has a very nice determinant
> > form. (http://mathworld.wolfram.com/Sphere.html) What I want is a nice
> > formula for the center of a sphere through 3 points, where the center is
> > in the plane of the three points. I have a formula but it's a horrible
> > mess of hundreds of lines, even after FullSimplify.
> >
> > 2. (Unlikely) Is there a way to get Mathematica to put a long formula
into a
> > matrix/determinant form if there is a nice one?
> >
> > Any tips will be appreciated.
> >
> > Steve Gray
> >
> Thanks to everyone who answered my question, but there is a simpler
> answer. I forgot the simple fact that any linear combination of two
> vectors lies in the plane of the two vectors.
>
> Let the three points be p1,p2,p3. Consider the linear function
> p=b(p2-p1)+c(p3-p1) where b,c are to be determined and p is the desired
> center. Now do
>
> Solve[{Norm(p-p1)==Norm(p-p2),Norm(p-p1)==Norm(p-p3)},{b,c}].
>
> This gives b,c and therefore p, which will be equidistant from p1,p2,
> and p3 and lie in their plane. Very simple. (I used (p-p1).(p-p1) etc.
> instead of Norm.)
>
> Steve Gray
Unless I misinterpreted something in this posting, the following does not
give the expected center point {1, 2, 3} using Ray Koopman' s posted values
for {p1, p2, p3} as the result:
In[1]:=With[{p1={0.018473,-1.1359,-0.768653},p2={2.51514,5.25315,6.48158},
p3={0.818313,-0.881007,-1.0825}},
With[{p=b(p2-p1)+c(p3-p1)},
p/.NSolve[{(p-p1).(p-p1)==(p-p2).(p-p2),(p-p1).(p-p1)==(p-p3).(p-p3)},{b,c}]
]]
Out[1]={{0.797494,2.34596,2.76487}}
Another test using a random center point and Ray Koopman's method of
selecting three random points also does not match the expected value:
In[2]:=Module[{pc=RandomReal[{-10,10},3],
r=5Orthogonalize@RandomReal[NormalDistribution[0,1],{3,3}],
p1,p2,p3},{p1,p2,p3}=
Table[{Cos@#,Sin@#,0}&@RandomReal[{-Pi,Pi}].r+pc,{3}];
{pc, #, pc == #} &[With[{p=b(p2-p1)+c(p3-p1)},
p/.NSolve[{(p-p1).(p-p1)==(p-p2).(p-p2),(p-p1).(p-p1)==(p-p3).(p-p3)},{b,c}]
]]]
Out[2]={{-7.4099,3.28674,-3.24279},{{-6.53281,-1.33034,-3.11019}},False}
Prev by Date:
**Re: How to disable Integrate[] ?**
Next by Date:
**Re: How to disable Integrate[] ?**
Previous by thread:
**Re: How to disable Integrate[] ?**
Next by thread:
**Re: Sphere formula**
| |