Tải bản đầy đủ (.pdf) (30 trang)

Bài toán thiên văn

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (432.39 KB, 30 trang )

Bài toán thiên văn
K51 TOÁN TIN2
TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI
KHOA TOÁN TIN ỨNG DỤNG





TIỂU LUẬN
Đề tài: Bài toán thiên văn


Giáo viên hướng dẫn: Nguyễn Hữu Điển
Sinh viên thực hiện : Ngô Thị Hiền, Lê Thị Hiền

Lớp: toán 2-k51.



Hà Nội, tháng 11 năm 2009

NGÔ THỊ HIỀN, LÊ THỊ HIỀN

1
Bài toán thiên văn

PHẦN A: GIỚI THIỆU BÀI TOÁN
Kể từ ngày quả táo rơi xuống đầu ISAAC NEWTON (1666) con
người đã khám phá ra một lực tồn tại và ngự trị trong thiên nhiên tư ngày
khai sinh ra vũ trụ. Đó là lực hấp dẫn(đặc biệt đó là trọng lực)


Theo NEWTON thì lực này được phát biểu dưới dạng:
“giữa 2 vật có khối lượng M và m bao giờ cũng tồn tại một lực:
F=
2
r
GMm


Với G=6,67x
10
: hằng số vũ trụ ( hệ MRS)
11−
r : khoảng cách giữa 2 vật
Dựa trên công thưc đơn giản này mà NEWTOON đã làm sáng tỏ hai
giả thuyết về hệ nhật tâm ( hệ mà trong đó mặt trời là trung tâm của THÁI
DƯƠNG hệ ) của các nhà khoa học đi trước như Copernic, Galiee,
Kepler… và làm cơ sơ cho các nhà khoa học của thế hệ sau: Lomonosov,
Leverrier……đễ xây dựng lên những điều kì diệu làm nền tảng cho môn
thiên văn họ
c hiện đại.
Nhờ đó mà con người đã khám phá ra những hiện tượng xảy ra cách
đây hang ngàn năm ánh sáng, dự đoán được những sự kiện sẽ xảy ra trong
hang ngàn năm tiếp theo, cũng như hiểu thêm về những huyền bí xảy ra cách
đây bốn tỉ năm, ngày trái đất chưa được sinh ra.
Ngay từ thuở xa xưa, khi quan sát bầu trời, một trong những điều con
người quan tâm trước tiên là chúng ta đang
ở nơi nào trong vũ trụ thăm thẳm
kia, và những ngôi sao, những hành tinh chúng ta thấy được, chúng di
chuyển hay đứng yên, mà nếu di chuyển thì theo quỹ đạo nào? Các nhà khao
học đã bỏ hang chục năm vùi đàu vào các con số cực kỳ phức tạp để trả lời

cho những thắc mắc này
Ngày nay, nhờ MAPLE chúng ta chỉ mất vài giây để tìm ra câu giải
đáp. Và trong bài báo cáo này chúng em xin dùng MAPLE để mô phỏng lại
quỹ đạo chuyển động của m
ột thiên thể và tính vận tốc của phi thuyền










K51 TOÁN TIN2
NGÔ THỊ HIỀN, LÊ THỊ HIỀN

2
Bài toán thiên văn
PHẦN B: LÝ THUYẾT CƠ SỞ
I. Giới thiệu
1. Các tính năng cơ bản của Maple
Có thể nêu vắn tắt các chức năng cơ bản của Maple như sau:
• là một hệ thống các toán trên các biểu thức đại số;
• có thể thực hiệc được hầu hết các phép toán cơ bản trong chương trình toán
đại học và sau đại học;
• cung cấp các công cụ minh họa hình học thuận tiện gồ
m: vẽ đồ thị
tĩnh và động của các đường và mặt được cho bởi các hàm tùy ý

trong nhiều hệ tọa độ khác nhau;
• một ngôn ngữ lập trình đơn giản và mạnh mẽ, có khả năng tương
tác với các ngôn ngữ lập trình khác;
• cho phép trích xuất ra các định dạng khác nhau như LaTex, Word,
HTML,
• Một công cụ biên soạn giáo án và bài giảng điện tử, thích hợp với các lớp
học tương tác trực tiếp;
• mộ
t trợ giáo hữu ích cho học sinh và sinh viên trong việc tự học
2.Xây dựng và hiển thị một khung hình động
Hình ảnh là một thứ trực quan và dễ tác động vào não chúng ta nhất, vì vậy
trong giảng dạy người ta luôn cố gắng tạo ra và mô phỏng bằng hình ảnh để
hiệu quả cao tốt. Hiện nay có rất nhiều ứng dụng tạo ra những hoạt cảnh rất
sinh động và thứ vị như Flash , Java …, trong Maple cũng là mộ
t công cụ rất
thuật lợi hỗ trợ tạo ra các ảnh động, thông thương có 2 cách để tạo ảnh động
trong Maple:
9 Dùng các hàm có sẵn trong thư viện của maple: animate,
animatecurve, and animate3d có trong gói plot
9 Hoặc tự xây dựng các thủ tục bao gồm: tạo ra các dãy frame liên tiếp
sau đó xếp chồng chúng lên nhau và hiển thị đồng thời dãy liên tục
các hình ảnh.


K51 TOÁN TIN2
NGÔ THỊ HIỀN, LÊ THỊ HIỀN

3
Bài toán thiên văn
II. Một số gói thủ tục

1. student
Gói lệnh Student hỗ trợ cho việc dạy và học toán.
• Từ Maple 8, gói lệnh Student được phát triển từ gói lệnh student trước đó
nhằm hỗ trợ cho việc dạy và học toán ở đại học và phổ thông. Khai thác khả
năng của gói lệnh này sẽ đem đến cho giáo viên rất nhiều công cụ hỗ trợ mới
trong phương pháp dạy học. Có thể nói r
ằng gói lệnh này đã đề cập đến tất
cả các nội dung toán học của đại học và phổ thông, cung cấp nhiều lệnh và
thủ tục cho các phép toán và algorithm xuất hiện trong chương trình giảng
dạy, cung cấp nhiều công cụ tương tác dưới dạng Maplet và hỗ trợ việc làm
từng bước các phép toán cơ bản của vi tích phân.
• Gói lệnh Student có 3 gói lệnh con là
9 Calculus1
9 LinearAlgebra
9 Precalculus
Để nạp từng gói l
ệnh, làm như sau: with(Student[Precalculus]):
• Gói lệnh con :
Calculus1: là gói lệnh quan trọng nhất của Student. Nó chứa các công cụ hỗ
trợ từ hướng dẫn thực hiện các phép tính vi tích phân cho đến khảo sát và vẽ
đồ thị hàm; từ việc minh họa vẽ tiếp tuyến đường cong cho đến việc tính
diện tích, thể tích mặt tròn xoay,v.v
• Sử dụng các Tutor trong các gói của Student và các hỗ trợ tính toán
từng bước.
Ví dụ: Tích tích phân
> with(Student[Calculus1]):
IntTutor()
K51 TOÁN TIN2
NGÔ THỊ HIỀN, LÊ THỊ HIỀN


4
Bài toán thiên văn
Sau khi nhấn Enter, một cửa sổ Maplet hiện ra, cho phép ta nhập hàm và
các khoảng cần tính tích phân (nếu là tích phân xác định).
2. plots và plottools:
Gói plots chứa các lệnh cho phép vẽ hình trong không gian 2 và 3 chiều, Gói
plottools công cụ chứa các lệnh cho phép làm việc với các đối tượng hình
ảnh:
a. Sự vận động của đồ thị: animate3d(ham_co_tham_so,x=gt_dau gt_cuoi,
y=gt_dau gt_cuoi, tham_so =gt_dau gt_cuoi);
Ý nghĩa: hiển thị sự biến đổi, vận động của đồ thị khi tham số thay đổi trong
khoảng cho trước
b.Lệnh plots[display]()
Cú pháp:
plots[display](a,b,c ,insequence=true(false),options);
plots[display](L,insequence=true(false),options);
plots[display](A,options);
plots[display](P,options);
Các tham số:
a,b,c là cá đồ thị riêng biệt.
L: dãy (list) các đồ thị(ví dụ L:=a,b,c;)
A: mảng một chiều hoặc hai chiều của các đồ thị.
P: đồ thị dưới dạng vận động.
insequence=true(false): nó cho phép hiện từng đồ thị trong dãy(list) theo
trình tự của dãy.
options: các tính chất cơ bản của các lệnh vẽ như plot/options
c. Lệnh plottools[rotate](): quay đồ thị 2D, 3D:
Cú pháp:
K51 TOÁN TIN2
NGÔ THỊ HIỀN, LÊ THỊ HIỀN


5
Bài toán thiên văn
plottools[rotate](p,ang,pt_2d); quay một góc ang quanh điểm có tọa độ
pt_2d.
plottools[rotate](q,alpha,beta,gamma); quay đồ thị q quanh truc x, y, z với
các góc tương ứng.
plottools[rotate](q,alpha,[pt_3d1,pt_3d2]); quay đồ thị q quanh trục qua
[pt_3d1,pt_3d2]
Các tham số:
p: cấu trúc đồ thị 2D.
q: cấu trúc đồ thị 3D.
ang: góc quay.
pt_2d: tọa độ điểm làm gốc.
alpha,beta,gamma:gốc quay quanh trục x,y,z.
[pt_3d1,pt_3d2]:
d.Lệnh plottools[scale](): co giãn đồ thị
Cú pháp:
plottools[scale](p,a,b,pt_2d);
plottools[scale](p,a,b,c,pt_3d);
Các tham số:
a,b,c: là hệ số co giãn theo các trục x,y,z.
pt_2d,pt_3d: tâm co giãn.
e.Lệnh plottools[translate](p,a,b): Lệnh tịnh tiến đồ thị
.
Lệnh này tác động lệnh đồ thị p cho kết quả là tịnh tiến đồ thị này đến tọa độ
mới (a,b)
Cú pháp:
plottools[translate](p,a,b); "dịch chuyển tịnh tiến trong 2D"
plottools[translate](q,a,b,c); "dịch chuyển tịnh tiến trong 3D"

K51 TOÁN TIN2
NGÔ THỊ HIỀN, LÊ THỊ HIỀN

6
Bài toán thiên văn
Các tham số:
p,q: cấu trúc đồ thị cần dịch chuyển tịnh tiến.
a,b,c là các số thực (chính là tọa mới)

d Đưa chữ vào chuyển động.
Trong cả hình vẽ 2 và 3 chiều bằng gói plot chúng ta đều có thể đưa
tiêu đề của hình vẽ vào bằng lựa chọn options: title=”text”. Trong đó “text”
là một xâu ký tự.
Chúng ta cũng có thể chỉ định phông chữ và cỡ chữ cho tiêu đề đó bằng
options: titlefont
Mặc đị
nh thì title chỉ hiện thị trên một dòng, điều đó sẽ khó khăn nếu title
quá dài. Để title có thể trải trên 2 hay nhiều dùng, chúng ta có thể thêm lệnh
\n vào trong “text” để đưa đoạn text tiếp theo xuống dòng mới.
III. Một số lệnh
1.
Cấu Trúc Dữ Liệu Dãy
Lệnh Tạo Dãy
seq ( f (i) , i=low hight );
Khai báo này sẽ tạo ra một dãy bằng cách thay thế gía trị i trong f(i) bởi
các số nguyên liên tiếp nằm trong giới hạn tứ low đến hight .

seq ( f(x) , x=expression );
Khai báo này sẽ tạo ra một dãy mà mỗi thành phần của nó được sinh bằng
cách cho hàm f tác dụng lên một thành phần (operand ) của biểu thức

expression . Giá trị của expression thường là một tập hợp hay danh sách
nào đó , và cũng có thể là bất cứ cấu trúc dữ liệu nào khác mà lệnh op có
thể áp dụng được , chẳng hạn như tổng hay tích .

Dãy ( sequence ) là một nhóm những đối tượng của Maple được sắp xếp có
K51 TOÁN TIN2
NGÔ THỊ HIỀN, LÊ THỊ HIỀN

7
Bài toán thiên văn
thứ tự và ngăn cách nhau bởi dấu phẩy . Chẳng hạn như a,b,c là một biểu
thức dãy . Dãy có thể được gán làm giá trị cho các biến , ví dụ ta có thể gán
dãy a,b,c cho biến x bằng lệnh x:=a,b,c .

Dãy được dùng vào nhiều mục đích khác nhau trong Maple : dãy được
dùng để xây dựng tập hợp và danh sách , dãy cũng được dùng trong việc
truyền đối số cho các hàm có nhiều tham biến . Một số hàm trong Maple
cho cho kết qủa dưới dạng dãy . Chẳng hạn hàm solve() đôi khi cho một
dãy các đáp số khi bài toán có nhiều hơn một nghiệm . Khi hàm op() nhận
đối số là một biểu thức , nó cũng cho một dãy bao gồm tất cả các thành
phần trong biểu thức nhậ
p vào . Ký hiệu đặc biệt NULL thay thế cho dãy
trống ( dãy không chứa gì cả ) . Sự định giá hoàn toàn ( full evaluation )
được Maple tự động áp dụng trong qúa trình tạo ra dãy , do vậy dãy các
dãy được đơn giản thành một dãy . Chẳng hạn nếu biến s1 được gán bởi
dãy a,b,c trongd đó các biến a,b,c là các biến chứ được gán giá trị thì lệnh

s2:=s1,d sẽ gán cho biến s2 dãy a,b,c,d và s3:=s1,NULL,s1 sẽ gán cho biến
s3 dãy a,b,c,a,b,c .


Các hàm op() và nops() không được phép sử dụng cho dãy . Nguyên nhân
là do Maple dùng các dãy làm đối số truyền cho các hàm . Do đó lời gọi
hàm op(s1) được định giá thành op(a,b,c) , nhưng do hàm op chỉ nhận
nhiều nhất 2 đối số : đối số đầu là một số nguyên hay một phạm vi số ( tức
là một mảng số nguyên liên tiếp , thí dụ như 2 4 là mảng các số nguyên
trong phạm vi từ 2 đến 4 ) , còn đối số thứ 2 là một biểu thức do đó lệnh
trện s
ẽ bị Maple báo lỗi .
Hàm seq() rất thuận tiện cho việc tạo ra một dãy các phần tử phụ thuộc
tham số . Như trình bày ở phần khai báo seq() sẽ tạo ra một dãy các phần
tử theo một công thức hay một phép gán nào đó .

Thông qua sự biến đổi các chỉ số trong phạm vi các số nguyên cho một
K51 TOÁN TIN2
NGÔ THỊ HIỀN, LÊ THỊ HIỀN

8
Bài toán thiên văn
biểu thức ,ta thu được một dãy ( hay nói cách khác , trong trường hợp này
có thể xem dãy như là tập giá trị của một hàm trên một dải số nguyên nào
đó ) .

Lệnh seq() thực hiện khá giống lệnh sum() trong việc áp dụng mỗi giá trị
của chỉ mục trong phạm vi cho trước vào hàm để thu được các phần tử của
dãy . Lệnh seq() tạo ra một dãy bằng cách tác dụng hàm f lên mỗi thành
phần của danh sách cho trước x :

2. Vòng lặp for:
Vòng lặp là cấu trúc được ứng dụng rộng rãi. Trong phần này chúng ta
quan tới cách sử dụng nó để tạo ra dãy cấu trúc đồ thị để hi

ện thị như hình
ảnh trong sản xuất hoạt ảnh. Vòng lặp rất hữu ích khi cấu trúc của dãy là
đủ phức tạp mà thủ tục seq không thể biểu diễn rõ rang.Vòng lặp for cúng
cấp một cấu trúc lặp lại việc thực hiện một nhóm các câu lệnh. Một trong
các dạng của nó là số lần lặ được chỉ ra bằng một biến có quy luật như số
đếm. Cú pháp chung là:
for i from m by j to n do
statement 1;
statement 2;

statement k
end
Giả thiết rằng j là số dương và biến lặp i được khởi tạo từ m, nếu i<= n thì
các câu lệnh từ 1 tới k trong than vòng lặp được thực hiện. Sau đó i được
tăng lên bởi j và nếu i<= n thì dãy các câu lệnh trong than vòng lặp lại
được thực hiên một lần nữa. nó còn được tiến hành tới khi kiểm tra i<= n là
sai, tại điểm đó thân vòng lặp không được thực hiện nữa và phép lặp kết
K51 TOÁN TIN2
NGÔ THỊ HIỀN, LÊ THỊ HIỀN

9
Bài toán thiên văn
thúc. Bất kỳ một giá trị mà có thể được yêu cầu để xác định n chỉ được
thực hiện một lần khi bắt đầu vòng lặp, và không thay đổi sau mỗi làn lặp.
Chỉ số mặc đinh lặp là 1 j =1 và có thể bỏ qua đặc tả by j. Thực tế, m được
mặc định là 1 cũng khá nhiều, khi đó đặc tả from m cũng có thể bỏ qua
trong trường hợp này. Nếu j là một số âm, thì I s
ẽ đếm ngược từ m tới n, và
kiểm tra để cho vào vóng lặp mỗi lần i>= n.
Thông thường, bản chất của việc lặp của một vòng lặp là sử dụungj giá trị

tích lũy của cái gì đó hoặc của đối tượng. ví dụ:
Trong phương pháp tương tự, ta có thể sử dụng vòng lặp để sinh ra một
dãy.
Một dạng khác của vòng lặp for là thực hiện lặp thân vòng lặp vớ
i mỗi giá
trị của biến điều khiển trong T, T là một dãy, danh sách hay tập hợp. Bất
cứ giá trị nào có thể được yêu cầu để xác định T chỉ được thực hiên duy
nhất một lần lúc bắt đầu vòng lặp và không thay đổi trong quá trình lặp.
Cú pháp chung là:
for i in T do
statement 1;
statement 2;

statement k
end do;
2. Vòng lặp while
while condition do
statement 1;
Vòng lặp white thực hiện lặp nhóm câu lệnh miễn là điều kiện lặp còn
đúng. Cú pháp chung là:

K51 TOÁN TIN2
NGÔ THỊ HIỀN, LÊ THỊ HIỀN

10
Bài toán thiên văn
statement 2;

statement k
end do


nếu điều kiện lặp sai, thân vòng lặp sẽ không được thực hiện và vòng lặp
kết thúc.
Mapke cũng cho phép nhóm câu lênh trong thân chương trình lặp là rỗng.
Nó cúng cho phép dùng hỗn hợp lặp for… while như ví dụ dưới đây tìm số
nguyên đầu tiên có mũ 3 vượt quá 10!


























K51 TOÁN TIN2
NGÔ THỊ HIỀN, LÊ THỊ HIỀN

11
Bài toán thiên văn
PHẦN BA: ỨNG DỤNG MAPLE GIẢI BÀI TOÁN
I. QUỸ ĐẠO CỦA MỘT THIÊN THỂ TÍNH TOÁN BẰNG
HÌNH THỨC
1. Bài toán

• Xét trong hệ tọa độ cưc, hai khối M và m
• Giả sử trái đất và một vệ tinh nhân tạo cách nhâu một
khoảng r. M nằm ở gốc tọa độ
• Nếu không có lực nào tác động lên, chúng sẽ bị hút
nhau bởi trọng lực
• Giả sử vào th
ời điểm t=0, người ta tác động lên m ở tọa
độ r (Ө=0) = a một năng lượng E. Hãy xác định quỹ
đạo của m
2. Giải bài toán
• Mục đích của chúng ta là tìm một hàm r=f(Ө), với r là
bán kính véc tơ
Mm

>
r:=f(theta);

• Trọng lực là một lực hướng tâm nên quỹ đạo của m
nằm trong mặt phẳng và momen động năng б của nó là

một hằng số:
Б = mr
2
dt
d
θ
= const
'
θ
θ
=⇒
dt
d
=
r
k
m
r
=
σ


Với k được gọi là điều kiên bắn,
• Lấy đạo hàm r
'
(
)
θ
và r
''

(
)
θ
ta được =
'
θ
()()
2
θ
f
k


r
'
=
()
()()
k
f
f
d
d
2
θ
θ
θ

r
''

=
()()
()
{}()
()
()()
k
f
kf
d
d
f
kf
d
d
f






























3
2
2
2
2
2
2
1
θ
θ
θ
θ
θ
θ
θ


• Áp dụng nguyên lí căn bản động lực học ( hay định luật
II NEWTOON)
K51 TOÁN TIN2
NGÔ THỊ HIỀN, LÊ THỊ HIỀN

12
Bài toán thiên văn
F=m
γ
()
θ
''
2
mr
r
GMm
=



r
=
''
()()
2
θ
f
GM


• Ta thực hiện đổi biến
f
[]
()
θ
θ
g
1
=

• Với điều kiện đầu tại thời diểm t=0
r
() () ()
a
gaf
1
000 =⇒==

• Liên quan đến g
'
(
)
0
, trước tiên chúng ta giả sử rằng m
không có quỹ đạo có nhánh vô tân ( là parabol hay
hypebol). Trong trường hợp đó sẽ là một elip. Mà nếu
đã là elip thì m sẽ có hai vị trí gần và xa tiêu điểm M
nhất. Chúng ta giả sử một trong hai điểm này sẽ là vị trí
đầu của m. Nghĩa là
g

'
(
)
0
=
0=
θ
d
dr

• Giải phương trình vi phân trên ta được nghiệm là
S=
()
()










ak
kaGM
k
GM
2
2

2
cos
1
θ

Nhận thấy s là một dạng tổng quát của một conic

()
ue
p
cos1+
với p là bán kính vecto và e là tâm sai
Và p=a-
GM
kaGM
2

, e=
aGM
kaGM
2


• Dạng của conic sẽ tùy thuộc vào giá trị của e:
9 e < 1
⇒ elip
9 e=1 là parabol
9 e > 1 là hypebol
• Tiếp theo chúng ta đi tìm biểu thức của cơ năng E để
xem để ở giá trị nào của k và của e, đồ thị sẽ tương ứng

với đường cong nào
Ta có cơ năng bằng tổng động năng của thế năng
E = -
(
)
2
2
2
2
1
a
kaGMm −

K51 TOÁN TIN2
NGÔ THỊ HIỀN, LÊ THỊ HIỀN

13
Bài toán thiên văn
• Sau cùng chúng ta nhập các số liệu tương thích của
G,M,a,k

2
• Để vẽ đồ thị của m, để đơn giản ta chọn
G=M=a=1. Riêng về k
2
để có được đầy đủ cả ba
đường conic, sau khi thử một vài lần ta tìm ra 5 giá
trị là
[
]

6.2,4.2,2,4.1,2.1

• Ta có bảng tóm tắt các giá trị của k
theo điều
kiện bắn. Nó cho ta thấy đồ thị của m theo E và e
2
9 Khi E < 0
e < 1: elip ⇒
9 Khi E = 0
e = 1: parabol ⇒
9 Khi E > 0
e > 1; hypebol ⇒
k

2
1.2 1.4 2 2.4 2.6
E/m 2/5 3/10 0 1/5 3/10
e 1/5 2/5 1 7/5 8/5
elip elip Parbol hypbol hypebol
II. QUỸ ĐẠO CỦA THIÊN THỂ QUA TÍNH TOÁN SỐ
Ở đây chúng ta sẽ dùng tọa độ decaster, vẫn với giả thiết ban đầu
cho hai thiên thể m và M chịu tác động tương hỗ của trọng trường.
M ở gốc tọa độ. Nguyên lí cơ bản động lực học áp dụng vào hệ:

F
= -
r
r
GMm
3

=m
γ

Để đơn giản ta chọn GM=1
3
r
r
−=⇒
γ

Chiếu xuống hệ tọa độ chuẩn xoy:
x
''
=
()
3
22
yx
x
+
, y =
''
()
3
22
yx
y
+

>

> restart;
print(`KHAO SAT QUY DAO CUA THIEN THE QUA TINH TOAN
HINH THUC`);
print(` M la khoi luong cua trai dat`);
print(`m la khoi luong cua thien the`);
print(`theta la thoi diem can xet`);
print(`r la khoang cach 2 vat`);
print(`a la khoang cach 2 vat tai thoi diem theta=0:r(theta=0)=a`);
print(`k la dieu kien ban `);
print(`G la hang so vu tru G=6,67*10^(-11)`);
print(`xet trong toa do cuc`);
K51 TOÁN TIN2
NGÔ THỊ HIỀN, LÊ THỊ HIỀN

14
Bài toán thiên văn
print(`muc dich cua chung ta la tim ham r=f(theta) de tim duoc quy dao
cua thien the `);
r:=f(theta);
t1:=k/r^2;
theta^`'`=%;
r1:=diff(r,theta)*t1:
`r'`=%;print(`tinh dao ham r'(theta)`);
r2:=diff(rhs(%),theta)*t1:
`r"`=%;print(`tinh dao ham cap 2 r"(theta)`);
RFD:=r2-r*t1^2=-G*M/r^2;print(`ap dung dinh luat 2 cua newton`);
#de giai dang tren ta phai bien doi
f(theta):=1/g(theta);
simplify(RFD);
# de giai pt ta phai can cac dieu lien dau cua g va g'

# doi voi g(0) ta gia su vao thoi diem t=0,r(0)=f(0)=a =>g(0)=1/a
sol:=dsolve({%,D(g)(0)=0,g(0)=1/a},g(theta));
# de co bieu thuc cua r theo nghiem cu pt vi phan ta can dung ham eval
vi nghiem nay co sau khi khai bao r
assign(sol);
print(`dang ham can tim la:`);
f(theta):=eval(r);# ta co duoc ham can tim r:=f(theta)
print(`dua vao ket qua ma maole vua tinh toan ta thay rang f(theta) vua
tim duoc la dang tong quat cua 1 conic p/(1+ecosx)`);
print(`gia tri cua p va e trong nghiem la `);
match(f(theta)=p/(1+e*cos(theta)),theta,`Res`);
Res;
assign(Res);
#ta thay dang cua conic se tuy thuoc vao gia tri e nhung ket qua cho
thay ta phai tim E(vi a va k phu E)
m*(r1^2+(r*t1)^2)/2-G*M*m/r;
print(`co nang E cua thien the la`);
E:=simplify(eval(%));
print(`vi thuc te so lieu rat lon len bai lam ko dam bao duoc ty le` );
print(`de dam bao day du dap ung day du cac loai duong conic chuong
trinh se tu dong chon cac gia tri cua cua k^2`);
print(`chuong trinh van dam bao duoc dang quy dao cua thien the`);
T:=[1.2,1.4,2,2.4,2.6]:
print(`co nang`);
SE:=seq(convert(subs(a=1,G=1,M=1,k^2=i,E),fraction),i=T);
print(`tam sai`);
K51 TOÁN TIN2
NGÔ THỊ HIỀN, LÊ THỊ HIỀN

15

Bài toán thiên văn
Se:=seq(convert(subs(a=1,G=1,M=1,k^2=i,e),fraction),i=T);
simplify(f(theta));
seq(convert(subs(a=1,G=1,M=1,k^2=i,%),fraction),i=T);
f(theta):=map(simplify,[%]);
S:=f(theta);
with(plots,polarplot):
polarplot([S[1],S[2]],theta=-Pi Pi,title=`E<0 va e<1`);
polarplot(S[3],theta=-Pi Pi,title=`E=0 va e=1`,view=[-2 1,-4 4]);
polarplot([S[4],S[5]],theta=-Pi Pi,title=`E>0 va e<1`,view=[-2 4,-4 4]);
print(`TREN DAY LA NHUNG PHAN TICH TINH TOAN DE
CHUNG TA VIET CHUONG TRINH CHAY CU THE CHO NGUOI
SU DUNG CO THE SU DUNG VA CHUONG TRINH SE CHAY
NHANH HON `);
KHAO SAT QUY DAO CUA THIEN THE QUA TINH TOAN HINH THUC

M la khoi luong cua trai dat

m la khoi luong cua thien the

theta la thoi diem can xet

r la khoang cach 2 vat

a la khoang cach 2 vat tai thoi diem theta=0:r(theta=0)=a

k la dieu kien ban

G la hang so vu tru G=6,67*10^(-11)


xet trong toa do cuc

muc dich cua chung ta la tim ham r=f(theta) de tim duoc quy dao cua thien the

r := f
q
()

t1 :=
k
f
q
()
2

q
'
=
k
f
q
()
2

K51 TOÁN TIN2
NGÔ THỊ HIỀN, LÊ THỊ HIỀN

16
Bài toán thiên văn
r' =

d
d
q

f
q
()
æ
ç
è
ö
÷
ø
k
f
q
()
2

tinh dao ham r'(theta)

r" =
d
2
dq
2

f
q
()

æ
ç
ç
è
ö
÷
÷
ø
k
f
q
()
2
-
2
d
d
q

f
q
()
æ
ç
è
ö
÷
ø
2
k

f
q
()
3
æ
ç
ç
ç
ç
ç
è
ö
÷
÷
÷
÷
÷
ø
k
f
q
()
2

tinh dao ham cap 2 r"(theta)

RFD :=
d
2
dq

2

f
q
()
æ
ç
ç
è
ö
÷
÷
ø
k
f
q
()
2
-
2
d
d
q

f
q
()
æ
ç
è

ö
÷
ø
2
k
f
q
()
3
æ
ç
ç
ç
ç
ç
è
ö
÷
÷
÷
÷
÷
ø
k
f
q
()
2
-
k

2
f
q
()
3
= -
G M
f
q
()
2

ap dung dinh luat 2 cua newton

f
q
()
:=
1
g
q
()

-
k
2

g
q
()

2

d
2
dq
2

g
q
()
æ
ç
ç
è
ö
÷
÷
ø
+
g
q
()
æ
ç
ç
ç
è
ö
÷
÷

÷
ø
=
-G M
g
q
()
2

sol :=
g
q
()
= -
cos
q
() -k
2
+ G M a()
a k
2
+
G M
k
2

dang ham can tim la:

f
q

()
:=
1
-
cos
q
() -k
2
+ G M a()
a k
2
+
G M
k
2

K51 TOÁN TIN2
NGÔ THỊ HIỀN, LÊ THỊ HIỀN

17
Bi toỏn thiờn vn
dua vao ket qua ma maole vua tinh toan ta thay rang f(theta) vua tim duoc la dang tong quat cua 1 conic
p/(1+ecosx)

gia tri cua p va e trong nghiem la

true

e = -
-k

2
+ G M a
G M a
, p = a -
-k
2
+ G M a
G M




ý


1
2
m
sin
q
()
2

-k
2
+ G M a()
2
a
2
k

2
+
-
cos
q
() -k
2
+ G M a()
a k
2
+
G M
k
2








2

k
2











- G M m -
cos
q
() -k
2
+ G M a()
a k
2
+
G M
k
2









co nang E cua thien the la

E := -

-k
2
+ 2 G M a()m
2 a
2


vi thuc te so lieu rat lon len bai lam ko dam bao duoc ty le

de dam bao day du dap ung day du cac loai duong conic chuong trinh se tu dong chon cac gia tri cua cua k^2

chuong trinh van dam bao duoc dang quy dao cua thien the

co nang

SE := -
2
5
m, -
3
10
m, 0,
1
5
m,
3
10
m

tam sai


Se :=
1
5
,
2
5
, 1,
7
5
,
8
5

-
a k
2
-cos
q
() k
2
+ cos
q
() G M a - G M a

K51 TON TIN2
NGễ TH HIN, Lấ TH HIN

18
Bi toỏn thiờn vn

-
6
5 -
1
5

cos
q
()
- 1






, -
7
5 -
2
5

cos
q
()
- 1







, -
2
-cos
q
( ) - 1
, -
12
5 -
7
5

cos
q
()
- 1






, -
13
5 -
8
5

cos

q
()
- 1







f
q
()
:=
6
cos
q
( ) + 5
,
7
2 cos
q
( ) + 5
,
2
cos
q
( ) + 1
,
12

7 cos
q
( ) + 5
,
13
8 cos
q
( ) + 5







S :=
6
cos
q
( ) + 5
,
7
2 cos
q
( ) + 5
,
2
cos
q
( ) + 1

,
12
7 cos
q
( ) + 5
,
13
8 cos
q
( ) + 5









K51 TON TIN2
NGễ TH HIN, Lấ TH HIN

19
Bài toán thiên văn

TREN DAY LA NHUNG PHAN TICH TINH TOAN DE CHUNG TA VIET CHUONG TRINH CHAY CU THE
CHO NGUOI SU DUNG CO THE SU DUNG VA CHUONG TRINH SE CHAY NHANH HON

> restart;
quydao:=proc(m,a,k)

local M,G,f,e,E,p,n,i,c;
print(`KHOA SAT QUY DAO THIEN THE BANG TINH TOAN
HINH THUC`);
M:=6*10^24;
G:=6.67*10^(-11);
i:=a;
c:=k;
n:=m;
print(`dang cua ham f(theta)la`);
f(theta):= 1/(-cos(theta)*(-k^2+G*M*i)/(i*c^2)+G*M/c^2);
print(f(theta));
print(`day la dang cua ham conic p/1+e*cos(theta)`);
print(`co nang cua thien the la`);
E := -1/2*(-c^2+2*M*G*i)*m/i^2;print(E);
print(`gia tri cua p la:`);
p := i-(-c^2+M*G*i)/(M*G);
print(p);
print(`gia tri cua e la:`);
e := -(-c^2+M*G*i)/(M*G*i);print(e);
K51 TOÁN TIN2
NGÔ THỊ HIỀN, LÊ THỊ HIỀN

20
Bài toán thiên văn
print(`quy dao cua thien the la `);
print(`vi thuc te so lieu rat lon nen bai lam ko dam bao duoc ty le`);
if E<0 then
with(plots,polarplot):
polarplot([6/(cos(theta)+5),7/(2*cos(theta)+5)],theta=-Pi Pi,title=`E<0
va e<1`)

elif E=0 then
with(plots,polarplot):
polarplot(2/(cos(theta)+1),theta=-Pi Pi,title=`E=0 va e=1`,view=[-2 1,-
4 4])
else
with(plots,polarplot):
polarplot([12/(7*cos(theta)+5),13/(8*cos(theta)+5)],theta=-
Pi Pi,title=`E>0 va e<1`,view=[-2 4,-4 4])
fi;¶¶¶¶
end;
quydao := proc m, a, k()
local
M
,
G
,
f
,
e
,
E
,
p
,
n
,
i
,
c;
print `KHOA SAT QUY DAO THIEN THE BANG TINH TOAN HINH THUC`( ;)

M
:= 6000000000000000000000000
;
G := 6.67*1/100000000000;
i
:=
a;
c := k;
n
:=
m;
print `dang cua ham f(theta)la`();
f theta
( ) := /1( ) - /cos
theta
()*-
k
^2 +
G
*
M
*
i
()()
i
*
c
^2( ) + /
G
*

M
()
c
^2()()
;
print f theta()();
print `day la dang cua ham conic p/1+e*cos(theta)`
()
;
print `co nang cua thien the la`();
E
:= - /-
c
^2 + 2*
G
*
M
*
i
()*
m
()2*
i
^2()
;
print E();
print `gia tri cua p la:`
()
;
p := i - /-c^2 + G*M*i()M*G();

print p
()
;
print `gia tri cua e la:`();
e
:= - /-
c
^2 +
G
*
M
*
i
()
G
*
M
*
i
()
;
K51 TOÁN TIN2
NGÔ THỊ HIỀN, LÊ THỊ HIỀN

21
Bài toán thiên văn
print e
()
;
print `quy dao cua thien the la `

()
;
print `vi thuc te so lieu rat lon nen bai lam ko dam bao duoc ty le`
()
;
if
E
< 0

then
with plots
,
polarplot
()
;
polarplot /6( ) cos theta( ) + 5( ), /7( ) 2*cos theta( ) + 5()[], theta = -Pi Pi, title = `E<0 va e<1`( );
elif
E
= 0

then
with plots, polarplot();
polarplot
/2( ) cos
theta
( ) + 1(),
theta
= -
Pi


Pi
,
title
=
`E=0 va e=1`
,
view
= -2 1, -4 4[](
;
)
else
with plots
,
polarplot
()
;
polarplot(/12( ) 7*cos theta( ) + 5( ), /13( ) 8*cos theta( ) + 5()[], theta = -Pi Pi, title = `E>0 va e<1`,
view
= -2 4, -4 4[])
;
end if;
end proc
;

> quydao(3686,10^6,10^12)
Warning, inserted missing semicolon at end of statement, 6,10^6,10^12);
KHOA SAT QUY DAO THIEN THE BANG TINH TOAN HINH THUC

dang cua ham f(theta)la


1
9.995998000 10
-7
cos
q
( ) + 4.002000000 10
-10

day la dang cua ham conic p/1+e*cos(theta)

co nang cua thien the la

1.841524863 10
15

gia tri cua p la:

2.498750625 10
9

gia tri cua e la:

2497.750625

quy dao cua thien the la

K51 TOÁN TIN2
NGÔ THỊ HIỀN, LÊ THỊ HIỀN

22

Bài toán thiên văn
vi thuc te so lieu rat lon nen bai lam ko dam bao duoc ty le

Warning, the `with' command does not work inside procedures or modules


> quydao(2424,377*10^4,355*10^11)
Warning, inserted missing semicolon at end of statement, ^4,355*10^11);
KHOA SAT QUY DAO THIEN THE BANG TINH TOAN HINH THUC

dang cua ham f(theta)la

1
2.652516718 10
-7
cos
q
( ) + 3.175560405 10
-13

day la dang cua ham conic p/1+e*cos(theta)

co nang cua thien the la

1.074671138 10
17

gia tri cua p la:

3.149050475 10

12

gia tri cua e la:

K51 TOÁN TIN2
NGÔ THỊ HIỀN, LÊ THỊ HIỀN

23
Bài toán thiên văn
8.352909027 10
5

quy dao cua thien the la

vi thuc te so lieu rat lon nen bai lam ko dam bao duoc ty le

Warning, the `with' command does not work inside procedures or modules


> quydao(278947,7857222395,38028080)
Warning, inserted missing semicolon at end of statement, 395,38028080);
KHOA SAT QUY DAO THIEN THE BANG TINH TOAN HINH THUC

dang cua ham f(theta)la

1
-0.2767376741 cos
q
( ) + 0.2767376742


day la dang cua ham conic p/1+e*cos(theta)

co nang cua thien the la

-1.420789482 10
10

gia tri cua p la:

4.

K51 TOÁN TIN2
NGÔ THỊ HIỀN, LÊ THỊ HIỀN

24
Bài toán thiên văn
gia tri cua e la:

-0.9999999996

quy dao cua thien the la

vi thuc te so lieu rat lon nen bai lam ko dam bao duoc ty le

Warning, the `with' command does not work inside procedures or modules




III. KHẢO SÁT QUỸ ĐẠO CỦA MỘT PHI THUYỀN THÁM

HIỂM CUNG TRĂNG
Vận tốc thứ nhất
Giả sử một phi thuyền khối lượng m được đưa lên không gian
và đang lơ lửng ở độ cao h. Trọng lực tác dụng lên m là
-G
()
2
hr
Mm
+
, với m và h là khối lượng và bán kính trái đất
Dưới lực này nếu không có gì xảy ra thì phi thuyền sẽ rơi xuống
đất.
Bây giờ người ta tác dụng vào m một vận tốc v tùy vào cường
độ của v chúng ta có nhiều trường hợp xảy ra:
9 v < v1 thì phi thuyền sẽ bay một khoảng rồi sẽ rơi
trở lại xuống đất
K51 TOÁN TIN2
NGÔ THỊ HIỀN, LÊ THỊ HIỀN

25

Tài liệu bạn tìm kiếm đã sẵn sàng tải về

Tải bản đầy đủ ngay
×