YÊU CẦU Xác định kích thước của mặt Spheroid dựa vào chiều dài 2 cung kinh tuyến và vĩ độ tương ứng với chiều dài 2 cung kinh tuyến ấy.. Công thức tính chiều dài cung kinh tuyến từ xích
Trang 1TRƯỜNG ĐẠI HỌC BÁCH KHOA THÀNH PHỐ HỒ CHÍ MINH KHOA KỸ THUẬT XÂY DỰNG
Trang 2LỜI CẢM ƠN
Để hoàn thành bài báo cáo này, em xin chân thành cảm ơn Thầy NguyễnNgọc Lâu đã tận tình giảng dạy và hướng dẫn em trong suốt quá trình hoànthành bài báo cáo này Mặc dù rất cố gắng nhưng do kiến thức chuyên mônbản thân còn hạn chế nên bài báo cáo này không tránh khỏi những thiếu sót.Kính xin Thầy góp ý để em rút ra những kinh nghiệm quý báu, em xin chânthành cảm ơn./
BÀI TẬP LỚN SỐ 1
1 YÊU CẦU
Xác định kích thước của mặt Spheroid dựa vào chiều dài 2 cung kinh tuyến và vĩ
độ tương ứng với chiều dài 2 cung kinh tuyến ấy
2 GIẢI QUYẾT BÀI TOÁN ĐẶT RA:
Để xác định kích thước của mặt Spheroid trái đất ta có 4 phương pháp:
- Phương pháp Eratosthenes
- Phương pháp Viện Hàn Lâm Khoa Học Pháp
- Phương pháp sử dụng mạng lưới tam giác quốc gia
- Phương pháp đo trọng lực
Khi biết vĩ độ Ф và độ dài cung kinh tuyến S, để xác định kích thước mặt Spheroid
ta có thể tìm hiểu 2 cách giải: cách giải gần đúng và cách giải chính xác
Trang 3 CÁCH GIẢI GẦN ĐÚNG: dựa trên giá trị xấp xỉ của tích phân.
- Chiều dài cung kinh tuyến quan hệ với vĩ độ:
m m
e S
Trang 4e S
e e
Khai triển phương trình, tính toán ta tìm được: e 2 � 0.006699662637 (kết quả
tính bằng máy tính tay Casio)
Thay e2 vừa tính được vào phương trình thứ nhất của hệ (1), tìm được a:
2
1 sin ( ) (1 ).( )
Công thức tính chiều dài cung kinh tuyến từ xích đạo đến điểm có vĩ độ Ф là:
0 2.sin 2 4.sin 4 6.sin 6 8.sin8
4 4
8 6 6
8 8
Trang 5Nếu thỏa mãn điều kiện |-| < 10-10 thì dừng lại, không thỏa lặp tiếp.
Khi có e2 phương trình (1) hoặc (2) tìm ra a
0.01745329252 - 0.01742074307e - 0.00003249480611e 0.000000054553258e - 9.116935510 e
Trang 6- Tên chương trình : tinh_kthuoc.m
- Từ chiều dài của 2 cung kinh tuyến và vĩ độ tương ứng ta có thể tìm được
kích thước Spheroid tương ứng
khoảng 0.5496 m
- Do công thức tính gần đúng tính dựa xấp xỉ trên chiều dài cung kinh tuyến
→ chiều dài càng lớn thì cho sai số càng lớn
- Công thức tính lặp cho kết quả chính xác hơn và có thể áp dụng cho chiều
dài cung kinh tuyến lớn hơn
2 PHƯƠNG PHÁP GIẢI QUYẾT:
% CTC TINH KICH THUOC MAT SPHEROID:
% Tien hanh lap de tim e2:
while abs(e2-e20)>1e-10 % Han sai cho phep la: epsilon=10^-10
e20=e2;
% Bieu thuc lap cuoi cung:
e2=(-1.744123493666698e-004+0.006404862507432*e2.^2+0.005266008973700*e2.^3+0.0045690877425 40*e2.^4)/-0.025988537202616;
% Ghi ket qua:
fprintf(fid, 'Kich thuoc spheroid la:\n' );
% Ghi gia tri ban truc a:
disp( 'Gia tri e2:' ); e2
disp( 'Gia tri ban truc a: ' ); a
Trang 7GIỚI THIỆU CÁC CÔNG THỨC
Công thức Phương pháp tính Cự ly/ độ chính xácSchreiber (1878) Trực tiếp S < 50Km
Robbins (1962) Trực tiếp Độ chính xác n cho cự
ly 1500 km, 16 m chođường đáy 4500 kmVincenty (1975) Lặp Độ chính xác vài mm
Nên ta tạo file data.txt dùng chung cho cả 4 chương trình con (CTC)
Với thứ tự số liệu như sau:
Ta viết thêm 1 CTC Matlab docfile.m để nhập dữ liệu từ file data.txt
Trang 8TIẾN HÀNH KIỂM TRA CÁC CÔNG THỨC
CÔNG THỨC SCHREIBER: (chỉ có Công thức bài toán thuận)
Áp dụng cho các công thức cự ly < 50 km, sử dụng các công thức tam giác cầu đểtính toán Xấp xỉ tam giác Spheroid thành tam giác cầu để tính toán
Kết quả nhận được sau khi chạy chương trình:
Trang 90 2
0 2
0 21
CÔNG THỨC GAUSS: gồm CT cho bài toán Thuận và Nghịch
- Áp dụng cho các công thức cự ly < 100 km, dựa vào một điểm nằm giữa
đường trắc địa để tính toán
- Là công thức lặp có công thức thuận và công thức nghịch để tính toán kiểm
Tiến hành chạy chương trình: tương tự ta cũng chạy cho dữ liệu vào cố định
từ file dữ liệu data.txt
Kết quả nhận được sau khi chạy chương trình:
0 2
0 21
Trang 10 Thuật toán BT nghịch:
Chương trình: Gauss2.m
+ Tham số nhập: phi1, lam1, phi2, lam2
+ Tham số xuất: A12_1,A21_1,S_1
0 21
- Áp dụng cho các công thức cự ly trung bình
- Là công thức tính trực tiếp, có công thức thuận và công thức nghịch để tính
toán kiểm tra
Thuật toán BT thuận:
Chương trình: Robbins1.m
+ Tham số nhập: phi1, lam1, S, A12
+ Tham số xuất: phi2, lam2, A21
Tính toán:
function [A12_1,A21_1,S_1]=Gauss2(phi1,lam1,phi2,lam2)
Trang 11Tiến hành chạy chương trình: tương tự ta cũng chạy cho dữ liệu vào cố định
từ file dữ liệu data.txt
Kết quả nhận được sau khi chạy chương trình:
0 2
0 21
+ Tham số nhập: phi1, lam1, phi2, lam2
+ Tham số xuất: A12_1,A21_1,S_1
0 21
Trang 12- Áp dụng hầu hết cho các cự ly , có độ chính xác cao nhất.
- Là công thức tính trực lặp, có công thức thuận và công thức nghịch để tính
toán kiểm tra
Thuật toán BT thuận:
Chương trình: Vincenty1.m
+ Tham số nhập: phi1, lam1, S, A12
+ Tham số xuất: phi2, lam2, A21
Tính toán:
Tiến hành chạy chương trình: tương tự ta cũng chạy cho dữ liệu vào cố định
từ file dữ liệu data.txt
Kết quả nhận được sau khi chạy chương trình:
0 2
0 21
Trang 13+ Tham số nhập: phi1, lam1, phi2, lam2.
+ Tham số xuất: A12_1, A21_1, S_1
0 21
2.2 Khảo sát độ chính xác (cự ly giới hạn) của 4 công thức:
KHẢO SÁT CÔNG THỨC VÀ KẾT QUẢ
Với độ chính xác ở góc giới hạn là 0.01’’, độ chính xác 1mm ở chiều dài Ta tiến hành khảo sát lần lượt các công thức
Chọn:
0 1
0 1
Trang 14Trong đó:
- ABC lần lượt là các công thức: Schreiber, Gauss, Robbins và Vincenty.
- Cu ly gioi han: là cự ly mà công thức không còn đảm bảo độ chính xác yêu
cầu
Chương trình khảo sát công thức Schreiber: Khsat_Schreiber.m
Chương trình khảo sát công thức Gauss: Khsat_Gauss.m
Chương trình khảo sát công thức Robbins: Khsat_Robbins.m
Chương trình khảo sát công thức Vincenty: Khsat_Vincenty.m
% KHAO SAT CONG THUC ABC:
disp( 'Cu ly gioi han cua CT ABC:' ); S
disp( 'Goc phuong vi:' ); A12
% Dong file
fclose(fid);
Trang 15
KHẢO SÁT CÔNG THỨC SCHREIBER: Khsat_Schreiber.m
+ Công thức thuận: Schreiber_khsat
+ Công thức nghịch: Vincenty2_khsat (do CT Schreiber chỉ có CT Thuận).+ File kết quả: Schreiber.txt
Kết quả:
- Cu ly gioi han cua CT Chreiber: S = 30 000 m.
- Goc phuong vi: A12 = 0.
- Cu ly gioi han cua CT Gauss: S = 80 000 m.
- Goc phuong vi: A12 = 0.
- Cu ly gioi han cua CT Robbins: S = 180 000 m.
- Goc phuong vi: A12 = 0.
- Cu ly gioi han cua CT Vincenty: S = 8 900 000 m.
- Goc phuong vi: A12 = 0.
Trang 16 NHẬN XÉT:
- Với cự ly 10 km đến 20000 km và phương vị trắc địa từ 0 đến 1800, ta nhận thấy công thức đáp ứng về cự ly giới hạn lớn nhất mà công thức còn đảm bảo độ chính xác yêu cầu là công thức Vincenty với cự ly lên đến gần 9 000
km (lý thuyết là 20 000km), công thức đáp ứng thấp nhất là công thức
Schreiber
- Các công thức tính lặp có cự ly đảm bảo độ chính xác lớn hơn → Vì vậy hiện nay người ta thường ưa chuộng các công thức tính lặp hơn công thức tính trực tiếp
+ Hình chiếu xích đạo là đường thẳng nằm ngang
+ Hình chiếu kinh tuyến giữa là đường thẳng đứng
+ Ở kinh tuyến giữa có tỷ lệ m0 = 1
- Phép chiếu UTM là phép chiếu hình trụ ngang đồng góc , khi cho mặt trụ cắtphớt qua mặt cầu có vĩ độ nằm trong khoảng -800 (800 S) đến 840 (840 N), phần còn lại sử dụng phép chiếu phương vị
+ Có 2 cát tuyến là 2 đường không bị biến dạng và có tỷ lệ chiếu m =1.+ Ở 2 kinh tuyến biên có m >1
+ Ở kinh tuyến giữa là m = 0.9996 (múi 60) và m = 0.9999 (múi 30)
Để chứng minh yêu cầu đề đặt ra, ta làm như sau:
+ Bước 1: Trên xích đạo ( 00) ta lấy 2 điểm: Q1 và Q2, với:
Q1 là điểm thuộc cát tuyến (phải tìm điểm này) → điểm này thuộc kinh tuyến có tỷ lệ chiếu =1
Trang 17 Q2 là điểm thuộc kinh tuyến biên → l = 30.
+ Bước 2:
Có điểm Q2 ( 00,l = 30) → đưa vào chương trình tìm ra Q2 (x,y)
Vì Q2 nằm trên xích đạo → Q2 (0,y2)
Điểm Q1 có 00 → tìm ra l → có (,l) → dùng CT tỷ lệ chiếu 1
kiểm tra lại → đưa vào chương trình tìm ra Q1 (x,y)
Vì Q1 nằm trên xích đạo → Q1 (0,y1)
+ Bước 3: so sánh y1 và y2, đưa ra kết luận
Ta có công thức tính tỷ lệ chiếu trong phép chiếu UTM:
Trong đó: k 0 = 0.9996 với múi 6 0 , và bằng 0.9999 với múi 3 0
Vậy ta thấy, với giá trị ta sẽ tìm được những giá trị tương ứng khi m = 1 bằng
cách giải phương trình sau:
a6=(N*sin(phi)*(cos(phi))^5/720)*(61-58*t^2+t^4+270*eta^2-600*t^2*eta^6-192*t^2*eta^8);
t^6);
Trang 18 Ta viết thêm CTC tính các hệ số d 2 , d 4 , d 6 chạy theo biến
Nhập giá trị 00 của điểm Q1 vào, khởi chạy (với a, e2, k0 như trên)
d4=((cos(phi))^4/24)*(5-d6=((cos(phi))^6/720)*(61-148*t^2+16*t^4);
% Tinh ty le chieu:
k0=input( 'nhap he so k0' );
Trang 19 m = 1.000000000000064 � 1.
Chạy chương trình UTM1 cho điểm Q 1 :
→ Nhập (1,l1) vào CTC UTM1 → (x1,y1) (nhập l ở đơn vị dms)
Thực hiện tương tự trường hợp múi chiếu 60
Chạy chương trình UTM1 cho điểm Q 2 :
Trang 20- Dựa vào 2 kết quả trên ta thấy 2 cát tuyến nằm giữa kinh tuyến biên và kinh
tuyến gốc (dựa vào giá trị y)
- Kinh tuyến giữa có m0 = 0.9996 (múi 60) và = 0.9999 (múi 30)
- Hai cát tuyến có m =1.
- Trường hợp múi 60, 2 cát tuyến nằm cách đều kinh tuyến trục xấp xỉ 180 km
→ kết quả phù hợp với phép chiếu UTM
m=tl_chieu1_UTM(phi,l,a,e2)
y 2 � 2.27�y 1 � 2� y 1
Trang 214 BỔ SUNG
Số liệu trên ta lấy = 00, tức hai điểm xét Q1 và Q2 nằm trên xích đạo
Ta có thể lấy bất kỳ, trường hợp này ta chỉ việc thêm vào chương trình tính hệ
số tỷ lệ chiếu vòng lặp for chạy cho các giá trị từ -800 đến 840
Sau khi chạy, ta ghi dữ liệu vào file he_so.txt gồm các hệ số: d6, d4, d2, 1-1/k0 để tiện cho việc giải phương trình tìm u → tìm l
PHẦN PHỤ LỤC: CÁC CHƯƠNG TRÌNH TRONG ĐĨA CD NỘP
CÙNG BÀI BÁO CÁO
Đĩa nộp gồm thư mục ten_mssv chứa 2 file báo cáo (1 file PDF + 1 file Word) và 3thư mục con là 3 bài tập lớn tương ứng:
- Thư mục BTL SO 1: chứa 4 file phục vụ BTL số 1.
- Thư mục BTL SO 2: gồm 2 thư mục con:
KIEM TRA CONG THUC: gồm 11 file, trong đó gồm 7 CTC nhập sốliệu sẵn theo giáo trình để kiểm tra công thức và 4 file liên quan
Trang 22 KHAO SAT CONG THUC: gồm 17 file: 4 CTC khảo sát, 7 CTC phục
vụ khảo sát các công thức, 4 file text ghi kết quả khảo sát, và 2 CTC đổi đơn vị
- Thư mục BTL SO 3: gồm 19 file: 12 CTC (6 của TM và 6 của UTM), 2 CTC tìm hệ số, 1 CTC tính độ dài KT, 1 CTC tính vĩ độ KT, 1 file text chứa kết quả tính hệ số và 2 CTC đổi đơn vị