问题:一块平板初始的温度分布非均匀(UTEMP输入),引起塑性变形,要求冷却到室温残余应力分布。材料:E:195150(MPa)v:0.3:270(Mpa)0.0320(Mpa)0.01350(Mpa)0.025400(Mpa)0.05460(Mpa)0.1595(Mpa)0.3650(Mpa)0.5expansion=(1+v)(1-v)/E=4.663e-6约束:底面z方向对称约束,侧面x方向对称约束,顶面上某个点上将Y方向约束现在总是计算不下去,出现如下问题:Thestrainincrementhasexceededfiftytimesthestraintocausefirstyieldat6002pointsThesystemmatrixhas1457negativeeigenvalues.Excessivedistortionatatotalof4572integrationpointsinsolid(continuum)elementsThestrainincrementhasexceededfiftytimesthestraintocausefirstyieldat6002pointsError:Toomanyattemptsmadeforthisincrement我的计算中的温度只随y坐标值变化而变化,变化大概从20-500摄氏度左右,如果我将整个温度场值变为20分之一,虽然能计算,但是结果非常之小,因为变化的温度场根本就没有使板产生塑性变形。请大家帮我看一下我的材料设置和我的温度场加载是不是会引起Thestrainincrementhasexceededfiftytimesthestraintocausefirstyieldat6002points,我看了些帮助上的例子,他们的expansion还要大,温度场的变化也有0-500这么悬殊,为什么例子计算不会出错?把材料改为弹性,仍然不收敛,说明不是材料的问题。不用子程序,改为指定坯料顶面的温度为600度,就收敛了,说明你的子程序有问题。aba_aba,如果是光加面好像是能算,但是假如顶部分割出一个体加个600温度场可能还是不能算,我现在稍微改了一下边界条件,但还是算不下去。我把我子程序定义的温度曲线用matlab画出来,确实没有错。然后我又怕是一下子加载温度变化太大,然后在子程序里改成把温度场乘个系数,想一点点加上去,但是算到0.2×temp的时候又算不下去了,附件是现在的cae和utemp。我现在怀疑是不是网格引起的问题附件:CAE_UTEMP.part1(195.31K)附件:CAE_UTEMP.part2(178.07K)超过200KB的文档不允许通过分割后上传到论坛.网格划稀疏些,模型就小了。在ABAQUS/CAE中用saveas,换个文件名,文件也会变小很多。你每个step中都把上一个温度场resettoinitial,然后再定义新的温度场,或许直接让上一个温度场inactive更好。在fieldoutput中输出NT和TEMP,看看结果中的温度场是否正常。检查一下用户子程序中的参数传递和调用方法是否正确。我不用子程序,直接把中段设为600度,也没问题,见附件。附件:try2(197.16K)多谢aba_aba提醒。问题已经解决了,正如你说,是子程序的问题。要逐步加载,但是在cae-step里想通过改变initialincrement和minincrement是没有用的,没法达到逐步加载的效果,子程序里定义的温度场还是一下子就加载完毕了。解决的办法就是在子程序里设定temp(1)*time(1)就ok了。多谢关注,附上UTEMP,希望大家避免我走的弯路:)附件:UserDload_T(344bytes)