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

[命令和APDL] txt文件导入ansys 数组出现问题

[复制链接]
发表于 2012-3-13 10:47:52 | 显示全部楼层 |阅读模式 来自 北京



用matlab计算了一些数据,保存在了txt文件中,数组大小为1289*3,是用科学计数法计数的。用ansys定义同样大的数组,导入时出现问题,高手帮忙看一下,附上txt文件,命令。
*dim,gagaga,,1289,3
*vread,gagaga(1,1),lalala,txt,,jik,3,1289
(3e9.7)

本帖子中包含更多资源

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

×
 楼主| 发表于 2012-3-13 14:53:35 | 显示全部楼层 来自 北京
Simdroid开发平台
坐等高手出现~
回复 不支持

使用道具 举报

发表于 2012-3-13 19:51:37 | 显示全部楼层 来自 湖北武汉
建议楼主发帖时把自己遇到的问题具体化,这样回答问题更具有针对性,问题也更直观
回复 不支持

使用道具 举报

 楼主| 发表于 2012-3-14 21:24:38 | 显示全部楼层 来自 北京
本帖最后由 skanex 于 2012-3-14 21:46 编辑

senja版主的帮助下,顺利解决了此问题,在此与大家分享一下心得,在此特别感谢一下senja版主。
ansys在导入txt文件中的数据到数组的时候要注意的问题,我觉得最主要的是对读取数据格式的控制,如果数据分为好多列,每一列所占有的字符长度不同,这时就得用不同的格式来控制。在这个帖子里面,我要导入ansys数组的是用matlab计算得到的txt数据,数据是以科学计数法来记录的,以下面为例:
  2.4960000e+003  5.4181610e+006 -4.7237100e+005
  2.4630000e+003  7.0768000e+004  5.0293300e+005
  2.5080000e+003 -7.5208500e+005 -4.7400300e+005
......
一共三列数据,有很多行,若要以同样的形式导入ansys,可能有不少命令,我用的是*vread,读取的格式书序是jik,这应该也是ansys读取二维数据最常用的顺序吧,在*vread之后,需要紧跟的就是对读取数据的格式控制,这里有三列,由于第一列前面有两个字符的空格,所以对每一列要单独书写格式控制命令,看每一列一共占有多少字符(包括指数部分和小数部分),小数点后面又有多少字符,然后书写格式控制命令。我的命令如下:
*dim,gagaga,,1289,3
*vread,gagaga(1,1),lalala,txt,,jik,3,1289
(e17.7,e16.7,e15.7)
解释一下,gagaga是我在ansys中定义的数组,1289*3,lalala.txt是用matlab导出的数据,在本帖附件里面也有,读取的格式为(e17.7,e16.7,e15.7),分三列分别控制每列的读取格式。
以上是我的理解,有错误还请大家多多指正批评,先在此谢过~希望对象我这样的新手有点帮助,高手就请飘过,呵呵~~~

PS:数据导入导出部分命令必须以mac文件保存,然后读入才能执行命令,而不能直接将其复制到命令窗口中执行。


本帖子中包含更多资源

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

×

评分

1

查看全部评分

回复 不支持

使用道具 举报

发表于 2012-3-15 15:18:44 | 显示全部楼层 来自 北京
谢谢楼主分享,查了那么多没用的,看到楼主写的终于会定义了,不过强调两点第一txt文件是放在ansys目录下,我的放在e:\Users\Administrator\weiyishili,关于格式e17.7的解释,17代表这一列字符的长度,包括空格,小数点,等等,小数点后面的7代表小数点后面导入数据的位数。读入mac文件的操作,file----read input from----存放刚才保存mac文件的地方,谢谢楼主
回复 不支持

使用道具 举报

发表于 2012-5-14 17:37:16 | 显示全部楼层 来自 湖北武汉
610088622 发表于 2012-3-15 15:18
谢谢楼主分享,查了那么多没用的,看到楼主写的终于会定义了,不过强调两点第一txt文件是放在ansys目录下, ...

我也按照上面的做法做了,但在创建宏

之后就弹出对话框

本帖子中包含更多资源

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

×
回复 不支持

使用道具 举报

发表于 2012-5-14 18:00:30 | 显示全部楼层 来自 湖北武汉
lianolz 发表于 2012-5-14 17:37
我也按照上面的做法做了,但在创建宏

之后就弹出对话框

宏不允许在*do循环内定义
回复 不支持

使用道具 举报

发表于 2012-5-15 09:13:02 | 显示全部楼层 来自 湖北武汉
senja 发表于 2012-5-14 18:00
宏不允许在*do循环内定义

问题已解决,谢谢啊
回复 不支持

使用道具 举报

发表于 2014-6-9 14:17:39 | 显示全部楼层 来自 上海
谢谢,学会了,困扰了好几天
回复 不支持

使用道具 举报

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

本版积分规则

Simapps系列直播

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

GMT+8, 2024-9-22 09:39 , Processed in 0.037149 second(s), 12 queries , Gzip On, MemCache On.

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

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