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

[子程序] 关于vusdfld中 call vgetvrm的问题

[复制链接]
发表于 2010-4-9 20:02:53 | 显示全部楼层 |阅读模式 来自 湖南长沙
在call vgetvrm( 'S', rData, jData, cData, jStatus )这个调用函数中为什么rData(maxblk*nrData)是定义为一维的数组呢?它和每个单元的应力是如何对应的?
发表于 2017-7-9 16:30:32 | 显示全部楼层 来自 山东青岛
Simdroid开发平台
过了好多年了,我也来说一下我的理解,欢迎探讨。在fortran里面,数组虽然可以定义成多维的,但其实他储存方式为一维储存的。就是说rdata在读取的时候可以是以一维形式读取 而在使用子程序 setfield时,又重新对rdata定义了尺寸(nblock,nrData) 只要总体长度是一样的,应该是都可以的。
回复 1 不支持 0

使用道具 举报

发表于 2013-5-2 20:44:44 | 显示全部楼层 来自 天津
希望能够有大牛解决这个问题
回复 不支持

使用道具 举报

发表于 2013-5-2 20:55:49 | 显示全部楼层 来自 英国
对照一下usersub manual 里的vgetvrm 顺序和standard稍有不同

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

×
回复 不支持

使用道具 举报

发表于 2013-5-21 09:17:43 | 显示全部楼层 来自 北京
嗯,我也有相同的疑惑
我看了manual(Abaqus User Subroutines Reference Manual 1.2.19)里面的example,在vusdfld中又调用了一个子程序setField(.....)
对应了一下参数发现rData对应的是strain是一个二维数组,我不是很了解fortran,但是我觉得似乎rData是个二维数组更符合我们的需求啊
我后来自己做了一个例子就直接把rData声明成为一个二维数组。。居然也能算。。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

×
回复 不支持

使用道具 举报

发表于 2018-5-24 15:16:16 | 显示全部楼层 来自 上海长宁区
我也有个关于vgetvrm的疑惑:我使用vgetvrm提取应力,那么stress(1)应该对应着S11?但是为什么在odb中却不相等
回复 不支持

使用道具 举报

发表于 2019-2-15 10:00:50 | 显示全部楼层 来自 山东青岛
Tao_Tony 发表于 2018-5-24 15:16
我也有个关于vgetvrm的疑惑:我使用vgetvrm提取应力,那么stress(1)应该对应着S11?但是为什么在odb中却 ...

stress(1)是积分点的应力,,在odb不知道你看的是不是节点的
回复 不支持

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-7-6 01:55 , Processed in 0.039215 second(s), 17 queries , Gzip On, MemCache On.

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

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