
注冊
/
登錄



在編寫子程序的時候遇到了點問題…想用vsprinc來提取最大主應力的…但是得到的結果很怪 dimension s(nblock, ndir+nshr), eigVal(nblock, 3) call vsprinc(nblock, s, eigVal, ndir, nshr) do k =1, nblock stateNew(k,2)=eigVal(k,1) 剛開始接觸子程序,
#include <stdio.h>#include <omi_for_c.h>extern "C" void vumat(long* nblock, long* ndir, long* nshr, long* nstatev, long* nfieldv, long* nprops, long* lanneal,double *stepTime, double *totalTime
extern "C" void vumat( long *nblock, long *ndir, long *nshr, long *nstatev, long *nfieldv, long *nprops, long *lanneal, double *stepTime, double *totalTime, double *dt, char* cmname, double
character*3 cData(maxblk*nrData) dimension rData(maxblk*nrData), jData(maxblk*nrData) real*8 s(NBLOCK,NDIR+NSHR),SIG1(NBLOCK) real*8 eigVal(NBLOCK,3) real*8 Xdamg(NBLOCK
使用Abaqus的VUMAT子程序做內聚力單元的本構,abaqus會傳入一個strainInc(nblock,ndir + nshr )應變增量,我輸出了ndir=1,nshr=2,剛好第一個是法向應變增量,后面兩個是切向應變增量,然后切向的是真實剪應變,需要乘2倍后換成工程剪應變再使用。
跳至頁
TOP