如何用ansys進(jìn)行優(yōu)化設(shè)計_第1頁
如何用ansys進(jìn)行優(yōu)化設(shè)計_第2頁
如何用ansys進(jìn)行優(yōu)化設(shè)計_第3頁
如何用ansys進(jìn)行優(yōu)化設(shè)計_第4頁
如何用ansys進(jìn)行優(yōu)化設(shè)計_第5頁
已閱讀5頁,還剩22頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

優(yōu)化設(shè)計什么是優(yōu)化設(shè)計?優(yōu)化設(shè)計是一種尋找確定最優(yōu)設(shè)計方案的技術(shù)。所謂“最優(yōu)設(shè)計〞,指的是一種方案可以滿足所有的設(shè)計要求,而且所需的支出〔如重量,面積,體積,應(yīng)力,費用等〕最小。也就是說,最優(yōu)設(shè)計方案就是一個最有效率的方案。設(shè)計方案的任何方面都是可以優(yōu)化的,比方說:尺寸〔如厚度〕,形狀〔如過渡圓角的大小〕,支撐位置,制造費用,自然頻率,材料特性等。實際上,所有可以參數(shù)化的ANSYS選項都可以作優(yōu)化設(shè)計?!碴P(guān)于ANSYS參數(shù),請參看ANSYSModelingandMeshingGuide第十四章。〕ANSYS程序提供了兩種優(yōu)化的方法,這兩種方法可以處理絕大多數(shù)的優(yōu)化問題。零階方法是一個很完善的處理方法,可以很有效地處理大多數(shù)的工程問題。一階方法基于目標(biāo)函數(shù)對設(shè)計變量的敏感程度,因此更加適合于精確的優(yōu)化分析。對于這兩種方法,ANSYS程序提供了一系列的分析——評估——修正的循環(huán)過程。就是對于初始設(shè)計進(jìn)行分析,對分析結(jié)果就設(shè)計要求進(jìn)行評估,然后修正設(shè)計。這一循環(huán)過程重復(fù)進(jìn)行直到所有的設(shè)計要求都滿足為止。除了這兩種優(yōu)化方法,ANSYS程序還提供了一系列的優(yōu)化工具以提高優(yōu)化過程的效率。例如,隨機(jī)優(yōu)化分析的迭代次數(shù)是可以指定的。隨機(jī)計算結(jié)果的初始值可以作為優(yōu)化過程的起點數(shù)值。根本概念在介紹優(yōu)化設(shè)計過程之前,我們先給出一些根本的定義:設(shè)計變量,狀態(tài)變量,目標(biāo)函數(shù),合理和不合理的設(shè)計,分析文件,迭代,循環(huán),設(shè)計序列等。我們看以下一個典型的優(yōu)化設(shè)計問題:在以下的約束條件下找出如下矩形截面梁的最小重量:總應(yīng)力不超過max[max]梁的變形不超過max[max]梁的高度h不超過hmax[hhmax]圖1-1梁的優(yōu)化設(shè)計例如設(shè)計變量〔DVs〕為自變量,優(yōu)化結(jié)果的取得就是通過改變設(shè)計變量的數(shù)值來實現(xiàn)的。每個設(shè)計變量都有上下限,它定義了設(shè)計變量的變化范圍。在以上的問題里,設(shè)計變量很顯然為梁的寬度b和高度h。b和h都不可能為負(fù)值,因此其下限應(yīng)為b,h>0,而且,h有上限hmax。ANSYS優(yōu)化程序允許定義不超過60個設(shè)計變量。狀態(tài)變量〔SVs〕是約束設(shè)計的數(shù)值。它們是“因變量〞,是設(shè)計變量的函數(shù)。狀態(tài)變量可能會有上下限,也可能只有單方面的限制,即只有上限或只有下限。在上述梁問題中,有兩個狀態(tài)變量:〔總應(yīng)力〕和〔梁的位移〕。在ANSYS優(yōu)化程序中用戶可以定義不超過100個狀態(tài)變量。目標(biāo)函數(shù)是要盡量減小的數(shù)值。它必須是設(shè)計變量的函數(shù),也就是說,改變設(shè)計變量的數(shù)值將改變目標(biāo)函數(shù)的數(shù)值。在以上的問題中,梁的總重量應(yīng)該是目標(biāo)函數(shù)。在ANSYS優(yōu)化程序中,只能設(shè)定一個目標(biāo)函數(shù)。設(shè)計變量,狀態(tài)變量和目標(biāo)函數(shù)總稱為優(yōu)化變量。在ANSYS優(yōu)化中,這些變量是由用戶定義的參數(shù)來指定的。用戶必須指出在參數(shù)集中哪些是設(shè)計變量,哪些是狀態(tài)變量,哪是目標(biāo)函數(shù)。設(shè)計序列是指確定一個特定模型的參數(shù)的集合。一般來說,設(shè)計序列是由優(yōu)化變量的數(shù)值來確定的,但所有的模型參數(shù)〔包括不是優(yōu)化變量的參數(shù)〕組成了一個設(shè)計序列。一個合理的設(shè)計是指滿足所有給定的約束條件〔設(shè)計變量的約束和狀態(tài)變量的約束〕的設(shè)計。如果其中任一約束條件不被滿足,設(shè)計就被認(rèn)為是不合理的。而最優(yōu)設(shè)計是既滿足所有的約束條件又能得到最小目標(biāo)函數(shù)值的設(shè)計?!踩绻械脑O(shè)計序列都是不合理的,那么最優(yōu)設(shè)計是最接近于合理的設(shè)計,而不考慮目標(biāo)函數(shù)的數(shù)值?!撤治鑫募且粋€ANSYS的命令流輸入文件,包括一個完整的分析過程〔前處理,求解,后處理〕。它必須包含一個參數(shù)化的模型,用參數(shù)定義模型并指出設(shè)計變量,狀態(tài)變量和目標(biāo)函數(shù)。由這個文件可以自動生成優(yōu)化循環(huán)文件〔Jobname.LOOP〕,并在優(yōu)化計算中循環(huán)處理。一次循環(huán)指一個分析周期?!部梢岳斫鉃閳?zhí)行一次分析文件?!匙詈笠淮窝h(huán)的輸出存儲在文件Jobname.OPO中。優(yōu)化迭代〔或僅僅是迭代過程〕是產(chǎn)生新的設(shè)計序列的一次或?qū)掖畏治鲅h(huán)。一般來說,一次迭代等同于一次循環(huán)。但對于一階方法,一次迭代代表屢次循環(huán)。優(yōu)化數(shù)據(jù)庫記錄當(dāng)前的優(yōu)化環(huán)境,包括優(yōu)化變量定義,參數(shù),所有優(yōu)化設(shè)定,和設(shè)計序列集合。該數(shù)據(jù)庫可以存儲〔在文件Jobname.OPT〕,也可以隨時讀入優(yōu)化處理器中。上述的許多概念可以用圖解幫助理解。圖1-2示出了優(yōu)化分析中的數(shù)據(jù)流向。分析文件必須作為一個單獨的實體存在,優(yōu)化數(shù)據(jù)庫不是ANSYS模型數(shù)據(jù)庫的一局部。優(yōu)化設(shè)計的步驟共有兩種方法實現(xiàn)ANSYS優(yōu)化設(shè)計:批處理方法和通過GUI交互式地完成。這兩種方法的選擇取決于用戶對于ANSYS程序的熟悉程度和是否習(xí)慣于圖形交互方式。如果對于ANSYS程序的命令相當(dāng)熟悉,就可以選擇用命令輸入整個優(yōu)化文件并通過批處理方式來進(jìn)行優(yōu)化。對于復(fù)雜的需用大量機(jī)時的分析任務(wù)來說〔如非線性〕,這種方法更有效率。而另一方面,交互方式具有更大的靈活性,而且可以實時看到循環(huán)過程的結(jié)果。在用GUI方式進(jìn)行優(yōu)化時,首要的是要建立模型的分析文件,然后優(yōu)化處理器所提供的功能都可以交互式的使用,以確定設(shè)計空間,便于后續(xù)優(yōu)化處理的進(jìn)行。這些初期交互式的操作可以幫助用戶縮小設(shè)計空間的大小,使優(yōu)化過程得到更高的效率。優(yōu)化設(shè)計通常包括以下幾個步驟,這些步驟根據(jù)用戶所選用優(yōu)化方法的不同〔批處理GUI方式〕而有細(xì)微的差異。圖1-2優(yōu)化數(shù)據(jù)流向生成循環(huán)所用的分析文件。該文件必須包括整個分析的過程,而且必須滿足以下條件:參數(shù)化建立模型〔PREP7〕。求解〔SOLUTION〕。提取并指定狀態(tài)變量和目標(biāo)函數(shù)〔POST1/POST26〕。在ANSYS數(shù)據(jù)庫里建立與分析文件中變量相對應(yīng)的參數(shù)。這一步是標(biāo)準(zhǔn)的做法,但不是必須的〔BEGIN或OPT〕。進(jìn)入OPT,指定分析文件〔OPT〕。聲明優(yōu)化變量。選擇優(yōu)化工具或優(yōu)化方法。指定優(yōu)化循環(huán)控制方式。進(jìn)行優(yōu)化分析。查看設(shè)計序列結(jié)果〔OPT〕和后處理〔POST1/POST26〕。優(yōu)化設(shè)計步驟的細(xì)節(jié)在下面列出。批處理方式和交互方式的區(qū)別也同時指出。第一步:生成分析文件分析文件生成是ANSYS優(yōu)化設(shè)計過程中的關(guān)鍵局部。ANSYS程序運用分析文件構(gòu)造循環(huán)文件,進(jìn)行循環(huán)分析。分析文件中可以包括ANSYS提供的任意分析類型〔結(jié)構(gòu),熱,電磁等,線性或非線性〕?!沧ⅲ篈NSYS/LS-DYNA的顯式分析不能進(jìn)行優(yōu)化。〕在分析文件中,模型的建立必須是參數(shù)化的〔通常是優(yōu)化變量為參數(shù)〕,結(jié)果也必須用參數(shù)來提取〔用于狀態(tài)變量和目標(biāo)函數(shù)〕。優(yōu)化設(shè)計中只能使用數(shù)值參數(shù)?!矃?shù)和ANSYS參數(shù)化設(shè)計語言〔APDL〕在ANSYSModelingandMeshingGuide中有所細(xì)述。〕用戶的任務(wù)是建立分析文件并保證其正確性。分析文件應(yīng)當(dāng)覆蓋整個分析過程并且是簡練的,不是必須的語句〔如完成圖形顯示功能和列表功能的語句等〕應(yīng)當(dāng)從分析文件中省略掉。只有在交互過程中希望看到的顯示[EPLODT等]可以包含在分析文件中,或者將其定位到一個顯示文件中[/SHOW]。請注意分析文件是要屢次執(zhí)行的,與優(yōu)化分析本身無關(guān)的命令都會不必要的消耗機(jī)時,降低循環(huán)效率。建立分析文件有兩種方法:1〕用系統(tǒng)編輯器逐行輸入;2〕交互式地完成分析,將ANSYS的LOG文件作為根底建立分析文件。這兩種方式各有優(yōu)缺點。用系統(tǒng)編輯器生成分析文件同生成其他分析時的批處理文件方法是一樣的。這種方法使得用戶可以通過命令輸入來完全地控制參數(shù)化定義。同樣,本方法可以省去了刪除多余命令的麻煩。但是,如果對于ANSYS命令集不熟悉的話,這種方法是不方便的。對于這類用戶來說,第二種方法相對容易一些。但是,在最后生成分析文件的過程中,ANSYS的LOG文件要做較大的修改才能適合循環(huán)分析。不管采用哪種方法,分析文件需要包括的內(nèi)容都是一樣的。以下說明建立分析文件的步驟:參數(shù)化建立模型用設(shè)計變量作為參數(shù)建立模型的工作是在PREP7中完成的。在給出的梁的例子中,設(shè)計變量是B〔梁的寬度〕和H〔梁的高度〕,因此單元的實參是由B和H來表示的:…/PREP7!初始化設(shè)計變量:B=2.0H=3.0!ET,1,BEAM3!2-D梁單元AREA=B*H!梁的橫截面面積IZZ=〔B*〔H**3〕〕/12!繞Z軸的轉(zhuǎn)動慣量R,1,AREA,IZZ,H!以設(shè)計變量表示的單元實參??!模型的其他局部MP,EX,1,30E6!楊氏模量N,1!結(jié)點N,11,120FILLE,1,2!單元EGEN,10,1,-1FINISH!退出PREP7…前面提到,可以對設(shè)計的任何方面進(jìn)行優(yōu)化:尺寸,形狀,材料性質(zhì),支撐位置,所加載荷等,唯一要求就是將其參數(shù)化。設(shè)計變量〔例如B和V〕可以在程序的任何局部初始化,一般是在PREP7中定義。這些變量的初值只是在設(shè)計計算的開始用得到,在優(yōu)化循環(huán)過程中會被改變。注意:如果用GUI模式完成輸入,可能會遇到直接用鼠標(biāo)拾取〔picking〕的操作。有些拾取操作是不允許參數(shù)化輸入的。因此,應(yīng)當(dāng)防止在定義設(shè)計變量,狀態(tài)變量和目標(biāo)函數(shù)時使用這些操作,應(yīng)該用可以參數(shù)化的操作來代替。求解求解器用于定義分析類型和分析選項,施加載荷,指定載荷步,完成有限元計算。分析中所用到的數(shù)據(jù)都要指出:凝聚法分析中的主自由度,非線性分析中的收斂準(zhǔn)那么,諧波分析中的頻率范圍等。載荷和邊界條件也可以作為設(shè)計變量。梁的例子中,SOLUTION局部的輸入大致如下:…/SOLUANTYPE,STATIC!靜力分析〔缺省〕D,1,UX,0,,11,10,UY!UX=UY=0,梁兩端結(jié)點固定SFBEAM,ALL,1,PRES,100!施加壓力SOLVEFINISH!退出SOLUTION這一步驟不僅僅限于一次分析過程。比方,可以先進(jìn)行熱分析再進(jìn)行應(yīng)力分析〔在熱應(yīng)力計算中〕。參數(shù)化提取結(jié)果在本步中,提取結(jié)果并賦值給相應(yīng)的參數(shù)。這些參數(shù)一般為狀態(tài)變量和目標(biāo)函數(shù)。提取數(shù)據(jù)的操作用*GET命令〔UtilityMenu>Parameters>GetScalarData〕實現(xiàn)。通常用POST1來完本錢步操作,特別是涉及到數(shù)據(jù)的存儲,加減或其他操作。在梁的例題中,梁的總重量是目標(biāo)函數(shù)。因為重量與體積成比例〔假定密度是均勻的〕,那么減小總體積就相當(dāng)于減小總重量。因此可以選擇總體積為目標(biāo)函數(shù)。在本例中,狀態(tài)變量選擇為總應(yīng)力和位移。這些參數(shù)可以用如下方法定義:…/POST1SET,…NSORT,U,Y!以UY為基準(zhǔn)對結(jié)點排序*GET,DMAX,SORT,,MAX!參數(shù)DMAX=最大位移??!線單元的推導(dǎo)數(shù)值由ETABLE得出ETABLE,VOLU,VOLU!VOLU=每個單元的體積ETABLE,SMAX_I,NMISC,1!SMAX_I=每個單元I結(jié)點處應(yīng)力的最大值ETABLE,SMAX_J,NMISC,3!SMAX_J=每個單元J結(jié)點處應(yīng)力的最大值!SSUM!將單元表中每列的數(shù)據(jù)相加*GET,VOLUME,SSUM,,ITEM,VOLU!參數(shù)VOLUME=總體積ESORT,ETAB,SMAX_I,,1!按照單元SMAX_I的絕對值大小排序*GET,SMAXI,SORT,,MAX!參數(shù)SMAXI=SMAX_I的最大值ESORT,ETAB,SMAX_J,,1!按照單元SMAX_J的絕對值大小排序*GET,SMAXJ,SORT,,MAX!參數(shù)SMAXJ=SMAX_J的最大值SMAX=SMAXI>SMAXJ!參數(shù)SMAX=最大應(yīng)力值FINISH…請查閱*GET和ETABLE命令以得到更詳細(xì)的說明。分析文件的準(zhǔn)備到此為止,我們已經(jīng)對于分析文件的根本需求做了說明。如果是用系統(tǒng)編輯器來編輯的批處理文件,那么簡單地存盤進(jìn)入第二步即可。如果是用交互方式建模的話,用戶必須在交互環(huán)境下生成分析文件??梢酝ㄟ^兩種方式完本錢步操作:數(shù)據(jù)庫命令流文件或程序命令流文件。數(shù)據(jù)庫命令流文件——可以通過LGWRITE命令〔UtilityMenu>File>WriteDBLogFile〕生成命令流文件。LGWRITE將數(shù)據(jù)庫內(nèi)部的命令流寫到文件Jobname.LGW中。內(nèi)部命令流包含了生成當(dāng)前模型所用的所有命令。程序命令流文件——Jobname.LOG包含了交互方式下用戶輸入的所有命令。如果用Jobneme.LOG作為分析文件時,用戶必須用系統(tǒng)編輯器刪除文件中所有不必要的命令。因為交互方式下所有的操作都記錄在LOG文件中,編輯工作會比擬煩瑣。而且,如果分析是在幾個過程中完成的,就必須將幾個LOG文合在一起編輯生成一個完整的分析文件?!碴P(guān)于數(shù)據(jù)庫命令流文件和程序命令流文件,請參看ANSYSOperationsGuide?!匙ⅰ脩艨梢酝顺鯝NSYS或使用/SYS命令來編輯分析文件。細(xì)節(jié)請參看本章“生成分析文件〞一節(jié)。第二步:建立優(yōu)化過程中的參數(shù)在完成了分析文件的建立以后,就可以開始優(yōu)化分析了?!踩绻窃谙到y(tǒng)中建立的分析文件的話,就要重新進(jìn)入ANSYS?!橙绻诮换シ绞较逻M(jìn)行優(yōu)化的話,最好〔但不是必須〕從分析文件中建立參數(shù)到ANSYS數(shù)據(jù)庫中來?!苍谂幚矸绞较鲁?。〕做這一步有兩個好處。初始參數(shù)值可能作為一階方法的起點,而且,對于各種優(yōu)化過程來說,參數(shù)在數(shù)據(jù)庫中可以在GUI下進(jìn)行操作,便于定義優(yōu)化變量。建立數(shù)據(jù)庫參數(shù)可以選擇以下任一種方法:讀入與分析文件相聯(lián)的數(shù)據(jù)庫文件〔Jobname.DB〕。這樣可以在ANSYS中建立整個模型的數(shù)據(jù)庫。讀入數(shù)據(jù)庫文件可以用如下方法:Command:RESUMEGUI:UtilityMenu>File>ResumeJobname.dbUtilityMenu>File>Resumefrom將分析文件直接讀入ANSYS進(jìn)行整個分析。這樣將重新建立整個數(shù)據(jù)庫,但對于大模型來說要消耗大量的機(jī)時。要讀入分析文件,可以選擇以下方法之一:Command:/INPUTGUI:UtilityMenu>File>ReadInputfrom僅從存儲的參數(shù)文件中讀參數(shù)到ANSYS中,參數(shù)文件是用PARSAV命令或由UtilityMenu>Parameters>SaveParameters存儲的。讀入?yún)?shù)可以用以下方法之一:Command:PARRESGUI:UtilityMenu>Parameters>RestoreParameters重新定義分析文件中存在的參數(shù)。不過,這樣做需要知道分析文件中定義了那些參數(shù)。用以下任一方式:Command:*SETor“=〞commandGUI:UtilityMenu>Parameters>ScalarParameters可以選擇使用以上任意一種方式,然后用OPVAR命令〔菜單路徑MainMenu>DesignOpt>DesignVariables〕來指定優(yōu)化變量。〔參看第四步〕注——在優(yōu)化過程中,ANSYS數(shù)據(jù)庫不一定要同分析文件一致。模型的輸入是在優(yōu)化循環(huán)過程中由分析文件中自動讀入的。第三步:進(jìn)入OPT,指定分析文件〔OPT〕以下的步驟是由OPT處理器來完成的。首次進(jìn)入優(yōu)化處理器時,ANSYS數(shù)據(jù)庫中的所有參數(shù)自動作為設(shè)計序列1。這些參數(shù)值假定是一個設(shè)計序列。進(jìn)入優(yōu)化處理器可以用如下方式:Command:/OPTGUI:MainMenu>DesignOpt在交互方式下,用戶必須指定分析文件名。這個文件用于生成優(yōu)化循環(huán)文件Jobname.LOOP。分析文件名無缺省值,因此必須輸入。指定分析文件名,可以用以下方式之一:Command:OPANLGUI:MainMenu>DesignOpt>Assign在批處理方式下,分析文件通常是批命令流的第一局部,從文件的第一行到命令/OPT第一次出現(xiàn)。在批處理方式中,缺省的分析文件名是Jobname.BAT〔它是一個臨時性的文件,是批處理輸入文件的一個拷貝〕。因此,在批處理方式下通常不用指定分析文件名。但是,如果出于某種考慮將批文件分成兩個局部〔一個用于分析,另一個用于整個優(yōu)化分析〕,那么就必須在進(jìn)入優(yōu)化處理器后指定分析文件[OPANL]。注——在分析文件中,/PREP7和/OPT命令必須出現(xiàn)在行的第一個非零字符處〔即,不允許有諸如$等符號出現(xiàn)在有這些命令的行中〕。這一點在生成優(yōu)化循環(huán)文件時很關(guān)鍵。第四步:聲明優(yōu)化變量下一步是聲明優(yōu)化變量,即指定哪些參數(shù)是設(shè)計變量,哪些參數(shù)是狀態(tài)變量,哪個參數(shù)是目標(biāo)函數(shù)。以上提到,允許有不超過60個設(shè)計變量和不超過100個狀態(tài)變量,但只能有一個目標(biāo)函數(shù)。聲明優(yōu)化變量可以用如下的方法:Command:OPVARGUI:MainMenu>DesignOpt>DesignVariablesMainMenu>DesignOpt>StateVariablesMainMenu>DesignOpt>Objective對于設(shè)計變量和狀態(tài)變量可以定義最大和最小值。目標(biāo)函數(shù)不需要給定范圍。每一個變量都有一個公差值,這個公差值可以由用戶輸入,也可以選擇由程序計算得出。如果用OPVAR命令定義的參數(shù)名不存在,ANSYS數(shù)據(jù)庫中將自動定義這個參數(shù),并將初始值設(shè)為零。用戶可以在任意時間簡單地通過重新定義參數(shù)的方法來改變已經(jīng)定義過的參數(shù),也可以刪除一個優(yōu)化變量[OPVAR,Name,DEL]。這種刪除操作并不真正刪除這個參數(shù),而是不將它繼續(xù)作為優(yōu)化變量而已?!矃⒖础皥?zhí)行后修正優(yōu)化變量〞局部?!车谖宀剑哼x擇優(yōu)化工具或優(yōu)化方法ANSYS程序提供了一些優(yōu)化工具和方法。缺省方法是單次循環(huán)。指定后續(xù)優(yōu)化的工具和方法用以下命令:Command:OPTYPEGUI:MainMenu>DesignOpt>Method/Tool優(yōu)化方法是使單個函數(shù)〔目標(biāo)函數(shù)〕在控制條件下到達(dá)最小值的傳統(tǒng)化的方法。有兩種方法是可用的:零階方法和一階方法。除此之外,用戶可以提供外部的優(yōu)化算法替代ANSYS本身的優(yōu)化方法。使用其中任何一種方法之前,必須先定義目標(biāo)函數(shù)。零階方法〔直接法〕:這是一個完善的零階方法,使用所有因變量〔狀態(tài)變量和目標(biāo)函數(shù)〕的逼近。該方法是通用的方法,可以有效的處理絕大多數(shù)的工程問題。一階方法〔間接法〕:本方法使用偏導(dǎo)數(shù),即,使用因變量的一階偏導(dǎo)數(shù)。此方法精度很高,尤其是在因變量變化很大,設(shè)計空間也相對較大時。但是,消耗的機(jī)時較多。用戶提供的優(yōu)化方法:外部的優(yōu)化程序〔USEROP〕可以代替ANSYS優(yōu)化過程。優(yōu)化工具是搜索和處理設(shè)計空間的技術(shù)。因為求最小值不一定是優(yōu)化的最終目標(biāo),所以目標(biāo)函數(shù)在使用這些優(yōu)化工具時可以不指出。但是,必須要指定設(shè)計變量。下面是可用的優(yōu)化工具:單步運行:實現(xiàn)一次循環(huán)并求出一個FEA解??梢酝ㄟ^一系列的單次循環(huán),每次求解前設(shè)定不同的設(shè)計變量來研究目標(biāo)函數(shù)與設(shè)計變量的變化關(guān)系。隨機(jī)搜索法:進(jìn)行屢次循環(huán),每次循環(huán)設(shè)計變量隨機(jī)變化。用戶可以指定最大循環(huán)次數(shù)和期望合理解的數(shù)目。本工具主要用來研究整個設(shè)計空間,并為以后的優(yōu)化分析提供合理解。等步長搜索法:以一個參考設(shè)計序列為起點,本工具生成幾個設(shè)計序列。它按照單一步長在每次計算后將設(shè)計變量在變化范圍內(nèi)加以改變。對于目標(biāo)函數(shù)和狀態(tài)變量的整體變化評估可以用本工具實現(xiàn)。乘子計算法:是一個統(tǒng)計工具,用來生成由各種設(shè)計變量極限值組合的設(shè)計序列。這種技術(shù)與稱之為經(jīng)驗設(shè)計的技術(shù)相關(guān),后者是用二階的整體和局部因子分析。主要目標(biāo)是計算目標(biāo)函數(shù)和狀態(tài)變量的關(guān)系和相互影響。最優(yōu)梯度法:對用戶指定的參考設(shè)計序列,本工具計算目標(biāo)函數(shù)和狀態(tài)變量對設(shè)計變量的梯度。使用本工具可以確定局部的設(shè)計敏感性。用戶提供的優(yōu)化工具:可以用外部過程〔USEROP〕替代ANSYS優(yōu)化工具。用戶可以通過USEROP過程將自己的方法和工具補(bǔ)充進(jìn)去。更詳細(xì)的解釋在ANSYSProgrammer’sManual中。第六步:指定優(yōu)化循環(huán)控制方式每種優(yōu)化方法和工具都有相應(yīng)的循環(huán)控制參數(shù),比方最大迭代次數(shù)等。所有這些控制參數(shù)的設(shè)定都在同一個路徑下:GUI:MainMenu>DesignOpt>Method/Tool以以下出設(shè)定控制參數(shù)的命令:設(shè)定零階方法的控制參數(shù):Command:OPSUBP和Command:OPEQN設(shè)定一階方法的控制參數(shù):Command:OPFRST設(shè)定隨機(jī)搜索法的控制參數(shù):Command:OPRAND設(shè)定等步長搜索法的控制參數(shù):Command:OPSWEEP設(shè)定乘子計算法的控制參數(shù):Command:OPFACT設(shè)定最優(yōu)梯度法的控制參數(shù):Command:OPGRAD設(shè)定用戶優(yōu)化工具的控制參數(shù):Command:OPUSER程序還提供了幾個總體控制來設(shè)定優(yōu)化過程中數(shù)據(jù)的存儲方法:指定優(yōu)化數(shù)據(jù)的存儲文件名〔缺省為Jobname.OPT〕:Command:OPDATAGUI:MainMenu>DesignOpt>Controls用以下方法激活詳細(xì)的結(jié)果輸出:Command:OPPRNTGUI:MainMenu>DesignOpt>Controls確定最正確設(shè)計系列的數(shù)據(jù)是否存儲,用以下方法〔缺省是數(shù)據(jù)庫和結(jié)果文件存儲最后一個設(shè)計系列〕:Command:OPKEEPGUI:MainMenu>DesignOpt>Controls用戶還可以控制幾個循環(huán)特性,包括分析文件在循環(huán)中如何讀取??梢詮牡谝恍凶x取〔缺省〕,也可以從第一個/PREP7出現(xiàn)的位置開始讀??;設(shè)定為優(yōu)化變量的參數(shù)可以忽略〔缺省〕,也可以在循環(huán)中處理。而且,用戶可以指定循環(huán)中存儲哪種變量:只存儲數(shù)值變量還是存儲數(shù)值變量和數(shù)組變量。這個功能可以在循環(huán)中控制參數(shù)的數(shù)值〔包括設(shè)計變量和非設(shè)計變量〕。用以下方法設(shè)定這些循環(huán)控制特性:Command:OPLOOPGUI:MainMenu>DesignOpt>Controls注——OPLOOP命令中的Parms變量控制在循環(huán)中存儲哪個參數(shù)。在循環(huán)中存儲數(shù)值變量和數(shù)組變量的選項在一般情況下不設(shè)置,除非是數(shù)組變量在分析文件外定義,而在循環(huán)中需要保存的情況。第七步:進(jìn)行優(yōu)化分析所有的控制選項設(shè)定好以后,就可以進(jìn)行分析了。用以下方法開始分析:Command:OPEXEGUI:MainMenu>DesignOpt>Run在OPEXE執(zhí)行時,優(yōu)化循環(huán)文件〔Jobname.LOOP〕會根據(jù)分析文件生成。這個循環(huán)文件對用戶是透明的,并在分析循環(huán)中使用。循環(huán)在滿足以下情況時終止:收斂;中斷〔不收斂,但最大循環(huán)次數(shù)或是最大不合理解的數(shù)目到達(dá)了〕;分析完成。如果循環(huán)是由于模型的問題〔如網(wǎng)格劃分有問題,非線性求解不收斂,與設(shè)計變量數(shù)值沖突等〕中斷時,優(yōu)化處理器將進(jìn)行下一次循環(huán)。如果是在交互方式下,程序?qū)@示一個警告信息并詢問是繼續(xù)還是結(jié)束循環(huán)。如果是在批處理方式下,循環(huán)將自動繼續(xù)。NCNV命令〔MainMenu>Solution>Nonlinear>CriteriatoStop〕是控制非線性分析的,在優(yōu)化循環(huán)中將被忽略。中斷循環(huán)的設(shè)計序列是存盤的,但參數(shù)的數(shù)據(jù)有可能非常大,不符合實際情況。所有優(yōu)化變量和其他參數(shù)在每次迭代后將存儲在優(yōu)化數(shù)據(jù)文件(Jobname.OPT)中。最多可以存儲130組這樣的序列。如果已經(jīng)到達(dá)了130個序列,那么其中數(shù)據(jù)最“不好〞的序列將被刪除。對于上述梁的例子,優(yōu)化局部的輸入大致如下:/OPT!進(jìn)入優(yōu)化處理器OPANL,…!分析文件名〔批處理方式不需要〕!!聲明優(yōu)化變量OPVAR,B,DV,.5,16.5!B和H為設(shè)計變量OPVAR,H,DV,.5,8OPVAR,DMAX,SV,-0.1,0!DMAX和SMAX為狀態(tài)變量OPVAR,SMAX,SV,0,20000OPVAR,VOLUME,OBJ!VOLUME為目標(biāo)函數(shù)!!指定優(yōu)化類型和控制OPTYPE,SUBP!零階方法OPSUBP,30!最大迭代次數(shù)OPEXE!開始優(yōu)化循環(huán)不同的優(yōu)化過程可以系列地完成。比方,可以在零階方法的分析結(jié)束后再做等步長搜索。下面的命令對最正確設(shè)計序列做等步長搜索:OPTYPE,SWEEP!掃描評估工具OPSWEEP,BEST,5!最正確設(shè)計序列每個設(shè)計變量5次評估OPEXE!開始優(yōu)化循環(huán)請查閱/OPT,OPANL,OPTYPE,OPSUBP,OPSWEEP和OPEXE命令以得到更詳細(xì)的說明。第八步:查看設(shè)計序列結(jié)果優(yōu)化循環(huán)結(jié)束以后,可以用本局部介紹的命令或相應(yīng)的GUI路徑來查看設(shè)計序列。這些命令適用于任意優(yōu)化方法和工具生成的結(jié)果。列出指定序列號的參數(shù)值:Command:OPLISTGUI:MainMenu>DesignOpt>List可以選擇列出所有參數(shù)的數(shù)值,也可以只列出優(yōu)化變量。用圖顯示指定的參數(shù)隨序列號的變化,可以看出變量是如何隨迭代過程變化的。用以下方法實現(xiàn):Command:PLVAROPTGUI:MainMenu>DesignOpt>Graphs/Tables將圖的X軸由序列號換成別的參數(shù):Command:XVAROPTGUI:MainMenu>DesignOpt>Graphs/Tables對于PLVAROPT和PRVAROPT操作,設(shè)計序列將自動按照XVAROPT中參數(shù)以升序排列。對于等步長,乘子和梯度工具有一些特別的查看結(jié)果的方法。對于等步長搜索,用OPRSW命令列出結(jié)果,用OPLSW命令圖示結(jié)果。對于乘子工具,用OPRFA命令列出結(jié)果,用OPLFA命令圖示結(jié)果。對于梯度工具,用OPRGR命令列出結(jié)果,用OPLGR命令圖示結(jié)果?!蚕鄳?yīng)的路徑在后面對命令的詳細(xì)表達(dá)中提及?!沉硪粋€得到優(yōu)化數(shù)據(jù)的方法是用STATUS命令〔MainMenu>DesignOpt>Status〕。在優(yōu)化處理器中使用本命令,將得到另外一些關(guān)于當(dāng)前優(yōu)化任務(wù)的信息,如分析文件名,優(yōu)化技術(shù),設(shè)計序列數(shù),優(yōu)化變量等。用STATUS命令可以方便的查看優(yōu)化環(huán)境,驗證需要的設(shè)定是否全部輸入優(yōu)化處理器。除了查看優(yōu)化數(shù)據(jù),用戶可能希望用POST1或POST26對分析結(jié)果進(jìn)行后處理。缺省情況下,最后一個設(shè)計序列的結(jié)果存儲在文件Jobname.RST(或.RTH等,視分析類型而定)中。如果在循環(huán)運行前將OPKEEP設(shè)為ON,最正確設(shè)計序列的數(shù)據(jù)也將存儲在數(shù)據(jù)庫和結(jié)果文件中?!白钫_結(jié)果〞在文件Jobname.BRST(.BRTH等)中,“最正確數(shù)據(jù)庫〞在文件Jobname.BDB中。操作設(shè)計序列查看數(shù)據(jù)以后,可能需要對其做一些操作。比方說,在隨機(jī)搜索后,用戶可能希望將所有的不合理設(shè)計序列刪除,以合理的設(shè)計序列為數(shù)據(jù)點來進(jìn)行后面的優(yōu)化。這里提供了幾種改變設(shè)計序列的方法。下面兩個命令可以刪除不需要的序列:用以下命令選擇最正確設(shè)計序列或所有合理的序列:Command:OPSEL

GUI:MainMenu>DesignOpt>Select/Delete(所有沒有用OPSEL命令選擇的設(shè)計序列將永久地從優(yōu)化數(shù)據(jù)庫中刪除。)刪除指定范圍內(nèi)的設(shè)計序列:Command:OPDELGUI:MainMenu>DesignOpt>Select/Delete對于這兩個命令,剩余設(shè)計序列的原始序列號將不變?!矁?yōu)化數(shù)據(jù)庫可以存儲130個設(shè)計序列?!骋韵旅钜部梢詫υO(shè)計序列進(jìn)行操作:將兩個現(xiàn)存的序列相加形成一個新的設(shè)計序列〔可以有比例系數(shù)〕:Command:OPADDGUI:MainMenu>DesignOpt>Combine用當(dāng)前的數(shù)值參數(shù)值〔沒有在分析循環(huán)中運行〕生成一個新的設(shè)計序列:Command:OPMAKEGUI:MainMenu>DesignOpt>Create多層優(yōu)化計算在很多情況下要做多于一次優(yōu)化計算的分析。比方,在一次優(yōu)化后沒有找到需要的優(yōu)化結(jié)果,或是用一種優(yōu)化工具開始計算然后做隨后的優(yōu)化分析〔例如,先進(jìn)行隨機(jī)搜索,然后用零階方法〕。從第一次較少次數(shù)的循環(huán)中得到的結(jié)果可以作為修改設(shè)計空間并進(jìn)行以后優(yōu)化分析的依據(jù)。如果用戶在同一次ANSYS運行中執(zhí)行所有的優(yōu)化時,這個過程是很順利的。在一次執(zhí)行以后,簡單的重新定義所有的優(yōu)化輸入,然后開始下一步分析。用以下命令開始下一步分析:Command:OPEXEGUI:MainMenu>DesignOpt>Run如果在執(zhí)行完一次優(yōu)化以后退出了ANSYS,可以用以后表達(dá)的方法開始后續(xù)的分析。重新開始執(zhí)行優(yōu)化分析要重新開始優(yōu)化分析,通過如下命令讀入優(yōu)化數(shù)據(jù)庫文件〔Jobname.OPT〕:Command:OPRESUGUI:MainMenu>DesignOpt>Resume數(shù)據(jù)讀入后,指定優(yōu)化類型,控制等,然后開始循環(huán)。〔對應(yīng)于數(shù)據(jù)庫的分析文件必須可用以完成優(yōu)化?!秤靡韵路椒ㄩ_始循環(huán):Command:OPEXEGUI:MainMenu>DesignOpt>Run標(biāo)準(zhǔn)的重啟動大致如下:....../OPTOPRESU,.....!讀入文件〔缺省為Jobname.OPT〕OPSEL,10!選擇10個最正確設(shè)計OPTYPE,....!指定優(yōu)化工具或方法....!指定其他優(yōu)化輸入OPEXE!開始優(yōu)化循環(huán)請查閱/OPT,OPRESU,OPSEL,OPTYPE和OPEXE命令以得到更詳細(xì)的說明。注——除了優(yōu)化數(shù)據(jù),ANSYS工作文件名將存儲在優(yōu)化數(shù)據(jù)庫文件中〔Jobname.OPT〕。因此,如果優(yōu)化數(shù)據(jù)文件被讀入,該文件名將覆蓋當(dāng)前的文件名[/FILNAME]。在交互方式下可以用OPRESU命令〔MainMenu>DesignOpt>Resume〕讀入批處理方式下生成的優(yōu)化數(shù)據(jù),這樣便于交互的查看批處理優(yōu)化的數(shù)據(jù)。如果在讀入數(shù)據(jù)前優(yōu)化數(shù)據(jù)庫中有數(shù)據(jù)的話,應(yīng)當(dāng)首先去除優(yōu)化數(shù)據(jù)庫。在這個過程中,所有的設(shè)置將恢復(fù)其缺省值,所有的設(shè)計序列將被刪除。用以下方式去除數(shù)據(jù)庫:Command:OPCLRGUI:MainMenu>DesignOpt>Clear&Reset因為ANSYS數(shù)據(jù)庫是不受OPCLR命令影響的,所以在讀入一個新的優(yōu)化數(shù)據(jù)庫前應(yīng)該去除ANSYS數(shù)據(jù)庫。用以下方法去除ANSYS數(shù)據(jù)庫:Command:/CLEARGUI:UtilityMenu>File>Clear&StartNew與OPRESU命令相對應(yīng)的是OPSAVE命令〔MainMenu>DesignOpt>Save〕,其功能是將優(yōu)化數(shù)據(jù)寫入指定的文件中〔缺省為Jobname.OPT〕。優(yōu)化數(shù)據(jù)在每次優(yōu)化循環(huán)結(jié)束的時候自動存儲〔見OPDATA命令〕,但用戶也可以隨時用OPSAVE命令存儲優(yōu)化數(shù)據(jù)。優(yōu)化技術(shù)理解計算機(jī)程序的算法總是很有用的,尤其是在優(yōu)化設(shè)計中。在這一局部中,將提供對以下方法的說明:零階方法,一階方法,隨機(jī)搜索法,等步長搜索法,乘子計算法和最優(yōu)梯度法?!哺嗟募?xì)節(jié)參見ANSYSTheoryReference第20章?!沉汶A方法零階方法之所以稱為零階方法是由于它只用到因變量而不用到它的偏導(dǎo)數(shù)。在零階方法中有兩個重要的概念:目標(biāo)函數(shù)和狀態(tài)變量的逼近方法,由約束的優(yōu)化問題轉(zhuǎn)換為非約束的優(yōu)化問題。逼近方法:本方法中,程序用曲線擬合來建立目標(biāo)函數(shù)和設(shè)計變量之間的關(guān)系。這是通過用幾個設(shè)計變量序列計算目標(biāo)函數(shù)然后求得各數(shù)據(jù)點間最小平方實現(xiàn)的。該結(jié)果曲線〔或平面〕叫做逼近。每次優(yōu)化循環(huán)生成一個新的數(shù)據(jù)點,目標(biāo)函數(shù)就完成一次更新。實際上是逼近被求解最小值而并非目標(biāo)函數(shù)。狀態(tài)變量也是同樣處理的。每個狀態(tài)變量都生成一個逼近并在每次循環(huán)后更新。用戶可以控制優(yōu)化近似的逼近曲線??梢灾付ň€性擬合,平方擬合或平方差擬合。缺省情況下,用平方差擬合目標(biāo)函數(shù),用平方擬合狀態(tài)變量。用以下方法實現(xiàn)該控制功能:Command:OPEQNGUI:MainMenu>DesignOpt>Method/ToolOPEQN同樣可以控制設(shè)計數(shù)據(jù)點在形成逼近時如何加權(quán);見ANSYSTheoryReference。轉(zhuǎn)換為非約束問題狀態(tài)變量和設(shè)計變量的數(shù)值范圍約束了設(shè)計,優(yōu)化問題就成為約束的優(yōu)化問題。ANSYS程序?qū)⑵滢D(zhuǎn)化為非約束問題,因為后者的最小化方法比前者更有效率。轉(zhuǎn)換是通過對目標(biāo)函數(shù)逼近加罰函數(shù)的方法計入所加約束的。搜索非約束目標(biāo)函數(shù)的逼近是在每次迭代中用SequentialUnconstrainedMinimizationTechnique(SUMT)實現(xiàn)的。收斂檢查在每次循環(huán)結(jié)束時都要進(jìn)行收斂檢查。當(dāng)當(dāng)前的,前面的或最正確設(shè)計是合理的而且滿足以下條件之一時,問題就是收斂的:目標(biāo)函數(shù)值由最正確合理設(shè)計到當(dāng)前設(shè)計的變化應(yīng)小于目標(biāo)函數(shù)允差。最后兩個設(shè)計之間的差值應(yīng)小于目標(biāo)函數(shù)允差。從當(dāng)前設(shè)計到最正確合理設(shè)計所有設(shè)計變量的變化值應(yīng)小于各自的允差。最后兩個設(shè)計所有設(shè)計變量的變化值應(yīng)小于各自的允差。用以下方法指定目標(biāo)函數(shù)和設(shè)計變量允差:Command:OPVARGUI:MainMenu>DesignOpt>DesignVariablesMainMenu>DesignOpt>Objective收斂并不代表實際的最小值已經(jīng)得到了,只說明以上四個準(zhǔn)那么之一滿足了。因此,用戶必須確定當(dāng)前設(shè)計優(yōu)化的結(jié)果是否足夠。如果缺乏的話,就要另外做附加的優(yōu)化分析。有時候求解過程會在收斂前終止,這是因為發(fā)生以下情況之一:指定的循環(huán)次數(shù)到達(dá)了。連續(xù)的不合理設(shè)計到達(dá)了指定的值〔OPSUBP命令的NINFS域〕。缺省值為7。零階方法的特殊問題由于目標(biāo)函數(shù)和狀態(tài)變量都是使用逼近的,因此優(yōu)化設(shè)計和逼近數(shù)值具有同樣的精確度。下面給出了一些得到較好的逼近的建議。對于零階方法,優(yōu)化處理器開始通過隨機(jī)搜索建立狀態(tài)變量和目標(biāo)函數(shù)的逼近。由于是隨機(jī)搜索,收斂的速度可能很慢。用戶有時可以通過給出多個合理的起始設(shè)計來加速收斂。只簡單的運行一系列的隨機(jī)搜索并刪除所有不合理的設(shè)計。用以下方法之一運行隨機(jī)搜索:Command:OPTYPE,RANDGUI:MainMenu>DesignOpt>method/Tool用以下方法刪除所有不合理設(shè)計:Command:OPSELGUI:MainMenu>DesignOpt>Select/Delete也可以運行屢次單獨的循環(huán),并在每次運行前指定新的設(shè)計變量序列來生成起始設(shè)計序列。用以下方法:Command:OPTYPE,RUNGUI:MainMenu>DesignOpt>Method/Tool(如果對問題的特性有些認(rèn)識的話,后一種方法更好些。)注——做一些小的設(shè)計分析將有利于收斂。但如果設(shè)計之間差異不大,也就是說設(shè)計數(shù)據(jù)點“堆積〞在一起時,用戶就要指定優(yōu)化處理器沿一個指定的路徑分析,以防止丟掉好的設(shè)計。如果零階方法生成了許多不合理的設(shè)計的話,可能說明狀態(tài)變量的近似不能良好的反映狀態(tài)變量的實際情況。在這種情況下,可以處理如下:增加連續(xù)不合理設(shè)計的允許值,然后進(jìn)行附加的零階方法分析〔如果合理的設(shè)計好象要到達(dá)了〕。用以下方法:Command:OPSUBP,NINFSGUI:MainMenu>DesignOpt>Method/Tool在連續(xù)的逼近中不斷的選擇最正確設(shè)計,可以得到更好的曲線擬合。用以下方法實現(xiàn):Command:OPSELGUI:MainMenu>DesignOpt>Select/Delete在狀態(tài)變量逼近時選擇交叉項。用以下方法:Command:OPEQN,KFSVGUI:MainMenu>DesignOpt>Method/Tool一階方法同零階方法一樣,一階方法通過對目標(biāo)函數(shù)添加罰函數(shù)將問題轉(zhuǎn)換為非約束的。但是,與零階方法不同的是,一階方法將真實的有限元結(jié)果最小化,而不是對逼近數(shù)值進(jìn)行操作。一階方法使用因變量對設(shè)計變量的偏導(dǎo)數(shù)。在每次迭代中,梯度計算〔用最大斜度法或共軛方向法〕確定搜索方向,并用線搜索法對非約束問題進(jìn)行最小化。因此,每次迭代都有一系列的子迭代〔其中包括搜索方向和梯度計算〕組成。這就使得一次優(yōu)化迭代有屢次分析循環(huán)。OPFRST命令(MainMenu>DesignOpt>Method/Tool)有兩個輸入域可以用來改善一階方法的收斂。用戶可以指定計算梯度的設(shè)計變量范圍變化程度,也可以指定線搜索步長的范圍。一般來說,這兩個輸入值的缺省數(shù)值就足夠了。見ANSYSTheoryReference。收斂檢查一階方法在收斂或中斷時結(jié)束。當(dāng)當(dāng)前的設(shè)計序列相對于前面的和最正確序列滿足下面任意一種情況時,問題就稱為收斂:目標(biāo)函數(shù)值由最正確合理設(shè)計到當(dāng)前設(shè)計的變化應(yīng)小于目標(biāo)函數(shù)允差。從當(dāng)前設(shè)計到前面設(shè)計目標(biāo)函數(shù)的變化值應(yīng)小于允差。同時要求最后的迭代使用最大斜度搜索,否那么要進(jìn)行附加的迭代。用以下方法指定目標(biāo)函數(shù)允差:Command:OPVARGUI:MainMenu>DesignOpt>Objective問題在收斂之前可能中斷。在用OPFRST命令NITR域指定的最大迭代次數(shù)到達(dá)的情況下出現(xiàn)。一階方法的特殊情況與零階方法相比,一階方法計算量大且結(jié)果精確。但是,精確度高并不能保證最正確求解。下面是一些注意點:一階方法可能在不合理的設(shè)計序列上收斂。這時可能是找到了一個局部最小值,或是不存在合理設(shè)計空間。如果出現(xiàn)這種情況,可以使用零階方法,因其可以更好的研究整個設(shè)計空間。也可以先運行隨機(jī)搜索確定合理設(shè)計空間〔如果存在的話〕,然后以合理設(shè)計序列為起點重新運行一階方法。一階方法更容易獲得局部最小值?!惨姾竺妗熬植亢腿肿钚≈胆暤恼f明?!尺@是因為一階方法從設(shè)計空間的一個序列開始計算求解,如果起點很接近局部最小值的話,就會選擇該最小值而找不到全局最小值。如果疑心得到的是局部最小值,可以用零階方法或隨機(jī)搜索驗證,如上所述。目標(biāo)函數(shù)允差過緊將會引起迭代次數(shù)很多。因為本方法計算實際有限元解〔而非逼近〕,在計算過程中會根據(jù)給定的允差盡量找到確切的結(jié)果。隨機(jī)搜索法對于隨機(jī)搜索法[OPTYPE,RAND],程序完成指定次數(shù)的分析循環(huán),并在每次循環(huán)中使用隨機(jī)搜索變量值。用戶可以用OPRAND命令(MainMenu>DesignOpt>Method/Tool)指定最大迭代次數(shù)和最大合理設(shè)計數(shù)。如果給出了最大合理設(shè)計數(shù),在到達(dá)這個數(shù)值時循環(huán)將終止,而忽略最大迭代次數(shù)是否到達(dá)。隨機(jī)搜索法往往作為零階方法的先期處理。它也可以用來完成一些小的設(shè)計任務(wù)。例如可以做一系列的隨機(jī)搜索,然后通過查看結(jié)果來判斷當(dāng)前設(shè)計空間是否合理。等步長搜索法等步長搜索法[OPTYPE,SWEEP]用于在設(shè)計空間內(nèi)完成掃描分析。將生成n*NSPS個設(shè)計序列,n是設(shè)計變量的個數(shù),NSPS是每個掃描中評估點的數(shù)目〔由OPSWEEP命令指定〕。對于每個設(shè)計變量,變量范圍將劃分為NSPS-1個相等的步長,進(jìn)行NSPS次循環(huán)。問題的設(shè)計變量在每次循環(huán)中以步長遞增,其他的設(shè)計變量保持其參考值不變。設(shè)計序列中設(shè)計變量的參考值用OPSWEEP命令的Dset指定〔MainMenu>DesignOpt>Method/Tool〕。圖示和列表顯示等步長搜索結(jié)果用以下方法圖示設(shè)計變量數(shù)值和響應(yīng)變量的數(shù)值關(guān)系:Command:OPLSWGUI:MainMenu>DesignOpt>ToolResults>Sweeps縱坐標(biāo)表示目標(biāo)函數(shù)或狀態(tài)變量的實際數(shù)值。橫坐標(biāo)表示正交化〔0到1〕的設(shè)計變量,正交范圍為設(shè)計變量的最大最小值[OPVAR]。用以下方法生成列表的結(jié)果:Command:OPRSWGUI:MainMenu>DesignOpt>ToolResults>Print正交化的響應(yīng)數(shù)據(jù)值和正交化的設(shè)計變量值將列出。目標(biāo)函數(shù)和狀態(tài)變量的結(jié)果與參考設(shè)計序列數(shù)值正交[OPSWEEP,Dset]。對于設(shè)計變量,0相應(yīng)于最小值,1相應(yīng)于最大值。乘子計算法本工具[OPTYPE,F(xiàn)ACT]用二階技術(shù)生成設(shè)計空間上極值點上的設(shè)計序列數(shù)值?!策@個二階技術(shù)在每個設(shè)計變量的兩個極值點上取值。〕可以用OPFACT命令(MainMenu>DesignOpt>Method/Tool)指定是完成整體的還是局部子的評估。對于整體評估,程序進(jìn)行2n次循環(huán),n是設(shè)計變量的個數(shù)。1/2局部的評估進(jìn)行2n/2次循環(huán),依此類推。圖示和列表顯示乘子計算結(jié)果可以用棒式圖和表格顯示目標(biāo)函數(shù)或狀態(tài)變量的某些方面。例如,可以圖示每個設(shè)計變量對目標(biāo)函數(shù)的主要作用。用戶同樣可以查看兩個和三個變量之間的互相作用。用以下命令顯示棒式圖:Command:OPLFAGUI:MainMenu>DesignOpt>ToolResults>Factorial用以下命令對目標(biāo)函數(shù)或狀態(tài)變量的作用列表:Command:OPRFAGUI:MainMenu>DesignOpt>ToolResults>Print要得到更詳細(xì)的說明,請查閱ANSYSTheoryReference第20章“DesignOptimization〞。最優(yōu)梯度法最優(yōu)梯度法[OPTYPE,GRAD]計算設(shè)計空間中某一點的梯度。梯度結(jié)果用于研究目標(biāo)函數(shù)或狀態(tài)變量的敏感性。用以下方式指定在哪個設(shè)計序列計算梯度:Command:OPGRADGUI:MainMenu>DesignOpt>Method/Tool本工具做的循環(huán)次數(shù)等于設(shè)計變量的數(shù)目。圖示和列表顯示最優(yōu)梯度法的結(jié)果用戶可以用圖顯示設(shè)計變量和響應(yīng)變量的數(shù)值??v坐標(biāo)表示目標(biāo)函數(shù)或狀態(tài)變量的實際數(shù)值。橫坐標(biāo)表示設(shè)計變量一個小的〔1%〕變化值。用以下方法列表表示結(jié)果:Command:OPRGRGUI:MainMenu>DesignOpt>ToolResults>Print1%的變化值是相對于設(shè)計變量的變化范圍〔由OPVAR命令中MAX-MIN數(shù)值確定〕,而不是相對于當(dāng)前的設(shè)計變量數(shù)值的。選擇優(yōu)化變量的一些說明下面列出了許多如何定義設(shè)計變量,狀態(tài)變量和目標(biāo)函數(shù)的建議。選擇設(shè)計變量設(shè)計變量往往是長度,厚度,直徑或模型坐標(biāo)等幾何參數(shù)。其必須是正值。關(guān)于設(shè)計變量要記住的幾點如下:使用盡量少的設(shè)計變量。選用太多的設(shè)計變量會使得收斂于局部最小值的可能性增加,在問題是高度非線性時甚至?xí)鸩皇諗?。顯而易見,越多的設(shè)計變量需要越多的迭代次數(shù),從而需要更多的機(jī)時。一種減少設(shè)計變量的做法就是將其中的一些變量用其他的設(shè)計變量表示。這通常叫做設(shè)計變量合并。設(shè)計變量合并不能用于設(shè)計變量是真正獨立的情況下。但是,可以根據(jù)模型的結(jié)構(gòu)判斷是否允許某些設(shè)計變量之間可以邏輯的合并。例如,如果優(yōu)化形式是對稱的,可以用一個設(shè)計變量表示對稱局部。給設(shè)計變量定義一個合理的范圍〔OPVAR命令中的MIN和MAX〕。范圍過大可能不能表示好的設(shè)計空間,而范圍過小可能排除了好的設(shè)計。記住只有正的數(shù)值是可以的,因此要設(shè)定一個上限。選擇可以提供實際優(yōu)化設(shè)計的設(shè)計變量。例如,可以只用一個設(shè)計變量X1對圖1-3a的懸臂梁進(jìn)行重量優(yōu)化。但是,這排除了用曲線或變截面得到更小的重量的可能。為了包括這種設(shè)計,需要選擇四個設(shè)計變量X1到X4〔圖1-3c〕。也可以用另外一種設(shè)計變量選擇方法完成該優(yōu)化設(shè)計,見圖1-3d。同時,要防止選擇產(chǎn)生不實際結(jié)果或不需要的設(shè)計。圖1-3階梯型懸臂梁的設(shè)計變量選擇選擇狀態(tài)變量狀態(tài)變量通常是控制設(shè)計的因變量數(shù)值。狀態(tài)變量的例子有應(yīng)力,溫度,熱流率,頻率,變形,吸收能,消耗時間等。狀態(tài)變量必須是ANSYS可以計算的數(shù)值;實際上任何參數(shù)都能被定義為狀態(tài)變量。選擇狀態(tài)變量的一些要點為:在定義狀態(tài)變量[OPVAR命令]時,在MIN域中輸入空值表示無下限。同樣,在MAX域中輸入空值表示無上限。在這兩個域中輸入0值表示以0為限。如:UPVAR,SIG,SV,,1000!SIG小于等于1000OPVAR,SIG,SV,0,1000!SIG大于等于0且小于等于1000選擇足夠約束設(shè)計的狀態(tài)變量數(shù)。如在應(yīng)力分析中,只選擇最大應(yīng)力數(shù)值為狀態(tài)變量不好,因為在不同循環(huán)中,最大應(yīng)力位置是變化的。同樣也要防止另一個極端如選擇每個單元中的應(yīng)力都為狀態(tài)變量。比擬好的方法是定義幾個關(guān)鍵位置的應(yīng)力為狀態(tài)變量。在零階方法中,如果可能的話,選擇與設(shè)計變量為線性或平方關(guān)系的參數(shù)為狀態(tài)變量。例如,狀態(tài)變量G=Z1/Z2且G<C(Z1和Z2是設(shè)計變量,C是常數(shù))可能不會得到G的較好的逼近,因為G與Z2是反比關(guān)系。如果將狀態(tài)變量表示為G=Z1-〔C*Z2〕且G<0,狀態(tài)變量逼近就準(zhǔn)確了。如果狀態(tài)變量有上下限時,給定一個合理的限制值[OPVAR命令的MIN和MAX域]。應(yīng)防止過小的范圍,因為此時合理設(shè)計可能不存在。如500到1000psi的應(yīng)力范圍要比900到1000psi的范圍好。如果要指定相同的約束數(shù)值〔如頻率為386.4HZ〕,定義兩個相同數(shù)值的狀態(tài)變量將實際值包含起來,如下所示:...*GET,FREQ,ACTIVE,,SET,FREQ!參數(shù)FREQ等于計算頻率FREQ1=FREQFREQ2=FREQ.../OPTOPVAR,FREQ1,SV,,387!上限FREQ1=387OPVAR,FREQ2,SV,386!下限FREQ2=386...合理區(qū)域現(xiàn)為386到387,但每個狀態(tài)變量有足夠?qū)挼姆秶约铀俦平惨奜PVAR命令〕。在定義參數(shù)前用選擇功能防止在奇異點處〔如集中載荷〕附近選擇狀態(tài)變量。選擇目標(biāo)函數(shù)目標(biāo)函數(shù)是設(shè)計要最小化或最大化的數(shù)值。選擇目標(biāo)函數(shù)要記住以下幾點:ANSYS程序總是最小化目標(biāo)函數(shù)。如果要最大化數(shù)值x,就將問題轉(zhuǎn)化為求數(shù)值x1=C-x或x1=1/x的最小值,其中C是遠(yuǎn)大于x的數(shù)值。定義C-x的方法比用1/x的方法要好,因為后者是反比關(guān)系,在零階方法中不能得到準(zhǔn)確的逼近。目標(biāo)函數(shù)值在優(yōu)化過程中應(yīng)為正值,因為負(fù)值將會引起數(shù)據(jù)問題。為了防止負(fù)值出現(xiàn),可以將一個足夠大的正值加到目標(biāo)函數(shù)上〔大于目標(biāo)函數(shù)的最大值〕??傮w建議本局部說明了在優(yōu)化設(shè)計中要記住的一些關(guān)鍵點。最重要的一點是要記住優(yōu)化過程是一系列的分析過程,即一系列的前處理-求解-后處理-優(yōu)化的循環(huán)。建議從一個簡單的例子開始理解整個優(yōu)化的過程。一旦理解了這個過程,求解實際問題時就會覺得很方便。生成分析文件前面在“準(zhǔn)備分析文件〞一局部中提到,通過交互方式建模后有兩種方式生成分析文件:用內(nèi)部數(shù)據(jù)庫命令流[LGWRITE]〔UtilityMenu>File>WriteDBLogFile〕,或通過過程命令流文件〔Jobname.LOG〕。用內(nèi)部數(shù)據(jù)庫命令流有幾個優(yōu)點:LGWRITE命令有一個選項〔Kedit域〕刪除不重要的命令,或?qū)⑵渥鳛樵u論行寫到文件中。該選項會自動對命令流文件做自動處理,但用戶仍應(yīng)做一下查看以確保文件適合優(yōu)化。而且,內(nèi)部數(shù)據(jù)庫命令流包括整個模型的數(shù)據(jù)庫,因此不需要幾個文件拼湊起來。數(shù)據(jù)庫命令流是存儲在數(shù)據(jù)庫文件中〔Jobname.DB〕的,讀入的數(shù)據(jù)庫將包含其完整的數(shù)據(jù)庫命令流。〔見ANSYSOperationsGuide?!匙⒁猓和扑]在LGWRITE命令Kedit域中使用Kedit=COMMENT而不用Kedit=REMOVE。有些被Kedit過濾的命令有可能在后面*GET操作中用到〔如EXREM和PLNSOL〕。這些命令在Jobname.LGW的最后編輯中不能作為備注行。注——/CLEAR命令將數(shù)據(jù)庫從內(nèi)存中去除,同時也去除了數(shù)據(jù)庫命令流。在每次優(yōu)化循環(huán)的開始將運行一個/CLEAR命令。如果/LGWRITE命令是在優(yōu)化循環(huán)以后輸入的,那么結(jié)果文件將是不完整的命令流。一般,數(shù)據(jù)庫命令流文件是在優(yōu)化循環(huán)開始前寫的。前面說過,在定義優(yōu)化變量時不能用鼠標(biāo)拾取的操作。如果因為拾取較方便而使用了這種操作,那么特殊的GUI生成命令〔如FLST和FITEM〕將寫入命令流中。這些命令在ANSYSCommandsReference中有表達(dá)。但是在最后處理命令流文件時將這些命令轉(zhuǎn)化為參數(shù)形式將非常煩瑣。執(zhí)行后修改設(shè)計變量序列在執(zhí)行了一次或?qū)掖蝺?yōu)化分析后[OPEXE],用戶可能要刪除一些設(shè)計變量[OPVAR,Name,DEL]然后進(jìn)行下面的分析。通常,用戶需要這些參數(shù)的數(shù)值保持不變〔在最后優(yōu)化過程的數(shù)值或用戶指定的數(shù)值〕,而不要恢復(fù)回分析文件中的數(shù)值。假定在循環(huán)文件中沒有重定義設(shè)計變量值,可以用以下方法修正“刪除〞了的設(shè)計變量數(shù)值:在分析文件中,在/PREP7命令前初始化設(shè)計變量數(shù)值。〔只有后來要修改的參數(shù)才出現(xiàn)在/PREP7命令前。在下一個優(yōu)化前,輸入OPLOOP,PREP〔MainMenu>DesignOpt>Controls〕從第一個/PREP7處讀入分析文件。如果不做上面兩步操作,在以后的優(yōu)化分析中設(shè)計變量將設(shè)為其初始值。在下面的例子中,我們從兩個設(shè)計變量,AREA1和AREA2開始進(jìn)行優(yōu)化。然后AREA2被“刪除〞〔不再是設(shè)計變量〕,保持其當(dāng)前值。AREA1=5.00!AREA1是第一個面積AREA2=5.00!AREA2是第二個面積/PREP7!進(jìn)入PREP7前處理器!用AREA1和AREA2建立參數(shù)化模型......FINISH/SOLVE!施加載荷等并求解...FINISH/POST1SET,......*GET,SIG1,...!定義用做狀態(tài)變量和目標(biāo)函數(shù)的參數(shù)*GET,SIG2,...*GET,SIG3,......FINISH/OPT!進(jìn)入優(yōu)化分析模塊OPVAR,AREA1,DV,...!定義參數(shù)AREA1和AREA2為設(shè)計變量OPVAR,AREA2,DV,...OPVAR,SIG1,SV,...!指定狀態(tài)變量OPVAR,SIG2,SV,...OPVAR,TVOL,OBJ!指定目標(biāo)函數(shù)OPTYPE,SUBP!零階方法OPEXE!執(zhí)行優(yōu)化OPVAR,AREA2,DEL!刪除設(shè)計變量AREA2STATUS!驗證當(dāng)前優(yōu)化變量OPLOOP,PREP!從第一個/PREP7位置讀入分析文件OPTYPE,...!指定優(yōu)化類型...!指定其他優(yōu)化控制OPEXE!執(zhí)行優(yōu)化FINISH請參閱OPVAR,OPTYPE,OPEXE和OPLOOP命令以得到更詳細(xì)的解釋。執(zhí)行后修正優(yōu)化變量優(yōu)化變量可以在優(yōu)化執(zhí)行之間修改,此時使用[OPVAR]命令〔MainMenu>DesignOpt>DesignVariables〕。例如,用戶可能想修改目標(biāo)函數(shù)的允差,狀態(tài)變量的上下限,或刪除一個設(shè)計變量,定義一個新的設(shè)計變量。不管是哪種情況,只要優(yōu)化變量在一次優(yōu)化分析后修改了,程序?qū)⒆詣訉?yōu)化數(shù)據(jù)庫進(jìn)行局部的修改。這將不影響現(xiàn)存的設(shè)計序列和優(yōu)化設(shè)定選項。只有與優(yōu)化計算有關(guān)的信息將被去除。這樣做是為了去除不適合于修改后的優(yōu)化變量序列的數(shù)據(jù)。局部最小值和全局最小值有些情況下,求解過程將終止于得到一個局部最小值而非全局最小值〔見圖1-4〕。要驗證這種情況是否存在,可以用一個不同的初始設(shè)計序列〔即不同的初始設(shè)計變量值〕重新進(jìn)行分析。另外的方法見“零階方法的特殊情況〞一章。最小重量和最小體積如果當(dāng)前分析不需要時,應(yīng)防止指定材料密度。因為不計算質(zhì)量矩陣,可以節(jié)省機(jī)時。因為重量=密度*體積,所以可以通過這種方式參數(shù)化地計算重量,而把體積作為最小化的目標(biāo)〔假定模型密度是均勻的〕。網(wǎng)格密度在形狀優(yōu)化問題中,循環(huán)之間有限元網(wǎng)格是變化的,因此驗證網(wǎng)格精度是否足夠很重要。通過用參數(shù)方式指定網(wǎng)格劃分?jǐn)?shù)或網(wǎng)格大小,可以在每次循環(huán)中正確的改變之。而且,在線性應(yīng)力或熱分析中,可以用能量法那么列出每次循環(huán)的誤差率〔見ANSYSBasicAnalysisProceduresGuide第五章〕。一個更加有趣的擴(kuò)展方式是在設(shè)計優(yōu)化循環(huán)中進(jìn)行一次自適應(yīng)網(wǎng)格循環(huán)來保證網(wǎng)格劃分誤差不超過一個定值。自適應(yīng)網(wǎng)格劃分的內(nèi)容見ANSYSAdvancedAnalysisTechniquesGuide第二章。用以下方法列出誤差率:Command:PRERRGUI:MainMenu>GeneralPostproc>ListResults>PercentErrorUtilityMenu>List>Results>PercentError使用子結(jié)構(gòu)如果模型只有一局部在優(yōu)化設(shè)計中改變的話,可以考慮把不變的局部作成子結(jié)構(gòu)。優(yōu)化運行將只在使用局部〔和擴(kuò)展局部,如果必須的話〕進(jìn)行循環(huán),從而大大節(jié)省機(jī)時?!沧咏Y(jié)構(gòu)見ANSYSAdvancedAnalysisTechniquesGuide?!硟?yōu)化分析的例如〔GUI方法〕在本例中,用一階方法進(jìn)行優(yōu)化分析。問題描述一個有三根桿組成的珩架承受縱向和橫向載荷。珩架的重量在最大應(yīng)力不超過400psi最小化?!惨虼酥亓繛槟繕?biāo)函數(shù)?!橙旱臋M截面面積和根本尺寸B在指定范圍內(nèi)變化。結(jié)構(gòu)的重量初始設(shè)計為109.10磅。缺省允差〔由程序計算〕為初始重量的1%〔11磅〕。但是,為了便于收斂,一階方法的優(yōu)化分析中將目標(biāo)函數(shù)的允差定為2.0。問題參數(shù)分析中使用如下材料特性:E=2.1E6psiRHO=2.85E-4lb/in3(比重)最大許用應(yīng)力=400psi分析中使用如下幾何特性:橫截面面積變化范圍=1到1000in2(初始值為1000)根本尺寸B變化范圍=400到1000in〔初始值為1000〕問題簡圖第一步:指定文件名選擇UtilityMenu>File>ChangeJobname,翻開文件名對話框。輸入“truss〞為工作文件名。單擊OK關(guān)閉對話框。第二步:指定分析題目選擇UtilityMenu>File>ChangeTitle,翻開更改分析題目對話框。輸入“OptimizationofaThree-BarTruss〞作為分析題目。單擊OK關(guān)閉對話框。第三步:定義參數(shù)初始值選擇UtilityMenu>Parameters>ScalarParameters,翻開數(shù)值參數(shù)對話框。在選擇區(qū)域中輸入以下內(nèi)容:B=1000按ENTER鍵A1=1000按ENTER鍵A2=1000按ENTER鍵A3=1000單擊OK。參數(shù)將在菜單中顯示出來。在數(shù)值參數(shù)對話框中單擊OK。第四步:定義單元類型選擇MainMenu>Preprocessor>ElementType>Add/Edit/Delete,翻開單元類型對話框。在單元類型庫對話框中單擊Add。在左邊列中單擊StructuralLink。在右邊列中單擊2DSpar1。在單元參考號區(qū)域鍵入1。在單元類型庫對話框中單擊OK。在單元類型對話框中單擊Close。第五步:定義實參選擇MainMenu>Preprocessor>RealConstants,翻開實參對話框。單擊Add,翻開實參對話框中單元類型。單擊OK,翻開LINK1實參對話框。在實參序列號區(qū)域中鍵入1。在橫截面區(qū)域中鍵入A1。單擊Apply。這將確認(rèn)LINK1的實參并將1000輸入實參1的橫截面區(qū)域。在實參序列號區(qū)域鍵入2。在橫截面面積區(qū)域鍵入A2。單擊Apply。這將確認(rèn)LINK1的實參并將1000輸入實參1的橫截面區(qū)域。10.在實參序列號區(qū)域鍵入3。11.在橫截面面積區(qū)域鍵入A3。12.在LINK1實參對話框中單擊OK。13.在實參對話框中單擊Close。第六步:定義材料特性選擇MainMenu>Preprocessor>MaterialProps>-Constant->Isotropic,翻開各項同性材料特性對話框。在材料號區(qū)域中輸入1。單擊OK翻開第二個各項同性材料特性對話框。在楊氏模量對話框輸入2.1E6。單擊OK并關(guān)閉對話框。第七步:生成結(jié)點選擇MainMenu>Preprocessor>-Modeling->Create>Nodes>InActiveCS,翻開在活動坐標(biāo)系中生成結(jié)點對話框。在結(jié)點號區(qū)域中輸入1。在活動坐標(biāo)域,第一個域中輸入-B,第二個域中輸入0,第三個輸入0。單擊Apply。結(jié)點1將出現(xiàn)在ANSYS圖形窗口。在結(jié)點號碼域中輸入2。在活動坐標(biāo)域,第一個域中輸入0,第二個域中輸入0,第三個輸入0。單擊Apply。結(jié)點2將出現(xiàn)在ANSYS圖形窗口。在結(jié)點號碼域中輸入3。在活動坐標(biāo)域,第一個域中輸入B,第二個域中輸入0,第三個輸入0。10.單擊Apply。結(jié)點2將出現(xiàn)在ANSYS圖形窗口。11.在結(jié)點號碼域中輸入3。12.在活動坐標(biāo)域,第一個域中輸入0,第二個域中輸入-1000,第三個輸入0。13.單擊OK關(guān)閉在活動坐標(biāo)系生成結(jié)點對話框。結(jié)點4將出現(xiàn)在ANSYS圖形窗口中。所有4個結(jié)點都出現(xiàn)在ANSYS圖形窗口中。14.翻開結(jié)點號碼。選擇菜單UtilityMenu>PlotCtrls>WindowControls>WindowOptions翻開窗口選項對話框。15.在結(jié)點號碼框上單擊OFF〔將切換為ON〕。16.單擊OK關(guān)閉對話框。17.選擇菜單UtilityMenu>PlotCtrls>WindowControls>WindowsOptions翻開窗口對話框。18.在坐標(biāo)位置出選取不顯示選項。19.單擊OK關(guān)閉對話框。第八步:生成單元選擇菜單MainMenu>Preprocessor>-Modeling->Create>Elements>-AutoNumbered->ThruNodes翻開結(jié)點對話框的單元項。在圖形窗口,拾取結(jié)點1和4〔按照該順序〕。在選擇的結(jié)點周圍將出現(xiàn)一個小框。在該對話框單擊OK關(guān)閉對話框。ANSYS圖形窗口中1和4結(jié)點之間將出現(xiàn)一個線單元1。選擇菜單MainMenu>Preprocessor>-Modeling->Create>Elements>ElemAttributes翻開單元特性對話框。在實參序列號中輸入2。在單元特性對話框中單擊OK。選擇菜單MainMenu>Preprocessor>-Modeling->Create>Elements>-AutoNumbered->ThruNodes翻開結(jié)點對話框的單元項。在圖形窗口,拾取結(jié)點2和4〔按照該順序〕。在該對話框單擊OK關(guān)閉對話框。ANSYS圖形窗口中3和4結(jié)點之間將出現(xiàn)一個線單元2。10.選擇菜單MainMenu>Preprocessor>-Modeling->Create>Elements>ElemAttributes翻開單元特性對話框。11.在實參序列號中輸入2。12.在單元特性對話框中單擊OK。13.選擇菜單MainMenu>Preprocessor>-Modeling->Create>Elements>-AutoNumbered->ThruNodes翻開結(jié)點對話框的單元項。14.在圖形窗口,拾取結(jié)點2和4〔按照該順序〕。15.在該對話框單擊OK關(guān)閉對話框。ANSYS圖形窗口中3和4結(jié)點之間將出現(xiàn)一個線單元3。第九步:施加位移約束和載荷選擇菜單MainMenu>Solution>-Loads->Apply>-Structural->Displacement>OnNodes翻開ApplyU,ROTonNodes的對話框。在ANSYS圖形窗口,拾取結(jié)點1,2和3。單擊OK關(guān)閉對話框并翻開第二個ApplyU,ROTonNodes的對話框。在要約束的自由度菜單上單擊ALLDOF選項。單擊OK關(guān)閉對話框。選擇菜單MainMenu>Solution>-Loads-Apply>-Structural-Force/Moment>OnNodes翻開ApplyF/MonNodes對話框。在ANSYS圖形窗口,拾取結(jié)點4。在對話框中單擊OK關(guān)閉并翻開第二個ApplyF/MonNodes對話框。將Force/Mom方向設(shè)為FX。10.在Force/MomentValue域輸入200000。11.單擊OK關(guān)閉對話框。在結(jié)點4上將出現(xiàn)一個橫向箭頭表示施加的載荷。12.選擇菜單MainMenu>Solution>-Loads-Apply>-Strutural-Force/Moment>OnNodes翻開ApplyF/MonNodes對話框。13.在ANSYS圖形窗口,單擊結(jié)點4。14.在對話框中單擊OK關(guān)閉并翻開第二個ApplyF/MonNodes對話框。15.將Force/Mom方向設(shè)為FX。16.在Force/MomentValue域輸入-200000。17.單擊OK關(guān)閉對話框。在結(jié)點4上將出現(xiàn)一個垂直箭頭表示施加的載荷。第十步:求解模型選擇菜單MainMenu>Solution>-Solve->CurrentLS翻開SolveCurrentLoadStep對話框。求解目標(biāo)和載荷步選項在出現(xiàn)在狀態(tài)窗口。查看狀態(tài)窗口中的目標(biāo)信息并在菜單條上單擊Close關(guān)閉。在該對話框中單擊OK。求解完畢后,將出現(xiàn)信息框告訴用戶求解完畢。單擊Close關(guān)閉對話框。第十一步:進(jìn)入后處理器并讀出單元總體積選擇菜單MainMenu>GeneralPostproc>ElementTable>DefineTable翻開ElementTableData對話框。單擊Add定義單元表格并翻開DefineAdditionalElementaryTableItems對話框。在UserLabel域中輸入EVOL。在Item,CompResultsDataItem菜單的左列單擊Geometry,在右列單擊ElemVolumeVOLU。單擊OK關(guān)閉對話框。在ElementTableData對話框中單擊Close。選擇菜單MainMenu>GeneralPostproc>ElementTable>SumofEachItem翻開TabularSumofEachElementTableItem對話框。單擊OK計算總和。SSUM命令窗口將顯示總和為0.382842E+07。單擊菜單條上的Close關(guān)閉SSUM命令窗口。10.選擇菜單UtilityMenu>Parameters>GetScalarData翻開GetScalarData對話框。11.在TypeofDatatobeRetrieved菜單左列單擊ResultsData,在右列單擊ElemTableSums。12.單擊OK關(guān)閉對話框并翻開GetElementTableSumResults對話框。13.在NameofParametertobeDefined域輸入VTOT。14.單擊OK關(guān)閉對話框。15.選擇菜單UtilityMenu>Parameters>ScalarParameters翻開ScalarParameters對話框。16.在Selection域輸入RHO=2.85E-4并按ENTER鍵。本信息應(yīng)顯示在菜單上。17.在Selection域輸入WT=RHO*V

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論