找回密码
 注册
Simdroid-非首页
查看: 256|回复: 4

[子程序] 关于子程序UTRACLOAD里的力的方向

[复制链接]
发表于 2012-4-11 22:53:20 | 显示全部楼层 |阅读模式 来自 上海
悬赏5仿真币已解决
各位达人,小弟我第一次发求助帖,还请高手多多指教。
对与子程序UTRACLOAD,有个一个参数是T_USER,帮助文件里是这么说的:
T_USER Loading direction of the distributed traction load. T_USER is passed into the routine as the load direction specified as part of the element-based or surface-based distributed load definition. The vector T_USER passed out of the subroutine is used as the initial loading direction discussed in Distributed loads,Section 30.4.3 of the Abaqus Analysis User's Manual. The direction of T_USER as defined by the subroutine should not change during a step. If it does, convergence difficulties might arise. Load directions are needed only for a nonuniform general surface traction, shear surface traction, and general edge traction. If a direction is defined for the nonuniform normal edge traction, shear edge traction, transverse edge traction, or edge moment, it will be ignored. See Distributed loads,Section 30.4.3 of the Abaqus Analysis User's Manual, for details。

现在我在研究别人的模型的时候,里面的子程序是这么施加的:
      SUBROUTINE UTRACLOAD(ALPHA,T_USER,KSTEP,KINC,TIME,NOEL,NPT, COORDS,DIRCOS,JLTYP,SNAME)              
C
      INCLUDE 'ABA_PARAM.INC'
C
      DIMENSION T_USER(3), TIME(2), COORDS (3), DIRCOS(3,3)
      CHARACTER*80 SNAME
      Real PLOAD
C   
      IF (T_USER(3) .EQ. 1.0) THEN
         PLOAD=330.3
         ALPHA=[function] ********
            
C   
             T_USER(1)=0.0
             T_USER(2)=0.0
             T_USER(3)=1.0
C      
      ELSE
         PLOAD=220.2
         ALPHA=[function] ********
               
              T_USER(1)=1.0
              T_USER(2)=0.0
              T_USER(3)=0.0
C      
      END IF
      RETURN
     END
现在我不明白的是程序里的红色的地方,既然T_USER(3)的方向是由模型里传入,那么,既然在IF模块里已经定义了T_USER(3) .EQ. 1.0,那么为什么要在if模块结束的时候,还要再次定义一下
             T_USER(1)=0.0
             T_USER(2)=0.0
              T_USER(3)=1.0
这个呢??

麻烦高手给解释一下,谢谢……

最佳答案

查看完整内容

@小王子 需要结合cae中初始定义的方向来看。我的理解是:第一组红色字:当cae中初始定义载荷z方向为1时,在子程序中将其方向确定位(0,0,1)。对于第二组红色字:当cae中定义的z方向不是1时,例如(0,1,0)、(0.6,0.8,0),子程序将修改施加载荷方向,定为(1,0,0)。 @xie傻瓜 以子程序中定义的方向为准。要是子程序中不定义,则以cae中为准。 ...
发表于 2012-4-11 22:53:21 | 显示全部楼层 来自 美国
Simdroid开发平台
@小王子 需要结合cae中初始定义的方向来看。我的理解是:第一组红色字:当cae中初始定义载荷z方向为1时,在子程序中将其方向确定位(0,0,1)。对于第二组红色字:当cae中定义的z方向不是1时,例如(0,1,0)、(0.6,0.8,0),子程序将修改施加载荷方向,定为(1,0,0)。
@xie傻瓜 以子程序中定义的方向为准。要是子程序中不定义,则以cae中为准。
回复

使用道具 举报

 楼主| 发表于 2012-4-13 09:56:01 | 显示全部楼层 来自 上海
请高手帮我解答一下,多谢了!
回复

使用道具 举报

发表于 2012-4-27 20:16:34 | 显示全部楼层 来自 辽宁抚顺
同问!在CAE中可以定义traction的方向,子程序中也可以,那么在CAE中定义了是不是子程序中就不用定义T_USER了?
回复

使用道具 举报

发表于 2012-5-30 09:20:17 | 显示全部楼层 来自 辽宁抚顺
JiangP 发表于 2012-5-30 04:17
@小王子 需要结合cae中初始定义的方向来看。我的理解是:第一组红色字:当cae中初始定义载荷z方向为1时,在 ...

谢谢解答!
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|小黑屋|联系我们|仿真互动网 ( 京ICP备15048925号-7 )

GMT+8, 2024-4-25 05:26 , Processed in 0.033106 second(s), 10 queries , Gzip On, MemCache On.

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表