Re: how to determine the center or foci of an ellipse from a slope

*To*: mathgroup at smc.vnet.net*Subject*: [mg88979] Re: how to determine the center or foci of an ellipse from a slope*From*: dh <dh at metrohm.ch>*Date*: Thu, 22 May 2008 06:17:09 -0400 (EDT)*References*: <g11r0s$a87$1@smc.vnet.net>

Hi John, Thomas,??? Having a "slope field" is a differential equation. Specifying an initial condition, we are able to integrate it and get one of the many possible ellipses. Having an ellipse, you can determine the center. First we must create a function with input: x,y and output: slope, call it slope[{x,y}]. If your data is measured on a rectangular grid, the function "Interpolation" will do this. Next we specify the DE: eq={pos'[t]==slope[pos[t]], pos[0]==pos0} where pos[t] is the position (a 2 vector) and pos0={x0,y0} are suitable initial conditions. Now we can solve: NDSolve[eq,p[t],{t,0,tmax}] where tmax must be chosen according to your data. Last we must determine the center. One way to do this is to remember that an ellipse is a quadratic curve that can be described e.g. by: a x^2+2 b x y+ c y^2 + 2 d x + 2 f y + g == 0 the parameters a,b,..g can be fitted using some points {x,y} of your previous solution. With these parameters, we get the center: x0=(cd-bf)/(b^2-ac) y0=(af-bd)/(b^2-ac) (you may look this up e.g.: http://mathworld.wolfram.com/Ellipse.html) hope this helps, Daniel John Kellerham wrote: > Hi guys, > I have a slope field (2d-array), which is defined > by ellipses (can be arbitrarily tilted), which all have the > same foci and center but different major and minor half axes. > In fact, I obtained the tangent at each point by measurements. > > Does somebody have an idea on how to approach the problem > of finding the center or the foci of the ellipses? I think > there is no exact solution to the problem? > > Best Regards, > Thomas > -- Daniel Huber Metrohm Ltd. Oberdorfstr. 68 CH-9100 Herisau Tel. +41 71 353 8585, Fax +41 71 353 8907 E-Mail:<mailto:dh at metrohm.com> Internet:<http://www.metrohm.com>