• <tr id="yyy80"></tr>
  • <sup id="yyy80"></sup>
  • <tfoot id="yyy80"><noscript id="yyy80"></noscript></tfoot>
  • 99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

    海鷹仿真模型轉(zhuǎn)化為銀河仿真模型的編程實(shí)現(xiàn)方法

    2014-12-31 00:00:00亞明生陳麗平

    摘 要:海鷹仿真系統(tǒng)是基于Alpha計(jì)算機(jī)研制的實(shí)時(shí)仿真工作站,曾被廣泛應(yīng)用于航天仿真,但如今海鷹仿真系統(tǒng)正在被銀河仿真系統(tǒng)等新型設(shè)備取代。本文旨在介紹一種將海鷹仿真模型自動(dòng)轉(zhuǎn)化為銀河仿真模型的實(shí)現(xiàn)方法,以實(shí)現(xiàn)將海鷹仿真系統(tǒng)中的經(jīng)典模型快速移植到銀河仿真系統(tǒng)中。

    關(guān)鍵詞:海鷹仿真模型;銀河仿真模型

    中圖分類號(hào):TP391.9

    由于銀河仿真系統(tǒng)和海鷹仿真系統(tǒng)使用的語言結(jié)構(gòu)、語言語法基本一致,而且銀河仿真系統(tǒng)的硬件配置也完全包容海鷹仿真系統(tǒng)的硬件接口,所以銀河仿真系統(tǒng)正在逐漸完全取代海鷹仿真系統(tǒng)。然而海鷹仿真系統(tǒng)的仿真模型依然不能在銀河仿真系統(tǒng)中直接使用,而是需要進(jìn)行大量的手工修改后才能在銀河仿真系統(tǒng)中編譯及運(yùn)行仿真模型。

    因此本文先介紹海鷹仿真模型與銀河仿真模型的特點(diǎn),然后介紹海鷹仿真模型及銀河仿真模型的特性,最后再給出海鷹仿真模型轉(zhuǎn)化為銀河仿真模型的編程實(shí)現(xiàn)方法。

    1 海鷹仿真系統(tǒng)與銀河仿真系統(tǒng)分析

    海鷹仿真系統(tǒng)與銀河仿真系統(tǒng)的特性如表1所示,精簡的模型運(yùn)行順序一致如圖1所示,可見兩種系統(tǒng)的語言結(jié)構(gòu)具有橫多共同點(diǎn)。

    2 海鷹仿真模型和銀河仿真模型分析

    海鷹仿真模型包含yfs后綴的海鷹仿真語言主程序、dat后綴的插值函數(shù)、for后綴的fortran語言用戶代碼;銀河仿真模型包含yfs后綴的海鷹仿真語言主程序、dat后綴的插值函數(shù)、cpp后綴的C++語言用戶函數(shù)、h后綴的C++語言用戶頭文件。

    海鷹仿真模型的插值函數(shù)可以直接使用到銀河仿真模型中,海鷹仿真模型的主程序除了語法結(jié)構(gòu)外也可以直接使用到銀河仿真模型中,將海鷹仿真模型轉(zhuǎn)化為銀河仿真模型的關(guān)鍵一步是將fortran代碼轉(zhuǎn)化為銀河仿真模型支持的C、C++代碼或銀河仿真模型支持yfs代碼,本文只講述轉(zhuǎn)化為yfs代碼的方法。

    海鷹仿真模型中fortran語言的用戶代碼包含以double precision function標(biāo)識(shí)的函數(shù)和以subroutine標(biāo)識(shí)的子程序,其中subroutine子程序供fortran代碼中function標(biāo)識(shí)的函數(shù)調(diào)用,而function標(biāo)識(shí)的函數(shù)供yfs主程序調(diào)用。

    3 海鷹仿真模型轉(zhuǎn)化為銀河仿真模型的編程實(shí)現(xiàn)步驟

    通過編程方式實(shí)現(xiàn)將一個(gè)海鷹仿真模型轉(zhuǎn)化為銀河仿真模型需要進(jìn)行以下三步:海鷹仿真模型的dat插值函數(shù)文件轉(zhuǎn)化、海鷹仿真模型的fortran代碼轉(zhuǎn)化為yfs函數(shù)、海鷹仿真模型的yfs代碼轉(zhuǎn)化。

    3.1 海鷹仿真模型的dat插值函數(shù)文件轉(zhuǎn)化。海鷹仿真模型的dat插值函數(shù)文件可以一成不變地直接拷貝到銀河仿真模型中去使用,因此這里只需要直接拷貝文件即可。

    3.2 海鷹仿真模型的fortran代碼分析及轉(zhuǎn)化。fortran代碼轉(zhuǎn)化為的yfs格式函數(shù)的過程可以用圖3來描述,但由于海鷹仿真模型的fortran代碼的子程序或函數(shù)的參數(shù)從代碼形式上看,沒有輸入?yún)?shù)和輸出參數(shù)之分,因此將其轉(zhuǎn)化為yfs子函數(shù)(特指fortran子程序?qū)?yīng)的yfs格式的函數(shù))或yfs函數(shù)(特指fortran函數(shù)對應(yīng)的yfs格式的函數(shù))之前,首先要將fortran代碼的子程序或函數(shù)的參數(shù)從代碼中提取成輸入?yún)?shù)或輸出參數(shù)。

    圖3 編程實(shí)現(xiàn)過程

    fortran子程序或函數(shù)處理為yfs子函數(shù)或yfs函數(shù)的分塊過程完全一致,具體如下:

    首選將fortran子程序或函數(shù)的實(shí)參進(jìn)行左右值分析,將其分成左值參數(shù)、右值參數(shù)、混合參數(shù),然后將參數(shù)按下述原則進(jìn)行分類:(1)凡是左值參數(shù)(只在賦值號(hào)左邊出現(xiàn)的參數(shù))的參數(shù)為輸出;(2)凡是右值參數(shù)(只在賦值號(hào)右邊出現(xiàn)的參數(shù))的為輸入;(3)凡是混合參數(shù)(在賦值號(hào)兩邊均出現(xiàn)過得參數(shù))在第一次左值之后將參數(shù)名加一new后綴,并將該混合參數(shù)作為一輸入?yún)?shù),同時(shí)將加了new后綴的參數(shù)名作為一輸出參數(shù)。

    然后按新輸出參數(shù)和輸入?yún)?shù)按如下格式書寫為yfs格式的函數(shù):

    Function 函數(shù)名(輸出參數(shù)列表=輸入?yún)?shù)列表)

    函數(shù)體

    End function函數(shù)名

    3.3 海鷹仿真模型的yfs代碼分析及轉(zhuǎn)化

    海鷹仿真模型的yfs代碼和銀河仿真模型的yfs代碼結(jié)構(gòu)一致,這里主要需要做的是將海鷹仿真模型中yfs代碼對fortran函數(shù)的調(diào)用行用按fortran函數(shù)轉(zhuǎn)化后的yfs函數(shù)的形式去作實(shí)參匹配替換即可。

    4 結(jié)束語

    銀河仿真模型是域工程的形式存在和使用的,因此在完成了上述轉(zhuǎn)化后還需要編輯銀河仿真程序的工程文件盒配置文件。

    其中工程文件為以prj為后綴的文本文件,只有兩行內(nèi)容,格式如下:

    工程名.yfs

    插值函數(shù)文件名.dat

    參考文獻(xiàn):

    [1]陳衛(wèi)民,張紅宇.海鷹仿真集成開發(fā)環(huán)境HYSide[J].系統(tǒng)仿真學(xué)報(bào),1998(03).

    [2]航天海鷹仿真中心.海鷹仿真語言HYSL[Z].1997.

    [3]國防科學(xué)技術(shù)大學(xué)計(jì)算機(jī)學(xué)院.YHSIM用戶手冊[Z].2011.

    [4]Fotran77程序設(shè)計(jì)語言[M].北京:高等教育出版社,1984.

    作者單位:三○二設(shè)計(jì)研究所,貴州 550009

    青岛市| 邓州市| 康马县| 广饶县| 望都县| 安康市| 阿勒泰市| 花莲市| 沐川县| 明光市| 板桥市| 申扎县| 吉首市| 化隆| 汪清县| 柏乡县| 营山县| 寿阳县| 黄陵县| 西昌市| 永吉县| 金坛市| 梓潼县| 上犹县| 新邵县| 西青区| 南澳县| 聂荣县| 乌拉特后旗| 临颍县| 平度市| 武川县| 临邑县| 共和县| 聂荣县| 葫芦岛市| 获嘉县| 井研县| 宁城县| 常州市| 三明市|