Dismiss Notice
Join Physics Forums Today!
The friendliest, high quality science and math community on the planet! Everyone who loves science is here!

Finding the radius of a curved surface

  1. Mar 10, 2014 #1
    I have a curved surface which I know the (x,y and z) coordinates for 5 separate points on it and I was wondering how to determine the radius of this curved surface from the coordinates and then interpolate so that I can obtain points across the whole surface?

    Many thanks.
  2. jcsd
  3. Mar 10, 2014 #2

    Simon Bridge

    User Avatar
    Science Advisor
    Homework Helper

    Welcome to PF;
    You need to have some idea of the general shape of the surface in order to do the interpolation.
    Methods to do this depends on the type of data you have too - i.e. the points may be known to some uncertainty.

    If you happen to know all the points are exactly on the surface of a sphere - then you are solving simultaneous equations of form:
    ##(x-x_0)^2+(y-y_0)^2+(z-z_0)^2=r^2## ... substituting your points for (x,y,z) until you have 4 equations, (x0,y0,z0) is the location of the center and r is the radius.

    iirc: you can also take pairs of points to define planes - all the planes will intersect at the center.
    pick three points - they define a circle: the axial line through the circle also goes through the center of the sphere. So pick another three points to get a second circle (tilted wrt the first) and the two axial lines intersect at the center.

    But there are lots of ways of being curved that do not involve being a sphere.
    Last edited: Mar 10, 2014
  4. Mar 10, 2014 #3
    Thanks for your response.

    My problem is it is a practical application and I don't know the center point, only 5 points on the curved surface of the object. I should have also mentioned the points are all the same in the z axis, it is only the position of the points in the x and y axis which represent the curve.

    Any further help would be greatly appreciated.
  5. Mar 10, 2014 #4

    Simon Bridge

    User Avatar
    Science Advisor
    Homework Helper

    So the surface only curves in the x-y plane.
    Then you concentrate on finding y=f(x) or x=f(y).

    i.e. if you know it is exactly a circle, then draw a line-segment between any two points - the bisector of that segment goes through the center. Do this for another pair of points - the intersection of the bisectors is the center. You can also do it by plugging three points into the general equation for a circle.

    But for real-world data, you will have an uncertainty on the data points, so the data only approximately follows the circle (or whatever), so that method won't work unless the uncertainty is very small.

    You can use least-squares regression to a curve if you have some idea of what the curve should be.

    i.e. maybe you have some theory that says it should be a quadratic - then y=ax^2+bx+c and you use the data to find the parameters (a,b,c) - there are computer programs to do that for you.
    From the curve you can get the radius of curvature at any point.
  6. Mar 14, 2014 #5


    User Avatar
    Science Advisor
    Gold Member

    Why not try a linear regression in the x-y plane to see what you get , and then go from there?
  7. Mar 14, 2014 #6
Share this great discussion with others via Reddit, Google+, Twitter, or Facebook