
發(fā)布
注冊
/
登錄ansys定義數(shù)組維數(shù)的案例
Ansys使用APDL 批量創(chuàng)建數(shù)組,一維數(shù)組名設(shè)置循環(huán)變量,與二維數(shù)組等效
APDL 批量創(chuàng)建數(shù)組,在一維數(shù)組名上做文章,實現(xiàn)其與二維數(shù)組近似相同效果
首先批量創(chuàng)建了8個一維數(shù)組,數(shù)組名中的循環(huán)變量j使用%j%
finish
/prep7*do,j,1,8
*dim,List%j%,array,10,1
*enddo
然后給八個數(shù)組里的每一個元素賦值,總共80個元素
并且以數(shù)組元素值作為節(jié)點編號,同數(shù)組的y坐標(biāo)值相同
*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
最終效果如下
注:轉(zhuǎn)自 https://blog.csdn.net/weixin_43717845/article/details/104567039
小白一枚,本為學(xué)習(xí)之余的記錄,希望能讓些跟我一樣的初學(xué)者少走彎路,寫的也不盡嚴(yán)謹(jǐn),有疏漏錯誤之處也請各位專家指出,不吝賜教……多謝
展開 用table數(shù)組定義軸承剛度,剛度值隨轉(zhuǎn)速變化,定義之后如何使用這個剛度值求解轉(zhuǎn)子系統(tǒng)臨界轉(zhuǎn)速?
我用214單元模擬軸承求解轉(zhuǎn)子系統(tǒng)的臨界轉(zhuǎn)速,把剛度設(shè)置為轉(zhuǎn)速的函數(shù),但是把命令流輸入之后ANSYS到了求解部分就自動停止,不進行計算。下面是定義table數(shù)組和求解部分的命令流,請前輩指點下錯誤出在哪里。
另外,出問題后我查過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,熱流密度以數(shù)組形式加載的過程。
建立了數(shù)組,用GUI加載的過程
基于ANSYS參數(shù)化數(shù)組的塔筒建模 ¥12.5
塔筒幾何模型
塔筒有限元模型
塔筒模態(tài)分析
塔筒靜力分析
附件包括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經(jīng)驗技巧】- 學(xué)會使用變量數(shù)組函數(shù)(轉(zhuǎn)載)
n4 }1 k m6 I' q# e
1)存儲變量到指定文件中使用PARSAV命令或選擇菜單 utility menu——parameters——save parameter
格式如下:
PARSAV,LAB,文件名,擴展名
LAB包括scalar和all
Scalar——要存儲的變量名(不包括數(shù)組表)
All——存儲所有參數(shù)包括數(shù)組和表
2)從一個文件中恢復(fù)已存在的參數(shù)使用PARRES命令選擇菜單
Utility menu——parameters——restore parameters
格式如下:
Parres,lab,文件名,擴展名
Lab——new和change
New——表示恢復(fù)的參數(shù)將覆蓋程序內(nèi)存中的變量(replace)
Change——表示恢復(fù)的參數(shù)將以合并方式增加到程序內(nèi)存中(merge)
三.數(shù)組及其應(yīng)用
1.ANSYS允許定義的數(shù)組類型
1)ARRAY數(shù)值型數(shù)組——ARRAY數(shù)值型數(shù)組是缺省的數(shù)組類型,用于存儲整行式或?qū)嵭蛿?shù)據(jù),行列和面的下標(biāo)從1開始的連續(xù)整數(shù)。
2)CHAR字符型數(shù)組——CHAR字符型數(shù)組用于存儲字符串的數(shù)組,行列面的下標(biāo)是從1開始的連續(xù)證書。
3)table表——table表用于存儲整數(shù)或?qū)崝?shù),是一種特殊的數(shù)值型數(shù)組,可以實現(xiàn)在數(shù)組元素之間的線性差值算法。可以給每一行,列面定義數(shù)組下標(biāo),并且下標(biāo)為實數(shù)(而不是連續(xù)的整數(shù)),可以根據(jù)下標(biāo)實現(xiàn)數(shù)據(jù)差值算法。
4)STRING字符串數(shù)組,可用*DIM,STRING可以將字符串輸入到數(shù)組中,其列與面下標(biāo)從1開始,行號由字符在字符串中的位置確定。
以上三種類型的數(shù)組都不能超過(2-1)/8字表長度。
展開 Ansys Zemax|如何自定義優(yōu)化操作數(shù)
雖然Zemax OpticStudio有300多個內(nèi)建優(yōu)化操作數(shù),但是還是會有一些特殊情況是這300多個操作數(shù)無法涵蓋的。這就要求使用者根據(jù)要求計算出某些特定的數(shù)值,將這些數(shù)值返回到某個操作數(shù),再對此操作數(shù)進行優(yōu)化。
Zemax OpticStudio支持用戶編程,計算出特定的數(shù)據(jù),再通過Merit Function Editor(MFE)中的操作數(shù)來定義該數(shù)據(jù)。這些數(shù)據(jù)可以是獨立于Zemax OpticStudio計算的,也可以是由Zemax OpticStudio計算的但是沒有具體的優(yōu)化操作數(shù)表達的。當(dāng)然,不管是上述哪種情況,使用者都可以用以下兩種方法計算此數(shù)值:
使用ZPL宏語言
使用外部定義和匯編程序
ZPL宏具有容易編寫、執(zhí)行快速、以及和Zemax OpticStudio集成較好的特點。只要使用者具備一點點的編程經(jīng)驗就可以編程計算。
另外ZPLM優(yōu)化操作數(shù)可以用于從評價函數(shù)中調(diào)用ZPL宏,這樣使用者就可以直接使用宏計算出結(jié)果并返回到評價函數(shù)編輯器中從而實現(xiàn)優(yōu)化。
本文我們將介紹如何使用宏計算并通過操作數(shù)ZPLM將數(shù)值返回給評價函數(shù)。
附件下載
聯(lián)系工作人員獲取附件
使用操作數(shù)ZPLM返回宏計算的數(shù)值
如果您不熟悉如何創(chuàng)建、編輯、保存和執(zhí)行宏,推薦閱讀“編程語言 (ZPL) 簡介”,然后再繼續(xù)本練習(xí)。
現(xiàn)在,假設(shè)我們需要計算并優(yōu)化Working F/#。當(dāng)然Zemax OpticStudio中操作數(shù)WFNO已經(jīng)可以解決此問題,本文只是舉一個例子。所以我們可以先假設(shè)操作數(shù)WFNO不存在,我們需要用宏計算該數(shù)值并返回到評價函數(shù)中進行優(yōu)化。Working F/#的定義如下:
其中n為像方空間的折射率, θ為實際邊緣光線(Real Marginal Ray)在像空間的角度。
展開 ANSYS如何將數(shù)組中數(shù)據(jù)導(dǎo)入表中命令流并用曲線畫出
ANSYS如何將數(shù)組中數(shù)據(jù)導(dǎo)入表中命令流并用曲線畫出
問題描述:將路徑數(shù)據(jù)導(dǎo)出為數(shù)組后,直接將parameter->array parameter->define/edit中的數(shù)組用plot->array parameter畫出的是柱狀圖,如圖1所示,但是現(xiàn)在想降柱狀圖轉(zhuǎn)化為曲線圖。
解決思路:
1)將路徑數(shù)據(jù)導(dǎo)出后,數(shù)組的弟四列是路徑長度S,第五列是ux,我們想用S做橫坐標(biāo),ux做縱坐標(biāo)畫出曲線。數(shù)組是ARUX02(21,30,1),如圖2。定義一個表E_TABLE(21,1,1),將數(shù)組的弟四列路徑長度符給表的弟0列,將數(shù)組弟五列ux符給表的弟1列。
2)導(dǎo)出表中的數(shù)據(jù),彈出窗口如圖3所示。
3)執(zhí)行繪制曲線命令。
parameter->array parameter->define/edit中的PARX=E_TABLE(1,0,1),PARY=E_TABLE(1,0,1),
結(jié)果如圖4所示。
展開