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

[子程序] 使用usdfld等子程序时遇见CALL GETVRM命令call不了的变量时改怎么办?

[复制链接]
发表于 2009-12-9 23:37:40 | 显示全部楼层 |阅读模式 来自 陕西西安
通常在使用USDFLD,UVARM等子程序时,会使用到:
    CALL GETVRM('VAR',ARRAY,JARRAY,FLGRAY,JRCD,JMAC,JMATYP,MATLAYO,
LACCFLA)
   而当中的'VAR'在帮助文件中有如下说明:
    The collective output variable keys are distinguished from their individual components by the fact that they have the word "yes" after the category .fil in the tables in Abaqus/Standard output variable identifiers,Section 4.2.1 of the Abaqus Analysis User's Manual.
  即是输出变量底下的文件类型.fil 中若是表明“no”的话,就无法用CALL GETVRM直接call出来!所以当遇见这种情况时如
DAMAGEC

Compressive damage variable, .
.dat: yes    .fil: no    .odb Field: yes    .odb History: yes   

DAMAGET

Tensile damage variable, .
.dat: yes    .fil: no    .odb Field: yes    .odb History: yes   

SDEG

Scalar stiffness degradation variable, d.
.dat: yes    .fil: no    .odb Field: yes    .odb History: yes   

有些变量为某个分量时(不同方向的应力分量)是无法直接输出,但是可以call出它们的总变量,然后再从ARRAY(n)中读取,这点是没有问题的!但是如上述列出来的几个变量,是无法从结果文件中直接call出来的!
小生现在要用usdfld读取这样的变量,不知从何下手,在此向大家讨教?
曾经有人提出将这些变量输出到.dat文件,再然后从用户子程序中读取。小民愚钝,至今仍无法实现,恳请哪位高手赐教!
另外 加入能够顺利读取.dat中的信息,那也只是一个一个单独地存储。我们知道,在usdfld中,对每个材料积分点进行自动提取和赋值的,在场变量的调用中基本没有进行单个材料积分点进行赋值的。这是我的认识,可能我说的不正确,也可能我还没有学到。希望在此和大家讨论讨论!
 楼主| 发表于 2009-12-10 11:32:21 | 显示全部楼层 来自 陕西西安
Simdroid开发平台
有位兄台在很久很久以前也提过,链接地址:http://forum.simwe.com/viewthrea ... mp;highlight=getvrm
回复 不支持

使用道具 举报

 楼主| 发表于 2009-12-27 09:51:58 | 显示全部楼层 来自 陕西西安
希望有牛人路过
回复 不支持

使用道具 举报

发表于 2018-11-16 21:37:48 | 显示全部楼层 来自 北京
饱和度可以被提取吗?
回复 不支持

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-3-28 19:49 , Processed in 0.039965 second(s), 12 queries , Gzip On, MemCache On.

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

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