
發(fā)布
注冊
/
登錄ansys宏
關注創(chuàng)建者:堅韌的鹵蛋 創(chuàng)建時間:2018-06-15

ansys宏的實例教程
ANSYS Workbench的宏文件及宏文件代碼
在Abaqus軟件和ANSYS經(jīng)典里面,都可以通過特定的語言編寫命令,以代替GUI操作,并且這些語言能夠實現(xiàn)很多GUI界面不能實現(xiàn)或者很難實現(xiàn)的工作。Abaqus中所有的操作都可以用相應的Python語句代替,在ANSYS經(jīng)典中所有的操作都可以用相應的APDL語句代替。
那么Workbench中有沒有這樣的方式呢?
答案是沒有,Workbench中不可能采用某一種語言實現(xiàn)整個分析過程,但是Workbench是絕對支持編程的,而且編程語言眾多。JScript只用于DM草圖建模。python控制外部各個component間數(shù)據(jù)的流轉。APDL在組件component中進行內部控制,還有針對其他的模塊的腳本語言。
正是因為Workbench的這個特點,讓Workbench的二次開發(fā)變得沒那么容易,整個系統(tǒng)太大。
宏文件這個概念很清楚,在Word、Excel和CAD等常用軟件中,均有這個概念,上次所說的腳本文件其實按照我的理解,可以當做宏文件的一種,腳本文件是文本文件,而宏文件則可以是其他形式的。宏文件是軟件操作的記錄,在利用軟件進行一些處理時,會在宏文件里面保存這些操作。
因此,宏文件對于大量重復性操作有很大的幫助,在Word等軟件里面通過錄制一段某特殊功能的宏,當下次需要執(zhí)行這些操作時,可以直接使用錄制好的這個宏。使用過VB的同學應該知道Word和CAD錄制的宏均有相應的VBA代碼,而VBA代碼直接可以在VB編程環(huán)境里面使用,這給VB開發(fā)帶來不少好處。
今天想說的是Workbench的宏文件,前面說這么些,可以讓宏文件這個概念深一點。在利用Workbench做一些重復性的計算時,也可以采用宏文件的形式,在Workbench里面也叫journal文件。
展開 命名宏
宏的名字應盡量以字母開始,并且能夠與該宏的功能有所聯(lián)系。比如,一個將單個的PIPE16單元分為n份的宏可以取名“E16SPLIT.MAC”。也可以簡稱為“SPLIT16.MAC”,但是如果六個月后,當你想再搜索這個宏時,那么由于是想對單元進行操作,所以如果名字以“E”開始,搜索就非常方便了。宏的數(shù)量很少的話,這樣命名倒不是很必要;但如果你有幾百個宏的話,并且又不記得宏的名字了,這時你就可以在很快的時間里找到你需要的宏。
宏的介紹和使用信息
在宏的頂端,應該列出宏的名字、功能、使用的變量和任何對你自己和其他用戶有用的信息。
在宏中加入編寫者的名字、編寫的日期、針對的ANSYS版本也是非常有用的。因為可以幫助其他用戶了解該宏,并根據(jù)最新的版本進行更新。記住編寫宏的第一定律:今天的宏在明天就會變異成象形文字。現(xiàn)在看起來充滿邏輯和顯而易見的事,下周就會需要三個小時來破解,半年后的難度可能就僅次于曼哈頓計劃了。現(xiàn)在花一、兩分鐘在宏的開始添加的信息會讓你和其他使用者以后更輕松。
注釋
根據(jù)上面的第一定律,我們應該把正在做的和為什么這樣做都完全寫入注釋,就象將來的使用者對這個宏毫無了解一樣。因為六個月后,你可能就是這個使用者。
參數(shù)的使用
以下劃線開始的參數(shù)是ANSYS用于UIDL菜單、追蹤信息(寫入CDWRITE,LSWRITE文件,關鍵字狀態(tài)等)的保留參數(shù)。因此最好不要以下劃線開始來命名參數(shù),以避免和現(xiàn)在或以后ANSYS會使用的參數(shù)沖突。
跟蹤下劃線參數(shù)
這種情況發(fā)生在編寫的宏將來會被其他人使用的情況,實質上我們一般都會和同事共享宏,因此幾乎所有的宏都是這樣的。每一個宏都應該在宏的開始和結尾通過“*DEL,,PRM”命令清除參數(shù)。這會使你在宏中創(chuàng)建的參數(shù)不會與已定義的參數(shù)產(chǎn)生沖突或帶來問題。
展開 宏截圖(部分命令)
僅需將宏文件存入ANSYS安裝目錄下的apdl文件下即可調用,僅需運行宏就可輕松獲得支反力,省去長串a(chǎn)dd和prod命令(當然直接在后處理用循環(huán)語句也可完成,這里只是給出另一辦法)
調用命令如下圖,先選所需節(jié)點,再運行宏,就可在時間后處理查看了
選擇所需節(jié)點,這里是多個節(jié)點,故arg2填寫0
時間后處理查看,RY為例子所需支反力
因為模型是對稱的,故做了處理
曲線如圖,與上一篇帖子曲線一致
歡迎掃碼添加宇熠工作人員微信
申請進入 Ansys 光學交流群
添加工作人員
現(xiàn)在將宏另存為ZTCA3.zpl并運行它。 該宏將產(chǎn)生以下繪圖:
光研科技南京有限公司是國內可靠的Ansys Zemax光學設計軟件代理商!公司已經(jīng)為廣大企業(yè),研究所以及高校提供了很多優(yōu)秀的相關產(chǎn)品和服務,在行業(yè)內建立了值得信任的口碑。
Ansys Zemax光學軟件
咨詢與訂購方式
聯(lián)系人:光研科技南京有限公司徐保平
手機號:15051861513
微信號:13627124798

ansys宏的相關專題、標簽、搜索
ansys宏的最新內容
附件下載
聯(lián)系工作人員獲取附件
本文將演示如何在具有制冷型探測器的紅外系統(tǒng)中分析冷反射效應。冷反射圖像是由光學系統(tǒng)表面反射形成的制冷型探測器的圖像,當(近)對焦時,在圖像中將產(chǎn)生一個黑暗的中心斑點。
分析將從使用OpticStudio的鬼像分析生成鬼像文件開始,并收集每個文件的漸暈和傳輸數(shù)據(jù)。
冷反射積分系數(shù)是根據(jù)用戶輸入的溫度數(shù)據(jù)(外殼、探測器和環(huán)境)計算出來的。表面NITD
本文介紹如何使用Zemax編程語言 (ZPL) 創(chuàng)建宏來計算和繪制用戶自定義的性能指標。 在本示例中,系統(tǒng)的環(huán)帶垂軸色差 (Zonal Transverse Chromatic Aberration, ZTCA) 將被分析。在解釋了需要使用的基本算法之后,本文將描述如何將宏通用化以允許用戶進行更加靈活的使用,包括用戶輸入和錯誤捕獲。作者 Alessandra Croce附件下載文章附件簡介假設我們要計算系統(tǒng)的環(huán)帶垂軸色差
ANSYS程序用宏這種方式完成自適應網(wǎng)格劃分,本身就使得用戶可以對其進行相應的修改以適應不同的要求。方便的是,用戶不用總是通過修改ADAPT代碼的方式來定制宏。宏的三個部分可以用用戶子程序的方法來修改,這個方法將ADAPT宏和用戶文件分開,用戶可以生成子程序由ADAPT宏來調用。這三個部分是:網(wǎng)格劃分命令序列,邊界條件命令序列和求解命令序列。
在ANSYS中是通過宏文件來實現(xiàn)這一功能的,該功能只能應用于靜力結構分析和線性穩(wěn)態(tài)熱分析中,且不能一次自適應分析中同時進行熱和結構兩種計算;同時整個模型盡量采用一種材料,在不同材料的過度區(qū)域往往不能進行處理,模型的單元必須使用支持誤差計算單元,如SOLID45、SHELL63等。
的宏文件中接著寫入引號中的語句并實現(xiàn)相應操作。
宏文件在ansys中可以當作定義的ansys命令進行使用,可以帶有宏輸入?yún)?shù),也可以有內部變量,同時在宏內部可以直接引用總體變量。除了執(zhí)行一系列的ansys命令之外,宏還可以調用GUI函數(shù)或把值傳遞給參數(shù)。
宏截圖(部分命令)
僅需將宏文件存入ANSYS安裝目錄下的apdl文件下即可調用,僅需運行宏就可輕松獲得支反力,省去長串a(chǎn)dd和prod命令(當然直接在后處理用循環(huán)語句也可完成,這里只是給出另一辦法)
調用命令如下圖,先選所需節(jié)點,再運行宏,就可在時間后處理查看了
選擇所需節(jié)點,這里是多個節(jié)點,故arg2填寫0
時間后處理查看,RY為例子所需支反力
因為模型是對稱的
ANSYS程序用宏這種方式完成自適應網(wǎng)格劃分,本身就使得用戶可以對其進行相應的修改以適應不同的要求。方便的是,用戶不用總是通過修改ADAPT代碼的方式來定制宏。宏的三個部分可以用用戶子程序的方法來修改,這個方法將ADAPT宏和用戶文件分開,用戶可以生成子程序由ADAPT宏來調用。這三個部分是:網(wǎng)格劃分命令序列,邊界條件命令序列和求解命令序列。
ANSYS Workbench的宏文件及宏文件代碼
在Abaqus軟件和ANSYS經(jīng)典里面,都可以通過特定的語言編寫命令,以代替GUI操作,并且這些語言能夠實現(xiàn)很多GUI界面不能實現(xiàn)或者很難實現(xiàn)的工作。Abaqus中所有的操作都可以用相應的Python語句代替,在ANSYS經(jīng)典中所有的操作都可以用相應的APDL語句代替。
那么Workbench中有沒有這樣的方式呢?
讀入數(shù)據(jù),創(chuàng)建ansys的臨時宏文件 ansuitmp
*Vread,Prs(1,1),'kpres','txt','',22,,,,,,
(E8.2,E11.3)
*end
/input,ansuitmp
此段命令流定義一個二維素組Prs,22行;
并創(chuàng)建一個臨時的宏文件,這個可有可無
*Vread是文件讀取命令,讀取kpres.txt文件,并將兩列數(shù)據(jù)保存在數(shù)組中
之后便可以從數(shù)組中直接調用具體數(shù)據(jù)