三體問題的仿真與實(shí)現(xiàn)畢業(yè)論文_第1頁(yè)
三體問題的仿真與實(shí)現(xiàn)畢業(yè)論文_第2頁(yè)
三體問題的仿真與實(shí)現(xiàn)畢業(yè)論文_第3頁(yè)
三體問題的仿真與實(shí)現(xiàn)畢業(yè)論文_第4頁(yè)
三體問題的仿真與實(shí)現(xiàn)畢業(yè)論文_第5頁(yè)
已閱讀5頁(yè),還剩40頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、1 前 言1.1 論文的背景在太陽(yáng)系內(nèi)的天體都可以近似看做球形,并且與他們之間的距離相比,他們的的大小就可以忽略不計(jì),因而他們能被看做質(zhì)點(diǎn)。因此,可以用現(xiàn)代動(dòng)力天文學(xué)的基礎(chǔ)理論來研究這個(gè)問題。這部分的天體力學(xué)以牛頓的萬有引力理論開始。從1687年的數(shù)學(xué)原理出版之時(shí)開始,證實(shí)牛頓的理論是否能夠獨(dú)立的提供一個(gè)完整的關(guān)于天體如何在太空中運(yùn)動(dòng)的認(rèn)識(shí)是非常重要的。沿著這個(gè)思路進(jìn)行研究,我們需要根據(jù)牛頓的萬有引力定律來確定彼此吸引的n體之間的相對(duì)運(yùn)動(dòng)。 牛頓曾經(jīng)用幾何學(xué)原理解決了只存在相互引力作用的兩個(gè)球的運(yùn)動(dòng)這一兩體問題。在1710年,johannbernoulli證明,在兩體問題中,一個(gè)粒子相對(duì)于另外

2、一個(gè)粒子的運(yùn)動(dòng)可以被描述為一個(gè)圓錐曲線。在1734年,danielbernoulli因?yàn)樗P(guān)于分析處理兩體問題的研究獲得了法國(guó)科學(xué)院獎(jiǎng)。在1744年,這個(gè)問題被euler完全的解決了。同時(shí)對(duì)多維問題的研究也已經(jīng)在進(jìn)行中。在需要關(guān)于月球運(yùn)動(dòng)知識(shí)的驅(qū)動(dòng)下,研究人員研究了太陽(yáng),地球和月亮構(gòu)成的三體系統(tǒng),并且月球理論很快就成為了早期研究的問題。在經(jīng)典力學(xué),量子力學(xué)和天文學(xué)中,三體問題是一個(gè)出名的,還沒有解決的問題,它被whittaker描述為在所有動(dòng)力學(xué)問題中最出名的問題,hilbert認(rèn)為它是一個(gè)完美數(shù)學(xué)問題的標(biāo)準(zhǔn)。天體物理中的三體問題可以簡(jiǎn)單的被描述為:三個(gè)天體在他們之間的相互之間的萬有引力作用下

3、,給出各個(gè)天體的初始條件,包括三個(gè)天體的質(zhì)量、初始位置和初始速度,確定它們的后續(xù)運(yùn)動(dòng),包括位置和速度隨時(shí)間的變化。像許多數(shù)學(xué)問題一樣,簡(jiǎn)單的問題聲明后面往往覆蓋了問題解決方法的復(fù)雜性。雖然一體和兩體的問題能夠以封閉的形式通過初等函數(shù)方式來解決,但是三體問題是一個(gè)復(fù)雜的線性問題,沒有相似的解決方法存在。探究三體問題的方式大抵能夠分為三類:第一類是分析方法,其基本原理是把天體的坐標(biāo)和速度展開為時(shí)間或其它小參數(shù)的級(jí)數(shù)形式的近似解析表達(dá)式,討論天體的坐標(biāo)和軌道要素隨時(shí)間的變化規(guī)律;第二類是定性方法,選用微分方程的定性理論來研究很長(zhǎng)一段時(shí)間內(nèi)三體運(yùn)動(dòng)的宏觀運(yùn)動(dòng)規(guī)律和全局性質(zhì);第三類是數(shù)值方法,這是直接依

4、據(jù)微分方程的計(jì)算方式得出天體在特定時(shí)刻的詳細(xì)位置和速度。這三類方法各有利弊。因?yàn)榍蠼馊w問題的困難在于它的不確定性和不可預(yù)測(cè)性,可以考慮計(jì)算機(jī)在迭代計(jì)算中的優(yōu)勢(shì),選擇第三類方法,基于受力分析和經(jīng)典力學(xué),求其數(shù)值解。1.2 論文相關(guān)的國(guó)內(nèi)外動(dòng)態(tài)及研究?jī)r(jià)值從三體問題被提出的300年間,人們只發(fā)現(xiàn)3族周期性特解。在十八和十九世紀(jì),幾乎所有著名的數(shù)學(xué)家們都曾試圖解決這個(gè)問題,但是問題的進(jìn)展不大。截止到目前為止,三體問題特解的族數(shù)被擴(kuò)充到了16族。與此同時(shí),在失敗的嘗試中,微分方程的理論不斷地發(fā)展成為數(shù)學(xué)的一門更成熟的分支。作為一個(gè)能被簡(jiǎn)單描述的問題,除了其內(nèi)在的吸引力,三體問題與太陽(yáng)系統(tǒng)穩(wěn)定性有著密切

5、的聯(lián)系,這使得對(duì)三體系統(tǒng)的研究成為潛在的解決太陽(yáng)系統(tǒng)穩(wěn)定性問題的解決方案。多年來,人們對(duì)這個(gè)問題進(jìn)行了大量的研究,從1750年到20世紀(jì)初,關(guān)于這個(gè)問題有800多篇援引了許多杰出的數(shù)學(xué)家和天文學(xué)家成果的論文發(fā)表。因此,除了解決一個(gè)重要的難題,更重要的是在解決問題的過程當(dāng)中產(chǎn)生了好幾種嶄新的數(shù)學(xué)思想。這些數(shù)學(xué)理論的進(jìn)步已經(jīng)深入到不同的領(lǐng)域,包括近代動(dòng)力學(xué)問題的理論。三體問題的研究加深了人們對(duì)天體運(yùn)動(dòng)的認(rèn)識(shí),激勵(lì)了天體力學(xué)和數(shù)學(xué)物理的進(jìn)一步成長(zhǎng),尤其是對(duì)人們研究太空火箭軌道和雙星演變很有幫助。1.3 本文的研究?jī)?nèi)容本文決定通過計(jì)算機(jī)的數(shù)值運(yùn)算,利用經(jīng)典力學(xué)中的牛頓三大定律和萬有引力定律迭代求解天體

6、運(yùn)動(dòng)中的三體問題。同時(shí),本文利用matlab的gui功能,設(shè)計(jì)出簡(jiǎn)潔友好的界面,并且通過動(dòng)畫的方法將天體的位置和速度在空間直角坐標(biāo)系上實(shí)時(shí)的表示出來,作出了天體物理實(shí)驗(yàn)用計(jì)算機(jī)模擬來進(jìn)行的嘗試。1.4 本文的創(chuàng)新之處首先:通過理論與實(shí)踐相結(jié)合的方式生動(dòng)的展示了原本靜態(tài)的文字概念。其次:通過matlab的gui界面,可以讓用戶在不必了解程序內(nèi)部實(shí)現(xiàn)的情況下,給出三個(gè)天體的初始條件,包括三個(gè)天體的質(zhì)量、初始位置和初始速度,就可以知道隨著時(shí)間的推移其宏觀的位置和速度以及運(yùn)動(dòng)的宏觀規(guī)律和全局性質(zhì)。同時(shí),還可以在不同的觀察角度了解它們的運(yùn)動(dòng)過程。2 模型假設(shè)1) 忽略相對(duì)論效應(yīng)的影響;2) 不考慮其它天

7、體對(duì)系統(tǒng)的作用,所處宇宙空間是各向同性的;3) 忽略宇宙空間粒子、潮汐力的影響;4) 假設(shè)運(yùn)動(dòng)過程中沒有能量損失;5) 將天體視為質(zhì)點(diǎn),不考慮它們?cè)谶\(yùn)動(dòng)的過程中彼此之間的相互碰撞;3 模型建立3.1 具體時(shí)刻的狀態(tài)因?yàn)槿齻€(gè)天體的位置和速度是隨時(shí)間變化的,現(xiàn)在取很短的時(shí)間間隔t,假定這段時(shí)間間隔內(nèi)系統(tǒng)參數(shù)沒有變化,則可以考慮從系統(tǒng)每一時(shí)刻的狀態(tài)計(jì)算后下一時(shí)刻的狀態(tài)。在每一時(shí)刻,每一個(gè)天體都有各自的位置與速度,三個(gè)天體總共有六個(gè)未知量,每?jī)蓚€(gè)天體之間應(yīng)用萬有引力定律和牛頓第二定律可以列出兩個(gè)方程,總共六個(gè)方程,這六個(gè)方程組成的方程組足可以求解這六個(gè)未知量。如果分割的時(shí)間間隔無限小,則可以求出精確解

8、,但是在現(xiàn)實(shí)中這是沒法完成的。因此,我們可以將時(shí)間分成許多小部分,用計(jì)算機(jī)迭代求解,得到隨時(shí)間變化的系統(tǒng)的各個(gè)參量和系統(tǒng)的末狀態(tài)。3.2 受力分析如圖3-1所示,每個(gè)天體都受到其他兩個(gè)天體的萬有引力作用。為方便計(jì)算,將天體1對(duì)天體2的作用,天體2對(duì)天體3的作用,天體3對(duì)天體1的作用分別按直角坐標(biāo)系分解為f12x,f12y,f12z,f23x,f23y,f23z,f31x,f31y,f31z。由于f12=f21,f23=f32,f31=f13,可以用式子右邊等效表示左邊。在萬有引力f12、f23、f31作用下,天體1、天體2、天體3的加速度分別為-f12+f31m1,f12-f23m2,f23-

9、f31m3。圖3-1 三體問題受力分析3.3 運(yùn)動(dòng)規(guī)律及迭代方程一、 萬有引力定律f12=gm1m2x1-x22+y1-y22+z1-z22f23=gm2m3x2-x32+y2-y32+z2-z32f31=gm3m1x3-x12+y3-y12+z3-z12二、 牛頓第二定律a1=-f12+f31m1a2=f12-f23m2a3=f23-f31m3三、 速度迭代p1=p1+a1tp2=p2+a2tp3=p3+a3t四、 位置迭代d1=d1+p1t+12a1t2d2=d2+p2t+12a2t2d3=d3+p3t+12a3t2 求解時(shí)還須將加速度a,速度迭代方程,位置迭代方程按直角坐標(biāo)系分解如附錄1

10、。 用計(jì)算機(jī)編程求解,即可得任意時(shí)刻三個(gè)天體的位置和速度。4 模型求解與系統(tǒng)仿真4.1 編碼與運(yùn)行(1)系統(tǒng)所需的軟、硬件 系統(tǒng)所用的硬件是普通的pc機(jī)。本程序的編碼和界面設(shè)計(jì)部分用matlab進(jìn)行開發(fā)。(2)三體問題的編碼1o三個(gè)天體各個(gè)參數(shù)的初始化部分。函數(shù)threebodyproblem_openingfcn(hobject, eventdata, handles, varargin)是該程序的啟動(dòng)函數(shù)。初始化各個(gè)天體參數(shù)的部分已在程序代碼中標(biāo)注:function threebodyproblem_openingfcn(hobject, eventdata, handles, varar

11、gin)threebodyproblem的創(chuàng)建函數(shù),此函數(shù)沒有返回值,詳情請(qǐng)參見outputfcnhobject 圖形句柄eventdata 保留在matlab里面的參數(shù),它的作用是方便后面的程序使用handles gui界面的句柄,可以通過它獲取整個(gè)界面的信息varargin threebodyproblem 的啟動(dòng)參數(shù)(詳情請(qǐng)參見 varargin)初始化第一個(gè)天體的質(zhì)量,位置和速度 handles.firstbodymdata = 0;handles.firstbodyxdata = 0;handles.firstbodyydata = 0;handles.firstbodyzdata

12、= 0;handles.firstbodyudata = 0;handles.firstbodyvdata = 0;handles.firstbodywdata = 0;初始化第二個(gè)天體的質(zhì)量,位置和速度 handles.secondbodymdata = 0;handles.secondbodyxdata = 0;handles.secondbodyydata = 0;handles.secondbodyzdata = 0;handles.secondbodyudata = 0;handles.secondbodyvdata = 0;handles.secondbodywdata = 0;初

13、始化第三個(gè)天體的質(zhì)量,位置和速度 handles.thirdbodymdata = 0;handles.thirdbodyxdata = 0;handles.thirdbodyydata = 0;handles.thirdbodyzdata = 0;handles.thirdbodyudata = 0;handles.thirdbodyvdata = 0;handles.thirdbodywdata = 0;handles.output = hobject;此前指令更改了handles,必須靠guidata指令才能把更新了的handles加以保存,以供后續(xù)使用guidata(hobject,

14、handles);默認(rèn)值按鈕的回調(diào)函數(shù),用于設(shè)置三個(gè)天體的默認(rèn)參數(shù)值,并且將設(shè)置的默認(rèn)參數(shù)值顯示到圖形界面上:function default_callback(hobject, eventdata, handles)hobject default控件的句柄(詳情請(qǐng)參見 gcbo)eventdata 保留在matlab里面的參數(shù),它的作用是方便后面的程序使用handles gui界面的句柄,可以通過它獲取整個(gè)界面的信息(詳情請(qǐng)參見guidata)在圖形界面的第一個(gè)天體的文本輸入框內(nèi)顯示默認(rèn)的輸入值,此輸入值為太陽(yáng)的參數(shù)。set(handles.firstbodym,string,19.89);

15、set(handles.firstbodyx,string,0);set(handles.firstbodyy,string,0);set(handles.firstbodyz,string,0);set(handles.firstbodyu,string,0);set(handles.firstbodyv,string,0);set(handles.firstbodyw,string,0);將太陽(yáng)的參數(shù)保存為“gui數(shù)據(jù)”形式,以便共享handles.firstbodymdata = 19.89*1029;handles.firstbodyxdata = 0;handles.firstbod

16、yydata = 0;handles.firstbodyzdata = 0;handles.firstbodyudata = 0;handles.firstbodyvdata = 0;handles.firstbodywdata = 0;在圖形界面的第二個(gè)天體的文本輸入框內(nèi)顯示默認(rèn)的輸入值,此輸入值為地球的參數(shù)。set(handles.secondbodym,string,59.742);set(handles.secondbodyx,string,14.960);set(handles.secondbodyy,string,0);set(handles.secondbodyz,string,

17、0);set(handles.secondbodyu,string,0);set(handles.secondbodyv,string,29.78);set(handles.secondbodyw,string,0);將地球的參數(shù)保存為“gui數(shù)據(jù)”形式,以便共享handles.secondbodymdata = 59.742*1023;handles.secondbodyxdata = 14.960*1010;handles.secondbodyydata = 0;handles.secondbodyzdata = 0;handles.secondbodyudata = 0;handles.

18、secondbodyvdata = 29.78*103;handles.secondbodywdata = 0;在圖形界面的第三個(gè)天體的文本輸入框內(nèi)顯示默認(rèn)的輸入值,此輸入值為月球的參數(shù)。set(handles.thirdbodym,string,0.7349);set(handles.thirdbodyx,string,14.9984);set(handles.thirdbodyy,string,0);set(handles.thirdbodyz,string,0);set(handles.thirdbodyu,string,0);set(handles.thirdbodyv,string,

19、33.7953);set(handles.thirdbodyw,string,0); 將月球的參數(shù)保存為“gui數(shù)據(jù)”形式,以便共享handles.thirdbodymdata = 0.7349*1023;handles.thirdbodyxdata = 14.9984*1010;handles.thirdbodyydata = 0;handles.thirdbodyzdata = 0;handles.thirdbodyudata = 0;handles.thirdbodyvdata = 33.7953*103;handles.thirdbodywdata = 0;此前指令更改了handles

20、,必須靠guidata指令才能把更新了的handles加以保存,以供后續(xù)使用guidata(hobject,handles);2o從文本輸入框中按順序輸入三個(gè)天體的各個(gè)參數(shù)。第一個(gè)天體的各個(gè)文本輸入框的回調(diào)函數(shù),用于獲得文本輸入框內(nèi)輸入的值,代碼的具體解釋已在程序中給出:function firstbodyx_callback(hobject, eventdata, handles)hobject firstbodyx 控件的句柄(詳情請(qǐng)參見 gcbo)eventdata 保留在matlab里面的參數(shù),它的作用是方便后面的程序使用handles gui界面的句柄,可以通過它獲取整個(gè)界面的信息(

21、詳情請(qǐng)參見guidata)獲得當(dāng)前輸入框的輸入字符tempdata=get(hobject,string);將字符轉(zhuǎn)換為雙精度數(shù)handles.firstbodyxdata=str2double(tempdata)*1010;此前指令更改了handles,必須靠guidata指令才能把更新了的handles加以保存,以供后續(xù)使用guidata(hobject,handles);設(shè)置完所有屬性后,在對(duì)象的創(chuàng)建過程中執(zhí)行以下代碼function firstbodyx_createfcn(hobject, eventdata, handles)hobject firstbodyx 控件的句柄(詳情請(qǐng)

22、參見 gcbo)eventdata 保留在matlab里面的參數(shù),它的作用是方便后面的程序使用handles gui界面的句柄,它會(huì)在調(diào)用完所有的createfcn函數(shù)后創(chuàng)建提示: 可編輯文本框控件通常在窗口上有一個(gè)白色的背景,更多詳情請(qǐng)參見ispc 和computer.if ispc & isequal(get(hobject,backgroundcolor), get(0,defaultuicontrolbackgroundcolor) set(hobject,backgroundcolor,white);endfunction firstbodyy_callback(hobject, e

23、ventdata, handles)hobject firstbodyy控件的句柄(詳情請(qǐng)參見 gcbo)eventdata 保留在matlab里面的參數(shù),它的作用是方便后面的程序使用handles gui界面的句柄,可以通過它獲取整個(gè)界面的信息(詳情請(qǐng)參見guidata)獲得當(dāng)前輸入框的輸入字符tempdata=get(hobject,string);將字符轉(zhuǎn)換為雙精度數(shù)handles.firstbodyydata=str2double(tempdata)*1010;此前指令更改了handles,必須靠guidata指令才能把更新了的handles加以保存,以供后續(xù)使用guidata(hob

24、ject,handles);設(shè)置完所有屬性后,在對(duì)象的創(chuàng)建過程中執(zhí)行以下代碼function firstbodyy_createfcn(hobject, eventdata, handles)hobject firstbodyy 控件的句柄(詳情請(qǐng)參見 gcbo)eventdata 保留在matlab里面的參數(shù),它的作用是方便后面的程序使用handles gui界面的句柄,它會(huì)在調(diào)用完所有的createfcn函數(shù)后創(chuàng)建提示: 可編輯文本框控件通常在窗口上有一個(gè)白色的背景,更多詳情請(qǐng)參見ispc和computer.if ispc & isequal(get(hobject,backgroundc

25、olor), get(0,defaultuicontrolbackgroundcolor) set(hobject,backgroundcolor,white);endfunction firstbodyz_callback(hobject, eventdata, handles)hobject firstbodyz控件的句柄(詳情請(qǐng)參見 gcbo)eventdata 保留在matlab里面的參數(shù),它的作用是方便后面的程序使用handles gui界面的句柄,可以通過它獲取整個(gè)界面的信息(詳情請(qǐng)參見guidata)獲得當(dāng)前輸入框的輸入字符tempdata=get(hobject,string)

26、;將字符轉(zhuǎn)換為雙精度數(shù)handles.firstbodyzdata=str2double(tempdata)*1010;此前指令更改了handles,必須靠guidata指令才能把更新了的handles加以保存,以供后續(xù)使用guidata(hobject,handles);設(shè)置完所有屬性后,在對(duì)象的創(chuàng)建過程中執(zhí)行以下代碼function firstbodyz_createfcn(hobject, eventdata, handles)hobject firstbodyz 控件的句柄(詳情請(qǐng)參見 gcbo)eventdata 保留在matlab里面的參數(shù),它的作用是方便后面的程序使用handle

27、s gui界面的句柄,它會(huì)在調(diào)用完所有的createfcn函數(shù)后創(chuàng)建提示: 可編輯文本框控件通常在窗口上有一個(gè)白色的背景,更多詳情請(qǐng)參見ispc 和computer.if ispc & isequal(get(hobject,backgroundcolor), get(0,defaultuicontrolbackgroundcolor) set(hobject,backgroundcolor,white);endfunction firstbodyu_callback(hobject, eventdata, handles)hobject 控件的句柄(詳情請(qǐng)參見 gcbo)firstbodyu

28、eventdata 保留在matlab里面的參數(shù),它的作用是方便后面的程序使用handles gui界面的句柄,可以通過它獲取整個(gè)界面的信息(詳情請(qǐng)參見guidata)獲得當(dāng)前輸入框的輸入字符tempdata=get(hobject,string);將字符轉(zhuǎn)換為雙精度數(shù)handles.firstbodyudata=str2double(tempdata)*103;此前指令更改了handles,必須靠guidata指令才能把更新了的handles加以保存,以供后續(xù)使用guidata(hobject,handles);設(shè)置完所有屬性后,在對(duì)象的創(chuàng)建過程中執(zhí)行以下代碼function firstbo

29、dyu_createfcn(hobject, eventdata, handles)設(shè)置完所有屬性后,在對(duì)象的創(chuàng)建過程中執(zhí)行以下代碼function firstbodyx_createfcn(hobject, eventdata, handles)hobject firstbodyu 控件的句柄(詳情請(qǐng)參見 gcbo)eventdata 保留在matlab里面的參數(shù),它的作用是方便后面的程序使用handles gui界面的句柄,它會(huì)在調(diào)用完所有的createfcn函數(shù)后創(chuàng)建提示: 可編輯文本框控件通常在窗口上有一個(gè)白色的背景,更多詳情請(qǐng)參見ispc 和computer.if ispc & is

30、equal(get(hobject,backgroundcolor), get(0,defaultuicontrolbackgroundcolor) set(hobject,backgroundcolor,white);endfunction firstbodyv_callback(hobject, eventdata, handles)hobject firstbodyv控件的句柄(詳情請(qǐng)參見 gcbo)eventdata 保留在matlab里面的參數(shù),它的作用是方便后面的程序使用handles gui界面的句柄,可以通過它獲取整個(gè)界面的信息(詳情請(qǐng)參見guidata)獲得當(dāng)前輸入框的輸入字

31、符tempdata=get(hobject,string);將字符轉(zhuǎn)換為雙精度數(shù)handles.firstbodyvdata=str2double(tempdata)*103;此前指令更改了handles,必須靠guidata指令才能把更新了的handles加以保存,以供后續(xù)使用guidata(hobject,handles);設(shè)置完所有屬性后,在對(duì)象的創(chuàng)建過程中執(zhí)行以下代碼function firstbodyv_createfcn(hobject, eventdata, handles)hobject firstbodyv 控件的句柄(詳情請(qǐng)參見 gcbo)eventdata 保留在matl

32、ab里面的參數(shù),它的作用是方便后面的程序使用handles gui界面的句柄,它會(huì)在調(diào)用完所有的createfcn函數(shù)后創(chuàng)建提示: 可編輯文本框控件通常在窗口上有一個(gè)白色的背景,更多詳情請(qǐng)參見ispc 和computer.if ispc & isequal(get(hobject,backgroundcolor), get(0,defaultuicontrolbackgroundcolor) set(hobject,backgroundcolor,white);endfunction firstbodyw_callback(hobject, eventdata, handles)hobject

33、 firstbodyw控件的句柄(詳情請(qǐng)參見 gcbo)eventdata 保留在matlab里面的參數(shù),它的作用是方便后面的程序使用handles gui界面的句柄,可以通過它獲取整個(gè)界面的信息(詳情請(qǐng)參見guidata)獲得當(dāng)前輸入框的輸入字符tempdata=get(hobject,string);將字符轉(zhuǎn)換為雙精度數(shù)handles.firstbodywdata=str2double(tempdata)*103;此前指令更改了handles,必須靠guidata指令才能把更新了的handles加以保存,以供后續(xù)使用guidata(hobject,handles);設(shè)置完所有屬性后,在對(duì)象

34、的創(chuàng)建過程中執(zhí)行以下代碼function firstbodyw_createfcn(hobject, eventdata, handles)hobject firstbodyw 控件的句柄(詳情請(qǐng)參見 gcbo)eventdata 保留在matlab里面的參數(shù),它的作用是方便后面的程序使用handles gui界面的句柄,它會(huì)在調(diào)用完所有的createfcn函數(shù)后創(chuàng)建提示: 可編輯文本框控件通常在窗口上有一個(gè)白色的背景,更多詳情請(qǐng)參見ispc 和computer.if ispc & isequal(get(hobject,backgroundcolor), get(0,defaultuicon

35、trolbackgroundcolor) set(hobject,backgroundcolor,white);endfunction firstbodym_callback(hobject, eventdata, handles)hobject firstbodym控件的句柄(詳情請(qǐng)參見 gcbo) eventdata 保留在matlab里面的參數(shù),它的作用是方便后面的程序使用handles gui界面的句柄,可以通過它獲取整個(gè)界面的信息(詳情請(qǐng)參見guidata)獲得當(dāng)前輸入框的輸入字符tempdata=get(hobject,string);將字符轉(zhuǎn)換為雙精度數(shù)handles.first

36、bodymdata=str2double(tempdata)*1029;此前指令更改了handles,必須靠guidata指令才能把更新了的handles加以保存,以供后續(xù)使用guidata(hobject,handles);設(shè)置完所有屬性后,在對(duì)象的創(chuàng)建過程中執(zhí)行以下代碼function firstbodym_createfcn(hobject, eventdata, handles)hobject firstbodym 控件的句柄(詳情請(qǐng)參見 gcbo)eventdata 保留在matlab里面的參數(shù),它的作用是方便后面的程序使用handles gui界面的句柄,它會(huì)在調(diào)用完所有的crea

37、tefcn函數(shù)后創(chuàng)建提示: 可編輯文本框控件通常在窗口上有一個(gè)白色的背景,更多詳情請(qǐng)參見ispc和 computer.if ispc & isequal(get(hobject,backgroundcolor), get(0,defaultuicontrolbackgroundcolor) set(hobject,backgroundcolor,white);end第二個(gè)天體文本輸入框的回調(diào)函數(shù),用于獲得文本輸入框內(nèi)輸入的值,代碼的具體解釋已在程序中給出:function secondbodyx_callback(hobject, eventdata, handles)hobject seco

38、ndbodyx控件的句柄(詳情請(qǐng)參見 gcbo)eventdata 保留在matlab里面的參數(shù),它的作用是方便后面的程序使用handles gui界面的句柄,可以通過它獲取整個(gè)界面的信息(詳情請(qǐng)參見guidata)獲得當(dāng)前輸入框的輸入字符tempdata=get(hobject,string);將字符轉(zhuǎn)換為雙精度數(shù)handles.secondbodyxdata=str2double(tempdata)*1010;此前指令更改了handles,必須靠guidata指令才能把更新了的handles加以保存,以供后續(xù)使用guidata(hobject,handles);設(shè)置完所有屬性后,在對(duì)象的創(chuàng)

39、建過程中執(zhí)行以下代碼function secondbodyx_createfcn(hobject, eventdata, handles)hobject secondbodyx控件的句柄(詳情請(qǐng)參見 gcbo)eventdata 保留在matlab里面的參數(shù),它的作用是方便后面的程序使用handles gui界面的句柄,它會(huì)在調(diào)用完所有的createfcn函數(shù)后創(chuàng)建提示: 可編輯文本框控件通常在窗口上有一個(gè)白色的背景,更多詳情請(qǐng)參見ispc和computer.if ispc & isequal(get(hobject,backgroundcolor), get(0,defaultuicontr

40、olbackgroundcolor) set(hobject,backgroundcolor,white);endfunction secondbodyy_callback(hobject, eventdata, handles)hobject secondbodyy控件的句柄(詳情請(qǐng)參見 gcbo)eventdata 保留在matlab里面的參數(shù),它的作用是方便后面的程序使用handles gui界面的句柄,可以通過它獲取整個(gè)界面的信息(詳情請(qǐng)參見guidata)獲得當(dāng)前輸入框的輸入字符tempdata=get(hobject,string);將字符轉(zhuǎn)換為雙精度數(shù)handles.second

41、bodyydata=str2double(tempdata)*1010;此前指令更改了handles,必須靠guidata指令才能把更新了的handles加以保存,以供后續(xù)使用guidata(hobject,handles);設(shè)置完所有屬性后,在對(duì)象的創(chuàng)建過程中執(zhí)行以下代碼function secondbodyy_createfcn(hobject, eventdata, handles)hobject secondbodyy控件的句柄(詳情請(qǐng)參見 gcbo)eventdata 保留在matlab里面的參數(shù),它的作用是方便后面的程序使用handles gui界面的句柄,它會(huì)在調(diào)用完所有的cre

42、atefcn函數(shù)后創(chuàng)建提示: 可編輯文本框控件通常在窗口上有一個(gè)白色的背景,更多詳情請(qǐng)參見ispc 和 computer.if ispc & isequal(get(hobject,backgroundcolor), get(0,defaultuicontrolbackgroundcolor) set(hobject,backgroundcolor,white);endfunction secondbodyu_callback(hobject, eventdata, handles)hobject secondbodyu控件的句柄(詳情請(qǐng)參見 gcbo)eventdata 保留在matlab里

43、面的參數(shù),它的作用是方便后面的程序使用handles gui界面的句柄,可以通過它獲取整個(gè)界面的信息(詳情請(qǐng)參見guidata)獲得當(dāng)前輸入框的輸入字符tempdata=get(hobject,string);將字符轉(zhuǎn)換為雙精度數(shù)handles.secondbodyudata=str2double(tempdata)*103;此前指令更改了handles,必須靠guidata指令才能把更新了的handles加以保存,以供后續(xù)使用guidata(hobject,handles);設(shè)置完所有屬性后,在對(duì)象的創(chuàng)建過程中執(zhí)行以下代碼function secondbodyu_createfcn(hobj

44、ect, eventdata, handles)hobject secondbodyu控件的句柄(詳情請(qǐng)參見 gcbo)eventdata 保留在matlab里面的參數(shù),它的作用是方便后面的程序使用handles gui界面的句柄,它會(huì)在調(diào)用完所有的createfcn函數(shù)后創(chuàng)建提示: 可編輯文本框控件通常在窗口上有一個(gè)白色的背景,更多詳情請(qǐng)參見ispc 和 computer.if ispc & isequal(get(hobject,backgroundcolor), get(0,defaultuicontrolbackgroundcolor) set(hobject,backgroundco

45、lor,white);endfunction secondbodyv_callback(hobject, eventdata, handles)hobject secondbodyv控件的句柄(詳情請(qǐng)參見 gcbo)eventdata 保留在matlab里面的參數(shù),它的作用是方便后面的程序使用handles gui界面的句柄,可以通過它獲取整個(gè)界面的信息(詳情請(qǐng)參見guidata)獲得當(dāng)前輸入框的輸入字符tempdata=get(hobject,string);將字符轉(zhuǎn)換為雙精度數(shù)handles.secondbodyvdata=str2double(tempdata)*103;此前指令更改了h

46、andles,必須靠guidata指令才能把更新了的handles加以保存,以供后續(xù)使用guidata(hobject,handles);設(shè)置完所有屬性后,在對(duì)象的創(chuàng)建過程中執(zhí)行以下代碼function secondbodyv_createfcn(hobject, eventdata, handles)hobject secondbodyv控件的句柄(詳情請(qǐng)參見 gcbo)eventdata 保留在matlab里面的參數(shù),它的作用是方便后面的程序使用handles gui界面的句柄,它會(huì)在調(diào)用完所有的createfcn函數(shù)后創(chuàng)建提示: 可編輯文本框控件通常在窗口上有一個(gè)白色的背景,更多詳情請(qǐng)參

47、見ispc 和 computer.if ispc & isequal(get(hobject,backgroundcolor), get(0,defaultuicontrolbackgroundcolor) set(hobject,backgroundcolor,white);endfunction secondbodyz_callback(hobject, eventdata, handles)hobject secondbodyz 控件的句柄(詳情請(qǐng)參見 gcbo)eventdata 保留在matlab里面的參數(shù),它的作用是方便后面的程序使用handles gui界面的句柄,可以通過它獲取

48、整個(gè)界面的信息(詳情請(qǐng)參見guidata)獲得當(dāng)前輸入框的輸入字符tempdata=get(hobject,string);將字符轉(zhuǎn)換為雙精度數(shù)handles.secondbodyzdata=str2double(tempdata)*1010;此前指令更改了handles,必須靠guidata指令才能把更新了的handles加以保存,以供后續(xù)使用guidata(hobject,handles);設(shè)置完所有屬性后,在對(duì)象的創(chuàng)建過程中執(zhí)行以下代碼function secondbodyz_createfcn(hobject, eventdata, handles)hobject secondbody

49、z控件的句柄(詳情請(qǐng)參見 gcbo)eventdata 保留在matlab里面的參數(shù),它的作用是方便后面的程序使用handles gui界面的句柄,它會(huì)在調(diào)用完所有的createfcn函數(shù)后創(chuàng)建提示: 可編輯文本框控件通常在窗口上有一個(gè)白色的背景,更多詳情請(qǐng)參見ispc 和 computer.if ispc & isequal(get(hobject,backgroundcolor), get(0,defaultuicontrolbackgroundcolor) set(hobject,backgroundcolor,white);endfunction secondbodyw_callbac

50、k(hobject, eventdata, handles)hobject secondbodyw控件的句柄(詳情請(qǐng)參見 gcbo)eventdata 保留在matlab里面的參數(shù),它的作用是方便后面的程序使用handles gui界面的句柄,可以通過它獲取整個(gè)界面的信息(詳情請(qǐng)參見guidata)獲得當(dāng)前輸入框的輸入字符tempdata=get(hobject,string);將字符轉(zhuǎn)換為雙精度數(shù)handles.secondbodywdata=str2double(tempdata)*103;此前指令更改了handles,必須靠guidata指令才能把更新了的handles加以保存,以供后續(xù)

51、使用guidata(hobject,handles);設(shè)置完所有屬性后,在對(duì)象的創(chuàng)建過程中執(zhí)行以下代碼function secondbodyw_createfcn(hobject, eventdata, handles)hobject secondbodyw控件的句柄(詳情請(qǐng)參見 gcbo)eventdata 保留在matlab里面的參數(shù),它的作用是方便后面的程序使用handles gui界面的句柄,它會(huì)在調(diào)用完所有的createfcn函數(shù)后創(chuàng)建提示: 可編輯文本框控件通常在窗口上有一個(gè)白色的背景,更多詳情請(qǐng)參見ispc 和 computer.if ispc & isequal(get(hob

52、ject,backgroundcolor), get(0,defaultuicontrolbackgroundcolor) set(hobject,backgroundcolor,white);endfunction secondbodym_callback(hobject, eventdata, handles)hobject secondbodym控件的句柄(詳情請(qǐng)參見 gcbo)eventdata 保留在matlab里面的參數(shù),它的作用是方便后面的程序使用handles gui界面的句柄,可以通過它獲取整個(gè)界面的信息(詳情請(qǐng)參見guidata)獲得當(dāng)前輸入框的輸入字符tempdata=g

53、et(hobject,string);將字符轉(zhuǎn)換為雙精度數(shù)handles.secondbodymdata=str2double(tempdata)*1023;此前指令更改了handles,必須靠guidata指令才能把更新了的handles加以保存,以供后續(xù)使用guidata(hobject,handles);設(shè)置完所有屬性后,在對(duì)象的創(chuàng)建過程中執(zhí)行以下代碼function secondbodym_createfcn(hobject, eventdata, handles)hobject secondbodym控件的句柄(詳情請(qǐng)參見 gcbo)eventdata 保留在matlab里面的參數(shù),

54、它的作用是方便后面的程序使用handles gui界面的句柄,它會(huì)在調(diào)用完所有的createfcn函數(shù)后創(chuàng)建提示: 可編輯文本框控件通常在窗口上有一個(gè)白色的背景,更多詳情請(qǐng)參見ispc 和 computer.if ispc & isequal(get(hobject,backgroundcolor), get(0,defaultuicontrolbackgroundcolor) set(hobject,backgroundcolor,white);end第三個(gè)天體文本輸入框的回調(diào)函數(shù),用于獲得文本輸入框內(nèi)輸入的值,代碼的具體解釋已在程序中給出:function thirdbodyx_callback(hobject, eventdata, handles)hobject thirdbodyx控件的句柄(詳情請(qǐng)參見 gcbo)eventdata 保留在matlab里面的參數(shù),它的作用是方便后面的程序使用handles gui界面的句柄,可以通過它獲取整個(gè)界面的信息(詳情請(qǐng)參見guidata)獲得當(dāng)前輸入框的輸入字符tempdata=get(hobject,string);將字符轉(zhuǎn)換為雙精度數(shù)handles.thirdbodyxdata=str2double(te

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論