Visual studio 2015 如何解决;无法打开包含文件';odb#u API.h'&引用;ABAQUS 2018
通过观看以下视频,问题得以解决: 我尝试将Abaqus 2018与Fortran链接,并且子例程检查通过 但我在运行UMAT时遇到了以下错误: “作业UMAT中的错误:编译过程中出现问题-C:\PhD\UMAT-elastic.for” 作业UMAT因错误而中止。“ 我有Visual Studio Enterprise 2015 英特尔并行工作室XE 2018 这是我的代码,它正是在Visual studio 2015 如何解决;无法打开包含文件';odb#u API.h'&引用;ABAQUS 2018,visual-studio-2015,fortran,subroutine,abaqus,finite-element-analysis,Visual Studio 2015,Fortran,Subroutine,Abaqus,Finite Element Analysis,通过观看以下视频,问题得以解决: 我尝试将Abaqus 2018与Fortran链接,并且子例程检查通过 但我在运行UMAT时遇到了以下错误: “作业UMAT中的错误:编译过程中出现问题-C:\PhD\UMAT-elastic.for” 作业UMAT因错误而中止。“ 我有Visual Studio Enterprise 2015 英特尔并行工作室XE 2018 这是我的代码,它正是在 您说要运行和编译UMAT(自定义材质模型),但您定义的子例程是ABQmain(结果后处理器)。是否要编译自定义
您说要运行和编译UMAT(自定义材质模型),但您定义的子例程是ABQmain(结果后处理器)。是否要编译自定义用户子例程或结果后处理器?通过查看您的代码,您似乎希望使用用户子程序UMAT。因此,将ABQmain更改为UMAT并再次尝试 最好遵循手册中的示例:
根据Abaqus的文件。它支持的visual studio版本是2015年。我不建议使用不受支持的程序,因为它可能会导致不稳定的行为,在某些情况下,它在其他情况下不起作用。此外,发布您试图编译和链接的代码。因此,我们可以进一步帮助您。谢谢您的评论。对我正在使用VS 2015 enterprise。我的代码也被添加了。五年后?他们应该做得比这更好。谢谢你的评论。因此,我复制并粘贴了链接中的代码,并在Materials>>User Material中定义了5个参数,并在job manager部分中链接FORTRAN代码,但它仍然给出了错误。您现在将错误更改为:
“job UMAT中的错误:编译期间的问题-C:\PhD\UMAT-elastic。for job UMAT因错误而中止。”
在它被包含之前。你也可以粘贴完整的错误日志吗?非常感谢你的评论;我通过观看以下视频解决了这个问题:
SUBROUTINE UMAT(STRESS,STATEV,DDSDDE,SSE,SPD,SCD,
1 RPL,DDSDDT,DRPLDE,DRPLDT,
2 STRAN,DSTRAN,TIME,DTIME,TEMP,DTEMP,PREDEF,DPRED,CMNAME,
3 NDI,NSHR,NTENS,NSTATV,PROPS,NPROPS,COORDS,DROT,PNEWDT,
4 CELENT,DFGRD0,DFGRD1,NOEL,NPT,LAYER,KSPT,JSTEP,KINC)
INCLUDE 'ABA_PARAM.INC'
CHARACTER*80 CMNAME
DIMENSION STRESS(NTENS),STATEV(NSTATV),
1 DDSDDE(NTENS,NTENS),
2 DDSDDT(NTENS),DRPLDE(NTENS),
3 STRAN(NTENS),DSTRAN(NTENS),TIME(2),PREDEF(1),DPRED(1),
4 PROPS(NPROPS),COORDS(3),DROT(3,3),DFGRD0(3,3),DFGRD1(3,3),
5 JSTEP(4)
DIMENSION DSTRES(6),D(3,3)
EVALUATE NEW STRESS TENSOR
EV = 0.
DEV = 0.
DO K1=1,NDI
EV = EV + STRAN(K1)
DEV = DEV + DSTRAN(K1)
END DO
TERM1 = .5*DTIME + PROPS(5)
TERM1I = 1./TERM1
TERM2 = (.5*DTIME*PROPS(1)+PROPS(3))*TERM1I*DEV
TERM3 = (DTIME*PROPS(2)+2.*PROPS(4))*TERM1I
DO K1=1,NDI
DSTRES(K1) = TERM2+TERM3*DSTRAN(K1)
1 +DTIME*TERM1I*(PROPS(1)*EV
2 +2.*PROPS(2)*STRAN(K1)-STRESS(K1))
STRESS(K1) = STRESS(K1) + DSTRES(K1)
END DO
TERM2 = (.5*DTIME*PROPS(2) + PROPS(4))*TERM1I
I1 = NDI
DO K1=1,NSHR
I1 = I1+1
DSTRES(I1) = TERM2*DSTRAN(I1)+
1 DTIME*TERM1I*(PROPS(2)*STRAN(I1)-STRESS(I1))
STRESS(I1) = STRESS(I1)+DSTRES(I1)
END DO
CREATE NEW JACOBIAN
TERM2 = (DTIME*(.5*PROPS(1)+PROPS(2))+PROPS(3)+
1 2.*PROPS(4))*TERM1I
TERM3 = (.5*DTIME*PROPS(1)+PROPS(3))*TERM1I
DO K1=1,NTENS
DO K2=1,NTENS
DDSDDE(K2,K1) = 0.
END DO
END DO
DO K1=1,NDI
DDSDDE(K1,K1) = TERM2
END DO
DO K1=2,NDI
N2 = K1−1
DO K2=1,N2
DDSDDE(K2,K1) = TERM3
DDSDDE(K1,K2) = TERM3
END DO
END DO
TERM2 = (.5*DTIME*PROPS(2)+PROPS(4))*TERM1I
I1 = NDI
DO K1=1,NSHR
I1 = I1+1
DDSDDE(I1,I1) = TERM2
END DO
TOTAL CHANGE IN SPECIFIC ENERGY
TDE = 0.
DO K1=1,NTENS
TDE = TDE + (STRESS(K1)-.5*DSTRES(K1))*DSTRAN(K1)
END DO
CHANGE IN SPECIFIC ELASTIC STRAIN ENERGY
TERM1 = PROPS(1) + 2.*PROPS(2)
DO K1=1,NDI
D(K1,K1) = TERM1
END DO
DO K1=2,NDI
N2 = K1-1
DO K2=1,N2
D(K1,K2) = PROPS(1)
D(K2,K1) = PROPS(1)
END DO
END DO
DEE = 0.
DO K1=1,NDI
TERM1 = 0.
TERM2 = 0.
DO K2=1,NDI
TERM1 = TERM1 + D(K1,K2)*STRAN(K2)
TERM2 = TERM2 + D(K1,K2)*DSTRAN(K2)
END DO
DEE = DEE + (TERM1+.5*TERM2)*DSTRAN(K1)
END DO
I1 = NDI
DO K1=1,NSHR
I1 = I1+1
DEE = DEE + PROPS(2)*(STRAN(I1)+.5*DSTRAN(I1))*DSTRAN(I1)
END DO
SSE = SSE + DEE
SCD = SCD + TDE − DEE
RETURN
END