ansys结果导入excel



ANSYS数组与EXCEL

本人想知道如何把ANSYS中的数组转换到EXCEL里!
[size=5][color=Red]谢谢大家对本人的帮助![/color][/size]

[[i] 本帖最后由 fpemail 于 2006-12-27 21:17 编辑 [/i]]
yangjungang2004 发表于 2006-12-11 22:55

我也很想知道 以前是先把数据用APDL写进文件 再用matlib导入数据 用xlswrite命令写进EXCEL 好麻烦
weichen 发表于 2006-12-11 23:04

怎样把Ansys数据导入matlab

yangjungang2004,你好,我很想知道 你是怎样把Ansys数据导入matlab的。我想用Ansys调用MATLAB中的遗传算法来实现优化问题,不知怎样开展,恳请帮忙。
okan 发表于 2006-12-11 23:15

保存为dat格式,不就可以用excel直接打开了么。
1、dat数据文件
123 , 111 , 444,777
456 , 222,555,888
789 , 333,666,999
2、导入excel(office2003)

[[i] 本帖最后由 okan 于 2006-12-11 23:26 编辑 [/i]]
tianq1023 发表于 2006-12-11 23:33

用*vwrite将数组写入文件,fortran输出格式中有
Tn tab到第 n 格
一行数值间隔用Tn代替Xn
将输出文件直接用excel打开,看行不行
fpemail 发表于 2006-12-12 20:46

[quote]原帖由 [i]okan[/i] 于 2006-12-11 23:15 发表
保存为dat格式,不就可以用excel直接打开了么。
1、dat数据文件
123 , 111 , 444,777
456 , 222,555,888
789 , 333,666,999
2、导入excel(office2003) [/quote]
你那几个图片是什么软件截的呀!我没有看出来,ANSYS不是中文的呀!晕了!能再解释解释吗?谢谢!
okan 发表于 2006-12-12 23:16

[quote]原帖由 [i]fpemail[/i] 于 2006-12-12 20:46 发表

你那几个图片是什么软件截的呀!我没有看出来,ANSYS不是中文的呀!晕了!能再解释解释吗?谢谢! [/quote]
就是用*vwrite命令写出数组生成dat文件,然后再用excel打开dat文件就可以了啊。
P.S:我用的是excel2003,不过2000和XP版本应该也可以吧。
superarrow 发表于 2006-12-13 00:33

[quote]原帖由 [i]okan[/i] 于 2006-12-12 23:16 发表

就是用*vwrite命令写出数组生成dat文件,然后再用excel打开dat文件就可以了啊。
P.S:我用的是excel2003,不过2000和XP版本应该也可以吧。 [/quote]


您能不能用*vwrite写一个生成dat文件的具体例子出来?我想模仿一下,这个函数的格式老是搞不清楚。谢谢!!
iomega 发表于 2006-12-13 10:34

Here are two examples I have written before:

*cfopen,CurMARK_%offset%m,dat
*vwrite,CurMark(1,1),CurMark(1,2),CurMARK(1,3)
(E10.4,' ',E10.4,' ',E10.4)
*cfclos

Here offset is parameter, CurMark is a array. The above commands are used to write single line into dat file.

*******************************************************
*DIM,CurMARK,ARRAY,Tot_col,3
*VREAD,CurMARK(1,1,1),CurMARK_%offset%m,dat,,JIK,3,Tot_col
(E10.4,' ',E10.4,' ',E10.4)


The above commands are used to read dat fil

e generated from previous code. If you want to write the whole array into file, you can modify the previous code, with IJK options.
fpemail 发表于 2006-12-14 20:06

感谢:iomega 、okan 、tianq1023

现将10个贡献积分转给iomega

下面本人总结如下:

请先把fpemail_array.dat恢复到ANSYS中;

编制文件excel.mac内容如下:

*cfopen,fpemail,csv
*vwrite,A_vos(1,1,1),A_vos(1,2,1),A_vos(1,3,1)
(F10.2,' , 'F10.2,' , 'F10.2,)
*cfclos

生成的文件fpemail.csv可以用EXCEL程序进接打开!




[color=Red][size=5]以下再已50贡献积分请教问题:
A_vos(1,i,1)
如果i是个变量这个程序该如何写!如果i超过19,该如何编写![/size][/color]

[[i] 本帖最后由 fpemail 于 2006-12-14 20:30 编辑 [/i]]
iomega 发表于 2006-12-15 09:52

Hehe, just show another example - this example shows how to read center coordinate of all the elements and save them into file.
Vol_E is a element entity.

******************************************************
ESEL,S,ELEM,,Vol_E,,,
*GET,ELEM_MIN,ELEM,0,NUM,MIN
*GET,ELEM_MAX,ELEM,0,NUM,MAX


*DIM,ECENTS,ARRAY,(ELEM_MAX-ELEM_MIN+1),3
*DO,ECNT,1,(ELEM_MAX-ELEM_MIN+1),1
ECENTS(ECNT,1)=CENTRX(ECNT+ELEM_MIN-1)
ECENTS(ECNT,2)=CENTRY(ECNT+ELEM_MIN-1)
ECENTS(ECNT,3)=CENTRZ(ECNT+ELEM_MIN-1)
*ENDDO

*MSG,INFO,'Save element centrid location...'
%C

*MWRITE,ECENTS,elemcent,txt,,JI,,,
%G %G %G
*****************************************************

It can be easily rewritten for your special case.

e.g. save you data into a 1-D array, use I instead of JI in MWRITE command.

[[i] 本帖最后由 iomega 于 2006-12-15 14:35 编辑 [/i]]
fpemail 发表于 2006-12-16 22:54

如何 用*MWRITE把多个数组写到一文件里!
iomega 发表于 2006-12-17 12:09

My previous comments on *VWRITE is incorrect, actually it save all the rows of the array into file.
If you want to save multiple arrays into to one file, use:

*cfopen,CurMARK_m,dat,, APPEND, see ANSYS help file for details.

Hope it helps
fpemail 发表于 2006-12-18 19:04

[quote]原帖由 [i]iomega[/i] 于 2006-12-17 12:09 发表
My previous comments on *VWRITE is incorrect, actually it save all the rows of the array into file.
If you want to save multiple arrays into to one file, use:

*cfopen,CurMARK_m,dat,, APPEND, se ... [/quote]
不好意思,我试了好多次也没解决问题!
MWRITE一次只能写一个数组到一个文件里;
而vwrite命令,“[color=Red]如果i是个变量这个程序该如何写!如果i超过19,该如何编写!”[/color]这个问题解决不好!头痛!
如何能把两个问题同时解决呢!谢谢!
雨人 发表于 2006-12-18 21:27

请参考:

[url]https://www.360docs.net/doc/c712584973.html,/forum/viewthread.php?tid=46863&highlight=%2B%D3%EA%C8%CB[/url]
fpemail 发表于 2006-12-19 20:50

雨人 的帖子很好!但把两个(44,36)大的数组写到一个文件里

,还是一个难题!还是真心的请大家帮忙!
zengzhan 发表于 2006-12-27 00:34

怎么把时间历程后处理的结果保存为csv文件呢?
田间阡陌 发表于 2010-6-1 09:06

怎样从ansys中调出数据,并输入到所定义的数组里面,然后通过计算输出所要的结果?
田间阡陌 发表于 2010-6-1 09:32

我想把地震时程分析的结果,如节点2的位移时程弄成一维数组,然后把节点1的力时程弄成另外一维数组。两个数组的长度都是28000个点,把这两个数组对应的数据点相乘,然后再相加,这样就得到一个值。请问这样怎么实现?关键是,怎么样把节点2的时程调出来,又怎么样把节点1的时程给调出来呢?
田间阡陌 发表于 2010-6-1 09:32

很着急啊,请大人支招啊!
田间阡陌 发表于 2010-6-1 20:07

这个帖子,我想收藏的话,怎么做?
田间阡陌 发表于 2010-6-1 20:08

我的问题解决了,哎,弄了一天,终于弄明白了。
soaringcsu 发表于 2010-7-20 16:45

不错,后处理能否把写出的数组再在Ansys中用云图或箭头图输出图形呢?

页: [1]








请教将Excel数据导入Ansys数组的方法

[i=s] 本帖最后由 Melvin1231 于 2010-4-16 23:11 编辑 [/i]

大家好,
我手头有一个通过实验软件获取的excel数据组,128x128, 数据很多,有正负号,f8.5的
现在想把它导入到ansys里的array中,看了一些前辈的帖子,遇到不少问题如下
1.在将excel转prn或者txt时,遇到格式不对齐的情况,就是行数列数全变了,结果导致ansys产生的array也乱了
2.之前一些帖子中的例子行数和列数都不相同,我这里要求相同的,不知道在vread时会不会有影响.
大家能帮我想想办法吗?谢谢!
16443 发表于 2010-4-17 10:46

1、这中转换有很多方法,可以百度一下
2、不会影响
si13 发表于 2010-4-17 14:18

使用 ultraedit
具体读的时候版内搜索,以前讨论过很多
Melvin1231 发表于 2010-4-19 00:45

好的,我试试,感谢两位前辈.
Melvin1231 发表于 2010-4-22 18:30

试过了,还是不行, 使用了*dim和*vread命令.看了不少文章,试着写了几段命令, 不知道命令部分有没有写错,恳请各位前辈指教
NN为所要求生成的array名称, MM为被读入的文件名(有不同格式), 数组是128x128的,数字格式是小数点前最高2位,小数点后有5位, 有正负.
方法一
*dim,NN,,128,128
*vread,NN(1,1),MM,txt,,JIK,128,128
(128f9.5)
*status,NN
方法二
*dim,NN,array,128,128
*vread,NN,MM.txt,,,128,128,,0
(128f9.5)
*status,NN
方法三
*dim,NN,array,128,128
*tread,NN,MM,csv,,0
*status,NN
关于excel转化格式方面,也试过了txt,csv,prn的,都跑不动.ultraedit里面使用替换还是固定列宽功能呢?
也不知道是命令不正确还是格式不规范.
请帮忙看看, 谢谢!
si13 发表于 2010-4-22 21:59

可以

参考下
读取方式
*del,a
*dim,a,,24,6
*vread,a,cp,out,,jik,6,24
(6e15.7)



数据文件里的格式

0.4544528E-01 0.1783310E-01 0.0000000E+00 0.0000000E+00 0.0000000E+00 -0.1201923E-04
0.9499771E-02 0.1349588E-02 0.0000000E+00 0.0000000E+00 0.0000000E+00 -0.1201923E-04
-0.2877862E-01 -0.1783310E-01 0.0000000E+00 0.0000000E+00 0.0000000E+00 -0.1201923E-04
-0.2616644E-01 -0.1349588E-02 0.0000000E+00 0.0000000E+00 0.0000000E+00 -0.1201923E-04
0.1783310E-01 0.4544528E-01 0.0000000E+00 0.0000000E+00 0.0000000E+00 0.1201923E-04
-0.1349588E-02 -0.2616644E-01 0.0000000E+00 0.0000000E+00 0.0000000E+00 0.1201923E-04
-0.1783310E-01 -0.2877862E-01 0.0000000E+00 0.0000000E+00 0.0000000E+00 0.1201923E-04
0.1349588E-02 0.9499771E-02 0.0000000E+00 0.0000000E+00 0.0000000E+00 0.1201923E-04
0.0000000E+00 0.0000000E+00 0.3859890E-02 0.4229625E-03 -0.4229625E-03 0.0000000E+00
0.0000000E+00 0.0000000E+00 -0.1840659E-02 0.4138049E-03 -0.8184524E-04 0.0000000E+00
0.0000000E+00 0.0000000E+00 -0.1785714E-03 0.9100275E-04 -0.9100275E-04 0.0000000E+00
0.0000000E+00 0.0000000E+00 -0.1840659E-02 0.8184524E-04 -0.4138049E-03 0.0000000E+00
0.0000000E+00 0.0000000E+00 0.4229625E-03 0.1568223E-03 -0.1230540E-04 0.0000000E+00
0.0000000E+00 0.0000000E+00 -0.4138049E-03 0.4607372E-04 -0.3720238E-05 0.0000000E+00
0.0000000E+00 0.0000000E+00 -0.9100275E-04 0.3434066E-04 0.7726648E-05 0.0000000E+00
0.0000000E+00 0.0000000E+00 0.8184524E-04 0.1516712E-04 0.3720238E-05 0.0000000E+00
Melvin1231 发表于 2010-4-23 02:24

[i=s] 本帖最后由 Melvin1231 于 2010-4-23 04:43 编辑 [/i]

感谢版主的关注, 很有启发, 我再试试。

页: [1]














ANSYS 和excel接口的问题

ANSYS 和excel接口的问题
大家好,请问:
已知大量的节点坐标信息,并且保存在EXCEL文件里面,那么如何导入ANSYS里面进行计算了啊,
或者从ANSYS里面如何读取EXCEL里面的节点信息了,因为节点数目非常多上万个,一个一个手动输入非常麻烦
请问大家有好的办法吗,请高人指导?
jg_meng 发表于 2009-10-7 08:27

该写为txt格式文本,使用数组读入,然后生成节点
zhangyp 发表于 2009-10-7 10:08

每行添上 node,i,
再复制到记事本中,存为文本文件(或mac文件),在ANSYS中读入即可。
luohui5151 发表于 2009-10-8 08:52

关键是怎样生成每行之命令的逗号啊,郁闷啊
gy9991 发表于 2009-10-8 09:12

[b] [url=https://www.360docs.net/doc/c712584973.html,/redirect.php?goto=findpost&pid=1792958&ptid=899688]4#[/url] [i]luohui5151[/i] [/b]

呵呵呵。这毕竟已经减低工作量了!
zhangyp 发表于 2009-10-8 10:40

[b] [url=https://www.360docs.net/doc/c712584973.html,/redirect.php?goto=findpost&pid=1792958&ptid=899688]4#[/url] [i]luohui5151[/i] [/b]

你不会将exel的一列全拉成“,"?
xiaozai1988 发表于 2009-10-8 12:34



这样也行啊?
lianglcy2008 发表于 2009-10-8 14:44

用editplus进行编辑,比记事本方便多了,可以运用宏操作批量加逗号



如何将ansys分析出的六个应力值导入excel?而且希望是一列显示一个应力值!谢谢!
悬赏分:20 | 解决时间:2010-11-24 14:49 | 提问者:白金好人卡
问题补充:

我把*cfopen,tracdata,xls,c:\ !做成了一个记事本,放在了工作目录中。在ansys中,点file-read input from,选择了该记事本,结果在C盘中生成了一个名为tracdata的工作表,但是里面是空白的呢!?麻烦高手再指点一下,方便的话,我们Q聊嘛,我号:897819345.麻烦您了!
最佳答案




*cfopen,tracdata,xls,c:\ !要存在其他位置,改“c:\”即可,也可不写,默认保存在工作目录
*vwrite,应力1,应力2,应力3,应力4,应力5,应力6
(1x,e10.5,1x,e10.5,1x,e10.5,1x,e10.5,1x,e10.5,1x,e10.5)
*cfclos

以上代码存在记事本,文件名只能是字母下划线数字,最好放在工作目录,不能放在有中文字符的文件路径

在ansys中,点file-read input from,选择刚保存的文件





我现在用的是8.0。我比较肯定地说,ansys还没有直接输出excel文件的功能。他只能读取由excel 编辑的一定格式化的文本table 或array 文件。

我个人的经验是用vba 把ansys的文本格式输出结果读入excel。




*status 变量, 保存成文本文件,用文档编辑软件,如psp,打开考过去




使用*get语句先把数据提取出来,可以保存成dat格式用记事本打开,然后在拷贝到excel里。直接保存到excel的没用过不知道。



ANSYS结果数据有好多需要再进行分析和整理,不知怎么才能将结果输出到EXCEL中,好多书中提到ANSYS有这一功能,但没有介绍怎样操作,有高手请给指教一下



nut







积分 12
帖子 15
#22006-4-22 20:36





高手请赐教,我也很想知道



tytj







积分 50
帖子 47
#32006-4-23 21:09





将ANSYS数据导到EXCEL中要先打开EXCEL程序,用"打开文件"打开ANSYS保存的.LIS文件,EXCEL会自动提示选择导入格式,即可.



tianzhs







积分 19
帖子 13
#42006-5-3 22:38





有些结果你可以先用ANSYSlist出来,然后导入EXCEL,
如果不方便 list的可以先用*get配合*cfopen之类的命令写成文件,然后再导入EXCEL
具体的操作你还是在论坛里搜索吧,这方面的讨论很多的



wjlong2003







积分 40
帖子 37
#52006-5-5 20:16





1.将你的数据文件以*.txt格式保存。
2.打开excel在最上面有一个“数据(D)”的下拉菜单,点取“获取外部数据――导入文本文件”
3.导入你的数据文件后,将会出现“文本导入向

导―3步骤之一”,在“请选择最合适的文件类型”中点取
"分隔符号",然后再点取右下角的“下一步”
4.进入“文本导入向导―3步骤之2”,在分割符号
中将:Tab键,分号,逗号,空格
前面的空白处打勾
5.点下一步,点完成就可以了。
6.在excel中清除多余的内容就可以了。



whwgdlzh







积分 14
帖子 15
#62006-5-8 21:02





将ANSYS保存的LIST文件的扩展名改为.xls即可。



zgp0816







积分 4
帖子 6
#72006-5-11 18:55





用了,很好用啊,谢谢了,这样导入到ORiGIN很方便



我是新手







积分 17
帖子 18
#82006-5-22 22:22





我也发现了一个方法
即用pretab命令将所需数据用TXT文件显示出来,在各列数据之间键入TAB键,拷到EXCEL文件中就可以使用了



shuguang







积分 -1
帖子 3
#92006-6-23 17:55





找了好长时间了,终于找到了



dingtao_dtdt







积分 10
帖子 14
#102006-8-21 21:57





大家好像没有把问题回答到点子上啊!楼主问的是两个问题:
(1)、如何将ANSYS的数据导入到ANSYS中
(2)、在将数据导入到ANSYS中后,会有很多的文字说明,如何来去掉。

如果导入EXCEL中后,还有手动的一点点的删除所有的文字说明,那是很费时费力的。
请问如何解决?


相关文档
最新文档