【求助】请问各位大侠,如何将AutoCAD图形导入到ANSYS进行处理。谢谢!
( e2 [2 H0 l3 z/ uAutoCAD 模型输入 Ansys
! Y! A6 @; O& t3 E# _1. 对于三维实体(3d Object)
8 p9 w8 N+ B5 J! ?3 J$ f6 X
AutoCAD:
; n8 i, a p4 L) g8 N& z1 S
File --> Export... --> 保存类型选 ACIS(*.sat) --> 输入文件名 --> 选实体 (选3d object)
& w7 V/ t( B; O3 w b; M' k4 N6 I- \ Ansys:
6 o, |- |0 q! ^* B
File --> Import --> SAT... 输入即可
( \, G+ K z/ w1 ]+ w( L3 c: M) v
优点:
3 n: E b# N$ I2 z. C. Q. ]* p* L 用 SAT 文件转换方便,而且一般不会有转换问题
8 y8 x3 l8 H4 P: }% [ 缺点:
. O8 G: Q/ X. X! c# H
只能转换3d object
' P! y) U7 i* n; F( k& N2. 用 iges 格式文件交换
+ m0 e, @; ]5 c5 P" @ AutoCAD 12 自带输出 iges 格式文件工具, AutoCAD 14 要从 AutoDesk 网站下载转换工具。
. U! [: ~' u7 }" M! [8 J
Ansys:
% [( K7 @9 o C, k6 p+ c4 m File --> Import --> SAT... 输入即可
- j/ ~8 S9 F$ q; Q+ | 优点:
9 ?8 a7 M# `- n 各种实体类型都能转换
5 t% V% ]1 `% z4 }& w" p% h. `. M
缺点:
; a9 |+ `# t: T' l 转换麻烦,而且经常需要“TOPO and GEOM Repair”
# d7 d4 i5 q8 w1 y
AutoCAD 14 转换工具下载:
ftp://ftp.autodesk.com/ProdSupp/autocad14/iges/igespr14.exe
; ~! Z3 o& Y! w3 E- w3. cadToansys
' `$ {7 |% C% k+ ^1 c
优点:
, B* E9 j, ^' q 可转换成梁单元
! h- E3 V/ {3 {; d! O 缺点:
/ C1 s. w, l# D* f! c9 j2 @" ?5 } 转换实体类型太少
! w* Q, o7 |9 \. K" _( Q; B. Q7 k4. dxf2ansys (傻瓜极力推荐)
4 h% k$ K7 h/ R+ b$ Z( E
软件直接装换为 Ansys 输入格式。前处理状态下,选 Read Input From 菜单输入
3 W7 q8 G; ~+ }; h2 D }
优点:
$ z8 S) x) t8 p: a/ c 常用的非三维实体都能转换。由于转换Keypoint 初始值可选,你用AutoCAD建模时可以各部分单独建,在Ansys中单独输入!!!
( H) X$ o! Q# i( F6 L 缺点:
+ C6 ]3 F1 Y* H; s1 c/ H 转换实体类型较少
/ F& ]$ Y* K: G% ^' m" a: P. k0 d. X/ F! ?- e
【求助】pro/E2001-ansys6.1模型导入问题
2 w3 d; {. s' I3 R7 c. K刚刚开始用ansys6.1,在pro/E2001的featrue>Ansys Geom导出模型时,在ansys6.1上什么都没有而ac4pro.exe的窗口显示:Geometry
. u5 X) \. L9 q; F3 _* |( b \' d
transfer completed,
) i9 g r1 M9 P% D/ M' |yanni 编辑于 2002-08-06 07:55
/ J$ G1 q4 Y& h% I9 B& s( e
就是已经生成ans文件或anf文件,可以退出proe直接进入ansys里读入该文件。
. c; [4 Z2 F3 u; ~0 \5 J
我今天才刚刚打开ANSYS6.1,我刚刚学这个,不知道哪里有基础的
3 c# Q7 I9 H0 Z$ c6 N0 ]教程,我在PRO/E中做的模型,可以调到这里做分析吗?
0 t6 d+ }, W7 N" E' @如果可以,那又该如何调入,我从零开始学的,我做一般的电器,
/ y8 l% \' Y# S' r% W应该如何学习呢?请各位高人指点,小妹我不胜感激,
8 l3 d" I* C' d$ [6 |
ansys入门在主页上应该能找到,如果没找到把你的email告诉我,我给你传一些我手头的资料。
! J1 S2 S; G! u
学ansys要耐心,还要肯花时间,多看help并作ansys的例题,但不要苛求全面,应结合实际工作,从简到繁,碰到问题解决问题,时间长了自
! |( i* `2 L' w: k
) |) @. W( b4 _! r
然就会了。祝你成功!
9 ^" ?; X3 q" A" J* h关于PRO/E的问题:
( N* |& {! W7 Aansys中有与PRO/E连接的设置功能,开始-ansys61-ans_admin-configuration(ok)-configure connection for Pro/e……(添pro/e的
3 d8 I G L, h' M
; ^% X9 o; N2 u T' f5 Q目录等等)
/ l* |! C$ T5 l设完后在Pro/e的main menu中会有与ansys的连接命令(最后一个命令ANSYS Geom),Pro/e中建完实体后点该命令,会在工作目录下生成一个
/ z+ n9 c6 _/ I6 L& x6 @* g2 g# a
1 g& R5 r D6 m*.anf文件,启动ansys,用input命令读它就行了。
0 a# a+ W1 x) ?* \4 B% w
试试看吧,我的模型还可以。
: U" d) s1 ~6 i. C0 QPro/E和ANSYS的连接*作过程如下:
; g' P; m- y* x: _# v+ `1) 在同机的同一*作系统下安装有Pro/E和ANSYS两种软件;
" n! s* Z' u* L
2) 保证上述两种软件的版本兼容,Pro/E的版本不得高于同期的ANSYS的版本;
! ] ^. @* m3 t3 {$ V; y5 Z- b
3) 开始?程序?ANSYS?ANS_ADSIN Utility?Configuration options?OK? Configuration Connection for Pro/E?选择ANSYS Product?选择
3 T( J; a8 v. g, W! m
" R/ `( ?& o9 j2 ]
Graphics device name(NT: Win32)?Work space in megabytes(128)?给出Pro/Engineer installation path?给出Language used with
' `" y" l0 X8 `/ \& l* n& p) s6 N* z( t# s2 V8 n6 i
Pro/Engineer:usascii?OK;
. r3 G( \5 ]' S* z5 m
4) 运行Pro/Engineer并配置config.pro;
8 R/ v7 I; }/ y- w0 @& O
名称 值 说明
, e o- w7 b$ y+ c$ a( v
fem_ansys_annotations yes 输出“模拟”分析名为ANSYS中的注释。
" M. S& V0 n$ w( c2 A0 p# Tfem_ansys_grouping yes 切换组and/or层的转移到ANSYS。
) V3 v/ c; W2 R2 Q7 x7 lfem_default_solver ANSYS 指定到一个求解器的路径。
% v" R, \% w3 f( T
fem_which_ansys_solver FRONTAL 允许指定使用Frontal ANSYS求解器还是Iterative ANSYS求解器。
0 ]7 @) C! r' o% O* y8 sfemansys_annotations yes 切换载荷工况名称到ANSYS。
6 v$ t8 k/ X7 p6 X! s2 i- kpro_ansys_path <路径名> 指定到可执行的ANSYS (ansys.e)的路径。
* [) u K5 V) s
5) 创建一个新零件,并在PART菜单下这出现ANSCon Config & ANSYS Geom 菜单,打开ANSCon Config并作如下编辑;
* ~8 B* s, y3 l/ W- v4 t* DKeyword Default Value Description
- ~) V7 ^% e! B, h: w+ z
ANSYS_CMD UNIX:/ansys56/bin/ansys Pathname to the version of ANSYS to be run.
4 [" `; j: Q. o2 K. O$ C
Windows:<drive>:\ansys56\bin\<platform>\ansys56.exe
' H5 I3 h9 r" mANSYS_GRIPHIC_DEVICE UNIX:x11-stat Graphics driver for ANSYS.
9 ~8 b, K1 o3 Y
Windows:win32
" H& c6 r, O# M! t* v) ?ANSYS_MEMORY_SIZE 128 Amount of RAM, in megabytes, s
uggested to run ANSYS.
6 J& d; I1 ]9 D! y
ANSYS_NEUTRAL_FORMAT YES Store the part as a neutral file or as a solid model file.
@8 p5 Q% y. w( D# S/ B9 r
ANSYS_PRODUCT_NAME ANSYS The default ANSYS product, ANSYS/Multiphysics.
/ H- q! ?& E$ J1 y8 L: ~
ANSYS_SOLVER Frontal Included for compatibility only.
9 k0 @/ k7 K' N1 ]ANSYS_SELECTED_LAYERS 1-256 Included for compatibility only.
+ h+ B* t8 B, J+ D' qANSYS_GEOMETRY_TYPE Solids Only Included for compatibility only.
+ k2 P1 U9 [( nsonginwind注:第5步似乎没有必要,因为大都已在ansys 的interactive中设过了。
@4 Y9 i$ `! I8 \
我做完第3步,当做第4步启动PROE时,运行到正常的工作窗时死机。什么原因。我装的是ANSYS6.1 PROE2000I2(2000320),谁能帮我?谢谢
- C+ k4 U8 l0 `9 R3 o: i换成proe2001就没问题了。
& {2 O6 F' J/ L8 ]' K2 z
2 w6 w) N4 n7 I) J) ^【求助】ANSYS与
UG的接口怎么设置?
0 b& G! q( M D( _0 ]! s9 o
请问各位大虾,我已经设置好了ANSYS和PRO-E接口了,能否再设UG的接口呢?如果能,问怎么设?望各位大虾指点!!
* T9 g) v' H8 o, ~2 P; D+ J# M3 X
在UG中EXPORT选择PARASOLID,输出为文本格式,然后 在ANSYS中输入即可
4 V6 q5 _8 e) f m* c; I在UG的环境文件中设置好ANSYS的版本号、路径,则在UG中可以调用ANSYS分析引擎;在ANSYS中~\ANSYS57\ac4\bin中设定UG的parasolid版本即
8 R/ o; `+ n- w: o* g r' E# f; j3 H
7 v' [& j: ^: H h/ _可直接读入UG的part文件
) ?# w( U" \1 [' F4 y
可以将UG18中的图形转换成11-16版本才可以用ANSYS读出来,我不知道您所说的“在ANSYS中~\ANSYS57\ac4\bin中设定UG的parasolid版本即
+ Z& J3 p- G1 {8 v% ]7 T& U) N/ p; f' s' W& T I/ y1 ?& L& S
可直接读入UG的part文件 ”怎样实现呢?请指点。
& S) X7 l3 T1 h5 J- K~\ANSYS57\ac4\bin下只有ug170的文件夹,也就是说只支持17版本以下UG的parasolid,此时可添加ug160文件夹,将ug170中内容完全copy过来
9 j+ A8 i3 V& D# b, L2 J: Y
0 X. N/ e! @ O! z* N3 z,即可直接读入ug16的part,但高过17版本的可能有问题~
7 S' V: ~- H" J9 k2 q
可以试着用这种方法打开UG18的PART,我这没有装UG18,所以还没试过,不过低版本在支持高版本上一般会有问题
, `, M( |& `0 |8 O
! J4 S' {4 }2 T5 G) g$ S* @* j- Q# e【求助】在ansys6.0中如何输入I-DEAS模型文件
) s n! c) L! v# @6 i
在ansys6.0中依次选 Import---IDEAS出现对话窗口,最后一行如何输?
: I1 v' A0 G# H% ^" l i这个接口我也没用过,但是我曾经成功把ideas的有限元模型导入ansys中,具体做法如下:
9 L- B' L, y/ H# J
在ideas中建立模型,划分网格后,利用ideas中的导出,里边有ansys的选项,选择即可,然后在ansys中直接resume就可以了
. f6 J; C* X) Q8 N* p" A' W, @
' K% C M8 |6 v {2 K9 J6 _【转帖】ANSYS与ADAMS接口 [精华]
* `# q- i1 J7 D
ANSYS与ADAMS介绍
' V( u2 I0 L9 C% t# ] ANSYS软件是当今最著名的有限元分析程序,其强大的分析功能已为全球工业界所广泛接受,成为拥有最大用户群的CAE软件供应商。其特点
" A: @2 W+ n9 O' D
% x, n X! M- X) W
如:多场及多场耦合分析、多物理场优化、统一数据库及并行计算等等都代表着CAE软件的发展潮流。
' j+ q F) c2 |1 t4 t
ADAMS软件是目前最具权威的机械系统动力学仿真软件,通过在计算机上创建虚拟样机来模拟复杂机械系统的整个运动过程,从而达到改进
; C# Y& `( Q; l Q& ]
4 h. [' x# |% f6 E }
设计质量、节约成本、节省时间的目的。
& Q! }8 d4 p9 ]- u) `" z 通过ANSYS软件与ADAMS软件之间的双向接口,可以很方便的考虑柔性体部件对机械系统运动的影响,并得到基于精确动力学仿真结果的应力
4 k7 B' z7 [) X) H8 J
. h4 g, _2 d( b$ {应变分析结果,提高分析精度。
' `5 N! f; f' `, z5 Y4 _接口背景
( e% |, u* P+ f+ r* n0 T+ w
ADAMS/Flex软件允许在ADAMS模型中根据模态频率数据创建柔性体部件,柔性体部件可能会对机械系统的运动产生重大的影响,在ADAMS模型
2 n, _5 g3 f" P* r3 a+ C+ h
8 h: ]# R; ]& `7 b* o
中考虑柔性体部件的影响会极大地提高仿真精度,而ANSYS程序则提供了一种方便的创建柔性体部件的方法.
8 B- X4 P: T' f0 o
ANSYS程序在生成柔性体部件的有限元模型之后,利用adams.mac宏命令可以很方便地输出ADAMS软件所需要的模态中性文件jobname.mnf, 此
1 I$ Q, O+ p C( i0 [
/ ?7 c5 N3 J. R5 o: X
文件包含了ADAMS中柔性体的所有信息, 在ADAMS软件中直接读入此文件即可看到柔性体部件的模型. 指定好柔性体与其它部件的连结方式,并给
( d( e7 c; p1 A9 V0 ]7 A
' p& L6 O" l( w; R: j1 j
系统施加必要的外载后即可进行系统的动力学仿真.
4 x5 `" M: _! C! T$ H% @/ \何时使用ANSYS-ADAMS接口
" t0 _' h" d3 A- b
在机械系统中,柔性体将会对整个系统的运动产生重要影响,在进行运动学分析时如果不考虑柔性体的影响将会造成很大的误差,同样整个系
6 K/ M4 l: f1 X& \( v3 R
) e- b+ h* g/ z! h0 R' ?2 B统的运动情况也反过来决定了每个构件的受力状况和运动状态,从而决定了构件内部的应力应变分布.因此如果要精确地模拟整个系统的运动,考
& T L1 c c* q: z+ d
. ]" q4 v4 c, v虑柔性体部件对系统运动的影响,或者想基于精确的动力学仿真结果, 对运动系统中的柔性体进行应力应变分析则需要用到ANSYS与ADAMS两个软
5 X; E- s! I, ^" \' X E _
0 O. q! E7 b, h, }件.
( s4 y* O; w' ]/ q+ R! H3 \分析步骤
" P* }2 H& j" \/ D1 p7 Y9 ^0 G( e4 V 利用ANSYS与ADAMS接口,对运动系统中的柔性体部件进行应力应变分析的完整步骤如下:
8 @5 E+ U9 N2 Q7 a6 Q2 R9 ?( n( Y在ANSYS软件中建立柔性体部件的有限元模型并利用adams.mac宏文件生成ADAMS软件所需要的柔性体模态中性文件(jobname.mnf);
$ R$ j& b% ]: G$ s5 b' t在ADAMS软件中建立好刚性体的模型,读入模态中性文件,指定好部件之间的连结方式,施加必要的载荷进行系统动力学仿真,在分析完成后输出
) b( Q I) y& Y! S% W
, P8 a+ P7 \" n/ o+ F$ \8 B
ANSYS所需要的载荷文件(.lod文件),此文件记录了运动过程中柔性体的运动状态和受到的载荷;
9 m6 |! j% r, N3 w$ ^- h% o9 }. q" G在ANSYS程序中, 将载荷文件中对应时刻的载荷施加到柔性体上对柔性体进行应力应变分析。
7 k; N1 w, K y; r j在ANSYS软件中生成ADAMS软件使用的柔性体模态中性文件(.mnf文件)
; S# t! t% Y) |
进入ANSYS程序,建立柔性体的模型,并选择适当的单元类型来划分单元。在柔性体的转动中心(与刚性体的联接处)必须有节点存在,此
$ h2 H" D6 v. Z% j# d0 @
6 T# o( u( t& R! V; m
节点在ADAMS中将作为外部节点使用,如果在联接处柔性体为空洞,则需在此处创建一节点,并使用刚性区域处理此节点(外部节点)与其周围
% m' _7 [0 u+ J2 A* ]
7 D" i+ S# R$ v/ i+ g. I
的节点。选择外部节点,运行ANSYS程序的宏命令ADAMS生成ADAMS程序所需要的模态中性文件(jobname.mnf)。在此过程中需注意下面4点:
1 j0 u" `/ ?) @% _/ Y
单位系统,由于在ADAMS程序中可以处理不同的单位系统,所以MNF文件中必须包含ANSYS分析所使用的单位信息,因此在运行宏命令ADAMS之前,必
% u" U: l9 x k
& w5 G' W1 L2 w2 R须使用命令/units来指定在ANSYS分析中所使用的单位系统是SI,CGS,BFT或BIN,如果您使用的不是上述四种单位系统,则可以使用下面的命令:
4 f4 J$ ]( \. ^2 M+ e' t
/units,user,<L>,<M>,<T>,<F>
5 j( h) K6 i2 z! V: H# v其中L,M,T,F是SI单位系统与ANSYS 分析中所使用单位系统的转换因子。
" K( ~! m5 C# y+ b
外部节点,外部节点是ADAMS软件中的名词, 在ANSYS程序中即指柔性体与刚性体连结位置处的节点,用于在ADAMS所进行的运动学分析中连结柔
" N* p) t+ B5 e" i4 `0 b4 p! B
+ T6 v6 q, X0 n0 h2 y性体与刚性体。一般来讲,一个关节位置只使用一个节点作为外部节点,如果柔性体的连结部位处为空心,则需在连结处创建一个节点作为外
) A3 W! p A2 B% c3 W0 [+ V
: U2 u3 A3 k3 r4 ^1 ]# ], `% |9 M部节点,外部节点与其周围的柔性体节点一般使用刚性区域来定义。
/ B: o2 [6 w P/ S运行ADAMS宏之前只选择将作为外部节点使用的节点,在运行宏命令ADAMS之前只选择作为外部节点的节点,因为ADAMS宏会将此时选择的节点作
2 a1 j0 Q4 E9 o# h0 V
3 ~9 I* b" H, X' x为外部节点处理,因而此选择步骤不可缺少。
' r1 i h( A. g7 ] X6 \8 K+ v! |3 G
运行宏ADAMS,_NMODES生成ADAMS程序所需要的模态中性文件,模态中性文件.MNF中包含了柔性体的质量,质心,转动惯量,频率,振型以及对
( }8 O) L ]* _& B1 O: S
9 G$ M/ {& I% D% _$ g* y
载荷的参与因子等信息。
9 i: Z7 ~ H# \ Q' Q下载在ANSYS中生成模态中性文件的示例(Word文档,请点击右键下载)。
% S, p3 G' j! K"在ANSYS程序中, 将载荷文件中对应时刻的载荷施加到柔性体上对柔性体进行应力应变分析"
3 x& l: E% z6 L H$ a; H
具体怎么操作能讲讲吗?
* a" W3 ^/ K) K- I% C
得用参数化程序设计语言(APDL) 这些命令可以写进程序设计语言编写的程序,命令的参数可以赋确定值,也可以通过表达式的结果或参数的
4 ]. ]1 c w! d1 C6 [( `( x
" }5 G; B7 V m! e' z
方式进行赋值。从ANSYS命令 的功能上讲,它们分别对应ANSYS分析过程中的定义几何模型、划分单元网格、材料定义、添加载荷和边界条件
. h8 S$ s' J8 x- h* `% |
; Q6 {& A7 w/ n6 ^9 s- @/ W5 d* h、控制和执行求解和后处理计算结果等指令。
/ }! S4 j8 u' v o1 F& r6 r- Y: ~这用参数化程序设计语言(APDL)比较方便。
3 W! [6 f2 w0 G1 W p在ADAMS软件中生成ANSYS所需要的载荷文件(.lod文件)
( ]: U, ^' [6 A, `( N, I+ A+ T H 进入ADAMS程序,建立机械系统的刚性部件,读入模态中性文件.mnf以建立柔性体的模型,指定柔性体与刚性体的连结方式,按实际情况定
- R9 l2 T# q/ O$ b' J
n/ ^/ D1 {) J$ r义载荷和边界条件进行机械系统的运动学分析。在分析完成后输出ANSYS软件所需要的载荷文件(.lod文件)。此文件包含了对应于运动过程中不
& r( {$ U& K7 u p' g# W( ~
. s5 Q* C! \; I! |& a同时刻点柔性体的运动状态和所承受的载荷等信息(例如力,力矩,加速度,角速度及角加速度)。
2 b: o# m6 I7 Z
下载ADAMS生成的载荷文件示例(Word文档,请点击右键下载),其中节点13001、13000为柔性体的外部节点,即为柔性体与刚体的连结点。
- M; k% }/ F- R在ANSYS程序中进行应力应变分析
( A; c( m% \) O8 y0 ~: U+ w
进入ANSYS程序,恢复在步骤一中所建立的柔性体模型,选择所有节点,从载荷文件(.lod文件)中找到相应时刻的载荷并输入ANSYS,对柔
" S6 {7 L4 {) O+ g4 e! w0 }+ d! ~; D2 y
性体进行应力应变分析。在分析完成后即可得到柔性体的应力应变分布和其它感兴趣的结果数据。
% Y* o8 B$ @8 ^0 X
ANSYS与ADAMS接口
; w& z* g5 A$ ]. d/ Z分析示例
/ k+ i- c- E1 f* `+ j& m( ? 此模型为摩托车发动机活塞曲柄连杆机构。活塞上施加5KN的力。其中连杆作为柔性体考虑连杆,活塞和曲柄作为刚性体对待。
: p' y/ B0 k, J" ]+ ?活塞连杆机构
) e: h$ x' |* H, Z5 }" ]
步骤一:在ANSYS软件中生成柔性体模态中性文件
$ I0 X2 e% ]# B. o5 Q/ l
在ANSYS程序中读入柔性体的几何模型并对柔性体进行网格划分,在连杆两端的轴心处各建立一个附加节点(外部节点),将外部节点与孔周围
. ^* Z* c4 @. w& q: M* R, Y8 O6 k5 P+ J
的节点当作刚性区处理,保存数据库以备在步骤三中使用。选择外部节点(关节处的节点),运行ANSYS的宏命令ADAMS.MAC生成模态中性文件
' U* L; V/ s2 K
( e) x( A% w& K
(flex.mnf),此模态中性文件包含了柔性体的质量、质心、转动惯量、频率和振型等信息。
" E/ n/ k) a1 G
连杆的有限元模型图
2 M) o1 O5 [8 Q0 J) D7 X: |
步骤二:在ADAMS中生成ANSYS所需的载荷文件
' g$ G4 ^9 Z. ] 在ADAMS中建立活塞、曲柄的模型,读入模态中性文件flex.mnf,指定好柔性体(连杆)与活塞,曲柄的连结方式,即可进行运动学仿真分
+ E2 @ L% l) Z9 M
w/ U9 O; J% {- R0 }% q析,在分析完成后输出ANSYS所需要的载荷文件flex.lod。分析得到的结果动画如下:
: b$ P' Q6 j6 E步骤3:在ANSYS中进行强度分析
8 r( P+ e) t; _, M C1 q. v
在ANSYS中恢复连杆的数据库文件,选择所有节点,输入载荷文件flex.lod中相应时刻的载荷,可得到连杆中相应时刻的应力应变分布。
0 l/ u# A/ u. }6 F7 Z
连杆中的Mises等效应力图
' A5 f, L7 `) j+ e( e
w9 K% h4 _# r/ W- V% ]! v9 k: n
5 o Z1 n5 ^ G7 k【分享】关于ansys与VC++/Fortran程序的接口资料! [精华]
$ e( k+ U1 H7 o# v. s" A6 }
将ANSYS作为子程序调用
$ b/ z: E/ V3 @, N) M+ `* V对于优化或参数化设计,可以在VC或FORTRAN中将ANSYS作为子程序调用。具体调用方法如下:
+ s) `! q& w7 j0 l9 `1.在VC中调用ANSYS
( x k. F/ Q9 c6 A/ j( v9 B" d3 N( p::WinExec("d:/ANSYS57/BIN/INTEL/ANSYS57 -b -p ansys_product_feature -i input_file -o output_file",SW_SHOWNORMAL);
. q4 V) e6 R' |
; G* Z3 H. y; h& O2.在FORTRAN中调用ANSYS
7 v, N9 r2 M, T1 z2 O- a z
LOGICAL(4) result
/ Z6 |* ?* a1 n R. |% _
RESULT=SYSTEMQQ('d:\ANSYS57\BIN\INTEL\ANSYS57 -b -p
! j. M" a) d( l7 g8 p, |ansys_product_feature -i input_file -o output_file')
( v' b2 }# o5 y3 C' x6 ~
@, C7 c5 l V. g: ]7 J
3.说明
; ]% X5 X5 _8 H; w9 J/ z1和2中,input_file为用APDL语言编写的ANSYS输入文件。
; X2 X+ Y1 m2 i( o. W0 yansys_product_feature为你的ANSYS产品特征代码。
2 c" ]4 o- j7 d- @8 H
需要注意的是,在VC中调用ANSYS时,需要加一条判断语句,以确定ANSYS
8 k( G3 C0 y6 g# m; g已经执行完毕。
% `+ M' H/ _, ?; x- D8 R
! `# C1 y/ r$ u( p9 G在ANSYS中当然也可以以VC或FORTRAN作为子程序调用。可以参看有关ANSYS二次开发方面的资料。
, D" |8 _% ^. i( t* b" w这个方法应该是与系统无关的。
8 \! z5 r: v( F% ?
8 l, v6 K) y& g- G# F. p# D9 i3 z
在FORTRAN中不需要判断,FORTRAN会等ANSYS执行完毕才继续执行下一条语句。
' c1 b; P, t5 n ]在VC中,我没有找到与FORTRAN类似的函数,只好加一条循环判断语句。
, }- j* U; ^( B: [ |$ Q/ _如果谁能找着这样的函数,请告诉我,谢谢!
0 [5 \/ k ]- f1 ~+ }1 ~7 b
# C, G6 b R( Z% R判断方法很简单,只需判断错误文件file.err是否可写就可以了。
5 b& Z7 `* j' e, ~1 @% @/ V. r
因为当ANSYS在运行时,file.err是不可写的,只有当它运行完毕,此文件才可写。
' a' q5 E0 a9 K& M( U2 w# f
好贴,请教如何在VB中调用ansys?
9 X0 c$ P3 g; N) o这是我早期的帖子,请参考:
0 N' R3 f3 M. P1 {8 g) [$ q2 zhttp://www.fea-league.com/dispbbs.asp?boardID=21&RootID=2923&ID=2923 ) m$ T8 v6 k4 o9 ?) h7 u2 ^* c
在第二页中已经对VC调用ANSYS的方法进行了更新,如下所示:
" X9 x# X. z" v/ ?2 GVC调用ANSYS的示例程序。
8 ]5 o2 a' k8 f# h8 N
//Test.cpp
7 h; \9 L2 u' U$ C. X3 R; _ e6 ^#include "stdio.h"
6 E% v4 K0 ?$ u7 l
#include"process.h"
6 d; _' }9 f- j- o4 I' \) }& qvoid main()
5 P! T+ q( c, t( y* S) d) f! p{
" S* W! G. Q/ Z: `2 @; G% l: k0 @
int result;
# G% `* W8 R) ]; s: G' x0 sprintf("Solving...");
7 y7 L0 V6 G- Presult=system("d:/ANSYS57/BIN/INTEL/ANSYS57 -b -p ansysul -i test.txt -o test.out");
/ Q- e, L" q' ]//不用::WinExec,就用不着等待语句,可以实现用FORTRAN调用一样的效果。
$ a/ D% L. p- n! V: D# A! V, `
printf("Solution finished...");
( p& V0 _0 g' c/ B- [$ C! n! o
}
2 V+ v2 L% j$ y; A2 w" x
- c% {- ^6 b1 m+ M希望在传帖子的时候把有关内容全部看清楚,否则很容易以讹传讹,切记!
2 t+ k6 T. m3 s能不能也给我发个ansys二次开发的示例
3 Y) C% `" r" b4 ?# ccaxcae 大侠你好,能不能也给我发两个示例:一个是vc调用ansys的,
# x: K4 Y1 v0 n) p另外一个是ansys调用vc和fortran的,
- w6 `, r8 x9 t! s% p
" R& K& v6 I$ Q8 Z) ]7 MVC调用ANSYS的示例程序。
$ B" t- H6 k0 D6 k) F* R, |4 ~9 p//Test.cpp
' }! ]% ?' g& m6 `0 H! J2 n9 \
#include "stdio.h"
3 ~$ a2 S M) ?" a- m#include"process.h"
6 k" _+ t2 L$ C& Xvoid main()
( q l* J$ u' _9 {: b{
; l4 n* |+ G. }! {) e2 n% _
int result;
7 m. e5 {4 `! L7 ^; G& `. H! O- S
printf("Solving...");
5 b& F9 P( a; Y
result=system("d:/ANSYS57/BIN/INTEL/ANSYS57 -b -p ansysul -i test.txt -o test.out");
+ b5 h8 V% o/ K4 m- r
//不用::WinExec,就用不着等待语句,可以实现用FORTRAN调用一样的效果。
) [# \4 y& N! F7 g: ]5 S9 ^
printf("Solution finished...");
- n* D% X/ C8 g! A8 a3 z}
% f j' [1 v" Y- r6 C. n* V" N$ N8 Z% T; @6 \& ~- [
请问 在那里查ansys_product_feature
9 P. f, o; F9 M其次, vc中的类的成员变量是否能和apdl语言中的变量进行数据交换阿?
' D# q( ~- l2 G' o2 y拜托了 前辈
" r; |1 G1 k8 N# ~
; Y) S s: B N怎么还不知道?那个特征表找着没有?
2 T0 o6 N" w H& ^, m. }/ ~* c以第一行为例:ANSYS/MULTIPHYSICS ane3fl
. g3 [# [( j% C1 f8 ]( K/ `- c
ANSYS/MULTIPHYSICS是产品特征名称,ane3fl是与其对应的产品特征代码,把这个代码填到下面的语句中:
$ a$ F- ` [! t9 p7 A! [; z: e
result=system("d:/ANSYS57/BIN/INTEL/ANSYS57 -b -p ane3fl -i test.txt -o test.out");
) d/ I) ?3 o e0 j/ b# p
VC中的变量与APDL语言中的变量可以进行数据交换,否则怎么实现参数化或优化设计?
% k' ~9 H% _. c |6 F1 C# Q
不过不能直接互换.我采用的办法是,在VC中将变量结果写到一个文件中,然后再在ANSYS的APDL语言文件中读入这个文件的数据,再由ANSYS进行
" L2 I4 w" {) Z. w
7 {8 {5 S. \5 [& P7 ]4 j, h新的计算,计算结束之后,再由后处理处理结果,并将结果数据输出到一个文件中,然后用VC读入此文件中的数据,进行下一步处理.
- O! d' t9 b7 Q4 r
* @7 n2 m9 a' N! n) a# Z- Z.ext是什么文件啊?
7 n3 G% P2 a+ `+ w1 j7 {- g数据文件,图形文件怎么得到啊?
+ j" a. q9 g' k$ P; q S0 c
ext是指文件扩展名。
3 d& t7 u# w+ {) U
数据文件(假设输出的数据文件名为opt.out):
3 h& G9 _& s+ T# B8 F% N! C*dim,out1,,2,1
* ` V5 i% b# n* f }3 ^
out1(1)=dmax !目标函数
5 I/ [! b( A7 J8 z# @& _7 y
out1(2)=1-eymax !约束条件1
2 U' {* s$ `; G! ]* O& A*cfopen,opt,out
% w( ^. X1 s6 _
*vwrite,out1(1),out1(2)
, y: C' e. L' o(2f10.6)
- s; I6 O' d$ f( i) \2 M
*cfclos
3 u4 s) w: m: D0 h5 x7 u
在VC中相应的显示数据文件命令为:
8 p+ E! r* _; Q8 }4 S
result=system("notepad opt.out");
* R0 a L5 e0 c* U& x9 r4 T, \- c/ \& i( F) b' V1 m
图形文件(假设ANSYS工作文件名为test,输出jpg图形文件,具体信息请参考命令/show):
6 b0 v5 H* h4 s$ a4 p4 [5 O
/SHOW,JPEG
3 u- o* z1 \( N, \& s/ x, d
JPEG,QUAL,75,
0 r/ R( Y# e U/ ZJPEG,ORIENT,HORIZ
g4 n- j7 ?5 |& f! j0 jJPEG,COLOR,2
; D% @7 }, K2 @8 L3 s CJPEG,TMOD,1
$ N8 j0 ?( A$ G1 a' k9 L
/GFILE,600,
5 w6 c8 s" f: }# y, G5 j' B!*
% u1 Z* W1 p5 w
plns,uy
- c: _! r2 n) v; U
/SHOW,TERM
3 N2 N$ ?, \8 Y+ ~在VC中相应的显示图形文件命令为:
8 D' H/ N- }1 Y1 Fresult=system("mspaint test001.jpg");
( C1 T' D( ~& W3 K1 h
请问坛主,在ANSYS中划分了网格的三维图形能在VC中调用吗?
+ j9 W# u- S: P5 V' _5 |
如果能调用,得到的图形的控制点是由节点控制还是有关键点控制的?
. V7 B, s2 i: G, k0 |$ I) J# r# R每个点的坐标是A(X,Y,Z)的形式还是A(X,Y,Z,W)矢量的形式?
5 \$ {# }1 D( _6 |- f
你的意思是不是要在VC中调用在ANSYS中生成的有限元网格信息啊?
; r" w" q7 C; z4 I: M; J) P/ @0 m; d
如果是这样,调用的应该是由节点控制的有限元信息。
! O' t# ~" s( d% }) I! C
每个点的坐标是A(X,Y,Z)形式。
2 G# _0 Y) q- h* X' I% O
. q5 N, s# u$ I/ f; f3 o" ?. u; K如果要进行应力场分析,分析后根据节点的应力大小、应力的梯度等一些原则,需要重新改变模型的几何形状,
/ u A' l6 E$ ]而这个三维实体的形状中有一部分是曲面,想通过像在vc中用三角面片建立曲面那样通过控制一些点重构模型,可以吗?
5 w: B$ o0 E0 J" O( g4 N. u可否提供一种方法?
) c- K$ f8 u, i* T这好象很难实现。这里所说的基于ANSYS进行参数化建模要求能在ANSYS中进行实体建模。你可以看看你的模型曲面部分用ANSYS能不能
9 p. u, z* U W4 h3 `生成(如控制关键点,生成样条线,再把样条线扫描成曲面)。
_" {, g! b" g% g* B ^: N
另外一个方法就是基于Ideas进行优化分析。还有利用matlab+Ideas进行优化分析的。
c I, F# B3 K5 d+ K8 ]我的实体模型已经在ansys中建好了,包括曲面部分,现在要
# H+ T* ^& _; r j) ^通过有限元模拟的结果只改变取曲面部分的形状,想通过像在vc
0 x* E' N0 P1 ~% x [中用三角面片建立曲面那样通过控制一些点比较细致的重构模型?
/ y2 M: z# F# E+ q% u既然已经在ANSYS中建好模型了(请用APDL语言建),那么在ANSYS里就可以直接通过控制特征点来控制曲面部分的形状。
! @0 J3 j/ n# R; \8 e至于在VC中重构模型,我也不清楚。问题在于,在VC中建的几何模型怎么输入到ANSYS中?
0 M6 j. s. n# m# E7 G( ]' p
再问坛主,怎样控制特征点来控制曲面部分的形状?
' w9 [$ g: K6 j8 j! D% L
可以使关键点或者节点沿着坐标的方向移动从而改变其形状?
1 h$ n' o3 q# A; Q; D. q0 y0 \
将关键点的坐标定义为参数,如果进行优化计算,就是优化的设计变量。通过控制关键点的坐标来控制曲面形状。
/ h1 |+ Y! L8 t: Z3 p+ e! \通过改变节点的坐标可以改变几何形状吗?
2 A1 n8 K( C6 a7 k o0 O% Z& k
那么网格的质量会发生变化吗?
* F ]1 Q: c' d3 E0 {节点不好控制。因为结构形状需要重构,需要用新的网格,节点信息是变化的。
j) t# i a* d; T/ c如果嫌控制点少,可以多用些关键点。
, {2 y4 w( `0 ~. v; S. [& e坛主,建立好模型以后再多加关键点和建模时多用几个关键点效果能一样吗?
3 `7 O& C. n" I5 P8 a- z, f
因为建模时多用关键点很麻烦,而且不一定能建成.
. P, b7 b- V1 Q# P6 X怎么 将关键点的坐标定义为参数 ?
|% O m7 J5 f* X, D
我用上面讲的方法将Nastran作为一个子程序也是可行的。
5 |& I% e. {1 \- p3 g w# i请教!!我做了一个优化程序,每运行完一次程序,我需要
! [6 S9 }6 x! h$ O$ F修改输入文件,那么如何动态改变输入文件。不用手工改!
4 I0 r) D' Q8 \8 ~9 ?# o在ANSYS中可以利用它的APDL语言实现这种优化功能。Patran中相应的PCL(Patran command language)同样可以
, y1 |* P9 B# P4 P) \- A* \
实现。基本思想一样,在Fortran或C中,将相关变量参数写到一个数据文件中,再利用与上面类似的调用方法执行patran的PCL文件,
X% Y; K- Q3 I/ t2 ]由此PCL文件读入上面生成的数据文件中的参数实现参数化建模、有限元处理并生成Nastran的计算输入文件,再调用nastran进行有限元计算,
# |9 J/ x: {" g4 P/ o
, n" R7 ? u9 O$ v& P然后由patran的PCL调用结果进行后处理,将结果数据输出到数据文件,最后由Fortran或C读入实现参数传递。
) L$ W! k3 x& n1 ?& m
将ANSYS作为子程序调用-->jgyhw转移
6 g9 Z5 R* W- j4 k' X
对于优化或参数化设计,可以在VC或FORTRAN中将ANSYS作为子程序调用。具体调用方法如下:
3 `. n$ K1 R0 k9 z. n1.在VC中调用ANSYS
2 h0 C# k' Q; A! A' q/ }) [::WinExec("d:/ANSYS57/BIN/INTEL/ANSYS57 -b -p ansys_product_feature -i input_file -o output_file",SW_SHOWNORMAL);
3 M" m7 x7 G! i8 F/ b6 {9 F! J0 o+ d$ q9 f5 q
2.在FORTRAN中调用ANSYS
, [% M6 o) n- c3 d" ?
LOGICAL(4) result
$ i0 }" D+ X' D$ [$ eRESULT=SYSTEMQQ('d:\ANSYS57\BIN\INTEL\ANSYS57 -b -p
: }. R, p7 [4 `+ V* w9 A- W4 p% u0 {ansys_product_feature -i input_file -o output_file')
) x. {/ @' b* Q/ ]
~: k* f/ @7 u1 s3.说明
9 R8 o2 s1 h. ]; }
1和2中,input_file为用APDL语言编写的ANSYS输入文件。
# H$ |/ R. E! L( S: I5 Nansys_product_feature为你的ANSYS产品特征代码。
' x% c6 p: _3 X$ m5 h/ F7 ?
需要注意的是,在VC中调用ANSYS时,需要加一条判断语句,以确定ANSYS
% P+ ^9 j/ D* o' c( H" F已经执行完毕。