nuaa10526 发表于 2015-6-23 17:23:14

复合材料固化动力学方程子程序问题,求大神指导一下!.....

本帖最后由 nuaa10526 于 2015-6-23 17:23 编辑

基于abaqus模拟复合材料固化过程中固化度α(子程序中STATEV(1))和温度T分布,CAE文件(如附件hoon.part01-hoon.part09)和子程序文件,现在遇到一个问题,hetval里面采用n级动力学方程(如附件n.for),可以计算出固化度和温度分布;而把n级动力学方程改为kamal动力学方程(如附件mn.for),则固化度一直为0。子程序n.for和子程序mn.for只改变了动力学方程,其它子程序及参数设置相同。为什么会出现这种情况呢?求大神指导一下,万分感谢!

nuaa10526 发表于 2015-6-23 17:25:53

不知道如何悬赏,解决了仿真币不是问题哈!千万别沉了!

darkyzy 发表于 2015-6-24 17:07:51

你的mn和n里面的程序好像是一样的。。。。是我看错了吗?

nuaa10526 发表于 2015-6-24 21:26:10

darkyzy 发表于 2015-6-24 17:07
你的mn和n里面的程序好像是一样的。。。。是我看错了吗?

首先感谢回帖哈!mn和n里面hetval子程序里面的固化动力学方程不一样,具体如下:
mn固化动力学方程如下:
      STATEV(2) = 1.5E10*EXP(-11396.4/TEMP(1))*(1.-STATEV(1))**1.877
   &*((STATEV(1))**0.45)   
n固化动力学方程如下:
      STATEV(2) = 1.5E10*EXP(-11396.4/TEMP(1))*(1.-STATEV(1))**1.877
c   &*((STATEV(1))**0.45)   
n里面固化动力学方程没有包含第二行

guoyj8 发表于 2015-6-25 10:06:36

问题出在你的公式上,你增加的这一点点(×alpha^0.45)会给你带来0(你从alpha=0开始计算的话),因此将导致d(alpha)/dt=0, ...... 所以你的alpha会一直是0.

guoyj8 发表于 2015-6-25 10:19:23

看一下你的Kamal模型,公式是不正确的,一般为(A+B×alpha^m)*(1-alpha)^n,我记不太清楚了,你去wiki上查一下。A和B和温度相关。

darkyzy 发表于 2015-6-25 15:56:07

5楼说的很多道理
本来想给你的程序cae跑一下,发觉是6.14的,我才12
你可以把那个有问题的地方,稍微改成别的,看看是不是0开方的问题,如果是,可以再前面加一句,使statev(1)不为0,比如改为0.001试试

darkyzy 发表于 2015-6-25 16:05:51

为什么我自己建立模型用mn和n的程序都可以跑。mn计算到10000s,固化度最大值大概为0.5,n的最大为0.7?
你的step是一个分析步还是好几个?

nuaa10526 发表于 2015-6-25 22:14:31

guoyj8 发表于 2015-6-25 10:06
问题出在你的公式上,你增加的这一点点(×alpha^0.45)会给你带来0(你从alpha=0开始计算的话),因此将导 ...

首相感谢回帖支持哈!
公式应该是正确的,自催化模型。通过调试发现问题就是出在第一个增量步usdfld传递给hetval的statev(1)的值为0。但是在usdfld不是已经定义了:if(kinc.eq.1)then statev(1)=1.0E-4?为什么第一个增量步传递到hetval的值为0呢?

nuaa10526 发表于 2015-6-25 22:16:09

darkyzy 发表于 2015-6-25 15:56
5楼说的很多道理
本来想给你的程序cae跑一下,发觉是6.14的,我才12
你可以把那个有问题的地方,稍微改成别 ...

在usdfld里面已经定义了:if(kinc.eq.1)then statev(1)=1.0E-4。为什么传递到hetval的statev(1)为0呢

nuaa10526 发表于 2015-6-25 22:21:23

darkyzy 发表于 2015-6-25 16:05
为什么我自己建立模型用mn和n的程序都可以跑。mn计算到10000s,固化度最大值大概为0.5,n的最大为0.7?
你 ...

6.14的inp文件,6.12能导入?我再传一个inp文件。或者你能把你建立的模型传给我?谢谢了!

darkyzy 发表于 2015-6-26 10:32:38

nuaa10526 发表于 2015-6-25 22:21
6.14的inp文件,6.12能导入?我再传一个inp文件。或者你能把你建立的模型传给我?谢谢了! ...

有两种方法,第二种说起来有点麻烦,我就说下第一种。
你可以看到你的usdfld中给statev(1)初始赋值是没赋上去的。如果这样的话你可以在hetaval模型上对statev(1)附上一个初值,这样就可以了。
复材固化变形我也再做,南航不是也有人做吗?你直接去问他们不得了

nuaa10526 发表于 2015-6-26 12:09:40

darkyzy 发表于 2015-6-26 10:32
有两种方法,第二种说起来有点麻烦,我就说下第一种。
你可以看到你的usdfld中给statev(1)初始赋值是没 ...

谢谢你的回帖,的确是usdfld中statev(1)处置没有赋上去,在hetval里面通过TEMP(1)赋初值可以正常计算了。
为什么在usdfld里面通过if(kinc.eq.1)then statev(1)=1.0E-4没有把statev(1)初值赋上呢?是因为hetval里面没有kinc这个形参?
还想请问你一下你说的第二种方法是哪种方法?还忘赐教!
以前在nuaa读书,毕业好几年了!:lol

darkyzy 发表于 2015-6-26 16:35:59

nuaa10526 发表于 2015-6-26 12:09
谢谢你的回帖,的确是usdfld中statev(1)处置没有赋上去,在hetval里面通过TEMP(1)赋初值可以正常计算 ...

那个需要在property里面设置东西,说起来好麻烦,你现在这样解决就很好了嘛

darkyzy 发表于 2015-6-26 16:36:49

nuaa10526 发表于 2015-6-26 12:09
谢谢你的回帖,的确是usdfld中statev(1)处置没有赋上去,在hetval里面通过TEMP(1)赋初值可以正常计算 ...

那你现在工作吗?敢问在哪里工作啊?看会不会是同事哎

nuaa10526 发表于 2015-6-26 17:12:42

darkyzy 发表于 2015-6-26 16:36
那你现在工作吗?敢问在哪里工作啊?看会不会是同事哎

四川 应该不会是同事吧

槿花乱 发表于 2016-4-13 22:12:45

你好,不好意思,能否问下在结果中,哪个结果是对应的固化度和温度呢,我刚学不太熟练

zjl0 发表于 2016-4-17 22:12:24

弱弱的请教下,固化度是怎么输出的啊?

2425哈哈哈 发表于 2021-9-15 15:50:17

我也遇到这个问题了,困惑了好几天,换了固化动力学方程之后,出现了state v(1)直接参与计算导致sdv为0,另一个模型是(1-statev(1)),即使statev(1)为0,也可以得到sdv

在usdfid上的赋值语句并没有成功
   if(kinc.eq.1)then
      statev(1)=1E-4   
      else
      field(1)=statev(1)
      endif

可以在hetval中,对statev重新赋值

143779 发表于 2021-9-22 20:21:25

感谢louzhu
页: [1]
查看完整版本: 复合材料固化动力学方程子程序问题,求大神指导一下!.....