SimWe仿真论坛's Archiver

COMSOL 2008年会

qcs555shen 发表于 2006-4-23 16:55

用python提取odb文件中单元的单元号,积分点好及积分点应力

本人最近在学习python,现把刚学的东西分享一下。nG:\ EjR w*G
这种方法对那些想用input格式输入应力者特别有用。
3A`:An Fy E%]g H&hEz2R0v7m'I
如果大家觉得不错,请留言鼓励一下,本人有了新的进展也好跟大家分享。Y-Rbo.B
以下为程序内容:
DPGq4|C0U6{ QJf
A/OmJ } P.` ] [[i] 本帖最后由 qcs555shen 于 2006-5-24 15:59 编辑 [/i]]

qcs555shen 发表于 2006-4-23 17:04

上面缩进有点问题:
gbq.h7we_ for  v in values:行与y.close()行之间的所有行前面空一格

Inter 发表于 2006-4-23 17:06

好东西

qcs555shen 发表于 2006-4-29 15:51

同志们,做人要厚道呀,本人花了一周弄出来的东西,大家用的怎么样,还要不要我解释解释?:n }og'L&wul rG:K
现在正捉摸在CAE中加一个自定义的窗口,已经有了一点头绪,应该不久就要Ok,到时再跟大家分享。

jacobi 发表于 2006-5-3 07:27

因为大家python用得不多,所以楼主做了.py文件,Y:v p0LN8x
也请给出说明,如何使用等等,谢谢

lfycsu 发表于 2006-5-4 22:05

是啊,装了python,还不知道怎么用?有什么用?还请楼主明示!

lololocad 发表于 2006-5-6 15:57

等待!解释!

lololocad 发表于 2006-5-7 09:24

了解,很好用。
IE:e?)Iun q Pgz[i9Ak;P k R1G [
[[i] 本帖最后由 lololocad 于 2006-5-7 09:30 编辑 [/i]]

kivinchoa 发表于 2006-5-8 17:51

很不错,Python是一种很强的东东,有机会再深入研究。谢谢分享。

grosshaifisch 发表于 2006-5-11 05:14

楼主好人,不看先顶'mI4HY~+Pk
还不明白什么是pytran

lfycsu 发表于 2006-5-12 10:49

出现错误:keyerror:s;|5igTnT
这是什么原因啊?

mercurycai 发表于 2006-10-23 16:27

怎么没有了,楼主能不能发给我一份,[email]mercurycai@eyou.com[/email]

ludong80 发表于 2006-11-6 00:34

楼主能不能发给我一份,[email]ludong80@gmail.com[/email].非常感谢。

chenli1360 发表于 2006-11-6 08:50

看不到啊??呵呵,楼主能不能发给我一份,[email]chenli1360@qq.com[/email].非常感谢。

yyb122724 发表于 2008-5-6 19:15

哎:L 没了 楼主删了

michael02 发表于 2008-6-23 11:22

楼主删掉了,可惜啊

strpinelin 发表于 2008-6-25 09:34

怎么删除了啊?

wangxiaohong422 发表于 2008-6-26 11:23

是啊,怎么删了那 ,方便的话 ,给俺发一个吧 ,wangxiaohong422◎126。com

wild_field 发表于 2008-6-26 15:55

用python提取odb文件中单元的单元号,积分点号及最大主应力

rt,代码如下:
;VO,D{sk^MR from abaqus import *"m qrm hK%h9kX
from abaqusConstants import *
eu8{!L(D from odbAccess import *E(c:_ z"Kz;p*J
%| Hnzg
f=open('output1.txt','w')}(z;g(g2m
f.write('element label, integration point, max principal\n')-T O+L JdP!H

*]k i!G_*k+I myObject=session.odbs['Job-1.odb'].steps['Step-1'].frames[-1].fieldOutputs['S'].values
_$K M |[!js^'b b(}0ooh
j=0
_X!Z(v8y0iwyP while j<len(myDisp):
k NoS^k         f.write(str(myObject[j].elementLabel))
];n}Y-RZ"K         f.write('\t')+gf YFyU!VMF
        f.write(str(myObject[j].integrationPoint))
q7v*_H"z*h4I}\         f.write('\t')
X4i"n,BaN hA         f.write(str(myObject[j].maxPrincipal))7]T1M3t os+k0[)C
        f.write('\n');hX{5X6{ gfZ
        j=j+1
t"gK U|9m*N;?.}-u f.close()
k(N2{Xm}e4M 把上述代码保存为一个py文件运行即可。M9l5L3|&JnJY0@6g4b
[u]这个程序还不完善,关键是我对这个方向没有什么应用,暂时先不研究了,哈哈,谁知道完善的希望帖上来。[/u]2l0Jz8E` b#Z%|h

6BLsP+_ [[i] 本帖最后由 wild_field 于 2008-6-27 19:48 编辑 [/i]]

tm41 发表于 2008-7-19 12:40

问一下,如何得到单元的应力到dat文件,积分点的应力能代替单元应力吗?

guanshengfei 发表于 2008-9-2 16:33

请问一下楼主,如何才能获得节点的应力值,因为我现在通过Python获得截面中所有节点的编号和坐标,我需要获得这些节点上的应力结果,从而绘制等值线图形。但是按楼主的代码,只能获得单元积分点上的应力结果,我无法确定积分点的空间坐标位置。而通过全部输出myObject,查看其members的值,发现在fieldOutputs['S']的情况下,'position'为 INTEGRATION_POINT,而在fieldOutputs['U']的情况下,'position'为 NODE。不知道如何才能实现节点应力的输出,我看Abaqus Scripting Reference Manual 中,对FieldValue object的Members的介绍中有position一项,可能的符号常量值包括四种,即NODAL, TEGRATION_POINT, ELEMENT_NODAL、ELEMENT_FACE, 和CENTROID。请问position的值是否能修改?如何修改?望高手指教。谢谢!

zhao12 发表于 2008-10-17 09:44

Python是一种很强的东东,掌握好了完全可以代替CAE

andy77 发表于 2008-11-8 02:43

[quote]原帖由 [i]wild_field[/i] 于 2008-6-26 15:55 发表 [url=http://forum.simwe.com/redirect.php?goto=findpost&pid=1368255&ptid=722891][img]http://forum.simwe.com/images/common/back.gif[/img][/url]
.T ij%X7n rt,代码如下:]pfZd? je)A&m3M
from abaqus import *
3G)i K c _@ W aJv from abaqusConstants import *
5rl gXW!Q:{.p|,UN/y from odbAccess import *
YT[k!]7r
xB~ p1` f=open('output1.txt','w')Tw1@n2l}&D l p*f
f.write('element label, integration point, max principal\n')0A:n_ }7G1f
%bt%}[0qL3x_
myObject=sessi ... [/quote]
`ta)m`y0i u+sRBOg
有个错误,其中 \Z7k/qj's8B
[font=Times New Roman][size=10pt]while j<len(myDisp):[/size][/font]
@Ho3rNI$p3rG*z8G [font=Times New Roman][size=10pt]应该为[/size][/font]#E GxP \
[font=Times New Roman][size=10pt][size=10pt]while j<len(myObject):[/size][/size][/font]

页: [1]
 

Powered by Discuz! Archiver 6.1.0  © 2001-2007 Comsenz Inc.