|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有账号?我要加入
x
<P>em01][em01]认为好的,就顶一下呀![em01][em01]<BR><BR><BR>[em39][em39][em39][em39][em39][em39][em39][em39]<BR>模型简化及网格划分 </P>
<P>模型简化及网格划分<BR>使在建立仿真模型时,经验是非常有助于用户决定哪些部件应该考虑因而必须建立在模型中,哪些部件</P>
<P>不应该考虑因而不需建立到模型中,这就是所谓的模型简化。此外,网格划分也是影响分析精度的另外</P>
<P>一个因素。本文将集中讨论如何简化模型以获得有效的仿真模型以及网格划分需要注意的一些问题。 </P>
<P><BR>理想情况下,用户都希望建立尽可能详细的仿真模型,而让仿真软件自己来决定哪些是主要的物理现象</P>
<P>。然而,由于有限的计算机资源或算法限制,用户应该简化电磁仿真的模型。 </P>
<P>模型简化<BR>模型简化主要取决于结果参数及结构的电尺寸。例如,如果用户希望分析安装在某电大尺寸载体上的天</P>
<P>线的远场方向图,那么模型上距离源区超过一个波长的一些小特征和孔径(最大尺度小于 /50)就可以</P>
<P>不考虑。另一方面,如果用户希望分析从源到用带有小孔的屏蔽面屏蔽的导线之间的耦合,那么必须对</P>
<P>小孔、靠近源的屏蔽面以及导线进行精确建模。另外一个常用的简化是用无限薄的面来模拟有限厚度的</P>
<P>导体面。一般而言,厚度小于/100的金属面都可以近似为无限薄的金属面。有限导电性和有限厚度的影</P>
<P>响可以在SK卡中设置。对于比较厚的导体面,如果这种影响是次要的,那么用户仍然可以采取这种近似</P>
<P>。例如,当建立大反射面天线的馈源喇叭模型时,喇叭壁的有限厚度对于反射面天线主波束的影响就是</P>
<P>次要的。然而,如果喇叭天线用于校准标准时,那么喇叭壁的有限厚度就不能忽略。 </P>
<P><BR>网格划分<BR>一般而言,网格划分的密度设置为最短波长的十分之一。然而,在电流或电荷梯度变化剧烈的区域,如</P>
<P>源所在区域、曲面上的缝隙和曲面的棱边等,必须划分得更密。一个实用的指导原则是网格大小应该与</P>
<P>结构间的间隔距离(d)相比拟(<=2d)。同样地,如果需要计算近场分布,那么网格大小应该同场点</P>
<P>到源点间距离(d)相比拟。 </P>
<P><BR>总之,用户建立的几何模型应该抓住主要的物理现象,而网格划分则需要权衡输出结果相对于网格大小</P>
<P>的收敛性。<BR><BR></P>
<P>二次开发调试技术 </P>
<P>二次开发调试技术(摘自ANSYS用户专区)- -<BR><BR>在调试用户子程序过程中,可以利用非《ANSYS命令参考手册》某些命令和其它特性帮助用户提供许多</P>
<P>有用的信息。但是,它们仅仅适合于极小问题并只包含较少迭代求解情况;否则,它们将会输出大量的</P>
<P>数据。 下面将详细介绍/TRACK 和 /DEBUG两个命令;另外有两个ANSYS文档没有包含的命令:OUTEQ 与 </P>
<P>/NERR。 <BR>? 命令OUTEQ,on 能够用于控制所有平衡迭代计算的输出结果。 <BR>? 命令/NERR,,,-1 使系统一直报错,并保持程序继续运行。这时,正常的中断方式有:1) 系统中断; </P>
<P>2) 错误结果。 </P>
<P>1、跟踪程序运算逻辑顺序 <BR>/TRACK命令:当程序按逻辑顺序进入和离开某些更高级别的子程序时发送一条信息。子程序的</P>
<P>TrackBegin(开始)和TrackEnd(结束)(参看UPFs第六章)一起构成/TRACK命令的程序跟踪。 然后,</P>
<P>按下列格式执行命令: <BR>/TRACK,MonLevel,PrintLevel,SumLevel <BR>其中:MonLevel是时间监视级别; <BR>PrintLevel是进入/退出输出状态开关; <BR>SumLevel是输出累积时间状态开关。 <BR>这三个参数可以是0到9之间的任何值(缺省为0)。用户可以使用/TRACK命令查找出程序中断发生的代码</P>
<P>位置。例如,将所有子程序标识为八个级别,以便确定程序进入与退出它们的时间, 此时用户应当执行</P>
<P>的命令为: <BR>/TRACK,,8 </P>
<P>2、调试单元与求解 <BR>/DEBUG命令能够在输出的许多位置点进行调试。/DEBUG命令具有下列三种调试格式: <BR>? 求解(solution)调试格式 <BR>? 单元(element)调试格式 <BR>? 一般调试格式 <BR>(1)求解(solution)调试格式 <BR>执行命令: <BR>/DEBUG,-1,F1,F2,F3,F4,F5,F6,F7,F8,F9 <BR>参数说明: <BR>F1—1 (输出基本求解结果控制调试结果) <BR>F2—1 (输出使用Newmark常数的瞬态计算调试结果) <BR>2 (输出使用速度与加速度的瞬态计算调试结果) <BR>F3—1 (输出单元矩阵调试结果,包括矩阵与载荷矢量) <BR>2 (输出单元矩阵调试结果,只包括载荷矢量) <BR>3 (输出单元矩阵调试结果,包括矩阵对角元素和载荷矢量) <BR>F4—1 (输出自动时间步长(auto time stepping)调试结果) <BR>F5—1 (输出多物理场调试结果) <BR>F6—1 (输出弧长(arc-length)调试结果) <BR>F7—1 (输出基本Newton-Raphson调试结果) <BR>2 (输出Newton-Raphson调试结果,包括非平衡力或增量位移或每个DOF) <BR>3 (输出Newton-Raphson调试结果,包括施加载荷与每个DOF 上的n-r恢复力) <BR>F8—1,2 (输出位移矢量以及位移指针调试结果) <BR>2 (输出位移矢量以及增量位移调试结果) <BR>3 (输出位移矢量以及接触数据库调试结果) <BR>F9—1 (输出临时程序员调试结果) </P>
<P>(2)单元(element)调试格式 <BR>执行命令: <BR>/DEBUG,-3,G1,G2,G3,G4,G5,G6,G7,G8,G9 <BR>参数说明: <BR>G1—1 (输出基本单元通过(pass)调试结果) <BR>G2—1 (输出单元位移和坐标调试结果) <BR>G3—1 (输出单元矩阵调试结果,包括矩阵与载荷矢量) <BR>2 (输出单元矩阵调试结果,只包括载荷矢量) <BR>3 (输出单元矩阵调试结果,包括矩阵对角元素和载荷矢量) <BR>G4—1 (输出单元载荷调试结果) <BR>G5—1 (输出单元实常数(real constant)调试结果) <BR>G6—1 (输出单元存储变量(saved variable)调试结果) <BR>G7—1 (输出线性材料特性单元材料特性调试结果) <BR>2 (输出非线性材料特性单元材料特性调试结果) <BR>G8—1,2 (输出塑性单元非线性调试结果) <BR>2 (输出大变形单元非线性调试结果) <BR>3 (输出接触数据库单元非线性调试结果) <BR>G9—1 (输出临时程序员调试结果) </P>
<P>(3)一般调试格式 <BR>执行命令: <BR>/DEBUG,H1,H2,,H4,H5 <BR>参数说明: <BR>H1—1 (输出文件头纪录(file header record)信息) <BR>2 (输出字符输入行(character)) <BR>3 (输出解码输入行(decoded)) <BR>H2—1 (输出波前重新排序(wavefront reordering)与单元检查调试结果) <BR>2 (输出网格划分调试结果) <BR>H4—1 (输出节点坐标系转换格式调试结果) <BR>2 (输出位移更新调试结果) <BR>H5—1 (输出pre-单元、单元特性(characteristics)以及单元场载荷调试结果)<BR></P>
<P>利用APDL功能按照一定格式写出ansys数据文件的方法 </P>
<P>ANSYS在运行阶段总是处理大量的模型数据、载荷数据以及结果数据等,有时需要将这些数据按照一定</P>
<P>的格式写进指定的数据文件中,这时可以利用*GET和*VGET数据提取的各种命令将数据存入到变量或数</P>
<P>组中,然后利用*CFWRITE或*VWRITE命令写入到指定文件.下面是使用*VWRITE实现该过程的一个实例: <BR>/post1<BR>set,,,,,10.0<BR>*get,ntemp01,node,2,temp ! 时间等于10时的节点2的温度值 <BR>*get,ntemp02,node,9,temp ! 时间等于10时的节点9的温度值<BR>*get,ntemp03,node,7,temp ! 时间等于10时的节点7的温度值 </P>
<P><BR>*vwrite,ntemp01,ntemp02,ntemp03<BR>(T1,''''N2 TEMP='''',F5.1,'''', N9 TEMP='''',F5.1,'''', N7 TEMP='''',F5.1)<BR>/output,nodetemp,dat </P>
<P><BR>其中,命令/output可以用于确定输出方向,即输出到ansys的输出窗口(OUTPUT WINDOW)中,或者指</P>
<P>定的文件中。上面将温度值输出到nodetemp.dat文件中,内容如下: </P>
<P><BR>N2 TEMP= 19.2, N9 TEMP= 19.8, N7 TEMP= 20.8 </P>
<P>这样就可以对输出数据用别的工具进行处理。<BR></P>
<P>在ANSYS如何考虑混凝土 </P>
<P><BR>我最近在用ANSYS模拟一个简单的梁,混凝土用SOLID65单元,钢筋用Link8单元(1),采用以下命令流</P>
<P>定义: <BR>...... <BR>et,1,65,,,,,2,,1 <BR>et,2,link8 <BR>mp,ex,1,2.134e4 <BR>mp,nuxy,1,0.2 <BR>TB,CONC,1 <BR>TBDATA,,0.3,0.5,2.45,24.5 <BR>mp,ex,2,1.914e5 <BR>mp,nuxy,2,0.3 <BR>TB,BISO,2,1,2, <BR>TBTEMP,0 <BR>TBDATA,,662,0,,,, <BR>R,1 <BR>R,2,2580/3 <BR>........ </P>
<P>大致碰到以下几个问题: </P>
<P>(1):混凝土的几个参数,剪切缩减系数不知如何取值,系数对结果有何影响? </P>
<P>(2):混凝土采用以上定义方式是不是就可以了,需不需要定义屈服准则,以及输入 <BR>混凝土的应力应变曲线,如何输入?如以上定义可以,不知道ANSYS是如何定义混凝土的 <BR>特性的,因为我想混凝土种类很多,就用以上几个参数就可以定义吗?我心里没有谱; </P>
<P>(3):采用以上定义,我计算了一根梁,分为考虑混凝土压碎和不考虑混凝土压碎。考虑混凝土压碎</P>
<P>时,得出的极限荷载比实际的要小,但混凝土的压应力不超过抗压强度;不考虑混凝土压碎,得到的极</P>
<P>限荷载较为接近实际值,但混凝土的最大压应力远远大于其抗压强度;并且得不到开裂破碎图。我就不</P>
<P>知道,如何得到极限荷载又可以得到开裂破碎图? </P>
<P>1):分析混凝土结构,选择合理的材料特性是建立模型的关键,所以有必要弄清混凝土的材料特性。</P>
<P>混凝土是脆性材料,并具有不同的拉伸和压缩特性。典型混凝土的抗拉强度只有抗压强度的8%-15%。 <BR>在ANSYS中,对于混凝土单元,材料特性ANSYS要求输入以下数据(为了清楚起见,我将几个系数均译为</P>
<P>了中文):弹性模量 、泊松比 、张开与闭合滑移面的剪切强度缩减系数 与 、抗拉与抗压强度 与 、</P>
<P>极限双轴抗压强度 、周围静水应力状态 、静水应力状态下单轴与双轴压缩的极限抗压强度 与 、断裂</P>
<P>发生时刚度乘子 。其中,1~6是必须输入的,7~11要么不输入,都采用默认值,如果输入其中一个,</P>
<P>其他的都需要输入;另外, 与 在0~1之间取值,具体如何取值,是值得探讨的话题,但有一点是肯定</P>
<P>的,不能将剪切缩减系数,取的太小,否则,就很难不收敛,据我体会,分析一个梁的极限荷载时,剪</P>
<P>切缩减系数的取值影响也不是很大; <BR>2):据我理解,如果定义:TB,concer,mat(mat是需要定义的材料号),则混凝土定义了破坏准则,没</P>
<P>有定义屈服准则,主要是W-W模型。由于混凝土材料的复杂性(太随机了),很难得到一个完全适合混</P>
<P>凝土的屈服的材料模型; <BR>3):如果考虑混凝土的压碎破坏,有限元模型会较早失效,得不到真实极限荷载,建议在研究钢筋混</P>
<P>凝土结构极限荷载时,关闭混凝土压碎能力;材料模型的选取对荷载变形曲线路径影响不大,即模拟曲</P>
<P>线与真实曲线相对应部分吻合较好;不考虑混凝土的压碎破坏,并不意味着不考虑混凝土的抗压能力,</P>
<P>相反,为了得到较准确的极限荷载,采用受压混凝土模型是必需的,也只有采用受压混凝土模型才能得</P>
<P>到整个荷载变形曲线;</P>
<P>如何实现ansys倒退功能undo,并添加toolbar模式 </P>
<P>[分享]如何实现ansys倒退功能undo,并添加toolbar模式<BR>首先用命令/undo,on激活undo命令<BR>然后在MenuCtrls中的Edit Toolbar....中输入:*ABBR, UNDO, undo<BR>即可添加undo命令的快捷方式。然后Save Toolbar.<BR>这对于喜欢gui方式的朋友可能有些用处。</P>
<P>将ANSYS作为子程序调用 </P>
<P><BR>对于优化或参数化设计,可以在VC或FORTRAN中将ANSYS作为子程序调用。具体调用方法如下:<BR>1.在VC中调用ANSYS<BR>::WinExec("d:/ANSYS57/BIN/INTEL/ANSYS57 -b -p ansys_product_feature -i input_file -o </P>
<P>output_file",SW_SHOWNORMAL);</P>
<P>2.在FORTRAN中调用ANSYS<BR>LOGICAL(4) result<BR>RESULT=SYSTEMQQ(''d:\ANSYS57\BIN\INTEL\ANSYS57 -b -p <BR>ansys_product_feature -i input_file -o output_file'')</P>
<P>3.说明<BR>1和2中,input_file为用APDL语言编写的ANSYS输入文件。<BR>ansys_product_feature为你的ANSYS产品特征代码。<BR>需要注意的是,在VC中调用ANSYS时,需要加一条判断语句,以确定ANSYS<BR>已经执行完毕。</P>
<P>在FORTRAN中不需要判断,FORTRAN会等ANSYS执行完毕才继续执行下一条语句。<BR>在VC中,我没有找到与FORTRAN类似的函数,只好加一条循环判断语句。<BR>如果谁能找着这样的函数,请告诉我,谢谢!</P>
<P>判断方法很简单,只需判断错误文件file.err是否可写就可以了。<BR>因为当ANSYS在运行时,file.err是不可写的,只有当它运行完毕,此文件才可写。</P>
<P>数据文件(假设输出的数据文件名为opt.out):<BR>*dim,out1,,2,1<BR>out1(1)=dmax !目标函数<BR>out1(2)=1-eymax !约束条件1<BR>*cfopen,opt,out<BR>*vwrite,out1(1),out1(2)<BR>(2f10.6)<BR>*cfclos<BR>在VC中相应的显示数据文件命令为:<BR>result=system("notepad opt.out");</P>
<P>图形文件(假设ANSYS工作文件名为test,输出jpg图形文件,具体信息请参考命令/show):<BR>/SHOW,JPEG <BR>JPEG,QUAL,75, <BR>JPEG,ORIENT,HORIZ <BR>JPEG,COLOR,2<BR>JPEG,TMOD,1 <BR>/GFILE,600, <BR>!* <BR>plns,uy<BR>/SHOW,TERM <BR>在VC中相应的显示图形文件命令为:<BR>result=system("mspaint test001.jpg");</P>
<P>**************************************************************************************<BR>VC调用ANSYS的示例程序。<BR><A>file://Test.cpp</A><BR>#include "stdio.h"<BR>#include"process.h"<BR>void main()<BR>{<BR>int result;<BR>printf("Solving...");<BR>result=system("d:/ANSYS57/BIN/INTEL/ANSYS57 -b -p ansysul -i test.txt -o test.out");<BR>file://不用::WinExec,就用不着等待语句,可以实现用FORTRAN调用一样的效果。<BR>printf("Solution finished...");<BR>}</P>
<P>怎么还不知道?那个特征表找着没有?ANSYS帮助->ANSYS,INC.Licensing Guide->License files->What </P>
<P>are License files->Product feature Table<BR>以第一行为例:ANSYS/MULTIPHYSICS ane3fl<BR>ANSYS/MULTIPHYSICS是产品特征名称,ane3fl是与其对应的产品特征代码,把这个代码填到下面的语句中</P>
<P>:<BR>result=system("d:/ANSYS57/BIN/INTEL/ANSYS57 -b -p ane3fl -i test.txt -o test.out");<BR>VC中的变量与APDL语言中的变量可以进行数据交换,否则怎么实现参数化或优化设计?<BR>不过不能直接互换.我采用的办法是,在VC中将变量结果写到一个文件中,然后再在ANSYS的APDL语言文件</P>
<P>中读入这个文件的数据,再由ANSYS进行新的计算,计算结束之后,再由后处理处理结果,并将结果数据输</P>
<P>出到一个文件中,然后用VC读入此文件中的数据,进行下一步处理.</P> |
|