• cheeseburger@lemmy.ca
    link
    fedilink
    English
    arrow-up
    2
    ·
    5 months ago

    10,152 Km between Atlanta and Tbilisi, and ChatGPT gave the pseudocode below as an explanation, which I didn’t double check before making this comment!

    
    # Coordinates for Atlanta, Georgia, USA
    atlanta_coords = (33.7490, -84.3880)
    
    # Coordinates for Tbilisi, Georgia (country)
    tbilisi_coords = (41.7151, 44.8271)
    
    # Calculate the straight line distance through the Earth
    geopy.distance.great_circle(atlanta_coords, tbilisi_coords).km```
    • Gobbel2000@programming.dev
      link
      fedilink
      English
      arrow-up
      4
      ·
      5 months ago

      That’s wrong, it calculates the surface distance not the distance through the earth, while claiming otherwise. From the geopy.distance.great_circle documentation:

      Use spherical geometry to calculate the surface distance between points.

      This would be a correct calculation, using the formula for the chord length from here:

      from math import *
      
      # Coordinates for Atlanta, West Georgia
      atlanta_coords = (33.7490, -84.3880)
      # Coordinates for Tbilisi, Georgia
      tbilisi_coords = (41.7151, 44.8271)
      
      # Convert from degrees to radians
      phi = (radians(atlanta_coords[0]), radians(tbilisi_coords[0]))
      lambd = (radians(atlanta_coords[1]), radians(tbilisi_coords[1]))
      
      # Spherical law of cosines
      central_angle = acos(sin(phi[0]) * sin(phi[1]) + cos(phi[0]) * cos(phi[1]) * cos(lambd[1] - lambd[0]))
      chord_length = 2 * sin(central_angle/2)
      
      earth_radius = 6335.439 #km
      print(f"Tunnel length: {chord_length * earth_radius:.3f}km")
      

      A straight tunnel from Atlanta to Tbilisi would be 9060.898km long.