UMAT全過(guò)程技術(shù)篇_第1頁(yè)
UMAT全過(guò)程技術(shù)篇_第2頁(yè)
UMAT全過(guò)程技術(shù)篇_第3頁(yè)
UMAT全過(guò)程技術(shù)篇_第4頁(yè)
UMAT全過(guò)程技術(shù)篇_第5頁(yè)
已閱讀5頁(yè),還剩5頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

UMAT全過(guò)程-"技術(shù)篇"[寫(xiě)在前面:

這篇文章是UMAT全過(guò)程-感想篇的姊妹篇,容許要給大家寫(xiě)的一篇帖子,同時(shí)也是為了記錄自己的學(xué)習(xí)過(guò)程,與大家分享!首先指出,俺的"技術(shù)篇"--是加了引號(hào)的,因?yàn)榇_實(shí)稱不上有多么大的技術(shù)含量,還望大家莫笑偶!只不過(guò)一是跟那個(gè)感想篇形成一個(gè)對(duì)照,同時(shí)主要內(nèi)容為自己編子程序過(guò)程中涉及的技術(shù)邊邊上的小問(wèn)題的一些解決方法,供仿友們參考!偶不是謙虛,也不是一個(gè)低調(diào)的人,大家謝謝和支持的話,我先行謝過(guò)啦!更希望大家能提出質(zhì)疑或者別的更好的方法,大家相互交流,共同進(jìn)步!]----------------------------------------------------------------------------*轉(zhuǎn)*入*正*題*第一局部:相關(guān)知識(shí)[特別聲明,這局部來(lái)自于華中科技大學(xué)楊曼娟同學(xué)的碩士學(xué)位論文,在此對(duì)作者表示感謝!--大家可以去知網(wǎng)下載]----------------------------------------------------------------------------1.ABAQUS中材料非線性問(wèn)題的處理

ABAQUS中材料非線性問(wèn)題用Newton-Raphson法來(lái)求解。首先將載荷分為假設(shè)干個(gè)微小增量,結(jié)構(gòu)受到一個(gè)微小增量△P。ABAQUS用與初始結(jié)構(gòu)位移相對(duì)應(yīng)的初始剛度矩陣K0和荷載增量△P計(jì)算出結(jié)構(gòu)的在這一步增量后的位移修正Ca、修正后的位移值Ua和相應(yīng)的新的剛度矩陣Ka。ABAQUS用新的剛度矩陣計(jì)算結(jié)構(gòu)的內(nèi)力Ia,荷載P和Ia的差值為迭代的剩余力Ra,即Ra=P-Ia。如果Ra在模型內(nèi)的每個(gè)自由度上的值都為零,如圖2-2中的a點(diǎn),那么結(jié)構(gòu)處于平衡狀態(tài)。但在非線性問(wèn)題中,通常Ra是不可能為零,ABAQUS為此設(shè)置了一個(gè)剩余力容差。如果Ra小于這個(gè)數(shù)字,ABAQUS就認(rèn)為結(jié)構(gòu)的內(nèi)外力是平衡的。一般這個(gè)缺省值取為平均內(nèi)力的0.5%(如圖2-2)。

在Ra滿足小于剩余力容差的條件后,ABAQUS還要檢查位移修正系數(shù)Ca是否遠(yuǎn)遠(yuǎn)小于結(jié)構(gòu)的位移增量△Ua=Ua-Uo.如果大于位移增量的1%,ABAQUS將自動(dòng)繼續(xù)進(jìn)行迭代。第二次迭代時(shí),ABAQUS用剛度矩陣Ka和第一次迭代的剩余力Ra計(jì)算,得到一個(gè)新的位移修正值。同理,第二次迭代中ABAQUS用新的剩余力、新的位移系數(shù),繼續(xù)驗(yàn)證收斂性,直到收斂為止〔如圖2-3〕。因此非線性問(wèn)題的計(jì)算量要比線性問(wèn)題的計(jì)算量大得多,計(jì)算的時(shí)候需要分配更多的內(nèi)存和磁盤(pán)空間。

ABAQUS會(huì)自動(dòng)調(diào)整荷載增量的大小,用戶只需合理的設(shè)置一個(gè)第一次迭代的增量值即可,如果用戶不給出第一次迭代的增量值,ABAQUS會(huì)在第一次迭代的過(guò)程中把設(shè)置的所有荷載都加到結(jié)構(gòu)上去,然后不斷的試算自動(dòng)調(diào)整第一次迭代的增量大小。尋找一個(gè)增量值的收斂解迭代的次數(shù)取決于系統(tǒng)非線性的程度。ABAQUS中缺省的設(shè)置是,如果在一個(gè)增量值的作用下,迭代16次以后結(jié)果仍不收斂,ABAQUS將放棄這個(gè)增量值,把增量取為前一次增量值的25%再進(jìn)行計(jì)算。如果ABAQUS在迭代次數(shù)小于5次的情況下就找到了收斂解,ABAQUS就自動(dòng)把增量值增加50%再進(jìn)行計(jì)算,得到更為合理的增量值。2.用戶子程序接口

ABAQUS不僅提供標(biāo)準(zhǔn)的有限元分析程序,而且具有良好的開(kāi)放性,可利用它

提供的用戶子程序接口生成非標(biāo)準(zhǔn)的分析程序來(lái)滿足用戶的需要,在實(shí)際工程中得

到廣泛應(yīng)用。ABAQUS允許用戶通過(guò)子程序以代碼的形式來(lái)擴(kuò)展主程序的功能,并

給用戶提供了強(qiáng)大而又靈活的用戶子程序接口和應(yīng)用程序接口〔UtilityRoutine〕,

ABAQUS6.4一共有42個(gè)用戶子程序接口,15個(gè)應(yīng)用程序接口,用戶可以定義包括

邊界條件、荷載條件、接觸條件、材料特性以及利用用戶子程序和其它應(yīng)用軟件進(jìn)

行數(shù)值交換等等。這些用戶子程序接口使得用戶解決一些問(wèn)題時(shí)有很大的靈活性,

同時(shí)大大的擴(kuò)充了ABAQUS的功能。例如:

通過(guò)用戶定義單元接口,用戶自定義的任何類型的線性或非線性單元都可以被引入模型中,對(duì)于線性單元?jiǎng)偠染仃嚭唾|(zhì)量矩陣可以直接確定。同時(shí),用戶子程序也可被用來(lái)定義這些單元的線性和非線性特性。通過(guò)用戶材料子程序接口,用戶可定義任何補(bǔ)充的材料模型,不但任意數(shù)量的

材料常數(shù)都可以作為資料被讀取,而且ABAQUS對(duì)于任何數(shù)量的與解相關(guān)的狀態(tài)變

量在每一材料計(jì)數(shù)點(diǎn)都提供了存儲(chǔ)功能,以便在這些子程序中應(yīng)用。3.用戶子程序和主程序的結(jié)合

ABAQUS的用戶子程序是根據(jù)ABAQUS提供的相應(yīng)接口,按照Fortran語(yǔ)法,用戶自己編寫(xiě)的代碼。它是一個(gè)獨(dú)立的程序單元,可以獨(dú)立的被存儲(chǔ)和編譯,也能被其它程序單元引用,因此,利用它可帶回大量數(shù)據(jù)供引用程序使用,也可以用它來(lái)完成各種特殊的功能。它的一般結(jié)構(gòu)形式是:SUBROUTINES(x1,x2,……,xn)

INCLUDE‘ABA_PARAM.INC’〔用于ABAQUS/Standard用戶子程序中〕

ORINCLUDE‘VABA_PARAM.INC’)〔用于ABAQUS/Explicit用戶子程序中〕

……

RETURN

END

x1,x2,……,xn是ABAQUS提供的用戶子程序的接口參數(shù),有些參數(shù)是ABAQUS傳到用戶子程序中的,例如SUBROUTINEDLOAD中的KSTEP、KINC、COORDS;有些是需要用戶自己定義的,例如F。文件aba_param.inc和vaba_param.inc隨著ABAQUS軟件的安裝而包含在操作系統(tǒng)中,它們含有重要的參數(shù),幫助ABAQUS主求解程序?qū)τ脩糇映绦蜻M(jìn)行編譯和鏈接。當(dāng)控制遇到RETURN語(yǔ)句時(shí)便返回到引用程序單元中去,END語(yǔ)句是用戶子程序結(jié)束的標(biāo)志。

在一個(gè)算例中,用戶可以用到多個(gè)用戶子程序,但必須把它們放在一個(gè)以.for為

擴(kuò)展名的文件中。運(yùn)行帶有用戶子程序的算例同時(shí)有兩種方法:一是在CAE中運(yùn)行,

在EDITJOB菜單中的GENERAL子菜單的USERSUBROUTINEFILE對(duì)話框中選擇用戶子程序所在的文件即可;另外是在ABAQUS.COMMAND中運(yùn)行,語(yǔ)法如下:

abaqusjob=job-nameuser={source-file|object-file}編制用戶子程序時(shí)應(yīng)注意:(1)用戶子程序相互之間不能調(diào)用,但可以調(diào)用用戶自己編寫(xiě)的Fortran子程序

和ABAQUS應(yīng)用程序。ABAQUS應(yīng)用程序必須由用戶子程序調(diào)用。當(dāng)用戶編寫(xiě)

Fortran子程序時(shí),建議子程序名以K開(kāi)頭,以免和ABAQUS內(nèi)部程序沖突。

(2)當(dāng)用戶在用戶子程序中利用OPEN翻開(kāi)外部文件時(shí),要注意以下兩點(diǎn):一是設(shè)備號(hào)的選擇是有限制的,只能取15~18和大于100的設(shè)備號(hào),其余的都已被ABAQUS占用;二是用戶需提供外部文件的絕對(duì)路徑而不是相對(duì)路徑。

(3)對(duì)于不同的用戶子程序ABAQUS調(diào)用的時(shí)間是不同的,有的是在每個(gè)STEP

的開(kāi)始,有的是STEP的結(jié)尾,有的是在每個(gè)INCREMENT的開(kāi)始等等。當(dāng)ABAQUS

調(diào)用用戶子程序時(shí),都會(huì)把當(dāng)前的STEP和INCREMENT利用用戶子程序的兩個(gè)實(shí)

參KSTEP和KINC傳給用戶子程序,用戶可把它們輸出到外部文件中,這樣就可清

楚的知道ABAQUS何時(shí)調(diào)用該用戶子程序。為保證用戶子程序的正確執(zhí)行,子程序的書(shū)寫(xiě)必須遵循ABAQUS的相關(guān)規(guī)定.4.用戶材料子程序UMAT接口的原理

用戶材料子程序〔User-definedMaterialMechanicalBehavior,簡(jiǎn)稱UMAT〕是

ABAQUS提供應(yīng)用戶定義自己的材料屬性的Fortran程序接口,使用戶能使用ABAQUS材料庫(kù)中沒(méi)有定義的材料模型。用戶材料子程序UMAT通過(guò)與ABAQUS主求解程序的接口實(shí)現(xiàn)與ABAQUS的資料交流.在輸入文件中,使用關(guān)鍵詞“*USERMATERIAL〞表示定義用戶材料屬性。[更詳細(xì)相關(guān)知識(shí),請(qǐng)看帖子ABAQUS-UMAT-自學(xué)知識(shí)整理貼[已經(jīng)初步完成,不斷完善更新,請(qǐng)跟帖討論]]

由于UMAT子程序在單元的積分點(diǎn)上調(diào)用,增量步開(kāi)始時(shí),主程序路徑將通過(guò)

UMAT的接口進(jìn)入U(xiǎn)MAT,單元當(dāng)前積分點(diǎn)必要變量的初始值將隨之傳遞給UMAT

的相應(yīng)變量。在UMAT結(jié)束時(shí),變量的更新值將通過(guò)接口返回主程序。

ABAQUS調(diào)用UMAT過(guò)程及次數(shù)如圖2-4所示。5.UMAT子程序流程

UMAT子程序采用Fortran語(yǔ)言編制,可以包括以下幾個(gè)局部:子程序定義語(yǔ)句、ABAQUS定義的參數(shù)說(shuō)明、用戶定義的局部變量說(shuō)明、用戶編制的程序主體、子程序返回和結(jié)束語(yǔ)句。

主要求解過(guò)程:每一個(gè)增量加載步開(kāi)始時(shí),ABAQUS主程序在單元的積分點(diǎn)上調(diào)用UMAT子程序,并傳入應(yīng)變?cè)隽?、時(shí)間步長(zhǎng)及荷載增量,同時(shí)也傳入當(dāng)前狀態(tài)的應(yīng)力、應(yīng)變及其它與求解過(guò)程相關(guān)的變量;UMAT子程序根據(jù)本構(gòu)方程求解應(yīng)力增量并更新應(yīng)力及其它相關(guān)的變量,提供Jacobian矩陣給ABAQUS主程序以形成整體剛度矩陣;主程序結(jié)合當(dāng)前荷載增量求解位移增量,繼而進(jìn)行平衡校核;如果不滿足指定的誤差,ABAQUS將進(jìn)行迭代直到認(rèn)為收斂,然后進(jìn)行下一增量步的求解。

ABAQUS中應(yīng)力σ采用Cauchy應(yīng)力張量描述,剪應(yīng)變分量εij按照工程剪應(yīng)變

的定義存儲(chǔ)。在求解的過(guò)程中,需記錄保存與求解過(guò)程相關(guān)的變量,這可以儲(chǔ)存在UMAT子程序的STATEV數(shù)組中,并且可以定義儲(chǔ)存的數(shù)量。對(duì)本文所述的本構(gòu)方程,定義了13個(gè)與求解過(guò)程相關(guān)的變量,即6個(gè)彈性應(yīng)變,6個(gè)塑性應(yīng)變,1個(gè)塑性參數(shù)增量。非非的ABAQUS用戶子程序[zz]轉(zhuǎn)自當(dāng)用到某個(gè)用戶子程序時(shí),用戶所關(guān)心的主要有兩方面:一是ABAQUS提供的用戶子程序的接口參數(shù)。有些參數(shù)是ABAQUS傳到用戶子程序中的,例如SUBROUTINEDLOAD中的KSTEP,KINC,COORDS;有些是需要用戶自己定義的,例如F。二是ABAQUS何時(shí)調(diào)用該用戶子程序,對(duì)于不同的用戶子程序ABAQUS調(diào)用的時(shí)間是不同的。有些是在每個(gè)STEP的開(kāi)始,有的是STEP結(jié)尾,有的是在每個(gè)INCREMENT的開(kāi)始等等。當(dāng)ABAQUS調(diào)用用戶子程序是,都會(huì)把當(dāng)前的STEP和INCREMENT利用用戶子程序的兩個(gè)實(shí)參KSTEP和KINC傳給用戶子程序,用戶可編個(gè)小程序把它們輸出到外部文件中,這樣對(duì)ABAQUS何時(shí)調(diào)用該用戶子程序就會(huì)有更深的了解?!沧映绦蛑泻苤匾木褪且烙蒩baqus提供的那些參量的意義,如下〕首先介紹幾個(gè)子程序:一.SUBROUTINEDLOAD(F,KSTEP,KINC,TIME,NOEL,NPT,LAYER,KSPT,COORDS,JLTYP,SNAME)參數(shù):

1.F為用戶定義的是每個(gè)積分點(diǎn)所作用的荷載的大??;

2.KSTEP,KINC為ABAQUS傳到用戶子程序當(dāng)前的STEP和INCREMENT值;

3.TIME(1),TIME(2)為當(dāng)前STEPTIME和INCREMENTTIME的值;

4.NOEL,NPT為積分點(diǎn)所在單元的編號(hào)和積分點(diǎn)的編號(hào);

5.COORDS為當(dāng)前積分點(diǎn)的坐標(biāo);

6.除F外,所有參數(shù)的值都是ABAQUS傳到用戶子程序中的。功能:

1.荷載可以被定義為積分點(diǎn)坐標(biāo)、時(shí)間、單元編號(hào)和單元節(jié)點(diǎn)編號(hào)的函數(shù)。

2.用戶可以從其他程序的結(jié)果文件中進(jìn)行相關(guān)操作來(lái)定義積分點(diǎn)F的大小。例1:這個(gè)例子在每個(gè)積分點(diǎn)施加的荷載不僅是坐標(biāo)的函數(shù),而且是隨STEP變化而變化的。

SUBROUTINEDLOAD(P,KSTEP,KINC,TIME,NOEL,NPT,LAYER,KSPT,COORDS,

1JLTYP,SNAME)

INCLUDE'ABA_PARAM.INC'C

DIMENSIONTIME(2),COORDS(3)

CHARACTER*80SNAME

PARAMETER(PLOAD=100.E4)

IF(KSTEP.EQ.1)THEN!當(dāng)STEP=1時(shí)的荷載大小

P=PLOAD

ELSEIF(KSTEP.EQ.2)THEN!當(dāng)STEP=2時(shí)的荷載大小

P=COORDS(1)*PLOAD!施加在積分點(diǎn)的荷載P是坐標(biāo)的函數(shù)

ELSEIF(KSTEP.EQ.3)THEN!當(dāng)STEP=3時(shí)的荷載大小

P=COORDS(1)**2*PLOAD

ELSEIF(KSTEP.EQ.4)THEN!當(dāng)STEP=4時(shí)的荷載大小

P=COORDS(1)**3*PLOAD

ELSEIF(KSTEP.EQ.5)THEN!當(dāng)STEP=5時(shí)的荷載大小

P=COORDS(1)**4*PLOAD

ENDIF

RETURN

END

UMAT子程序具有強(qiáng)大的功能,使用UMAT子程序:

(1)

可以定義材料的本構(gòu)關(guān)系,使用ABAQUS材料庫(kù)中沒(méi)有包含的材料進(jìn)行計(jì)算,擴(kuò)充程序功能。

(2)幾乎可以用于力學(xué)行為分析的任何分析過(guò)程,幾乎可以把用戶材料屬性賦予ABAQUS中的任何單元;(3)必須在UMAT中提供材料本構(gòu)模型的雅可比〔Jacobian〕矩陣,即應(yīng)力增量對(duì)應(yīng)變?cè)隽康淖兓省?/p>

(4)可以和用戶子程序“USDFLD〞聯(lián)合使用,通過(guò)“USDFLD〞重新定義單元每一物質(zhì)點(diǎn)上傳遞到UMAT中場(chǎng)變量的數(shù)值。由于主程序與UMAT之間存在數(shù)據(jù)傳遞,甚至共用一些變量,因此必須遵守有關(guān)UMAT的書(shū)寫(xiě)格式,UMAT中常用的變量在文件開(kāi)頭予以定義,通常格式為:

SUBROUTINEUMAT(STRESS,STATEV,DDSDDE,SSE,SPD,SCD,

1RPL,DDSDDT,DRPLDE,DRPLDT,

2STRAN,DSTRAN,TIME,DTIME,TEMP,DTEMP,PREDEF,DPRED,CMNAME,

3NDI,NSHR,NTENS,NSTATV,PROPS,NPROPS,COORDS,DROT,PNEWDT,

4CELENT,DFGRD0,DFGRD1,NOEL,NPT,LAYER,KSPT,KSTEP,KINC)

INCLUDE'ABA_PARAM.INC'

CHARACTER*80CMNAME

DIMENSIONSTRESS(NTENS),STATEV(NSTATV),

1DDSDDE(NTENS,NTENS),DDSDDT(NTENS),DRPLDE(NTENS),

2STRAN(NTENS),DSTRAN(NTENS),TIME(2),PREDEF(1),DPRED(1),

3PROPS(NPROPS),COORDS(3),DROT(3,3),DFGRD0(3,3),DFGRD1(3,3)

usercodingtodefineDDSDDE,STRESS,STATEV,SSE,SPD,SCD

and,ifnecessary,RPL,DDSDDT,DRPLDE,DRPLDT,PNEWDT

RETURN

END

UMAT中的應(yīng)力矩陣、應(yīng)變矩陣以及矩陣DDSDDE,DDSDDT,DRPLDE等,都是直接分量存儲(chǔ)在前,剪切分量存儲(chǔ)在后。直接分量有NDI個(gè),剪切分量有NSHR個(gè)。各分量之間的順序根據(jù)單元自由度的不同有一些差異,所以編寫(xiě)UMAT時(shí)要考慮到所使用單元的類別。下面對(duì)UMAT中用到的一些變量進(jìn)行說(shuō)明:

DDSDDE〔NTENS,NTENS〕是一個(gè)NTENS維的方陣,稱作雅可比矩陣,,是應(yīng)力的增量,是應(yīng)變的增量,DDSDDE〔I,J〕表示增量步結(jié)束時(shí)第J個(gè)應(yīng)變分量的改變引起的第I個(gè)應(yīng)力分量的變化。通常雅可比是一個(gè)對(duì)稱矩陣,除非在“*USERMATERIAL〞語(yǔ)句中參加了“UNSYMM〞參數(shù)。

STRESS〔NTENS〕應(yīng)力張量矩陣,對(duì)應(yīng)NDI個(gè)直接分量和NSHR個(gè)剪切分量。在增量步的開(kāi)始,應(yīng)力張量矩陣中的數(shù)值通過(guò)UMAT和主程序之間的接口傳遞到UMAT中,在增量步的結(jié)束UMAT將對(duì)應(yīng)力張量矩陣更新。對(duì)于包含剛體轉(zhuǎn)動(dòng)的有限應(yīng)變問(wèn)題,一個(gè)增量步調(diào)用UMAT之前就已經(jīng)對(duì)應(yīng)力張量的進(jìn)行了剛體轉(zhuǎn)動(dòng),因此在UMAT中只需處理應(yīng)力張量的共旋局部。UMAT中應(yīng)力張量的度量為柯西〔真實(shí)〕應(yīng)力。

STATEV〔NSTATEV〕用于存儲(chǔ)狀態(tài)變量的矩陣,在增量步開(kāi)始時(shí)將數(shù)值傳遞到UMAT中。也可在子程序USDFLD或UEXPAN中先更新數(shù)據(jù),然后增量步開(kāi)始時(shí)將更新后的數(shù)據(jù)傳遞到UMAT中。在增量步的結(jié)束必須更新?tīng)顟B(tài)變量矩陣中的數(shù)據(jù)。和應(yīng)力張量矩陣不同的是:對(duì)于有限應(yīng)變問(wèn)題,除了材料本構(gòu)行為引起的數(shù)據(jù)更新以外,狀態(tài)變量矩陣中的任何矢量或者張量都必須通過(guò)旋轉(zhuǎn)來(lái)考慮材料的剛體運(yùn)動(dòng)。狀態(tài)變量矩陣的維數(shù),等于關(guān)鍵字“*DEPVAR〞定義的數(shù)值。狀態(tài)變量矩陣的維數(shù)通過(guò)ABAQUS輸入文件中的關(guān)鍵字“*DEPVAR〞定義,關(guān)鍵字下面數(shù)據(jù)行的數(shù)值即為狀態(tài)變量矩陣的維數(shù)。材料常數(shù)的個(gè)數(shù),等于關(guān)鍵字“*USERMATERIAL〞中“CONSTANTS〞常數(shù)設(shè)定的值。

PROPS〔NPROPS〕材料常數(shù)矩陣,矩陣中元素的數(shù)值對(duì)應(yīng)于關(guān)鍵字“*USERMATERIAL〞下面的數(shù)據(jù)行。

SSE,SPD,SCD分別定義每一增量步的彈性應(yīng)變能,塑性耗散和蠕變耗散。它們對(duì)計(jì)算結(jié)果沒(méi)有影響,僅僅作為能量輸出。其他變量:

STRAN(NTENS):應(yīng)變矩陣;DSTRAN(NTENS):應(yīng)變?cè)隽烤仃嚕?/p>

DTIME:增量步的時(shí)間增量;

NDI:直接應(yīng)力分量的個(gè)數(shù);

NSHR:剪切應(yīng)力分量的個(gè)數(shù);

NTENS:總應(yīng)力分量的個(gè)數(shù),NTENSNDINSHR=+。使用UMAT時(shí)需要注意單元的沙漏控制剛度和橫向剪切剛度。通常減縮積分單元的沙漏控制剛度和板、殼、梁?jiǎn)卧臋M向剪切剛度是通過(guò)材料屬性中的彈性性質(zhì)定義的。這些剛度基于材料初始剪切模量的值,通常在材料定義中通過(guò)“*ELASTIC〞選項(xiàng)定義。但是使用UMAT的時(shí)候,ABAQUS對(duì)程序輸入文件進(jìn)行預(yù)處理的時(shí)候得不到剪切模量的數(shù)值。所以這時(shí)候用戶必須使用“*HOURGLASSSTIFFNESS〞選項(xiàng)來(lái)定義具有沙漏模式的單元的沙漏控制剛度,使用“*TRANSVERSESHEARSTIFFNESS〞選項(xiàng)來(lái)定義板、殼、梁?jiǎn)卧臋M向剪切剛度。幾個(gè)關(guān)于子程序的問(wèn)題及相應(yīng)解答

Q:本人在用umat作本構(gòu)模型時(shí),

*static,

1,500,0.000001,0.1此時(shí)要求的增量步很多,即每次增量要很小,

*static

1,500時(shí),在彈性向塑性過(guò)度時(shí),出現(xiàn)錯(cuò)誤,增量過(guò)大,出現(xiàn)尖點(diǎn).?

A:YOUCANTRYASFOLLOWS:

*STEP,EXTRAPOLATION=NO,INC=2000000

*STATIC

0.001,500.0,0.00001,0.1。

Q:在abaqus中,如果采用umat,利用自己的本構(gòu),如何讓abaqus明白這種材料的彈塑性應(yīng)變,也就是說(shuō),如何讓程序返回彈性應(yīng)變與塑性應(yīng)變,好在output中輸出,我曾想用最笨地方法,在uvarm中定義輸出,利用getvrm獲取材料點(diǎn)的值,但無(wú)法獲取增量應(yīng)力,材料常數(shù)等,研究了幫助中的例子,umatmst3.inp,umatmst3.for,他采用misesJ2流動(dòng)理論,我在outputhistory顯示他已進(jìn)入塑性狀態(tài),但他的PE仍然為0??!?

A:用uvar()勉強(qiáng)成功。

Q:偶在umat中調(diào)用求主應(yīng)力函數(shù)

CALLSPRINC(STRESS,PS,LSTR,NDI,NSHR)后,存儲(chǔ)主應(yīng)力得數(shù)組PS中各個(gè)主應(yīng)力排列順序是什么?

PS1>PS2>PS3?

PS1<PS2<PS3?

PS1>PS3>PS2?

A:第二個(gè)。個(gè)人覺(jué)得:

umat實(shí)現(xiàn)自己的本構(gòu)沒(méi)有固定的方法,對(duì)于不同的本構(gòu)有可能必須采用不同的方法。這要靠自己不斷地摸索。有可能一種方法對(duì)于簡(jiǎn)單加載問(wèn)題還行,但有可能對(duì)于復(fù)雜問(wèn)題并不收斂。最重要一點(diǎn),就是umat中采用的算法必須consistent.再就是ddsdde必須正確,〔如果采用back_Euler方法等一些算法,ddsdde錯(cuò)誤有時(shí)不影響結(jié)果〔對(duì)于簡(jiǎn)單加載問(wèn)題沒(méi)有影響,能收斂,〕,但對(duì)于復(fù)雜問(wèn)題不收斂。

uptonow,你這個(gè)算法對(duì)于Mises,hill,J2,J2d等一類的屈服函數(shù)是正確的,但具體的本構(gòu)還要靈活運(yùn)用,這我也正學(xué)習(xí),正在摸索。有時(shí),umat需要很強(qiáng)的有限元根底,并且對(duì)采用的本構(gòu)要很熟悉,不要在一顆樹(shù)上吊死才好。首先要確認(rèn)自己的umat沒(méi)有錯(cuò)誤,如果沒(méi)有,但就是不收斂〔在不斷減小加載步長(zhǎng)的情況下,當(dāng)然最好對(duì)步長(zhǎng)不敏感,特別是對(duì)于粘彈性,粘塑性,內(nèi)變量一類的材料,有的本構(gòu)取決于背應(yīng)力的計(jì)算〕。那就應(yīng)該考慮換一種算法。一點(diǎn)體會(huì),請(qǐng)大家探討。

Q:abaqus-uamt的老問(wèn)題,缺少'ABA_PARAM.INC'文件?

A:在cvf6.5調(diào)試時(shí),顯示缺少'ABA_PARAM.INC'文件!這個(gè)沒(méi)有任何關(guān)系的,這個(gè)錯(cuò)誤將在ABAQUS調(diào)用UMAT的時(shí)候自動(dòng)會(huì)找到,僅僅有這個(gè)錯(cuò)誤將沒(méi)有任何影響的。也就是說(shuō),ABAQUS中調(diào)用的時(shí)候,實(shí)際并不存在這個(gè)錯(cuò)誤。FT,忘了說(shuō)一句了,你把或拷到你的程序工作空間后,應(yīng)該將把或的后綴.sp或.dp去掉,即將ABA_PARAM.INC.dp或改名為ABA_PARAM.INC。呵呵,他的意思是在VisualFortran中調(diào)試其子程序,我覺(jué)得這是一個(gè)好方法,我當(dāng)時(shí)也是這麼辦的,畢竟在ABAQUS中調(diào)試是非常麻煩的,只有當(dāng)你的UMAT沒(méi)有語(yǔ)法或者明顯的邏輯錯(cuò)誤,你在ABAQUS中調(diào)試才能事半功倍。

Q:uvarm可以輸出到哪里?.odb可以么?另外那個(gè)strav??就是自己定義用于umat的那個(gè)數(shù)組里的數(shù)可以輸出到.odb里么?

A:在umat中,statev是不能用在output中的,statev只是作為一個(gè)解的狀態(tài)變量,說(shuō)來(lái)慚愧,我是在umat中定義peeq,(peeq)的求解一般在彈塑性力學(xué)書(shū)上有〔等效塑性應(yīng)變〕,用write()寫(xiě)入一個(gè)臨時(shí)文件,〔〔切記:這個(gè)文件unit號(hào)不要與abaqus中的重合,因?yàn)樗幸恍┫到y(tǒng)默認(rèn)的文件號(hào),〕〕然后在uvarm中讀取,以u(píng)varm輸出,因?yàn)閡varm可以以odb的形式輸出,支持output,field,output,history

Q:在本版看了一個(gè)一維固結(jié)的例子,其中含有用戶子程序,如下

SUBROUTINEUFIELD(FIELD,KFIELD,NSECPT,KSTEP,KINC,TIME,NODE,COORDS,TEMP,DTEMP)

INCLUDE'ABA_PARAM.INC'

DIMENSIONFIELD(NSECPT),TIME(2),COORDS(3),TEMP(NSECPT),DTEMP(NSECPT)

KFIELD=1

FIELD(1)=COORDS(2)

RETURN

END我在VF6.5中進(jìn)行調(diào)試,提示找不到ABA_PARAM.INC請(qǐng)問(wèn)大俠這如何解決。還有我因?yàn)槭浅醮谓佑|用戶子程序,我查閱了本版所有的相關(guān)貼子,都講的不太詳細(xì),我將問(wèn)題總結(jié)一下,大俠們能不能詳細(xì)的講解一下,

1子程序格式(程序后綴是.f;.f90;.for;.obj??)

2CAE中如何調(diào)用,command下如何調(diào)用?

3假設(shè)有多個(gè)子程序同時(shí)存在,如何處理

4我對(duì)VF不是很熟,是否可以用VC,C++編寫(xiě)子程序?

A:假設(shè)要在vf中調(diào)試,那么應(yīng)該根據(jù)需要把SITE文件夾中的ABA_PARAM_DP.INC〔雙精度〕或ABA_PARAM_SP.INC〔單精度〕拷到相應(yīng)的位置,并改名為ABA_PARAM.INC即可。

1。我試過(guò),.for格是應(yīng)該是不可以的,至少6.2和6.3版本應(yīng)該是不行,其他的沒(méi)用過(guò),沒(méi)有發(fā)言權(quán)。在Abaqus中,運(yùn)行abaqusj=jobnameuser=username時(shí),默認(rèn)的用戶子程序后綴名是.for〔.f,.f90應(yīng)該都不行的,手冊(cè)上也有講過(guò)〕,只有在username.for文件沒(méi)有找到的情況下,才會(huì)去搜索username.

溫馨提示

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

最新文檔

評(píng)論

0/150

提交評(píng)論