999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于PCL語言的梁截面自動生成

2016-05-18 09:12:42意大利船級社中國有限公司上海200052
船舶 2016年1期

郭 磊 孫 強(意大利船級社(中國)有限公司 上海200052)

?

基于PCL語言的梁截面自動生成

郭 磊 孫 強
(意大利船級社(中國)有限公司 上海200052)

[摘 要]在船體結構有限元建模的過程中,定義梁單元是既重要又繁瑣的步驟。一艘船上的骨材種類通常很多,在建模時需要定義很多的梁單元截面屬性。文章利用通用有限元軟件Patran中的PCL(Patran Command Language)語言,對Patran進行二次開發,使建模過程中的梁單元截面自動生成,節約了建模時間。

[關鍵詞]有限元建模;PCL語言;梁截面屬性

孫 強(1981-),男,工程師,研究方向:法定檢驗審圖。

引 言

MSC.Patran是非常著名的有限元前后處理系統,能滿足大部分有限元建模的需要。船體是一個復雜的結構系統,現在的船級社規范往往要求對一定主尺度的船舶進行有限元分析,而建模又十分費時費力。本文通過PCL語言對Patran進行二次開發,使建模過程的梁單元屬性的生成能夠快速和高效。

1 PCL語言類的結構

PCL是一種高級模塊化編程語言,其中提供“類”的概念,通過編寫PCL類來實現生成用戶菜單和響應。

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

!!lib 用戶菜單名.plb

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

2 用戶菜單

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

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

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

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

(4)通過菜單項語句的"name",調用響應函數。

程序代碼如下:

……

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為用戶菜單結構。

圖1 用戶菜單

3 梁單元屬性窗口

當點擊用戶菜單的Beam_Property子菜單,將出現如圖2的屬性窗口。

圖2 梁單元屬性窗口

圖2的窗口由三部分組成,即定義材料、定義梁單元的屬性和取消操作回到上級窗口。分別由3個按鈕定義。首先需要使用語句ui_form_create()創建一個表單用來存放按鈕控件,然后使用語句ui_button_create()創建按鈕控件,程序代碼如下:

……

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

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

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

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

……

單擊Materials按鈕,將會出現如圖3的窗口。

圖3 材料屬性窗口

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

在圖3的窗口中,創建表單的語句代碼和前面一樣,不同的是還需要創建數據框和創建材料屬性的響應。

創建數據框的語句代碼如下:

……

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

……

通過PCL在Patran中創建材料屬性,需要調用材料建立函數material.create()。材料的性質是一維字符串數組,而從窗口中傳入的參數是實數,因此需要進行數據轉換。語句代碼如下:

……

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按鈕,將會出現如圖4的窗口。

圖4 梁截面窗口

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

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

當單擊"Input Beam Property File"按鈕后,將出現圖5所示的窗口。

圖5 導入文本文件窗口

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

文本文件如圖6所示。

圖6 梁截面屬性文件

將梁截面屬性文本文件導入到Patran中,就會自動創建相應類型的截面屬性,如圖7所示。

創建選擇梁截面類型菜單的語句代碼如下:

Optionmenu_id=ui_optionmenu_create (frame_ id, "", x坐標, y坐標, 標簽長度, "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中建立梁截面屬性,需要調用梁截面建立函數beam_section_create ()。截面的性質是一維字符串數組,而從窗口中傳入的參數是實數,因此需要進行數據轉換。語句代碼如下:

……

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個包含梁截面屬性的文本文件,通過上述的幾步操作,可在Patran中方便地創建所有梁截面屬性,在定義梁單元屬性時,則會簡單許多。

4 幫助文檔窗口

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

幫助文檔如圖8所示。

圖8 幫助文檔窗口

生成幫助文檔主要通過如下的語句代碼實現:file_get_p3_home(helpfile)

utl_process_spawn(helpfile,false)

5 結 論

本文通過PCL語言對通用有限元軟件Patran進行二次開發,實現對梁單元截面的自動生成,大大提高了建模效率。在梁截面屬性很多的情況下,只要準備1個包含截面屬性的文件,通過幾步操作就可以完成之前很繁瑣的操作過程。同時,二次開發程序也提供了幫助文件,指導用戶正確使用,為船體有限元建模提供了極大方便。

[參考文獻]

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

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

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

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

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

[6] 任慧龍, 曾驥, 戴愚志. 船舶與海洋工程結構的PCL參數化建模[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)

Abstract:The beam property definition is a very important and elaborate part in the hull structural finite 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 defined. 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.

Keywords:finite element modeling; patran command language; beam section property

[作者簡介]郭 磊(1984-),男,碩士,工程師,研究方向:船舶結構審圖及強度分析。

[收稿日期]2015-04-13;[修回日期]2015-05-12

[中圖分類號]U661.42

[文獻標志碼]A

[文章編號]1001-9855(2016)01-0105-05

主站蜘蛛池模板: 久久综合伊人 六十路| 国产中文一区a级毛片视频| jijzzizz老师出水喷水喷出| 色亚洲激情综合精品无码视频| 99精品在线视频观看| 国产黄在线免费观看| 午夜免费小视频| 日韩小视频网站hq| 国产网站在线看| 亚洲区第一页| 国产91视频观看| 亚卅精品无码久久毛片乌克兰| 国产精品自拍露脸视频| 亚洲AV无码一区二区三区牲色| 国产精品yjizz视频网一二区| 精品国产Ⅴ无码大片在线观看81| 制服丝袜亚洲| 日本精品中文字幕在线不卡 | 国产综合精品一区二区| 久久先锋资源| 日韩一区精品视频一区二区| 久久免费精品琪琪| 久久一本精品久久久ー99| 国产一二视频| 热伊人99re久久精品最新地| 91久久夜色精品| 欧美精品成人一区二区在线观看| 精品久久久久久成人AV| 免费啪啪网址| 亚洲一区二区黄色| 免费大黄网站在线观看| 中文纯内无码H| 国产精品视频a| 国产91九色在线播放| 亚洲视频免| 日本爱爱精品一区二区| 极品国产一区二区三区| 久久久久九九精品影院| 成人国产精品一级毛片天堂| 亚洲毛片一级带毛片基地| 最新国产网站| 国产欧美日韩精品第二区| 97无码免费人妻超级碰碰碰| 夜夜操天天摸| hezyo加勒比一区二区三区| 青青青国产免费线在| 亚洲娇小与黑人巨大交| 国产成人精品在线| 中文字幕乱码中文乱码51精品| 玖玖精品视频在线观看| 欧美人人干| 自偷自拍三级全三级视频| 久久黄色影院| 久久综合色播五月男人的天堂| 动漫精品啪啪一区二区三区| 色一情一乱一伦一区二区三区小说| 真实国产乱子伦视频| 日本精品一在线观看视频| 狠狠综合久久久久综| 少妇精品久久久一区二区三区| 日韩欧美高清视频| 97久久超碰极品视觉盛宴| 国产99免费视频| 欧美性猛交一区二区三区| 精品三级网站| 亚洲AV无码久久精品色欲| 四虎影视无码永久免费观看| 亚洲综合天堂网| 日韩东京热无码人妻| 91久久偷偷做嫩草影院电| 日韩精品无码免费专网站| 97se亚洲综合不卡| 国产精品久久精品| 青青网在线国产| 国产a在视频线精品视频下载| 国产精品自在在线午夜| 91区国产福利在线观看午夜| 免费A∨中文乱码专区| 亚洲另类国产欧美一区二区| 亚洲第一天堂无码专区| 亚洲国产AV无码综合原创| 精品一区二区久久久久网站|