
發布
注冊
/
登錄Ansys的mod函數的案例
Proe如何使用mod函數?
4.在【關系】窗口中添加如下的關系:
if mod(idx1,10)==0 /* 如果第一方向陣列個數除以10。余數是0,那么他的最后長度就是3
memb_v=3
else /*表示上面程序結束,也可以表示否則的話直線長度為1
memb_v=1
endif
點擊確定。
5.將陣列類型選擇“軸”,因為在軸陣列不能添加關系,因此我們先在尺寸陣列中添加關系,再轉為軸陣列。陣列控制面板按照下圖設置。
完成。
從形函數與函數的連續可導性到ansys結果中的節點解與單元解的差異
如題,《從形函數與函數的連續可導性到ansys結果中的節點解與單元解的差異》,形函數對結果的影響大部分人都能聯想到二次單元比線性單元求得的結果更精確,但該文要表達的不僅如此,而是從更一般地討論怎么從單元的形函數來理解節點解與單元解之間的差異。
首先討論單元的階次。作為基礎我們應該明白網格與單元的區別,網格是將幾何體離散化后的結構,即組成幾何體的微元,單元是這些微元的幾何、物理或數學屬性(這里我們并不打算詳細討論單元的這些屬性,但是這些知識會方便對本文的理解)。我們經常在使用ansys或其他CAE軟件時經常會遇到單元的選擇以及單元階次的選擇,一般一種單元包括線性單元和二次單元甚至更高級的單元,比如在ansys中經常被使用的shell181(左)和shell281(右),線性單元使用的形函數是一次的多項式,高次單元使用的形函數是高次的多項式,形函數用于描述相鄰節點之間的位移場,所以高次的單元可以更好的描述形狀復雜的幾何體。
不同于常規材料力學中通過平衡方程求解(首先求得的解是力解),有限元方式求解的特點是首先求解出的結果是節點的位移解,即displacement of nodes,所有的節點位移形成了位移場,在空間上位移場一定是連續的,但是不一定是平滑的。哎哎,是不是特別熟悉的感覺,正是和高數中函數的連續性和可導性兩個性質非常相似,不用奇怪,位移場本來就是用函數描述的,所以自然就存在函數的性質,所以用函數的性質來理解就可以方便解釋一些現象了,下圖分別是用兩種形函數描述的位移場,在有限元求解后得到的首先是節點位移解,即圖中5個節點的位移,假如每個節點的位移用坐標x\y\z的函數來表示,然后通過形函數插值得到相鄰節點之間的位移(也是xyz的函數),上圖是用一次形函數插值,下圖是用二次形函數插值。
展開 ansys的取值函數
有關實體狀態的取值函數
NSEL(N)
ESEL(E)
KSEL(K)
LSEL(L)
ASEL(A)
VSEL(V)
表示某個實體狀態,其返回值-1,沒有選中,0,沒有定義,1,被選中
有關下一個被選實體的取值函數
NDNEXT(N)
ELNEXT(E)
KPNEXT(K)
LSNEXT(L)
ARNEXT(A)
VLNEXT(V)
表示編號大于N,E,K,L,A,V的下一個被選實體
有關實體位置的取值函數
CENTRX(E)
CENTRY(E)
CENTRZ(E)
單元E在中心位置的X,Y,Z的坐標系(直角坐標系),有所選的節點決定
NX(N)
NY(N)
NZ(N)
KX(K)
KY(K)
KZ(K)
節點N或關鍵點K在激活坐標系中X,Y,Z的坐標值
LX(L,LFRAC)
LY(L,LFRAC)
LZ(L,LFRAC)
線段L在長度比率為LFRAC(0~1)時的X,Y,Z的坐標值
有關最靠近某位置的節點或關鍵點編號的取值函數
NODE(X,Y,Z)
KP(X,Y,Z)
被選擇的節點嘴靠近X,Y,Z位置的節點或關鍵點編號(在激活的坐標系下,如果存在多個節點或關鍵點,那么取其最小值)
有關距離的取值函數
DISTND(N1,N2)
DISTKP(K1,K2)
節點或關鍵點兩點之間的距離
DISTEN(E,N)
單元E的中心點與節點N之間的距離,中心點將由單元上被選擇的節點確定
有關角度的取值函數
ANGLEN(N1,N2,N3)
ANGLEK(K1,K2,K3)
節點或關鍵點兩條邊之間的夾角,缺省時單位為弧度,其中所選擇的3個節點中,N1或K1是頂點
有關最靠近實體的節點,關鍵點和單元的取值函數
NNEAR(N)
最靠近節點N的被選節點
KNEAR(K)
最靠近關鍵點K的被選關鍵點
ENEARN(N)
最靠近節點N的被選單元,單元的位置將由被選節點確定
有關面積的取值函數
展開 ANSYS 內部函數
1. distnd( i,j) — I,j 兩點的距離
2. node(x,y,z) — 提取距離位置(x,y,z)最近的節點號
3. kp(x,y,z) — 提取距離位置(x,y,z)最近的關鍵點號
4.基本函數
ABS(x)
Absolute value of x.
SIGN(x,y)
Absolute value of x with sign of y. y=0 results in positive
sign.
EXP(x)
Exponential of x (ex).
LOG(x)
Natural log of x (ln (x)).
LOG10(x)
Common log of x (log10(x)).
SQRT(x)
Square root of x.
NINT(x)
Nearest integer to x.
MOD(x,y)
Remainder of x/y. y=0 returns zero (0).
RAND(x,y)
Random number (uniform distribution) in the range x to y (x = lower
bound, y = upper bound).
GDIS(x,y)
Random sample of a Gaussian (normal) distribution with mean x and
standard deviation y.
展開 
Ansys Zemax | 什么是點擴散函數( PSF )
附件下載
聯系工作人員獲取附件
本文討論了如何在 OpticStudio 中對點擴散函數進行建模和解釋。使用的分析特征是 Spot Diagram、FFT PSF 和 Huygens PSF。將討論每種工具的優點,以及用于最準確分析的有用特征設置。
介紹
光學系統的點擴散函數 (PSF) 是單個點光源產生的輻照度分布。(望遠鏡拍攝遙遠恒星的圖像就是一個很好的例子。盡管源可能是一個點,但圖像不是。有兩個主要原因:首先系統中的像差會將圖像傳播到有限的區域;其次衍射效果也會擴散圖像,即使在沒有像差的系統中也是如此。
OpticStudio 有三種基本類型的 PSF 計算:幾何(無衍射)點列圖、基于衍射的 FFT 和 Huygens PSF。本文將討論基本理論,并就正確使用每種類型的 PSF 提供一些指導。
點列圖
OpticStudio 中最基本的分析功能之一是點列圖。此功能從物空間中的單視場點發射許多光線,通過光學系統追跡所有光線,并繪制所有光線相對于某個公共參考的 (x,y) 坐標。因此,點列圖本身就可以看作一個幾何 PSF。
這里使用的示例光學系統是一個焦距為 50 mm 的單拋物面 F/5 反射鏡,物位于無窮遠處。該系統是一個簡化的牛頓望遠鏡,包含的示例文件為 PSF_Newtonian.ZMX。以下是光學系統的外觀:
兩個視場點(一個在軸上,另一個呈 2 度角)的點列圖如下所示。
請注意,點列圖是光線落點的集合,每個點表示一條光線。光線之間沒有相互作用或干擾。點列圖在顯示望遠鏡的幾何或光線像差的影響方面非常有效。離軸幾何 PSF 清楚地顯示了系統的彗差和像散。然而在軸上,點列圖預測了完美的成像。但這是否準確代表了光學系統的性能?為了回答點列圖結果的這個問題,我們需要將點列分布與衍射極限響應進行比較。
展開 ANSYS 支持的函數列表
ANSYS 支持的函數列表,備用與共享,以后不要老再去找了
SIN(X) Sine
COS(X) Cosine
TAN(X) Tangent
ASIN(X) Arcsine
ACOS(X) Arccosine
ATAN(X) Arctangent
ATAN2(Y,X) Arctangent (Y/X) with the sign of each component considered
SINH(X) Hyperbolic sine
COSH(X) Hyperbolic cosine
TANH(X) Hyperbolic tangent
SQRT(X) Square root
ABS(X) Absolute value
SIGN(X,Y) Absolute value of X with sign of Y.
展開 ANSYS的“get”函數列表
自己收藏并與大家分享,來自于ANSYS的help
“get函數”可用于某些項,并可用于代替*get命令。函數返回值并在函數被輸入的地方使用它,繞過了用參數名存儲值和在要使用值的地方輸入參數名的需要。
例如,假設要計算兩個節點的平均X位置。使用*GET命令,參數L1可以指定節點1的X位置,參數L2可以指定節點2的X位置。然后,可以從mid=(L1+L2)/2計算mid位置:
*GET,L1,NODE,1,LOC,X
*GET,L2,NODE,2,LOC,X
MID=(L1+L2)/2
但是,使用返回節點N的X位置的節點位置“get ”函數NX(N),可以直接計算MID,而不需要中間參數L1和L2:
MID=(NX(1)+NX(2))/2
除非另有說明,否則Get函數返回活動坐標系中的值。
Get函數參數本身可能是參數或其他Get函數。get函數NELEM(E,NPOS)返回元素編號E的NPOS位置的節點號。組合函數NX(NELEM(E,NPOS))返回該節點的X位置。
下表列出了按功能分組的可用get函數。*GET命令還列出GET函數作為*GET items的替代項(如果適用)
Table 1: *GET - Get Function Summary
"Get Function" Summary
Entity Status Get Function Description
NSEL(N) Status of node N: -1=unselected, 0=undefined, 1=selected.
ESEL(E) Status of element E: -1=unselected, 0=undefined, 1=selected.
展開 Ansys Wrokbench分段復雜函數載荷,加載方式記錄 ¥10
問題:
Ansys Workbench的載荷加載形式有三種,constant/table/function。Constant是在載荷步內給定恒定值;table形式較為便捷,可以在定義每個子步的載荷大??; function形式可以輸入以time/X/Y/Z為變量的簡單方程。
但是仍有某些形式的載荷較難輸入,例如分段復雜函數載荷等。
解決方法:
需要使用Ansys經典界面的function功能編輯分段載荷獲得ADPL載荷命令;再利用Workbench中command的形式施加載荷。
操作方式:
1. Ansys經典中function公式編輯器輸入分段函數。
在function頁卡中選著變量time,在Regime頁卡中逐個定義分段函數;
定義完成后點擊保存,并輸入函數名“TEST3.func”
2. 再次點擊標題欄的Parameters>Functions>Read From files>找到剛才保存的TEST3.func。并在Table Parameter Name中給編輯導入的分段函數命名PForce。此后分段函數即被公式編輯器編譯為表格數組形式,數組的名稱為:PForce。
3. 提取分段函數數值的ADPL命令形式,用于Workbench使用。
完成分段函數導入和命名后,在下拉列表中的File>List>Log file中可以查看經典界面GUI操作對應的ADPL命令。在這里可以將上述function公式編輯器導入的分段函數數組對應ADPL命令顯示出來。(有時log file顯示不及時,再重復一次即可)
4. 在Workbench內創建加載remote point點,并設定加載點的ADPL name為“LoadPoint“,用于加載。
展開 ANSYS 中添加窗函數
比如說我要施加一個周期性的沖擊 希望他作用2個周期后停止
ANSYS知識普及4——如何施加函數變化的表面載荷 (ANSYS專家編輯,非原創,歡迎轉摘)
本人準備出一個ANSYS知識普及系列,將有用的網上資料歸攏,由于知識水平有限,不對之處請諒解。也歡迎各位網友提供好的資料分享,讓我們共同完成這個ANSYS知識普及系列。
編輯人:技術鄰ANSYS專家
業務咨詢網址:http://www.yqgqt.org.cn/content/other/402981
(打個小廣告)
聲 明:1、ANSYS知識普及系列中所有資料均來自網上;
2、如侵犯知識產權,請聯系ANSYS專家本人或者技術鄰,我將第一時間刪除。
小技巧:加本人關注,可以及時觀看本人發布的技術貼
ANSYS具有函數加載功能,可以很方便地在模型表面施加函數變化的各種載荷,在ANSYS中,也可以通過變通的方式來實現此功能,其思路是:
首先選定所要施加函數變化表面載荷的表面上的節點,利用ANSYS的參數數組和嵌入函數知識寫一簡單的命令流,定義好相應節點位置的面載荷值,然后通過在節點上施加面載荷來完成。
下面以在一圓柱表面施加函數變化載荷為例:
/prep7
et,1,45
cyl4,,,0.5,,,,3
vsweep,all
asel,s,loc,y,0.01,1
nsla
!
*get,nmax,node,,num,max,
*get,nmin,node,,num,min,
*afun,deg
*dim,t1,array,nmax,1,1,
csys,1
*do,k,nmin,nmax
*if,nsel(k),eq,1,then
t1(k)=1000*sin(ny(k))
*else
t1(k)=0
*endif
*enddo
!
sffun,pres,t1(1)
sf,all,pres,0
展開 如何利用ANSYS的隨機分布函數功能
作者:水哥ANSYS
來源:本文源于ANSYS結構院,上海安世亞太授權轉載
隨機分布在材料微觀力學分析中扮演著重要角色,例如混凝土骨料力學、新型材料纖維力學分析等內容,提及隨機分布,更多的同學可能會聯想到采用第三方軟件如Matlab來生成,并導入ANSYS計算,其實ANSYS本身自帶隨機分布功能,只是功能略有限制。
ANSYS中產生隨機分布的一個重要函數是 *VFILL,該函數主要的作用是對數組進行填充賦值,而在賦值的過程中,用戶既可以選擇自定義數據內容,也可以選擇利用隨機函數產生數值,ANSYS Help中*VFILL說明如下:
該函數主要輸入參數為數組名稱以及輸入數據的函數,當選擇為data時,表示用戶自定義數據進行填充,當選擇其他選項時,則根據函數類型進行填充。
*VFILL隨機數生成支持均勻分布(Rand)、高斯分布(GDIS)、三角分布(TRIA)、貝塔分布(BETA)、伽馬分布(GRMM),*VFILL用于批量生成,如果需要單獨生成數據,則可以分別使用函數:
1) num=Rand(con1,con2)
2) num=Gdis(con1,con2)
3) num=Tria(con1,con2,con3)
4) num=Beta(con1,con2,con3,con4)5) num=Gram(con1,con2,con3)
上述con1~con4分別表示函數參數,例如針對均布分布,con1和con2分別表示分布的下限和上限。
下面分別以均布分布、高斯分布、伽馬分布為例進行演示。
1、均布分布
APDL代碼:
finish
/clear
/prep7
numA=1000
!
展開 
手把手教你ANSYS的函數加載
最近論壇里很多人問我,如何施加函數載荷。
我今天給大家奉獻的是任意函數加載的操作步驟詳解,手把手教大家操作自定義的函數加載。
如果覺得還不錯,頂下帖子,也算對我的鼓勵了!
大家有什么ANSYS 或 Workbench Mechanical 相關的問題,可以隨時**我 ansys123@qq.com
手把手教你ansys函數加載.doc
ANSYS中可以使用的數學函數
在ANSYS幫助系統中關于*SET命令的注釋下列出了ANSYS中可以使用的數學函數。所有這些數學函數均可以在ANSYS環境中使用,這些數學函數包括:
ABS(X) 求絕對值
ACOS(X) 反余弦
ASIN(X) 反正弦
ATAN(X) 反正切
ATAN2(X,Y) 反正切, ArcTangent of (Y/X) , 可以考慮變量X,Y 的符號
COS(X) 求余弦
COSH(X) 雙曲余弦
EXP(X) 指數函數
GDIS(X,Y) 求以X為均值,Y為標準差的高斯分布,在使用蒙地卡羅法研究隨機荷載和隨機材料參數時,可以用該函數處理計算結果
LOG(X) 自然對數
LOG10(X) 常用對數(以10為基)
MOD(X,Y) 求 X/Y的余數. 如果 Y=0, 函數值為 0
NINT(X) 求最近的整數
RAND(X,Y) 取隨機數,其中X 是下限, Y是上限
SIGN(X,Y) 取 X的絕對值并賦予Y的符號. Y>=0, 函數值為|X|, Y<0, 函數值為-|X|,.
SIN(X) 正弦
SINH(X) 雙曲正弦
SQRT(X) 平方根
TAN(X) 正切
TANH(X) 雙曲正切
展開 ansys載荷為位置函數的一個例子
設壓力分布函數為F=2RSIN(AF)COS(XT)
命令流
*do,i,1,N (共N個單元)
csys,2 (激活極坐標系)
esel,,,i (選擇第i個單元)
xe=centrx(i) (xe為單元中心X坐標)
ye=centry(i) (ye為單元中心y坐標)
ze=centrz(i) (ze為單元中心z坐標)
*GET,AA,ELEM,I,AREA
f=2*sin(xe)*cos(ye)*cos(ze)
sfe,i,1,pres,,f/AA,,,
*enddo
=====================
先選要加載荷的面,get其最大單元號和最小單元號。再做上面提到的循環,循環從最小單
元號到最大單元號。循環過程中,判斷所循環的單元號在所選的面內是否存在。
命令流:
asel,... (要加載荷的面)
esla,,,, (和面相聯的單元)
*GET,eMAX,ELEM,0,NUM,MAX !獲取最大單元號
*GET,eMIN,ELEM,0,NUM,MIN !獲取最小單元號
*do,i,emin,emax
*if,esel(i),eq,1,then (該句語法請查幫助,這里憑記憶寫出)
?。?!*do,i,1,N (共N個單元)
csys,2 (激活極坐標系)
esel,,,i (選擇第i個單元)
xe=centrx(i) (xe為單元中心X坐標)
ye=centry(i) (ye為單元中心y坐標)
ze=centrz(i) (ze為單元中心z坐標)
*GET,AA,ELEM,I,AREA
f=2*sin(xe)*cos(ye)*cos(ze)
sfe,i,1,pres,,f/AA,,,
*endif (判斷結束)
*enddo
展開 ANSYS 查詢函數(Inquiry Function)(很有用)
ANSYS 查詢函數(Inquiry Function)
資料來源:www.iccae.com
在ANSYS操作過程或條件語句中,常常需要知道有關模型的許多參數值,如選擇集中的單元數、節點數,最大節點號等。此時,一般可通過*GET命令來獲得這些參數。現在,對于此類問題,我們有了一個更為方便的選擇,那就是查詢函數 — Inquiry Function。
Inquiry Function類似于ANSYS的 *GET 命令,它訪問ANSYS數據庫并返回要查詢的數值,方便后續使用。ANSYS每執行一次查詢函數,便查詢一次數據庫,并用查詢值替代該查詢函數。
假如你想獲得當前所選擇的單元數,并把它作為*DO循環的上界。傳統的方法是使用*GET命令來獲得所選擇的單元數并把它賦給一個變量,則此變量可以作為*DO循環的上界來確定循環的次數
*get, ELMAX,elem,,count
*do, I, 1, ELMAX
…
…
*enddo
現在你可以使用查詢函數來完成這件事,把查詢函數直接放在*DO循環內,它就可以提供所選擇的單元數
*do, I, ELMIQR(0,13)
…
…
*enddo
這里的ELMIQR并不是一個數組,而是一個查詢函數,它返回的是現在所選擇的單元數。括弧內的數是用來確定查詢函數的返回值的。第一個數是用來標識你所想查詢的特定實體(如單元、節點、線、面號等等),括弧內的第二個數是用來確定查詢函數返回值的類型的(如選擇狀態、實體數量等)。
同本例一樣,通常查詢函數有兩個變量,但也有一些查詢函數只有一個變量,而有的卻有三個變量。
展開