本文介绍了Ansys APDL语言方式的非线性方程求解相关内容。
在学习编写ABAQUS的UMAT子程序时,在受拉部分考虑了混凝土损伤的影响,需要确定屈服应力和屈服应变。这个方程简化后属于非线性方程,格式如:A*(x-1)^1.7+x-B=0
为了验算方程求解的正确性,使用APDL来求这个方程的解。假定A=B=2,分别给定X初始,并给出迭代次数;
x初始值为2时,迭代5次;初始值为1,迭代6次;初始值为1000,迭代13次;
结果均无限逼近1.461942.
下面给出APDL的命令,有兴趣的朋友也可以试一下。(注意X的初始不要取负值,这是方程成立的前提)
A=2
B=2
x0=1
*cfopen,aaaaa,txt
*do,i,1,1000
xn=x0-(A*(x0-1)**1.7+x0-B)/(1.7*A*(x0-1)**0.7+1)
i=i+1
*if,abs((xn-x0)/x0),gt,1.0e-6,then
x0=xn
*else
*vwrite(*,*) xn,i
(G15.5,I3)
*cfclose
*exit
*endif
*enddo
简单求解非线性,APDL确实好用,比excel更具公式化,便于检查;相对一般的编程软件,又方便,不易出错。
1.与求解一相比,直接使用条件循环,*dowhile实现。
2.该命令流的使用:通过界面/input输入。
ft=1.43
E0=3e4
E1=ft/(ft**0.54*65e-6)
At=0.312*ft**2
A=E0/E1-1
B=A+1
x0=1.0
D=x0
c=1
i=0
*cfopen,aaaaa,txt
*dowhile,c
TERM1=1/(At*(x0-1)**1.7+x0)
TERM2=1.7*At*(x0-1)**0.7+1
TERM3=x0*B-A*x0*TERM1-D
TERM4=B-A*(TERM1-x0*TERM1**2*TERM2)
x=x0-TERM3/TERM4
*vwrite,x,x,i
(2(F15.5,","),F15.0)
*if,abs(x-x0)/x0,lt,1e-6,then
c=0
*else
c=1
*endif
x0=x
i=i+1
*enddo
*cfclose
相关文章
- 2021-09-08EXCEL在工作中的应用 制表、数据处理及宏应用PDF下载
- 2021-08-11中文版3ds Max 2010+VRay从入门到精通 点智文化PDF下
- 2021-08-11中文版3ds Max 2010完全学习手册 段海朋等PDF下载
- 2021-08-11中文版3ds Max 2012完全自学教程 瞿颖健PDF下载
- 2021-07-13AutoCAD 3dsMax工程制图、室内外表现及建筑动画完全教
- 2021-07-11超级提速:3ds Max/VRay小空间效果图专业表现技法 纪元创
- 2021-06-22AutoCAD+3ds Max+Photoshop建筑设计从新手到高手PDF下
- 2021-06-22AutoCAD+3ds Max+Photoshop中文版建筑设计从入门到精
- 2021-06-22AutoCAD+3ds Max+VRay+Photoshop室内外效果图设计手册
- 2021-03-07AutoCAD 2014、3dsMax2014与PhotoshopCS6室内设计实例