freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

飛行器實(shí)時(shí)仿真算法研究本科畢業(yè)論文-資料下載頁(yè)

2025-06-27 16:33本頁(yè)面
  

【正文】 插值。插值公式如下 (31)比如對(duì)函數(shù)在區(qū)間中選取等距的6個(gè)點(diǎn)進(jìn)行采樣,然后使用采樣點(diǎn)和采樣值進(jìn)行線性插值。下圖中是原函數(shù)和插值函數(shù)的圖像對(duì)比。圖35 一維線性插值圖36 一維線性插值誤差可以看到線性插值只需要兩個(gè)點(diǎn)即可進(jìn)行插值,計(jì)算量很小,速度是所有插值算法中最快的,可是誤差卻比較大,而且插值函數(shù)一階導(dǎo)數(shù)不連續(xù),插值曲線不光滑。線性插值和1階拉格朗日插值等價(jià),但是由于線性插值是最常用的插值算法,為了提高速度,這里單獨(dú)作為一個(gè)類來設(shè)計(jì)。 拉格朗日插值屬于多項(xiàng)式插值,其一維點(diǎn)插值公式如下: (32)維點(diǎn)插值公式如下: (33)上述維插值公式翻譯成代碼的難點(diǎn)是連乘和連加的個(gè)數(shù)不確定,是個(gè)變量,用for循環(huán)是很難完成的。這里使用遞歸算法實(shí)現(xiàn)。如下圖所示,其中mulRes為n個(gè)連乘的結(jié)果。圖310 拉格朗日遞歸算法拉格朗日插值類的接口非常簡(jiǎn)單,大致如下:class CPolyLagrangeInterp : public CBaseInterp { public: CPolyLagrangeInterp(const interp_tableamp。 interp_data)。 virtual ~CPolyLagrangeInterp()。 private: virtual double RawInterp(const vectordoubleamp。 idpVar, const vectorsize_tamp。 jlo)。 double Mul(.........)。 //連乘 double Add(size_t next)。 //連加 .............. }。三次樣條插值的優(yōu)點(diǎn)是可以使插值曲線在插值區(qū)間內(nèi)部和端點(diǎn)出一階導(dǎo)數(shù)光滑,二階導(dǎo)數(shù)連續(xù)。一維插值公式如下: (34)其中 (35) (36) (37) (38)CPolyCubicSpline重載插值基類中的RawInterp函數(shù),并在其中實(shí)現(xiàn)上述算法。接口不再羅列。插值接口中使用了一個(gè)選擇插值方法的枚舉結(jié)構(gòu)體,如下:enum InterpMethod { /** 不插值, 當(dāng)x(i) = x = x(i+1), 返回離x較近的點(diǎn)所對(duì)應(yīng)的函數(shù)值,當(dāng)x為中點(diǎn)時(shí),取右邊的點(diǎn)*/ DISCRETE, /** 當(dāng)x(i) = x = x(i+1), 返回x(i)對(duì)應(yīng)的函數(shù)值*/ FLOOR, /** 當(dāng)x(i) = x = x(i+1), 返回x(i+1)對(duì)應(yīng)的函數(shù)值*/ CEILING, /** 線性插值,函數(shù)連續(xù),插值點(diǎn)的一階導(dǎo)數(shù)不連續(xù)*/ LINEAR, /** 二次樣條插值, 函數(shù)和其一階導(dǎo)數(shù)都連續(xù)*/ QSPLINE, /** 三次樣條插值, 函數(shù)和其一階導(dǎo)數(shù)和二階導(dǎo)數(shù)都連續(xù)*/ CSPLINE, /** 二階多項(xiàng)式插值, 函數(shù)連續(xù),導(dǎo)數(shù)在插值點(diǎn)個(gè)數(shù)為3個(gè)的時(shí)候也連續(xù),否則不連續(xù)*/ POLY2, /** 三階多項(xiàng)式插值, 函數(shù)連續(xù),導(dǎo)數(shù)在插值點(diǎn)個(gè)數(shù)為4個(gè)的時(shí)候連續(xù),否則不連續(xù)*/ POLY3,//拉格朗日插值 LAGRANGE }。關(guān)于外插的選擇,使用如下枚舉量: /*外插使用線性插值*/ enum ExtrapControl { /**不允許外插*/ NEITHER, /** 當(dāng)輸入數(shù)據(jù) x x_min 時(shí)允許外插*/ MINEX, /** 當(dāng)輸入數(shù)據(jù) x x_max 時(shí)允許外插*/ MAXEX, /** 當(dāng)輸入數(shù)據(jù) x x_min 或 x x_max 時(shí)允許外插*/ BOTH }。上面提到的interp_table是我設(shè)計(jì)一個(gè)插值數(shù)據(jù)包的結(jié)構(gòu)體,其中包含有插值類需要使用的信息,具體如下:struct interp_table {....................... //插值維數(shù) size_t dimension。 //自變量, independent variable const vector vectordouble amp。 idpVar。//應(yīng)變量, dependent variable const vectordoubleamp。 dpVar。 //可否外插, 否則出錯(cuò)提示,外插使用的是線性插值 vectorExtrapControlamp。 Extrap。 InterpMethod method。/*如果method為L(zhǎng)AGRANGE插值,則需對(duì)此項(xiàng)賦值,多項(xiàng)式階數(shù), 否則不用賦值*/ size_t order。 }。第4章 實(shí)時(shí)環(huán)境測(cè)試cpu:AMD Athlon 64 X2 Dual系統(tǒng):RTX操作系統(tǒng)內(nèi)存:1GBRTX全稱realtime extension,即實(shí)時(shí)操作系統(tǒng),提供對(duì)windows操作系統(tǒng)的擴(kuò)展功能。在包括工業(yè)自動(dòng)化,電信,測(cè)量,醫(yī)藥,政府,軍事,模擬等各方面企業(yè)級(jí)應(yīng)用中,使基于windows的應(yīng)用程序擁有嵌入式程序所具備的硬實(shí)時(shí)特征。RTX具有如下特點(diǎn),1. RTX向開發(fā)者提供了獨(dú)立于操作系統(tǒng)和應(yīng)用程序的對(duì)與系統(tǒng)資源的直接訪問控制和所有權(quán),為所需的功能和任務(wù)合理的安排進(jìn)程和線程的執(zhí)行順序。2. 具有工業(yè)標(biāo)準(zhǔn)和有效的開發(fā)調(diào)試工具。微軟的開發(fā)工具廉價(jià),易用,RTX不需要額外的昂貴的和專有的開發(fā)工具進(jìn)行程序的開發(fā)和調(diào)試。3. 并且RTX提供了附加的向?qū)Ш驼{(diào)試工具,可以無縫的嵌入到微軟的標(biāo)準(zhǔn)開發(fā)工具中。4. RTX提供了最高的可靠性。RTX提供的關(guān)機(jī)處理函數(shù)使得應(yīng)用程序可以在windows出現(xiàn)錯(cuò)誤時(shí)繼續(xù)運(yùn)行,某些函數(shù)可以在沒有操作系統(tǒng)的情況下依然正常執(zhí)行。這對(duì)于正在執(zhí)行關(guān)鍵指令的應(yīng)用程序尤其重要。此算例使用矩陣類Matrix來進(jìn)行矩陣求逆。首先使用隨機(jī)數(shù)生成器生成一個(gè)1000維的一個(gè)方陣。然后使用Matrix類的inv方法求逆,并統(tǒng)計(jì)運(yùn)行時(shí)間。大致代碼如下:double start_time = .....。 Matrixdouble mtx(1000,1000), res。()。res = ()。double end_time = .....。double pute_time= end_time start_time。 經(jīng)測(cè)試,程序執(zhí)行時(shí)間大約20秒。由于是采用C++編寫,并且是單線程運(yùn)算,20秒的測(cè)試結(jié)果已經(jīng)比較滿意了。使用內(nèi)存測(cè)試工具,沒有發(fā)現(xiàn)任何內(nèi)存泄露。此算例對(duì)插值類進(jìn)行測(cè)試,對(duì)拉格朗日和三次樣條測(cè)試分別進(jìn)行統(tǒng)計(jì),插值數(shù)據(jù)為網(wǎng)格數(shù)據(jù)。具代代碼不再列出,下面給出測(cè)試結(jié)果,單位 次/s。線性插值拉格朗日三次樣條1階2階3階4階1維7874150577473041227842769474187754514659802維366371020216278360204120752228172692023維19694908230542098807700247331596274維109723035722359643244211481818854表41 插值算法性能對(duì)比根據(jù)以上測(cè)試數(shù)據(jù)可知,對(duì)網(wǎng)格數(shù)據(jù)使用線性插值速度非???,可以達(dá)到每秒鐘百萬(wàn)次。每增加一維,速度大約降低40%左右。對(duì)相同的數(shù)據(jù),多項(xiàng)式插值和樣條插值的速度遠(yuǎn)比線性插值慢。第5章 結(jié)論通過上述實(shí)時(shí)環(huán)境的測(cè)試,本文中各部分的算法設(shè)計(jì)合理, 效率滿足需求, 能夠應(yīng)用于飛行器實(shí)時(shí)仿真中, 作為庫(kù)文件使用。向量和矩陣類提供了很多的方法,可以非常靈活的使用向量和矩陣進(jìn)行數(shù)據(jù)處理。隨機(jī)數(shù)類提供了非常多的生成器以滿足不同的需求,并且浮點(diǎn)數(shù)生成速度接近每秒鐘百萬(wàn)次。插值類提供了常見的幾種插值算法,5維以下時(shí)插值速度較快,接口設(shè)計(jì)簡(jiǎn)單,xml格式插值表具有很強(qiáng)的可擴(kuò)展性。插值算法中使用線性插值處理了外插情況。當(dāng)然,本文也存在很多問題,比如在5維以上的數(shù)據(jù)中插值時(shí),除了線性插值外,其他算法的運(yùn)行速度將會(huì)急劇下降。矩陣維數(shù)超過1000時(shí),矩陣求逆等復(fù)雜運(yùn)算會(huì)很慢。但是這些都是比較特殊的情況,在一般的仿真應(yīng)用中,本文中算法的效率可以滿足需求。致 謝在本文完成之際,我要對(duì)所有在論文完成過程中給予我無私幫助的人以最誠(chéng)摯的感謝。特別感謝我的導(dǎo)師,感謝許老師在學(xué)習(xí)和研究上對(duì)我的悉心指導(dǎo)和不斷鼓勵(lì),這使我得到了許多的鍛煉和提高。也感謝在畢業(yè)設(shè)計(jì)期間幫助過我的同學(xué)們,你們都很棒。參考文獻(xiàn)[1] William H. Press. NUMERICAL RECIPES, Third Edition, Cambridge University Press[J]. 2008[2] Ardence Company, RTX SDK Release Notes, US. 2007.[3] GSL Reference Manual Edition . 2006[4]飛行器系統(tǒng)仿真[M] . 2009[5] Kenneth C. Johnson .Multidimensional Interpolation Methods . 2006畢業(yè)設(shè)計(jì)小結(jié) 畢業(yè)設(shè)計(jì)(論文)是本科教學(xué)過程中的最后一個(gè)環(huán)節(jié),對(duì)于培養(yǎng)和提高本科生實(shí)踐能力、加深對(duì)所學(xué)知識(shí)的理解有十分重要的作用。 通過本次畢業(yè)設(shè)計(jì),我熟悉并掌握了從事科學(xué)研究的一般方法和基本技能。加深對(duì)飛行力學(xué)、飛行仿真計(jì)算的專業(yè)知識(shí)的理解。強(qiáng)化了C和C++語(yǔ)言編程能力,并了解了各種仿真算法。 附 錄在論文之后附上不便放進(jìn)正文的重要數(shù)據(jù)、表格、公式、圖紙、程序等資料,供讀者閱讀論文時(shí)參
點(diǎn)擊復(fù)制文檔內(nèi)容
物理相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1