亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于PCL語言的梁截面自動(dòng)生成

        2016-10-24 09:08:28強(qiáng)
        船舶設(shè)計(jì)通訊 2016年1期
        關(guān)鍵詞:二次開發(fā)按鈕有限元

        郭 磊 孫 強(qiáng)

        (意大利船級(jí)社(中國)有限公司 上海200052)

        基于PCL語言的梁截面自動(dòng)生成

        郭 磊 孫 強(qiáng)

        (意大利船級(jí)社(中國)有限公司 上海200052)

        在船體結(jié)構(gòu)有限元建模的過程中,定義梁?jiǎn)卧羌戎匾址爆嵉牟襟E。一艘船上的骨材種類通常很多,在建模時(shí)需要定義很多的梁?jiǎn)卧孛鎸傩?。文章利用通用有限元軟件Patran中的PCL(Patran Command Language)語言,對(duì)Patran進(jìn)行二次開發(fā),使建模過程中的梁?jiǎn)卧孛孀詣?dòng)生成,節(jié)約了建模時(shí)間。

        有限元建模;PCL語言;梁截面屬性

        引言

        MSC.Patran是非常著名的有限元前后處理系統(tǒng),能滿足大部分有限元建模的需要。船體是一個(gè)復(fù)雜的結(jié)構(gòu)系統(tǒng),現(xiàn)在的船級(jí)社規(guī)范往往要求對(duì)一定主尺度的船舶進(jìn)行有限元分析,而建模又十分費(fèi)時(shí)費(fèi)力。本文通過PCL語言對(duì)Patran進(jìn)行二次開發(fā),使建模過程的梁?jiǎn)卧獙傩缘纳赡軌蚩焖俸透咝А?/p>

        1 PCL語言類的結(jié)構(gòu)

        “類”的概念,通過編寫PCL類來實(shí)現(xiàn)生成用戶菜單和響應(yīng)。

        “類”由關(guān)鍵詞CLASS開始,END CLASS結(jié)束。類中包含實(shí)現(xiàn)具體功能的函數(shù)。一套PCL程序通常包含若干類,這些類彼此調(diào)用。通過編譯成一個(gè)plb文件保存在Patran的安裝目錄下,通過p3epilog.pcl文件對(duì)Patran進(jìn)行初始化,將用戶定義的菜單包含在Patran初始界面中。p3epilog.pcl文件通常包含如下語句:

        ?。ib 用戶菜單名.plb

        ui_exec_function(“用戶菜單名”, “init_menu”)

        PCL是一種高級(jí)模塊化編程語言,其中提供

        2 用戶菜單

        利用PCL語言,可以方便地建立用戶菜單。具體過程如下:

        (1)利用uil_primary.get_menubar_id(),獲得Patran主菜單的id。

        (2)利用語句ui_menu_create()生成用戶菜單。

        (3)利用語句ui_item_create()生成菜單項(xiàng)。

        (4)通過菜單項(xiàng)語句的"name",調(diào)用響應(yīng)函數(shù)。

        程序代碼如下:

        ……

        menubar_id=uil_primary.get_menubar_id()

        menu_id=ui_menu_create(menubar_id,"name", "My Apply")

        ui_item_create(menu_id,"Beam","Beam_ Property", false)

        ui_item_create(menu_id,"Help","&Help",false)

        ……

        ui_exec_function("Classname","display")

        圖1為用戶菜單結(jié)構(gòu)。

        圖1 用戶菜單

        3 梁?jiǎn)卧獙傩源翱?/h2>

        當(dāng)點(diǎn)擊用戶菜單的Beam_Property子菜單,將出現(xiàn)如圖2的屬性窗口。

        圖2 梁?jiǎn)卧獙傩源翱?/p>

        圖2的窗口由三部分組成,即定義材料、定義梁?jiǎn)卧膶傩院腿∠僮骰氐缴霞?jí)窗口。分別由3個(gè)按鈕定義。首先需要使用語句ui_form_create()創(chuàng)建一個(gè)表單用來存放按鈕控件,然后使用語句ui_button_create()創(chuàng)建按鈕控件,程序代碼如下:

        ……

        form_id=ui_form_create("", 表單x坐標(biāo), 表單y坐標(biāo), 位置, 寬度, 高度, 標(biāo)簽, "")

        materials=ui_button_create(form_id, "callback",按鈕x坐標(biāo), 按鈕y坐標(biāo), 寬度, 高度, 標(biāo)簽, true,false)

        properties=ui_button_create(form_id, "callback",按鈕x坐標(biāo), 按鈕y坐標(biāo), 寬度, 高度, 標(biāo)簽, true,false)

        cancel=ui_button_create(form_id, "callback",按鈕x坐標(biāo), 按鈕y坐標(biāo), 寬度, 高度, 標(biāo)簽, true,false)

        ……

        單擊Materials按鈕,將會(huì)出現(xiàn)如圖3的窗口。

        圖3 材料屬性窗口

        在圖3所示的材料屬性窗口中,船體一般使用的鋼材屬性就是其默認(rèn)值,用戶只需要單擊"Apply",就可以創(chuàng)建出鋼材的材料屬性。

        在圖3的窗口中,創(chuàng)建表單的語句代碼和前面一樣,不同的是還需要?jiǎng)?chuàng)建數(shù)據(jù)框和創(chuàng)建材料屬性的響應(yīng)。

        創(chuàng)建數(shù)據(jù)框的語句代碼如下:

        ……

        databox_id=ui_databox_create(frame_id, "",x坐標(biāo), y坐標(biāo), 標(biāo)簽長度, 方框長度, 標(biāo)簽, "",false, "STRING", 1)

        ……

        通過PCL在Patran中創(chuàng)建材料屬性,需要調(diào)用材料建立函數(shù)material.create()。材料的性質(zhì)是一維字符串?dāng)?shù)組,而從窗口中傳入的參數(shù)是實(shí)數(shù),因此需要進(jìn)行數(shù)據(jù)轉(zhuǎn)換。語句代碼如下:

        ……

        String d[20](4)

        d(1)=str_from_real(ElasticModulus)

        d(2)=str_from_real(PoissonRadio)

        d(3)=str_from_real(Density)

        d(4)=""

        material.create("Analysis code ID", 1,"Analysis type ID",1, "steel",0, "" , "Isotropic", 1,"Directionality",1,"Linearity",1, "Homogeneous", 0,"Linear Elastic",1, "Model Options & IDs" ,["","","","",""], [0,0,0,0,0], "Active Flag",1, "Create", 10, "External Flag", FALSE, "Property IDs" ,["Elastic Modulus", "Poisson Radio","Density"], [2,5,16,0], "Property Values", d)

        ……

        單擊Beam Properties按鈕,將會(huì)出現(xiàn)如圖4的窗口。

        圖4 梁截面窗口

        在圖4的窗口中用戶可以選擇3種梁截面,即T型材、角鋼和扁鋼。在輸入型材截面的參數(shù)(腹板高、腹板厚、面板寬、面板厚)之后,單擊"Apply",就可以在Patran中創(chuàng)建1個(gè)梁截面。

        用戶也可以事前創(chuàng)建1個(gè)文本文件,其中包含很多梁截面的信息,通過點(diǎn)擊"Input Beam Property File"按鈕,將文本文件導(dǎo)入,從而一次性創(chuàng)建很多梁截面屬性,大大提高建模效率。

        當(dāng)單擊"Input Beam Property File"按鈕后,將出現(xiàn)圖5所示的窗口。

        圖5 導(dǎo)入文本文件窗口

        單擊"Input File"按鈕,將保存有梁截面信息的文本文件導(dǎo)入即可。

        文本文件如圖6所示。

        圖6 梁截面屬性文件

        將梁截面屬性文本文件導(dǎo)入到Patran中,就會(huì)自動(dòng)創(chuàng)建相應(yīng)類型的截面屬性,如圖7所示。

        創(chuàng)建選擇梁截面類型菜單的語句代碼如下:

        Optionmenu_id=ui_optionmenu_create (frame_ id, "", x坐標(biāo), y坐標(biāo), 標(biāo)簽長度, "Beam Type :",false)

        ui_item_create(optionmenu_id,"T","T-bar",false, 0)

        圖7 Beam Library窗口

        ui_item_create(optionmenu_id,"L","Anglebar", false, 0)

        ui_item_create(optionmenu_id,"F","Flatbar", false, 0)

        在Patran中建立梁截面屬性,需要調(diào)用梁截面建立函數(shù)beam_section_create ()。截面的性質(zhì)是一維字符串?dāng)?shù)組,而從窗口中傳入的參數(shù)是實(shí)數(shù),因此需要進(jìn)行數(shù)據(jù)轉(zhuǎn)換。語句代碼如下:

        ……

        String data[20](4)

        data(1)=str_from_real(bf)

        data(2)=str_from_real(hw)

        data(3)=str_from_real(tf)

        data(4)=str_from_real(tw)

        beam_section_create (name, shape, data)

        ……

        只需要1個(gè)包含梁截面屬性的文本文件,通過上述的幾步操作,可在Patran中方便地創(chuàng)建所有梁截面屬性,在定義梁?jiǎn)卧獙傩詴r(shí),則會(huì)簡(jiǎn)單許多。

        4 幫助文檔窗口

        當(dāng)在主菜單中單擊"Help"子菜單時(shí),將彈出1個(gè)幫助文檔,幫助用戶了解如何自動(dòng)生成材料和梁截面屬性。

        圖8 幫助文檔窗口

        幫助文檔如圖8所示。生成幫助文檔主要通過如下的語句代碼實(shí)現(xiàn):file_get_p3_home(helpfile)utl_process_spawn(helpfile,false)

        5 結(jié) 論

        本文通過PCL語言對(duì)通用有限元軟件Patran進(jìn)行二次開發(fā),實(shí)現(xiàn)對(duì)梁?jiǎn)卧孛娴淖詣?dòng)生成,大大提高了建模效率。在梁截面屬性很多的情況下,只要準(zhǔn)備1個(gè)包含截面屬性的文件,通過幾步操作就可以完成之前很繁瑣的操作過程。同時(shí),二次開發(fā)程序也提供了幫助文件,指導(dǎo)用戶正確使用,為船體有限元建模提供了極大方便。

        [1] MSC. MSC.Patran PCL and customization[M]. USA,2012.

        [2] MSC. MSC.Patran PCL reference manual[M]. USA,2012.

        [3] 唐友宏, 陳賓康. 用MSC.Patran的PCL二次開發(fā)用戶界面[J]. 船海工程, 2012(3): 20-22.

        [4] 張軍彥, 李昌華. 基于MSC.Patran界面的PCL二次開發(fā)[J]. 現(xiàn)代電子技術(shù), 2010(16): 17-19.

        [5] 馮國慶, 劉相春, 任慧龍. 基于PCL語言的波浪壓力自動(dòng)加載方法[J]. 船舶力學(xué), 2006(5): 107-112.

        [6] 任慧龍, 曾驥, 戴愚志. 船舶與海洋工程結(jié)構(gòu)的PCL參數(shù)化建模[C]. MSC.Software中國用戶論文集, 2003:1-7.

        Automatic generation of beam section based on PCL

        GUO Lei SUN Qiang
        (Italy Classifi cation Society (RINA), Shanghai 200052, China)

        The beam property defi nition is a very important and elaborate part in the hull structural fi nite element modeling process. In general, there are plenty of beams or longitudinal types in one ship. Therefore, a great deal of beam section properties need to be defi ned. In this article, the Patran software is secondarily developed by using Patran Command Language (PCL). The automatic generation of beam section property can be thus achieved to save the modeling time.

        fi nite element modeling; patran command language; beam section property

        U661.42

        A

        1001-9855(2016)01-0105-05

        2015-04-13;

        2015-05-12

        郭 磊(1984-),男,碩士,工程師,研究方向:船舶結(jié)構(gòu)審圖及強(qiáng)度分析。孫 強(qiáng)(1981-),男,工程師,研究方向:法定檢驗(yàn)審圖。

        猜你喜歡
        二次開發(fā)按鈕有限元
        哪個(gè)是門鈴真正的按鈕
        當(dāng)你面前有個(gè)按鈕
        淺談基于Revit平臺(tái)的二次開發(fā)
        甘肅科技(2020年20期)2020-04-13 00:30:02
        淺談Mastercam后處理器的二次開發(fā)
        模具制造(2019年3期)2019-06-06 02:11:02
        西門子Easy Screen對(duì)倒棱機(jī)床界面二次開發(fā)
        內(nèi)心不能碰的按鈕
        磨削淬硬殘余應(yīng)力的有限元分析
        基于SolidWorks的吸嘴支撐臂有限元分析
        基于Pro/E二次開發(fā)的推土鏟參數(shù)化模塊開發(fā)
        箱形孔軋制的有限元模擬
        上海金屬(2013年4期)2013-12-20 07:57:18
        久久久久久久久久91精品日韩午夜福利| 中国丰满熟妇xxxx性| 最近日本中文字幕免费完整 | 免费一级a毛片在线播出| 99亚洲女人私处高清视频| 天堂网站一区二区三区 | 人人妻人人澡人人爽人人精品电影| 国产一精品一aⅴ一免费| 精品国产亚洲av高清日韩专区| 人妻丰满熟妇av无码区app| 亚洲日韩中文字幕一区| 婷婷综合缴情亚洲狠狠| 国产女主播福利一区二区| 五月天激情电影| 亚洲av日韩av永久无码色欲| 无码一区二区三区在| 一区二区中文字幕在线观看污污 | 九九99久久精品国产| 亚洲AV成人无码国产一区二区| 国产精品成人久久a级片| 青青草精品在线视频观看| av一区二区三区人妻少妇| 中文字幕无码日韩欧毛| 丰满少妇av一区二区三区| 国产麻豆精品精东影业av网站 | 免费毛片性天堂| 免费黄网站永久地址进入| 亚洲开心婷婷中文字幕| 依依成人精品视频在线观看| 亚洲欧美日韩精品香蕉| 亚洲男人免费视频网站| 亚洲精品夜夜夜妓女网| 狠狠色噜噜狠狠狠97影音先锋| 亚洲自偷自拍另类第一页 | 人妻聚色窝窝人体www一区| 欧美成人www免费全部网站| 亚洲熟女av一区少妇| 无码色av一二区在线播放| 久久人妻公开中文字幕| 日本精品人妻一区二区三区| 狠狠综合久久av一区二区蜜桃|