
發(fā)布
注冊(cè)
/
登錄TCL編程
關(guān)注創(chuàng)建者:Alphn 創(chuàng)建時(shí)間:2019-02-21
TCL編程的視頻教程
Altair HyperWorks?二次開發(fā)培訓(xùn)
內(nèi)容大綱: 1.Tcl編程基礎(chǔ) 2.HyperMesh二次開發(fā) 3.TK界面開發(fā) 4.后處理二次開發(fā)
免費(fèi) 9小時(shí)31分鐘 1367播放
查看
TCL編程的實(shí)例教程
這才恍然大悟,原來里面裝的都是每個(gè)我們?cè)诰帉?em>tcl 語句中使用的材料對(duì)應(yīng)的頭文件(.h)和主體代碼(.Cpp).換句話說,tcl編寫的語句,僅僅是告訴OS我要用這些材料,單元,算法,而實(shí)際上真正計(jì)算模型的是OS在調(diào)用這些C代碼。這里也解釋,為什么同樣規(guī)模的數(shù)值模型,OS的求解速度會(huì)比ABAQUS之類要快很多,是因?yàn)榍蠼獾膬?nèi)核C語言對(duì)于計(jì)算機(jī)的資源調(diào)動(dòng)和利用是非常高的,這也是為什么,很多很軟件底層語言都會(huì)選擇C語言得原因。
圖2
上述得分析我們向我們闡釋了一個(gè)事實(shí),實(shí)際上,OS的計(jì)算模型的原理從解讀代碼的角度就是tcl+c++的混合編程。為什么要混合編程,其實(shí)思想就是物盡其用。C語言擅長(zhǎng)計(jì)算,那么把和計(jì)算相關(guān)的材料,單元,算法都用C編制,而對(duì)于建立幾何模型和設(shè)置參數(shù),對(duì)計(jì)算的性能需求不高,就用tcl補(bǔ)充,所謂相得益彰。
綜上分析,我們可以知道傳統(tǒng)基于tcl 編制,通過tcl和C的相互接口,實(shí)現(xiàn)數(shù)據(jù)交互,進(jìn)而實(shí)現(xiàn)了tcl 滿足前后處理,C實(shí)現(xiàn)求解器的不一樣的有限元。
2. OS的包容和高效
接下來我們來談一談,為什么說OS是無私和包容的軟件。其實(shí)OS的魅力也就是因?yàn)榇耍脖貙⒁驗(yàn)榇顺蔀槿蘸笱芯咳Φ囊活w明星。PEER前輩們通過自己的努力,編寫了這些源代碼,最后他們決定將這些源代碼,免費(fèi)的貢獻(xiàn)出來,在學(xué)術(shù)圈共享。這是多么偉大的舉措,沒有商業(yè)化,純粹的學(xué)術(shù)的追求。因?yàn)樵谶@樣的情懷下(當(dāng)然最重要還是這些源代碼寫的好),越來越多的科研人員開始使用。隨著用戶的需求隨著課題不斷地開展,用戶對(duì)當(dāng)前的材料庫(kù),單元庫(kù),算法也越來越不滿足,恰恰又因?yàn)镃語言具有封裝,繼承,和多態(tài)的特征,使得OS具有開源的特點(diǎn)。
展開 Tcl/Tk與APDL聯(lián)合編程實(shí)現(xiàn)ANSYS的二次開發(fā)
ANSYS的二次開發(fā)語言有四種,分別是APDL、UPFs、UIDL及Tcl/Tk,其中后面兩個(gè)用于ANSYS交互界面開發(fā)。APDL(ANSYS Parametric Design Language)大家都熟悉,ANSYS參數(shù)化設(shè)計(jì)語言,及俗稱的命令流。它由類似于FORTRAN的語言部分和1000多條ANSYS命令組成。
APDL是一種解釋性文本語言,有順序、選擇、循環(huán)及宏等結(jié)構(gòu)。利用APDL將ANSYS命令組織起來,編寫出參數(shù)化的用戶程序,從而實(shí)現(xiàn)有限元分析的全過程,即建立參數(shù)化的實(shí)體模型、參數(shù)化的網(wǎng)格劃分與控制、參數(shù)化的材料定義、參數(shù)化的載荷和邊界條件定義、參數(shù)化的分析控制和求解以及參數(shù)化的后處理。
UPFs(User Programmable Features),即用戶可編程特性,它是源代碼層次的ANSYS二次開發(fā),用戶可以根據(jù)需要利用UPFs重新編譯連接生成用戶定制版本的ANSYS軟件,例如創(chuàng)建新單元、定義新的材料屬性、定義用戶失效準(zhǔn)則等等。
UIDL是ANSYS用戶界面設(shè)計(jì)語言(UserInterfaceDesignLanguage)的簡(jiǎn)寫,允許用戶改變ANSYS的圖形界面中的一些組項(xiàng),提供了一種允許用戶靈活使用組織設(shè)計(jì)ANSYS的強(qiáng)有力工具,不過功能有限。
Tcl稱為“工具命令語言”"Tool Command Language",是一種腳本語言。Tk則是基于Tcl的圖形界面開發(fā)工具箱,與UIDL相比,更能夠觸及深層,因此更加靈活,開發(fā)的界面受限更少。
采用Tcl/Tk與APDL聯(lián)合編程能夠通過界面實(shí)現(xiàn)參數(shù)化設(shè)計(jì)過程,非常直觀。
展開 結(jié)合Tcl/Tk和ANSYS的APDL參數(shù)化語言編寫螺旋結(jié)構(gòu)的參數(shù)化建模程序,程序完成后即可在ANSYS中運(yùn)行,運(yùn)行后會(huì)彈出編寫好的界面,通過設(shè)置其中的幾個(gè)參數(shù)即可實(shí)現(xiàn)一鍵參數(shù)化建模與分網(wǎng)。
編寫好的界面如下所示,可以對(duì)比界面中的示意圖設(shè)置其中的幾個(gè)尺寸,包括螺旋半徑R,螺距H,圈數(shù)N和螺紋的半徑Rr,設(shè)置完后點(diǎn)擊Creat即可快速創(chuàng)建模型。
$i -row [expr $i-4] -column 2
}
grid $w1.b1 -row 5 -column 1 -pady 5
grid $w1.b2 -row 5 -column 2 -pady 5
pack $wf.0 -padx 10 -pady 10 -side top
pack $wf.1 -padx 10 -pady 10 -side top
pack $wf
#wm resizable $w 0 0
wm state $w normal
以上Tcl/Tk代碼構(gòu)建了一個(gè)界面窗口,用于設(shè)置幾個(gè)基本參數(shù),并且定義了子進(jìn)程。
通過wish86編譯后的界面如下圖所示:
圖5
四、Tcl/Tk與APDL
采用Tcl/Tk與APDL聯(lián)合編程能夠通過界面實(shí)現(xiàn)參數(shù)化設(shè)計(jì)過程,非常直觀。Tcl/Tk與APDL的通信主要依靠三個(gè)ANSYS API函數(shù)實(shí)現(xiàn),分別是:
ans_sendcommand:向ANSYS傳遞APDL命令;
ans_getvalue:從ANSYS數(shù)據(jù)庫(kù)中獲取變量;
ans_getvector:從ANSYS數(shù)據(jù)庫(kù)中獲取向量。
展開 文/心塵軒
網(wǎng)站/STKO OpenSees Software (asdeasoft.net)
歡迎關(guān)注STKO官方公眾號(hào),目前許可證正在免費(fèi)開放中,歡迎大家申請(qǐng)
案例一:大跨橋梁多點(diǎn)地震激勵(lì)分析(tcl來自陳學(xué)偉)
案例二:超高層彈塑性時(shí)程分析(tcl來自陸新征老師)
案例三:土結(jié)構(gòu)相互作用SSI分析
案例四:鋼筋混凝土柱腳pushover分析
案例五:鋼筋混凝土柱滯回分析
案例六:砌體結(jié)構(gòu)滯回分析
案例七:dual system 滯回和時(shí)程分析
內(nèi)容回顧:
關(guān)于STKO:
1.STKO for OpenSEES 安裝教程
2.STKO for OpenSEES 免費(fèi)許可證申請(qǐng)指南(修改版)
3.研究生STKO免費(fèi)許可證申請(qǐng)郵箱范例
4.導(dǎo)師STKO免費(fèi)許可證申請(qǐng)郵箱范例
5.無需TCL編程能力,STKO帶你輕松玩轉(zhuǎn)OpenSEES
6.STKO助力OpenSEES系列:自復(fù)位支撐框架靜力循環(huán)pushover分析
7.STKO助力OpenSEES系列:平面多層多跨混凝土框架靜力循環(huán)pushover分析
8.STKO助力OpenSEES系列:結(jié)構(gòu)模態(tài)分析以及動(dòng)力特性(MDOF與等效SDOF驗(yàn)證)
關(guān)于Abaqus:
1.Abaqus 基于python的plugin 開發(fā),生成常用建模部件,可以輔助我們快速建模
2.Abaqus基于python的懸臂梁參數(shù)化分析(基礎(chǔ))
歡迎關(guān)注
展開 
TCL編程的相關(guān)專題、標(biāo)簽、搜索
TCL編程的最新內(nèi)容
如果偶爾用到?jīng)]兼容 Python 的小眾功能,也支持 Python 和 TCL 混合編程,不用完全重構(gòu)代碼。而且 Python 腳本支持錄制 —— 在界面上操作一次,HyperMesh 會(huì)生成對(duì)應(yīng)的 Python 代碼,還會(huì)彈出交互界面,把用到的 API 函數(shù)和取值列出來,大家可以把固定取值改成變量,方便后續(xù)復(fù)用。
如果偶爾用到?jīng)]兼容 Python 的小眾功能,也支持 Python 和 TCL 混合編程,不用完全重構(gòu)代碼。而且 Python 腳本支持錄制 —— 在界面上操作一次,HyperMesh 會(huì)生成對(duì)應(yīng)的 Python 代碼,還會(huì)彈出交互界面,把用到的 API 函數(shù)和取值列出來,大家可以把固定取值改成變量,方便后續(xù)復(fù)用。
招聘崗位:二次開發(fā)高級(jí)工程師
薪資:面議
崗位職責(zé):
1.熟悉TCL/TK界面編程,開發(fā)中大型項(xiàng)目;
2.負(fù)責(zé)編寫hypermesh/hyperview自動(dòng)化程序,提升建模和后處理的速度和效率;
3.Linux系統(tǒng)下二次開發(fā)軟件的開發(fā)、修改、調(diào)試;
4.負(fù)責(zé)自動(dòng)化程序使用過程中的技術(shù)支持和優(yōu)化迭代,識(shí)別效率堵塞點(diǎn),提出迭代優(yōu)化方向并實(shí)施;
5.維護(hù)項(xiàng)目開發(fā)的正常運(yùn)行
color: rgb(35, 90, 166);">薪資范圍:</strong>面議</p><p class="ql-align-justify"><br></p><p class="ql-align-justify"><strong style="color: rgb(35, 90, 166);">崗位職責(zé):</strong></p><p class="ql-align-justify">1.熟悉TCL
崗位職責(zé):
1.TCL/TK界面編程,專業(yè)相關(guān)功能編程;
2.軟件代碼修改與調(diào)試,WINDOWS系統(tǒng)下二次開發(fā)軟件的編寫;
3.負(fù)責(zé)軟件使用過程中的技術(shù)支持;
4.遵循開發(fā)流程,保證項(xiàng)目開發(fā)的正常運(yùn)行,嚴(yán)格確保整個(gè)項(xiàng)目通過測(cè)試要求。
對(duì)于偶爾的腳本,我使用 Python 或Glyph ,這是 Fidelity Pointwise 的腳本語言,它是Tcl 編程語言的擴(kuò)展。
Sarah Hope 在 Cadence Fort Worth 辦公室的辦公桌前編寫代碼。
如果您不是 Cadence CFD 團(tuán)隊(duì)的開發(fā)人員,您會(huì)做什么?
如果我不是 Cadence CFD 團(tuán)隊(duì)的軟件工程師,我就會(huì)為另一家公司編寫軟件。
OpenSEES編程與原理】 纖維單元之基于位移的梁柱單元理論分析(一)
【關(guān)于STKO有限元軟件】
1.STKO for OpenSEES 安裝教程
2.STKO for OpenSEES 免費(fèi)許可證申請(qǐng)指南(修改版)
3.研究生STKO免費(fèi)許可證申請(qǐng)郵箱范例
4.導(dǎo)師STKO免費(fèi)許可證申請(qǐng)郵箱范例
5.無需TCL
【OpenSEES編程與原理】 纖維單元之基于位移的梁柱單元理論分析(一)
【關(guān)于STKO有限元軟件】
1.STKO for OpenSEES 安裝教程
2.STKO for OpenSEES 免費(fèi)許可證申請(qǐng)指南(修改版)
3.研究生STKO免費(fèi)許可證申請(qǐng)郵箱范例
4.導(dǎo)師STKO免費(fèi)許可證申請(qǐng)郵箱范例
5.無需TCL編程能力,
OpenSEES編程與原理】 纖維單元之基于位移的梁柱單元理論分析(一)
【關(guān)于STKO有限元軟件】
1.STKO for OpenSEES 安裝教程
2.STKO for OpenSEES 免費(fèi)許可證申請(qǐng)指南(修改版)
3.研究生STKO免費(fèi)許可證申請(qǐng)郵箱范例
4.導(dǎo)師STKO免費(fèi)許可證申請(qǐng)郵箱范例
5.無需TCL
【OpenSEES編程與原理】新材料的添加和測(cè)試的視頻教程
【關(guān)于STKO有限元軟件】
1.STKO for OpenSEES 安裝教程
2.STKO for OpenSEES 免費(fèi)許可證申請(qǐng)指南(修改版)
3.研究生STKO免費(fèi)許可證申請(qǐng)郵箱范例
4.導(dǎo)師STKO免費(fèi)許可證申請(qǐng)郵箱范例
5.無需TCL編程能力,STKO帶你輕松玩轉(zhuǎn)