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

[子程序] USDFLD中的数据传递到DISP

[复制链接]
发表于 2019-5-16 09:27:25 | 显示全部楼层 |阅读模式 来自 中国
本帖最后由 jujudefuren 于 2019-5-16 09:41 编辑

我想调取模型中的温度数据, 所以想用子程序USDFLD来传递数据,由于我是通过边界条件来施加自定义的与温度有关的孔隙压力,所以用了子程序DISP,现在的问题就是:USDFLD传递的是积分点的信息,但DISP中传递的是节点信息,如果把USDFLD中的数据直接用于DISP中,算是能算,但是结果不对,而且不知道为什么,我通过USDFLD得到的许多温度都是0。希望大神可以指导一下怎样把积分点的信息转化为节点信息进行调用?PS:USDFLD和DISP之间无法直接进行信息的传递(因为DISP中没有statev或者field),所以我用了如下语句:(USDFLD中)
  1.       open(9,FILE="D:\SIMULIA\Temp\TEMP5.txt")
  2.       write(9,"(10E20.6)")TEMP1
  3.       close(9)
复制代码
(DISP中)
  1.       open(9,FILE="D:\SIMULIA\Temp\TEMP5.txt",status="old")
  2.       read(9,"(10E20.6)")TEMP1

  3.       ... (主程序语句)
  4.       close(9)
  5.       return
  6.       end
复制代码





发表于 2019-5-16 16:46:21 | 显示全部楼层 来自 上海浦东新区
Simdroid开发平台
==== 可以试试单元数据节点输出,不知道什么效果

Obtaining element output extrapolated to the nodes in Abaqus/Standard and Abaqus/Explicit
You can choose to extrapolate the element integration point variables to the nodes of each element
independently, without averaging the results from adjoining elements. Element output at the element
nodes is not available for recovering results within substructures; for more information, see “Using
substructures,” Section 10.1.1.
Input File Usage: *ELEMENT OUTPUT, POSITION=NODES
Abaqus/CAE Usage: You cannot select the position of element output in Abaqus/CAE; it is always
given at the integration points.
4.1.3–23


####
USDFLD和DISP之间 可以用公共变量 common  传递数据。
回复 不支持

使用道具 举报

 楼主| 发表于 2019-5-17 15:22:14 | 显示全部楼层 来自 中国
cartographer 发表于 2019-5-16 16:46
==== 可以试试单元数据节点输出,不知道什么效果

Obtaining element output extrapolated to the nodes in ...

你好,我想问一下“单元数据节点输出”是指在哪里进行的操作?有点不太懂;还有,公共变量comman是指定义全局变量吗?我试过在USDFLD和DISP中都定义common TEMP1,然后在USDFLD用使用call getvrm来获得温度数据(但获得的是积分点数据),最后在DISP中直接用TEMP1,但是算出来都是0,不知道为什么,可能我用错方法了吧

点评

在inp中改。关键字就是*element output 。但是不知道什么效果。common可以使用。可以在usdfld设置一下输出,检查一下是不是那块就是0.  发表于 2019-5-17 17:31
回复 不支持

使用道具 举报

 楼主| 发表于 2019-5-20 08:57:11 | 显示全部楼层 来自 中国
jujudefuren 发表于 2019-5-17 15:22
你好,我想问一下“单元数据节点输出”是指在哪里进行的操作?有点不太懂;还有,公共变量comman是指定义 ...

我看了下,我的inp文件关于element output这一块的代码是这样的:
  1. *Element Output, directions=YES
  2. LE, S, SAT, TEMP, VOIDR
复制代码

请问这个地方是要怎么改?
回复 不支持

使用道具 举报

发表于 2019-9-23 09:32:30 | 显示全部楼层 来自 陕西西安
一定要用节点上的温度吗?节点上的温度不应该是NT11吗?不知道USDFLD里可不可以用GETVRN来提取节点上的值
回复 不支持

使用道具 举报

发表于 2021-4-20 19:45:20 | 显示全部楼层 来自 北京
jinjin1991 发表于 2019-9-23 09:32
一定要用节点上的温度吗?节点上的温度不应该是NT11吗?不知道USDFLD里可不可以用GETVRN来提取节点上的值 ...

GETVRM的var没法读取NT11,会显示编译错误
回复 不支持

使用道具 举报

发表于 2021-8-17 18:35:44 | 显示全部楼层 来自 中国
你好请问最后解决了吗
回复 不支持

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-4-26 11:41 , Processed in 0.042165 second(s), 16 queries , Gzip On, MemCache On.

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

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