
發布
注冊
/
登錄ansys查看定義的數組的案例
Ansys使用APDL 批量創建數組,一維數組名設置循環變量,與二維數組等效
APDL 批量創建數組,在一維數組名上做文章,實現其與二維數組近似相同效果
首先批量創建了8個一維數組,數組名中的循環變量j使用%j%
finish
/prep7*do,j,1,8
*dim,List%j%,array,10,1
*enddo
然后給八個數組里的每一個元素賦值,總共80個元素
并且以數組元素值作為節點編號,同數組的y坐標值相同
*do,i,1,10
*do,j,1,8
List%j%(i,1)=(i-1)*10+j
n,List%j%(i,1),i,j
*enddo
*enddo
最終效果如下
注:轉自 https://blog.csdn.net/weixin_43717845/article/details/104567039
小白一枚,本為學習之余的記錄,希望能讓些跟我一樣的初學者少走彎路,寫的也不盡嚴謹,有疏漏錯誤之處也請各位專家指出,不吝賜教……多謝
展開 用table數組定義軸承剛度,剛度值隨轉速變化,定義之后如何使用這個剛度值求解轉子系統臨界轉速?
我用214單元模擬軸承求解轉子系統的臨界轉速,把剛度設置為轉速的函數,但是把命令流輸入之后ANSYS到了求解部分就自動停止,不進行計算。下面是定義table數組和求解部分的命令流,請前輩指點下錯誤出在哪里。
另外,出問題后我查過file.err里面有一個錯誤提示大意是:omegas missing。
/prep7
l0=1.3
omega1=0
omega2=4000
omega3=8000
kxx1=3.2e6
kxx2=3e6
kxx3=3.5e6
kyy1=8e6
kyy2=8.2e6
kyy3=8.6e6
cx=2e-4
cy=1e-3
*dim,kxx,table,3,1,1,omegas
kxx(1,1)=kxx1,kxx2,kxx3
kxx(1,0)=omega1,omega2,omega3
*dim,kyy,table,3,1,1,zhuansu
kxx(1,1)=kyy1,kyy2,kyy3
kxx(1,0)=omega1,omega2,omega3
et,1,185,,2
et,2,214
keyopt,2,3,1
et,3,214
keyopt,3,3,1
et,4,21
r,1
r,2,%kxx%,%kxx%,,,cx,cx
r,3,%kyy%,%kyy%,,,cy,cy
/solu
nmod=10
antype,modal
modopt,qrdamp,nmod,,,on
mxpand,nmod,,,yes
coriolis,on,,,on
*do,i,1,3
omega,,,rotation(i,1)*2*acos(-1)/60
solve
*enddo
finish
展開 ansys,熱流密度以數組形式加載的過程。
建立了數組,用GUI加載的過程
基于ANSYS參數化數組的塔筒建模 ¥12.5
塔筒幾何模型
塔筒有限元模型
塔筒模態分析
塔筒靜力分析
附件包括5個文件,其中jianmo-10-11.txt、loads.txt、mat.txt、modal.txt和shuzu-10-11.txt。順序為先mat.txt再shuzu-10-11.txt再jianmo-10-11.txt。最后modal.txt和loads.txt都可以求解。

【ANSYS經驗技巧】- 學會使用變量數組函數(轉載)
n4 }1 k m6 I' q# e
1)存儲變量到指定文件中使用PARSAV命令或選擇菜單 utility menu——parameters——save parameter
格式如下:
PARSAV,LAB,文件名,擴展名
LAB包括scalar和all
Scalar——要存儲的變量名(不包括數組表)
All——存儲所有參數包括數組和表
2)從一個文件中恢復已存在的參數使用PARRES命令選擇菜單
Utility menu——parameters——restore parameters
格式如下:
Parres,lab,文件名,擴展名
Lab——new和change
New——表示恢復的參數將覆蓋程序內存中的變量(replace)
Change——表示恢復的參數將以合并方式增加到程序內存中(merge)
三.數組及其應用
1.ANSYS允許定義的數組類型
1)ARRAY數值型數組——ARRAY數值型數組是缺省的數組類型,用于存儲整行式或實型數據,行列和面的下標從1開始的連續整數。
2)CHAR字符型數組——CHAR字符型數組用于存儲字符串的數組,行列面的下標是從1開始的連續證書。
3)table表——table表用于存儲整數或實數,是一種特殊的數值型數組,可以實現在數組元素之間的線性差值算法。可以給每一行,列面定義數組下標,并且下標為實數(而不是連續的整數),可以根據下標實現數據差值算法。
4)STRING字符串數組,可用*DIM,STRING可以將字符串輸入到數組中,其列與面下標從1開始,行號由字符在字符串中的位置確定。
以上三種類型的數組都不能超過(2-1)/8字表長度。
展開 Ansys Zemax|如何自定義優化操作數
雖然Zemax OpticStudio有300多個內建優化操作數,但是還是會有一些特殊情況是這300多個操作數無法涵蓋的。這就要求使用者根據要求計算出某些特定的數值,將這些數值返回到某個操作數,再對此操作數進行優化。
Zemax OpticStudio支持用戶編程,計算出特定的數據,再通過Merit Function Editor(MFE)中的操作數來定義該數據。這些數據可以是獨立于Zemax OpticStudio計算的,也可以是由Zemax OpticStudio計算的但是沒有具體的優化操作數表達的。當然,不管是上述哪種情況,使用者都可以用以下兩種方法計算此數值:
使用ZPL宏語言
使用外部定義和匯編程序
ZPL宏具有容易編寫、執行快速、以及和Zemax OpticStudio集成較好的特點。只要使用者具備一點點的編程經驗就可以編程計算。
另外ZPLM優化操作數可以用于從評價函數中調用ZPL宏,這樣使用者就可以直接使用宏計算出結果并返回到評價函數編輯器中從而實現優化。
本文我們將介紹如何使用宏計算并通過操作數ZPLM將數值返回給評價函數。
附件下載
聯系工作人員獲取附件
使用操作數ZPLM返回宏計算的數值
如果您不熟悉如何創建、編輯、保存和執行宏,推薦閱讀“編程語言 (ZPL) 簡介”,然后再繼續本練習。
現在,假設我們需要計算并優化Working F/#。當然Zemax OpticStudio中操作數WFNO已經可以解決此問題,本文只是舉一個例子。所以我們可以先假設操作數WFNO不存在,我們需要用宏計算該數值并返回到評價函數中進行優化。Working F/#的定義如下:
其中n為像方空間的折射率, θ為實際邊緣光線(Real Marginal Ray)在像空間的角度。
展開 ANSYS如何將數組中數據導入表中命令流并用曲線畫出
ANSYS如何將數組中數據導入表中命令流并用曲線畫出
問題描述:將路徑數據導出為數組后,直接將parameter->array parameter->define/edit中的數組用plot->array parameter畫出的是柱狀圖,如圖1所示,但是現在想降柱狀圖轉化為曲線圖。
解決思路:
1)將路徑數據導出后,數組的弟四列是路徑長度S,第五列是ux,我們想用S做橫坐標,ux做縱坐標畫出曲線。數組是ARUX02(21,30,1),如圖2。定義一個表E_TABLE(21,1,1),將數組的弟四列路徑長度符給表的弟0列,將數組弟五列ux符給表的弟1列。
2)導出表中的數據,彈出窗口如圖3所示。
3)執行繪制曲線命令。
parameter->array parameter->define/edit中的PARX=E_TABLE(1,0,1),PARY=E_TABLE(1,0,1),
結果如圖4所示。
展開