Bagaimana cara menghitung jarak jalur udara antara dua tempat?

17

Banyak waktu, saya mencari cara untuk menghitung jarak jalur udara antara dua tempat, paling sering pusat kota.

Misalnya ketika saya terbang dari Zurich ke Helsinki saya ingin tahu seberapa jauh jaraknya. Dengan Google Maps saya dapat melakukannya tetapi tidak untuk jarak saluran udara.

Jadi apakah ada yang tahu alat untuk melakukan ini atau dapat memberi saya saran tentang cara melakukannya secara manual menggunakan koordinat geo? Lalu saya bisa menulis alat kecil saya sendiri.

RoflcoptrException
sumber
1
Apakah jarak jalur udara memiliki arti ketika melakukan perjalanan antara dua bandara kecil dilakukan hanya melalui hub yang jauh?
mouviciel
1
Jelas tidak ...
RoflcoptrException
3
Pikiran kecil: apakah pesawat terbang kecil harus tetap berada dalam jarak tertentu jika terjadi kegagalan mesin? Saya pikir saya melihat situs yang mengatakannya. Jika demikian, jarak lingkaran yang besar tidak selalu akurat.
barrycarter
@barrycarter: Pesawat akan menyimpang dari jalur terpendek untuk semua jenis alasan, seperti menghindari badai dan menggunakan aliran jet agar lebih cepat. Jadi tidak mungkin untuk selalu tahu sebelumnya.
Michael Borgwardt
Anda sudah mendapatkan jawaban yang komprehensif sehingga bisa diperdebatkan sekarang tetapi “saluran udara” tampaknya menimbulkan kebingungan. Saya curiga Anda maksudkan Luftlinie , dalam hal ini "garis lurus", "langsung menuju" atau "saat burung gagak terbang" akan menjadi cara yang lebih idiomatis untuk menaruhnya dalam bahasa Inggris.
Santai

Jawaban:

18

Tempat terbaik untuk perhitungan ini adalah situs web "Great Circle Mapper".

http://www.gcmap.com/

Untuk menemukan jarak antara dua atau lebih bandara cukup masukkan mereka dengan tanda hubung di antara mereka. misalnya, JFK-DFW atau SFO-IAD-LHR

Anda dapat melakukan beberapa perjalanan sekaligus dengan memisahkannya dengan koma. JKF-DFW, SFO-IAD-LHR

Dokter
sumber
Perhatikan bahwa nilai-nilai ini adalah batas bawah pada jarak sebenarnya yang akan dilalui pesawat di antara bandara.
ESultanik
Catat ini dalam peraturan penundaan / pembatalan penerbangan UE (EC) No 261/2004: "Jarak yang diberikan dalam paragraf 1 dan 2 harus diukur dengan metode rute lingkaran besar."
chx
13

Untuk semua repliers yang merekomendasikan matematika Lingkaran Besar, Anda hanya sebagian benar.

Jarak antara dua titik pada bola ditemukan oleh GC Maths, namun OP secara khusus meminta jarak jalur udara. Ini ditemukan dengan pertama-tama menemukan semua titik yang dikunjungi dalam perjalanan ke tujuan dan kemudian menghitung jarak GC untuk semua pasangan rute.

Misalnya penerbangan dari London ke New York tidak mengikuti jalur lingkaran besar antara dua titik. Ini mengikuti seperangkat poin, yang mungkin termasuk Navaids, Waypoints, Airways, rute Keberangkatan, rute Kedatangan, perbaikan lat / long dan berbagai titik bantalan jangkauan. lihat Rencana Penerbangan untuk info lebih lanjut.

Jadi, Anda perlu menghubungi maskapai yang terlibat dan menanyakan dengan baik rencana penerbangan yang digunakan, dan menemukan tawaran untuk setiap poin yang dikunjungi.

NWS
sumber
Inilah yang saya pikirkan!
Ankur Banerjee
1
Saya percaya OP benar-benar bertanya tentang jarak lingkaran yang hebat, "saluran udara" berdiri di sini untuk "Luftlinie" Jerman dan tidak ada hubungannya dengan "penerbangan".
Santai
11

Banyak maskapai penerbangan memasukkan informasi ini dalam jadwal mereka. Misalnya, Air Canada memungkinkan Anda mengunduh PDF dari seluruh jadwal mereka. Ini adalah klip darinya:

masukkan deskripsi gambar di sini

Saya sarankan mencari situs web maskapai yang ingin Anda gunakan. Alat apa pun yang didasarkan pada seberapa jauh jarak kota-kota itu mungkin 20-30 mil berbeda dari jarak maskapai.

Kate Gregory
sumber
Jarak dalam katalog (untuk mil frequent flyer dll) biasanya jarak lingkaran besar optimal yang sama seperti yang disediakan oleh GCMap. Jarak aktual bervariasi dari hari ke hari berdasarkan angin, kontrol lalu lintas udara, dll.
lambshaanxy
7

Jika Anda ingin menghitungnya sendiri, maka hukum kosinus berbentuk bola mungkin adalah cara termudah untuk melakukannya. Ini mungkin cukup akurat untuk kebutuhan Anda, dan sangat sederhana. Jika Anda menginginkannya dengan python, coba kode saya ini (Anda ingin calculate_distance_and_bearing)

Kemungkinan Anda juga menginginkan informasi lokasi untuk berbagai bandara yang menarik. Saya cenderung menggunakan Database Bandara Global di masa lalu untuk hal semacam ini.

Gagravarr
sumber
5

Jika Anda ingin melakukan perhitungan ini untuk penerbangan, Anda harus menggunakan hukum Bulat cosinus seperti yang disebutkan Gagravarr. Namun, jika Anda ingin menulis alat kecil Anda sendiri dan ingin memplot garis pada peta maka itu akan sedikit rumit. Anda harus menggunakan peta proyeksi Lambert untuk menggambar garis lurus dari A ke B di atasnya. Masalah dengan proyeksi konus konformal Lambert adalah bahwa peta-peta itu hanya akurat di sepanjang dua paralel referensi, dan semakin jauh Anda menjauh darinya, semakin tidak akurat. Ini biasanya tidak dan mengeluarkan peta kecil yang hanya mencakup 100x100km, tetapi semakin besar peta semakin besar margin kesalahan. Ini ada hubungannya dengan fakta bahwa bumi itu bulat, dan Anda tidak dapat melakukan pemetaan 1: 1 yang tepat dari putaran ke permukaan yang rata.

Google maps (dan semua peta laut) menggunakan proyeksi Cylindrical Map , ini berarti Anda harus menggambar kurva pada peta untuk mendapatkan rute yang sama dengan garis lurus pada proyeksi Lambert.

iMemiliki komputer
sumber
4

Mengapa Anda tidak menggunakan alat ini dengan Latitude dan Longitude?

Helios
sumber
3

Selain opsi yang telah disebutkan, milecalc.com juga akan melakukan perhitungan ini, menggunakan jarak Lingkaran Besar, yang merupakan nilai yang biasanya digunakan untuk perhitungan jarak tempuh frequent flyer dll.

Andrew Ferrier
sumber
2

Lihat di sini: http://www.movable-type.co.uk/scripts/latlong.html

var R = 6371; // Earth's average radius in km
var dLat = (lat2-lat1).toRad();
var dLon = (lon2-lon1).toRad();
var lat1 = lat1.toRad();
var lat2 = lat2.toRad();

var a = Math.sin(dLat/2) * Math.sin(dLat/2) +
        Math.sin(dLon/2) * Math.sin(dLon/2) * Math.cos(lat1) * Math.cos(lat2); 
var c = 2 * Math.atan2(Math.sqrt(a), Math.sqrt(1-a)); 
var d = R * c;
Kebingungan
sumber