boinor.core.spheroid_location ============================= .. py:module:: boinor.core.spheroid_location .. autoapi-nested-parse:: Low level calculations for oblate spheroid locations. Functions --------- .. autoapisummary:: boinor.core.spheroid_location.cartesian_cords boinor.core.spheroid_location.f boinor.core.spheroid_location.N boinor.core.spheroid_location.tangential_vecs boinor.core.spheroid_location.radius_of_curvature boinor.core.spheroid_location.distance boinor.core.spheroid_location.is_visible boinor.core.spheroid_location.cartesian_to_ellipsoidal Module Contents --------------- .. py:function:: cartesian_cords(a, c, lon, lat, h) Calculates cartesian coordinates. :param a: Semi-major axis :type a: float :param c: Semi-minor axis :type c: float :param lon: Geodetic longitude :type lon: float :param lat: Geodetic latitude :type lat: float :param h: Geodetic height :type h: float ND: float prime vertical radius of curvature (normal distance from the ellipsoid surface to the polar axis) sometimes called N .. py:function:: f(a, c) Get first flattening. :param a: Semi-major axis :type a: float :param c: Semi-minor axis :type c: float .. py:function:: N(a, b, c, cartesian_cords_parameter) Normal vector of the ellipsoid at the given location. :param a: Semi-major axis :type a: float :param b: Equatorial radius :type b: float :param c: Semi-minor axis :type c: float :param cartesian_cords_parameter: Cartesian coordinates :type cartesian_cords_parameter: numpy.ndarray .. py:function:: tangential_vecs(ND) Returns orthonormal vectors tangential to the ellipsoid at the given location. :param ND: Normal vector of the ellipsoid :type ND: numpy.ndarray .. py:function:: radius_of_curvature(a, c, lat) Radius of curvature of the meridian at the latitude of the given location. :param a: Semi-major axis :type a: float :param c: Semi-minor axis :type c: float :param lat: Geodetic latitude :type lat: float .. py:function:: distance(cartesian_cords_parameter, px, py, pz) Calculates the distance from an arbitrary point to the given location (Cartesian coordinates). :param cartesian_cords_parameter: Cartesian coordinates :type cartesian_cords_parameter: numpy.ndarray :param px: x-coordinate of the point :type px: float :param py: y-coordinate of the point :type py: float :param pz: z-coordinate of the point :type pz: float .. py:function:: is_visible(cartesian_cords_parameter, px, py, pz, ND) Determine whether an object located at a given point is visible from the given location. :param cartesian_cords_parameter: Cartesian coordinates :type cartesian_cords_parameter: numpy.ndarray :param px: x-coordinate of the point :type px: float :param py: y-coordinate of the point :type py: float :param pz: z-coordinate of the point :type pz: float :param ND: Normal vector of the ellipsoid at the given location. :type ND: numpy.ndarray .. py:function:: cartesian_to_ellipsoidal(a, c, x, y, z) Converts cartesian coordinates to ellipsoidal coordinates for the given ellipsoid. Instead of the iterative formula, the function uses the approximation introduced in Bowring, B. R. (1976). TRANSFORMATION FROM SPATIAL TO GEOGRAPHICAL COORDINATES. :param a: Semi-major axis :type a: float :param c: Semi-minor axis :type c: float :param x: x coordinate :type x: float :param y: y coordinate :type y: float :param z: z coordinate :type z: float