- 积分
- 0
- 注册时间
- 2010-10-4
- 仿真币
-
- 最后登录
- 1970-1-1
|
本帖最后由 taozi136161055 于 2013-5-18 21:02 编辑
最近做个实例,需要实现材料随着纵坐标变化,于是考虑子程序vusdfld,学了一段时间的Fortran,着手编了一个小程序,经验证可以运行,代码如下。
*******************************************
c
c User subroutine VUSDFLD for user-defined fields
c
subroutine vusdfld(
c Read only -
* nblock, nstatev, nfieldv, nprops, ndir, nshr,
* jElemUid, kIntPt, kLayer, kSecPt,
* stepTime, totalTime, dt, cmname,
* coordMp, direct, T, charLength, props,
* stateOld,
c Write only -
* stateNew, field )
c
include 'vaba_param.inc'
c
dimension props(nprops),
* jElemUid(nblock), coordMp(nblock, *),
* direct(nblock, 3, 3), T(nblock,3,3),
* charLength(nblock),
* stateOld(nblock, nstatev),
* stateNew(nblock, nstatev),
* field(nblock, nfieldv)
character*80 cmname
parameter( nrData=6 )
c
character*3 cData(maxblk*6)
dimension jData(maxblk*nrData)
dimension eqps(maxblk*6),stress(maxblk*6)
c
if(stepTime.eq.0) then
do k = 1, nblock
y = coordMp(k,2)
field(k,1) = 0 - y
c
end do
end if
c
return
end
************************************分割线
希望对初学vusdfld的大家有所帮助。
关于abaqus、vusdfld与usdfld的问题可以多多交流,共同提高!!
|
|