不知火舞的被虐|伊人天伊人天天综合网|博洛尼亚天气|任你懆这里只有精品4|久久美日韩精品久久|掌中之物漫画免费阅读观看|0丨d老妇

ansys調(diào)用的函數(shù)的案例

ABAQUS中調(diào)用MATLAB的函數(shù)
實(shí)例測(cè)試 在運(yùn)行程序時(shí),需要注意的是,必須將用到的自定義的m文件的目錄都包括進(jìn)去 from mlab.releases import latest_release as matlab # 添加matlab程序的位置,需要引入所有需要依賴的m文件的目錄 x = matlab.path(matlab.path(),r'C:\Users\15321\abaqus_plugins\path') # 運(yùn)行函數(shù) number = matlab.plot(x)
將HyperMath定義函數(shù)導(dǎo)入HyperStudy并調(diào)用
將HyperMath定義函數(shù)導(dǎo)入HyperStudy并調(diào)用 第一步,定義RosenBrock函數(shù) (1) 打開HyperMath,在文本輸入?yún)^(qū)內(nèi)輸入如下 function ros_eval(x,y) { f = 100.*(y-x^2)^2 + (1-x)^2 return(f) } (2)另存為rosenbrock_function.hml。退出并關(guān)閉HyperMath。 第二步,將定義函數(shù)添加至首選項(xiàng)文件Preference File (1)新建文本文檔,輸入如下 *Id("HyperStudy v12.0") *BeginDefaults() *BeginPlotDefaults() *RegisterHMATHFunction("ros_eval", "<path>/rosenbrock_function.hml", 2) *EndPlotDefaults() *EndDefaults() 將<path>替換為rosenbrock_function.hml所在的路徑。 (2)保存文本文檔為rosenbrock_prefs.mvw,退出并關(guān)閉。 第三步,HyperStudy求解 (1)啟動(dòng)HyperStudy,依次菜單欄“file-Use Preference File- rosenbrock_prefs.mvw file”,此時(shí)完成了首選項(xiàng)文件Preference File的導(dǎo)入。 (2)利用HyperStudy新建Model,類型為Internal Math (3)定義變量X和Y,如下 (4)執(zhí)行Nominal Run (5)創(chuàng)建并定義輸出響應(yīng),調(diào)用上述定義的RosenBrock函數(shù)
展開
將Python定義函數(shù)導(dǎo)入HyperStudy并調(diào)用
將Python定義函數(shù)導(dǎo)入HyperStudy并調(diào)用 第一步,定義RosenBrock函數(shù) (1) 新建文本文檔,在文本輸入?yún)^(qū)內(nèi)輸入如下 def ros_eval(x, y): return 100*(y-x*x)*(y-x*x) + (1-x)*(1-x) (2)另存為rosenbrock_function.py。退出并關(guān)閉文本文檔。 第二步,將定義函數(shù)添加至首選項(xiàng)文件Preference File (1)新建文本文檔,輸入如下 *Id("HyperStudy v14.0") *BeginDefaults() *BeginPlotDefaults() *RegisterPythonFunction("ros_eval","<path>/rosenbrock_function.py",2) *EndPlotDefaults() *EndDefaults() 將<path>替換為rosenbrock_function.py所在的路徑。 (2)保存文本文檔為rosenbrock_prefs.mvw,退出并關(guān)閉。 第三步,HyperStudy求解 (1)啟動(dòng)HyperStudy,依次菜單欄“file-Use Preference File- rosenbrock_prefs.mvw file”,此時(shí)完成了首選項(xiàng)文件Preference File的導(dǎo)入。 (2)利用HyperStudy新建Model,類型為Internal Math (3)定義變量X和Y,如下 (4)執(zhí)行Nominal Run (5)創(chuàng)建并定義輸出響應(yīng),調(diào)用上述定義的RosenBrock函數(shù)
展開
請(qǐng)教一個(gè)調(diào)用計(jì)算結(jié)果函數(shù)的問題 ¥2
需要求解層流在超聲作用下的流場(chǎng)特性,在層流模塊中添加體積力作為聲源驅(qū)動(dòng)項(xiàng)來表征超聲作用力,體積力是函壓力聲學(xué)場(chǎng)中聲壓的函數(shù); 這樣算成功調(diào)用了已求解的聲壓(actd.p_t)了嗎? 為啥我驗(yàn)算體積力的時(shí)候,云圖顯示的是0N/m^3
ansys調(diào)用的函數(shù)圖1
Snap7-S7400通訊_實(shí)現(xiàn)各種常用算法函數(shù)方便調(diào)用 ¥40
該源碼是在Snap7-S7400通訊Demo的基礎(chǔ)上進(jìn)行了幾個(gè)常用函數(shù)的封裝,以方便工程實(shí)踐的應(yīng)用。
從形函數(shù)函數(shù)的連續(xù)可導(dǎo)性到ansys結(jié)果中的節(jié)點(diǎn)解與單元解的差異
如題,《從形函數(shù)函數(shù)的連續(xù)可導(dǎo)性到ansys結(jié)果中的節(jié)點(diǎn)解與單元解的差異》,形函數(shù)對(duì)結(jié)果的影響大部分人都能聯(lián)想到二次單元比線性單元求得的結(jié)果更精確,但該文要表達(dá)的不僅如此,而是從更一般地討論怎么從單元的形函數(shù)來理解節(jié)點(diǎn)解與單元解之間的差異。 首先討論單元的階次。作為基礎(chǔ)我們應(yīng)該明白網(wǎng)格與單元的區(qū)別,網(wǎng)格是將幾何體離散化后的結(jié)構(gòu),即組成幾何體的微元,單元是這些微元的幾何、物理或數(shù)學(xué)屬性(這里我們并不打算詳細(xì)討論單元的這些屬性,但是這些知識(shí)會(huì)方便對(duì)本文的理解)。我們經(jīng)常在使用ansys或其他CAE軟件時(shí)經(jīng)常會(huì)遇到單元的選擇以及單元階次的選擇,一般一種單元包括線性單元和二次單元甚至更高級(jí)的單元,比如在ansys中經(jīng)常被使用的shell181(左)和shell281(右),線性單元使用的形函數(shù)是一次的多項(xiàng)式,高次單元使用的形函數(shù)是高次的多項(xiàng)式,形函數(shù)用于描述相鄰節(jié)點(diǎn)之間的位移場(chǎng),所以高次的單元可以更好的描述形狀復(fù)雜的幾何體。 不同于常規(guī)材料力學(xué)中通過平衡方程求解(首先求得的解是力解),有限元方式求解的特點(diǎn)是首先求解出的結(jié)果是節(jié)點(diǎn)的位移解,即displacement of nodes,所有的節(jié)點(diǎn)位移形成了位移場(chǎng),在空間上位移場(chǎng)一定是連續(xù)的,但是不一定是平滑的。哎哎,是不是特別熟悉的感覺,正是和高數(shù)中函數(shù)的連續(xù)性和可導(dǎo)性兩個(gè)性質(zhì)非常相似,不用奇怪,位移場(chǎng)本來就是用函數(shù)描述的,所以自然就存在函數(shù)的性質(zhì),所以用函數(shù)的性質(zhì)來理解就可以方便解釋一些現(xiàn)象了,下圖分別是用兩種形函數(shù)描述的位移場(chǎng),在有限元求解后得到的首先是節(jié)點(diǎn)位移解,即圖中5個(gè)節(jié)點(diǎn)的位移,假如每個(gè)節(jié)點(diǎn)的位移用坐標(biāo)x\y\z的函數(shù)來表示,然后通過形函數(shù)插值得到相鄰節(jié)點(diǎn)之間的位移(也是xyz的函數(shù)),上圖是用一次形函數(shù)插值,下圖是用二次形函數(shù)插值。
展開
ansys之——將ANSYS作為子程序調(diào)用
ANSYS作為子程序調(diào)用 對(duì)于優(yōu)化或參數(shù)化設(shè)計(jì),可以在VC或FORTRAN中將ANSYS作為子程序調(diào)用。具體調(diào)用方法如下: 1.在VC中調(diào)用ANSYS ::WinExec("d:/ANSYS57/BIN/INTEL/ANSYS57 -b -p ansys_product_feature -i input_file -o output_file",SW_SHOWNORMAL); 2.在FORTRAN中調(diào)用ANSYS LOGICAL(4) result RESULT=SYSTEMQQ('d:\ANSYS57\BIN\INTEL\ANSYS57 -b -p ansys_product_feature -i input_file -o output_file') 3.說明 1和2中,input_file為用APDL語言編寫的ANSYS輸入文件。 ansys_product_feature為你的ANSYS產(chǎn)品特征代碼。 需要注意的是,在VC中調(diào)用ANSYS時(shí),需要加一條判斷語句,以確定ANSYS 已經(jīng)執(zhí)行完畢。 在FORTRAN中不需要判斷,F(xiàn)ORTRAN會(huì)等ANSYS執(zhí)行完畢才繼續(xù)執(zhí)行下一條語句。 在VC中,我沒有找到與FORTRAN類似的函數(shù),只好加一條循環(huán)判斷語句。 如果誰能找著這樣的函數(shù),請(qǐng)告訴我,謝謝! 判斷方法很簡(jiǎn)單,只需判斷錯(cuò)誤文件file.err是否可寫就可以了。 因?yàn)楫?dāng)ANSYS在運(yùn)行時(shí),file.err是不可寫的,只有當(dāng)它運(yùn)行完畢,此文件才可寫。 數(shù)據(jù)文件(假設(shè)輸出的數(shù)據(jù)文件名為opt.out): *dim,out1,,2,1 out1(1)=dmax !目標(biāo)函數(shù) out1(2)=1-eymax !
展開
Ansys Workbench中調(diào)用Mechanical python腳本的方法及注意事項(xiàng) ¥19
"D:\Program Files\ANSYS Inc\v231\Framework\bin\Win64\RunWB2.exe" -R exportData.py 4 避坑指南(重點(diǎn)!!!) ? 即便在windows系統(tǒng)上,路徑也需要使用“/”; ? 在Ansys Mechanical中的代碼,如果存在中文(比如使用中文版Ansys界面),則必須在mechaCmd中第一行加上“# encoding: utf-8”,否則會(huì)運(yùn)行會(huì)失敗。 ? 如果將Ansys Mechanical的代碼實(shí)現(xiàn)定義為函數(shù),并在Workbench代碼中進(jìn)行調(diào)用時(shí),則mechaCmd中的字符串代碼需要以頂格為基準(zhǔn)格式,進(jìn)行代碼編寫,即認(rèn)為字符串中的Mechanical代碼與Workbench代碼“獨(dú)立”存在。
展開
ANSYS作為子程序調(diào)用
對(duì)于優(yōu)化或參數(shù)化設(shè)計(jì),可以在VC或FORTRAN中將ANSYS作為子程序調(diào)用。具體調(diào)用方法如下: 1.在VC中調(diào)用ANSYS ::WinExec("d:/ANSYS57/BIN/INTEL/ANSYS57 -b -p ansys_product_feature -i input_file -o output_file",SW_SHOWNORMAL); 2.在FORTRAN中調(diào)用ANSYS LOGICAL(4) result RESULT=SYSTEMQQ('d:\ANSYS57\BIN\INTEL\ANSYS57 -b -p ansys_product_feature -i input_file -o output_file') 3.說明 1和2中,input_file為用APDL語言編寫的ANSYS輸入文件。 ansys_product_feature為你的ANSYS產(chǎn)品特征代碼。 需要注意的是,在VC中調(diào)用ANSYS時(shí),需要加一條判斷語句,以確定ANSYS 已經(jīng)執(zhí)行完畢。 在FORTRAN中不需要判斷,F(xiàn)ORTRAN會(huì)等ANSYS執(zhí)行完畢才繼續(xù)執(zhí)行下一條語句。 在VC中,我沒有找到與FORTRAN類似的函數(shù),只好加一條循環(huán)判斷語句。 如果誰能找著這樣的函數(shù),請(qǐng)告訴我,謝謝! 判斷方法很簡(jiǎn)單,只需判斷錯(cuò)誤文件file.err是否可寫就可以了。 因?yàn)楫?dāng)ANSYS在運(yùn)行時(shí),file.err是不可寫的,只有當(dāng)它運(yùn)行完畢,此文件才可寫。 數(shù)據(jù)文件(假設(shè)輸出的數(shù)據(jù)文件名為opt.out): *dim,out1,,2,1 out1(1)=dmax !目標(biāo)函數(shù) out1(2)=1-eymax !
展開
VB調(diào)用ANSYS軟件
*主要思想: VB為ANSYS應(yīng)用的自動(dòng)化提供了可視化操作平臺(tái),可用于參數(shù)化編程等應(yīng)用。 其基本原理是,VB通過其內(nèi)部函數(shù)shell()函數(shù)實(shí)現(xiàn)對(duì)Windows應(yīng)用程序的調(diào)用。利用VB向打開的ANSYS程序?qū)懭階PDL文件,實(shí)現(xiàn)對(duì)ANSYS的控制。 對(duì)ANSYS調(diào)用的具體代碼及注釋: Option Explicit ‘變量強(qiáng)制定義控制語句 Private Sub Command1_Click() ‘進(jìn)入Command1_Click()事件過程 Dim aa ‘定義一變量,用來存放shell()函數(shù)的返回值,shell帶括號(hào)時(shí)必須有‘變量存放其返回值,不帶參數(shù)是不需要 aa= Shell("C:\Program Files\ANSYS Inc\v110\ANSYS\bin\intel\ANSYS.exe -b -p ane3fl -i shi.txt -o sh.log", 1) ‘shell函數(shù)調(diào)用ANSYS的語句,最關(guān)鍵語句,詳解見下文 Timer1.Enabled = True ‘使用Timer控件,實(shí)現(xiàn)對(duì)調(diào)用結(jié)果的檢測(cè) End Sub Private Sub Timer1_Timer() If Dir(App.Path & "\file.err") <> "" Then ‘App.Path為當(dāng)前目錄路徑,語句功能:如果有file.err文件產(chǎn)生, ‘則說明VB的shell函數(shù)對(duì)ANSYS調(diào)用成功。 MsgBox ("ANSYS運(yùn)行完畢!")
展開
MatlabGUI界面調(diào)用Ansys計(jì)算并輸出計(jì)算結(jié)果
.*'},'File Selector'); strh = [Pnameh,Fnameh]; pathname = Pnameh; set(handles.text1,'String',strh); [temp1,temp2] = xlsread(strh); set(handles.uitable1,'Data',temp1); % Update handles structure guidata(hObject, handles); 為了讀取圖示方框中的數(shù)據(jù),并用到ANSYS的APDL文件中,需要字符串的讀取和合并,首先需要使用str2num函數(shù)把字符串轉(zhuǎn)換成數(shù)值,如果沒有輸入值時(shí),使用缺省值。 將兩個(gè)txt合并成test3.mac作為APDL語言開始的參數(shù)定義,生成test3.mac之后再使用system函數(shù)調(diào)用ANSYS的求解器,并讀取test3.mac進(jìn)行計(jì)算 在計(jì)算之前,是不能生成圖片的,這時(shí)需要設(shè)置只有點(diǎn)擊“開始重構(gòu)”按鈕之后,其他按鈕才可用。 點(diǎn)擊按鈕開始計(jì)算之后,會(huì)分別輸出兩個(gè)名為residualstress.jpg和deformation.jpg的圖片,對(duì)應(yīng)的語句為 /image,save,'E:\GUIRStest\residualstress',jpg 設(shè)置當(dāng)點(diǎn)擊“生成殘余應(yīng)力云圖”和“生成角變形云圖”時(shí),會(huì)讀取圖片的路徑并使用imshow生成圖片。 至此,一個(gè)簡(jiǎn)易的MatlabGUI界面調(diào)用ANSYS計(jì)算并輸出圖片就完成了。
展開
ansys調(diào)用的函數(shù)圖2
Matlab調(diào)用ANSYS進(jìn)行參數(shù)優(yōu)化
使用Maltab中的system函數(shù),實(shí)現(xiàn)Matlab與Ansys的交互,即可實(shí)現(xiàn)相同模型計(jì)算數(shù)千遍并輸出數(shù)據(jù)。 MATLAB調(diào)用ANSYS進(jìn)行有限元分析步驟如下: MATLAB生成數(shù)據(jù),并以科學(xué)計(jì)數(shù)法的形式寫出到一個(gè)txt文件input.txt中; 編寫ansys的APDL程序,在MATLAB環(huán)境下使用函數(shù)"system"調(diào)用APDL程序,ANSYS以batch方式運(yùn)行進(jìn)行分析求解,并輸出想要分析的結(jié)果,寫出到一個(gè)txt文件output.txt MATLAB調(diào)用output.txt,進(jìn)行數(shù)據(jù)分析。
展開
ANSYS 內(nèi)部函數(shù)
VLNEXT(N) Next higher volume number above N in selected set (or zero if none found). 30.距離函數(shù) DISTND(N1,N2) Distance between nodes N1 and N2. DISTKP(K1,K2) Distance between keypoints K1 and K2. DISTEN(E,N) Distance between the centroid of element E and node N. Centroid is determined from the selected nodes on the element. 31.角度函數(shù) (缺省單位為弧度,單位變換用 *AFUN 命令) ANGLEN(N1,N2,N3) Subtended angle between two lines (defined by three nodes where N1 is the vertex node). Default is in radians. ANGLEK(K1,K2,K3) Subtended angle between two lines (defined by three keypoints where K1 is the vertex keypoint). Default is in radians. 32.最近實(shí)體函數(shù) NNEAR(N) Selected node nearest node N. KNEAR(K) Selected keypoint nearest keypoint K. ENEARN(N) Selected element nearest node N.
展開
ansys的取值函數(shù)
有關(guān)實(shí)體狀態(tài)的取值函數(shù) NSEL(N) ESEL(E) KSEL(K) LSEL(L) ASEL(A) VSEL(V) 表示某個(gè)實(shí)體狀態(tài),其返回值-1,沒有選中,0,沒有定義,1,被選中 有關(guān)下一個(gè)被選實(shí)體的取值函數(shù) NDNEXT(N) ELNEXT(E) KPNEXT(K) LSNEXT(L) ARNEXT(A) VLNEXT(V) 表示編號(hào)大于N,E,K,L,A,V的下一個(gè)被選實(shí)體 有關(guān)實(shí)體位置的取值函數(shù) CENTRX(E) CENTRY(E) CENTRZ(E) 單元E在中心位置的X,Y,Z的坐標(biāo)系(直角坐標(biāo)系),有所選的節(jié)點(diǎn)決定 NX(N) NY(N) NZ(N) KX(K) KY(K) KZ(K) 節(jié)點(diǎn)N或關(guān)鍵點(diǎn)K在激活坐標(biāo)系中X,Y,Z的坐標(biāo)值 LX(L,LFRAC) LY(L,LFRAC) LZ(L,LFRAC) 線段L在長(zhǎng)度比率為L(zhǎng)FRAC(0~1)時(shí)的X,Y,Z的坐標(biāo)值 有關(guān)最靠近某位置的節(jié)點(diǎn)或關(guān)鍵點(diǎn)編號(hào)的取值函數(shù) NODE(X,Y,Z) KP(X,Y,Z) 被選擇的節(jié)點(diǎn)嘴靠近X,Y,Z位置的節(jié)點(diǎn)或關(guān)鍵點(diǎn)編號(hào)(在激活的坐標(biāo)系下,如果存在多個(gè)節(jié)點(diǎn)或關(guān)鍵點(diǎn),那么取其最小值) 有關(guān)距離的取值函數(shù) DISTND(N1,N2) DISTKP(K1,K2) 節(jié)點(diǎn)或關(guān)鍵點(diǎn)兩點(diǎn)之間的距離 DISTEN(E,N) 單元E的中心點(diǎn)與節(jié)點(diǎn)N之間的距離,中心點(diǎn)將由單元上被選擇的節(jié)點(diǎn)確定 有關(guān)角度的取值函數(shù) ANGLEN(N1,N2,N3) ANGLEK(K1,K2,K3) 節(jié)點(diǎn)或關(guān)鍵點(diǎn)兩條邊之間的夾角,缺省時(shí)單位為弧度,其中所選擇的3個(gè)節(jié)點(diǎn)中,N1或K1是頂點(diǎn) 有關(guān)最靠近實(shí)體的節(jié)點(diǎn),關(guān)鍵點(diǎn)和單元的取值函數(shù) NNEAR(N) 最靠近節(jié)點(diǎn)N的被選節(jié)點(diǎn) KNEAR(K) 最靠近關(guān)鍵點(diǎn)K的被選關(guān)鍵點(diǎn) ENEARN(N) 最靠近節(jié)點(diǎn)N的被選單元,單元的位置將由被選節(jié)點(diǎn)確定 有關(guān)面積的取值函數(shù)
展開
ANSYS的“get”函數(shù)列表
自己收藏并與大家分享,來自于ANSYS的help “get函數(shù)”可用于某些項(xiàng),并可用于代替*get命令。函數(shù)返回值并在函數(shù)被輸入的地方使用它,繞過了用參數(shù)名存儲(chǔ)值和在要使用值的地方輸入?yún)?shù)名的需要。 例如,假設(shè)要計(jì)算兩個(gè)節(jié)點(diǎn)的平均X位置。使用*GET命令,參數(shù)L1可以指定節(jié)點(diǎn)1的X位置,參數(shù)L2可以指定節(jié)點(diǎn)2的X位置。然后,可以從mid=(L1+L2)/2計(jì)算mid位置: *GET,L1,NODE,1,LOC,X *GET,L2,NODE,2,LOC,X MID=(L1+L2)/2 但是,使用返回節(jié)點(diǎn)N的X位置的節(jié)點(diǎn)位置“get ”函數(shù)NX(N),可以直接計(jì)算MID,而不需要中間參數(shù)L1和L2: MID=(NX(1)+NX(2))/2 除非另有說明,否則Get函數(shù)返回活動(dòng)坐標(biāo)系中的值。 Get函數(shù)參數(shù)本身可能是參數(shù)或其他Get函數(shù)。get函數(shù)NELEM(E,NPOS)返回元素編號(hào)E的NPOS位置的節(jié)點(diǎn)號(hào)。組合函數(shù)NX(NELEM(E,NPOS))返回該節(jié)點(diǎn)的X位置。 下表列出了按功能分組的可用get函數(shù)。*GET命令還列出GET函數(shù)作為*GET items的替代項(xiàng)(如果適用) 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.
展開