我见过用Fortran 的, c++的,C#的,Java的,一句话,基本上任何一种高级语言都可以写有限元代码。
Fortran是科学计算比较早期的语言,运行效率较高。很多商业软件核心是用它写的。
不是的 应该是你的单元化分过多 造成的奇异性,使得矩阵的条件数增大引起的误差。举个简单的例子,如果使用梁单元模拟的时候,你将单元划分过多,那么每一个梁单元的截面尺寸,远大于长度尺寸,那么有来的位移型函数 关系就不成立了。相当于,一些原来的假定,在你划分的单元下不在成立了nn是有限元网格的节点个数,ne为有限元网格的单元个数,(xj(i),yj(i),i=1,nn)表示每个节点的x,y坐标;((node(i,j),j=1,4),i=1,ne)表示每个单元由哪四个节点组成,由此看来对求解域的离散应该采用的是4节点四边形线性单元。根据这个情况,假设你的求解域为矩形区域,你将它离散为4个单元,每个单元有4个节点组成,共有9个节点,
输入文件内容(两虚线间的内容)应该这样写:
——————————————————————
9,4
1,x坐标值,y坐标值
2,x坐标值,y坐标值
。。。
。。。
9,x坐标值,y坐标值
1,1,4,5,2(即1号单元由1,4,5,2这4个节点组成)
2,2,5,6,3
3,4,7,8,5
4,5,8,9,6
——————————————————
当然,我只是简单举例说明,具体多少个单元和节点要看你对求解区域怎么进行有限元网格划分而定,但是格式可以按照上面写
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)