第2章 有限元程序设计方法

合集下载

有限元单元法程序设计

有限元单元法程序设计

有限元单元法程序设计是有限元分析(FEA)中的重要环节,它通过将连续的物理问题离散化为大量的、相互之间仅按特定方式相互联系的有限个单元的组合,从而进行求解。

以下是一个简单的有限元单元法程序设计的例子:
1.定义节点和单元:首先,我们需要定义模型的节点(nodes)和单元(elements)。

节点是空间中的点,而单元是由节点连接而成的物理实体。

2.建立网格:然后,我们需要根据模型的形状和大小,建立起一个合适的网格。

这个网格应该能够捕捉到模型的主要特征,并且足够细以捕捉到细节。

3.定义材料属性:接下来,我们需要为每个单元定义材料属性,比如弹性模量、泊松比、密度等。

4.施加载荷和约束:然后,我们需要根据问题的要求,对模型施加载荷和约束。

例如,我们可能需要施加压力、重力等载荷,以及位移、转动等约束。

5.进行有限元分析:最后,我们使用有限元方法进行求解。

这包括计算每个节点的位移和应力,以及根据这些结果进行后处理,比如生成报告、生成可视化图像等。

以上就是一个简单的有限元单元法程序设计的过程。

在实际应用
中,还需要考虑很多其他的因素,比如模型的复杂性、计算资源的限制等。

因此,编写一个有效的有限元程序需要深入理解有限元方法、计算机科学和工程知识。

有限元方法编程范文

有限元方法编程范文

有限元方法编程范文有限元方法(Finite Element Method,简称FEM)是一种数值分析方法,用于求解连续介质的强度、振动、流体、热传导等问题。

它是一种将物理问题转化为代数方程组的方法,通过将解域(问题的空间范围)离散化为许多小单元,再对这些小单元进行处理,最终得到整个解域的近似解。

1.离散化:首先将解域进行离散化,将其分割为许多小单元,称为有限元单元。

这些单元可以是一维线段、二维三角形或四边形、三维四面体等形状。

通过适当的划分精度和方法,确定离散化的步长,使得在每个单元上的近似解足够接近精确解。

2.定义变量:根据问题的性质和假设,定义相应的物理量和变量。

例如,对于强度分析问题,可以定义位移、应力、应变等变量。

将这些变量表示为一个向量,并对其进行数值处理。

3.得到局部方程:根据物理方程和边界条件,利用数学方法得到每个单元上的局部方程。

这些局部方程可以表示为刚度矩阵和载荷向量的形式。

刚度矩阵描述了每个单元上的物理性质和相互作用关系。

4.组装全局方程:将所有单元上的局部方程组装成全局方程。

这需要将单元之间的连续性纳入考虑,以确保解域的连续性。

这样可以得到一个大规模的代数方程组,以求解未知变量。

5.施加边界条件:根据问题的边界条件,将其施加到全局方程中。

常见的边界条件有位移边界条件、力边界条件和自然边界条件等。

6.求解代数方程组:使用适当的数值求解方法,例如高斯消元法、迭代法或者直接法,对代数方程组进行求解。

由于求解的规模很大,可能需要采用优化算法和并行计算技术来提高效率。

7.后处理结果:将求解得到的数值结果转化为工程可分析的形式,例如绘制等值线、曲线或进行一些定量的计算。

这些结果可以用来评估结构的强度、振动特性等。

有限元方法的编程实现可以使用不同的编程语言和软件工具。

常用的编程语言包括C、C++、Fortran和Python等。

一些流行的软件包,如ANSYS和ABAQUS,提供了用户友好的界面和功能强大的求解器,可以方便地进行有限元分析。

有限元程序设计

有限元程序设计

4) 用DATA语句给FI和FO赋初值: “
.DAT”、 “
.OUT”
5) 输入NAMINP的前四个字符作为输入输出文件名
COMMON /PSIZE/MAXM,MAXA CHARACTER*8 FI, FO CHARACTER NAMINP(8), NAMOUT(8), HEAD*50
COMMON/HEAD/HEAD1
1. Fortran语言的基本格式
2. 变量
3. 基本语句 4. 子例子程序 5. 函数子程序 6. 其它功能、模块
第二章 FEP2 程序的总体设计与输入 数据

• • • •
FEP2 的设计任务
FEP2 的结构设计 FEP2 的主程序 FEP2 的主控程序 FEP2 的数据输入格式与程序实现
— PFORM (6) 计算结构反力
§2-3 FEP2 的主程序
一、文件名
FEP2 的文件名可由用户自由定义(限制为4个字 符),通过人机交互方式确定。设计中引入以下技巧: 1) 规定输入文件名FI与输出文件名FO为8个字符 2) 规定两个字符数组NAMINP(8), NAMOUT(8) 3) 用IQUIVALENCE语句使FI与NAMINP、 FO与 NAMOUT 等价
§2-1 FEP2 的设计任务
1. FEP2的简要题目说明 FEP2是一个具有通用性的教学程序,可用于计算 一般的线性静力学问题。已设计了平面梁单元与平面39节点元两种单元,但留下接口。 2. 支持软件与硬件 FORTRAN77以上编译器、各种微机
3. FEP2的功能
3. FEP2的功能 1)输入文件名由用户自由定义,但限制为4个字符,输 入文件扩展名为“DAT”,输出文件扩展名为“OUT”。 2)节点坐标、单元信息等具有线性自动生成功能。 3)可以处理多种工况、多种类型单元组合结构问题。

c++面向对象的有限元程序设计

c++面向对象的有限元程序设计

《C++面向对象的有限元程序设计》一、引言在计算机科学和工程中,有限元方法是一种数值分析技术,广泛应用于工程设计和科学研究领域。

C++作为一种流行的编程语言,在有限元程序设计中也扮演了重要角色。

本文将从深度和广度两个方面对C++面向对象的有限元程序设计进行全面评估,并撰写一篇有价值的文章,以帮助读者更全面、深刻地理解这一主题。

二、C++面向对象的有限元程序设计的基本概念1. 有限元方法的基本原理有限元方法是一种数值计算方法,用于求解偏微分方程和积分方程。

通过将求解区域分割为有限个单元,建立单元之间的联系,将连续的问题转化为离散的代数问题,从而得到数值解。

在有限元程序设计中,需要考虑如何有效地表示和处理单元、节点、边界条件等信息。

2. 面向对象的程序设计思想面向对象的程序设计思想强调将现实世界中的问题抽象成对象,通过封装、继承和多态等机制构建模块化、可复用的代码结构。

在C++中,类和对象是面向对象程序设计的核心概念,有限元程序设计可以通过抽象出单元、节点、网格等对象来实现。

三、深入探讨C++面向对象的有限元程序设计1. C++语言特性在有限元程序设计中的应用在C++语言中,有丰富的特性可以用于实现面向对象的有限元程序设计。

类的封装可以用于表示单元和节点对象的属性和行为,继承可以用于构建具体单元类型的层次结构,多态可以实现对不同单元类型的统一处理。

2. 优化设计思路下的C++面向对象有限元程序设计针对大规模的有限元计算,优化的设计思路是必不可少的。

C++中提供了丰富的性能优化手段,如模板元编程、内联函数、移动语义等,可以在面向对象的有限元程序设计中发挥重要作用。

四、总结和回顾在本文中,我们对C++面向对象的有限元程序设计进行了全面评估,并撰写了一篇有价值的文章。

通过深入探讨原理、语言特性和优化设计思路,帮助读者更全面地理解了这一主题。

从我的个人观点看,C++面向对象的有限元程序设计是一个值得深入研究的领域,它不仅涉及到程序设计技术,还涉及到数值计算和工程应用等多个领域的知识。

有限元单元法程序设计

有限元单元法程序设计

有限元单元法程序设计有限元单元法是一种用于工程结构分析和设计的计算方法,它将大型结构分解为许多小的离散单元,通过分析单元之间的相互作用来预测结构的力学行为。

有限元单元法程序设计是指针对特定工程问题,编写计算机程序来实现有限元分析的过程。

下面将介绍有限元单元法程序设计的基本流程和关键要点。

一、问题建模和网格划分有限元单元法程序设计的第一步是对工程结构进行合理的建模和网格划分。

建模的目的是将实际结构抽象为适用于有限元分析的数学模型,包括定义结构的几何特征、材料属性、边界条件等。

网格划分是将结构分解为许多小的单元,每个单元具有一定的形状和尺寸,以便于数值计算。

常用的单元形状包括三角形、四边形、四面体、六面体等,根据结构的特点选择合适的单元形状和尺寸。

二、单元刚度矩阵和载荷矩阵的求解在有限元单元法程序设计中,需要编写算法来求解每个单元的刚度矩阵和载荷矩阵。

单元刚度矩阵描述了单元内部的力学性能,包括刚度、弹性模量、泊松比等,它们通常通过数学公式或有限元理论推导得到。

载荷矩阵描述了单元受到的外部荷载,可以是均匀分布载荷、集中载荷或者边界条件引起的约束力。

通过合适的数值积分方法,可以计算得到每个单元的刚度矩阵和载荷矩阵。

三、组装全局刚度矩阵和载荷向量在有限元单元法程序设计中,需要将所有单元的刚度矩阵和载荷向量组装成整个结构的全局刚度矩阵和载荷向量。

这涉及到单元之间的连接关系以及边界条件的处理。

采用适当的组装算法,可以将各个单元的刚度矩阵和载荷向量叠加在一起,形成整个结构的刚度矩阵和载荷向量。

四、求解位移和应力有限元单元法程序设计的最后一步是求解结构的位移和应力。

通过斯蒂芬-泰勒算法或者其他迭代算法,可以得到整个结构的位移分布,然后根据位移场计算各个点的应变和应力。

这一过程涉及到对整个结构刚度矩阵的求解和对位移的后处理。

有限元单元法程序设计是一个复杂而又精密的工作,需要深入理解有限元原理、结构力学知识和数学方法。

有限元分析程序设计

有限元分析程序设计

结构有限元分析程序设计绪论§0.1 开设“有限元程序设计”课程的意义和目的§0.2 课程特点§0.3 课程安排§0.4 课程要求§0.5 基本方法复习$0.1 意义和目的1.有限元数值分析技术本身要求工程设计研究人员掌握1). 有限元数值分析技术的完善标志着现代计算力学的真正成熟和实用化,已在各种力学中得到了广泛的应用。

比如:,已杨为工程结构分析中最得以收敛的技术手段,现代功用大致有:a). 现代结构论证。

对结构设计从内力,位移等方面进行优劣评定,从而进行结构优化设计。

b)可取代部份实验,局部实验+有限元分析,是现代工程设计研究方法的一大特点。

c)结构的各种功能分析(疲劳断裂,可靠性分析等)都以有限元分析工具作为核心的计算工具。

2). 有限元数值分析本身包括着理论+技术实现(本身功用所绝定的)有限元数值分析本身包括着泛函理论+分片插值函数+程序设计2. 有限元分析的技术实现(近十佘年的事)更依赖于计算机程序设计有限元分析的技术取得的巨大的成就,从某种意义上说,得益于计算机硬件技术的发展和程序设计技术的发展,这两者的依赖性在当代表现得更加突出。

(如可视化技术)3.从学习的角度,不仅要学习理论,而且要从程序设计设计角度对这些理论的技术实现有一个深入的了解,应当致力于掌握这些技术实现能力,从而开发它,发展它。

(理论本身还有待于进一步完美相应的程序设计必须去开发)4.程序设计不仅是实现有限元数值分析的工具和桥梁,而且在以下诸方面也有意义:1). 精通基本概念,深化理论认识;2). 锻炼实际工程分析,实际动手的能力;3). 获得以后工作中必备的工具。

(作业+老师给元素库)目的:通过讲述有限元程序设计的技术与技巧,便能达到自编自读的能力。

§0.2 课程特点总描述:理论+算法+数据结构(程序设计的意义)理论:有限元算法,构造,步骤,解的等外性,收敛性,稳定性,误差分析算法;指求解过程的技术方法,含两方面的含义;a. 有限元数值分析算法,b, 与数据结构有关的算法(总刚稀疏存贮,提取,节点优化编号等)数据结构:指各向量矩阵存贮管理与实现,辅助管理结构(指针,数据记录等)具体特点:理论性强:能量泛函理论+有限元构造算法+数据结构构造算法内容繁杂:理论方法+技术方法+技术技巧技巧性强:排序,管理结构(指针生成,整型运算等)§0.3 课程安排①. 单元刚度矩阵及元素设计(单元刚阵算法,杆梁平面分析,板弯非协调元等)②. 总刚的形式及程序设计(单刚提前准备,技术复杂)③. l边界条件及程序设计(等效荷载计算,位移边界条件置入,多工况的对称性)④. 总刚线性方程组求解(LDL T分解,分块算法,子结构算法,波前法)⑤.单元应力计算+应力处理与改善。

有限元方法编程

有限元方法编程

有限元方法编程【实用版1篇】目录(篇1)1.有限元方法概述2.有限元方法的编程步骤3.有限元方法的应用实例4.总结正文(篇1)一、有限元方法概述有限元方法是一种数值分析方法,广泛应用于固体力学、流体力学、热传导等领域。

它的基本思想是将待求解的连续体划分为有限个小的、简单的子区域,即单元,然后用有限个简单的方程组来代替原来的连续方程,通过求解这些方程组得到近似解。

这种方法既能降低问题的复杂度,又能保证解的精度,因此在工程界有着广泛的应用。

二、有限元方法的编程步骤1.几何建模:根据实际问题,创建待求解的几何模型。

这通常包括划分单元、计算节点坐标等步骤。

2.选择单元类型:根据问题类型和求解需求,选择合适的单元类型,如有限元、无限元、矩形单元、六面体单元等。

3.编写有限元方程:根据单元类型和几何模型,编写有限元方程。

这包括计算单元的刚度矩阵、质量矩阵、载荷矩阵等。

4.组装总方程:将所有单元的有限元方程组装成总方程,通常是一个大型的线性或非线性方程组。

5.求解方程组:使用数值方法(如有限元法、直接解法、迭代法等)求解总方程组,得到近似解。

6.后处理:对求解结果进行分析和处理,如计算应力、应变、位移等。

三、有限元方法的应用实例以一个简单的二维拉伸问题为例,假设有一个长方形板,在左右两端施加均匀拉力,求解板上各个点的应力和应变。

1.几何建模:将长方形板划分为矩形单元,计算节点坐标。

2.选择单元类型:此处采用矩形单元。

3.编写有限元方程:计算单元的刚度矩阵、质量矩阵、载荷矩阵,组装总方程。

4.求解方程组:使用有限元法求解总方程组,得到应力和应变。

5.后处理:分析应力和应变分布,验证解的正确性。

四、总结有限元方法作为一种数值分析方法,通过将连续体划分为有限个小的、简单的子区域,然后用有限个方程组来代替原来的连续方程,降低了问题的复杂度,同时保证了解的精度。

在实际应用中,有限元方法需要经历几何建模、单元选择、编写有限元方程、组装总方程、求解方程组和后处理等步骤。

有限元程序设计课程设计

有限元程序设计课程设计

有限元程序设计课程设计一、课程目标知识目标:1. 掌握有限元分析的基本原理,理解有限元方法在工程问题中的应用。

2. 学会使用至少一种有限元分析软件,并能正确进行前处理、计算及后处理操作。

3. 掌握编写有限元程序的基本步骤,理解数据结构、算法在有限元程序设计中的作用。

技能目标:1. 能够运用所学知识解决简单的工程问题,通过有限元方法进行力学分析。

2. 具备独立操作有限元软件的能力,完成模型建立、计算及结果分析的完整流程。

3. 能够根据实际问题需求,编写简单的有限元程序,提高编程实践能力。

情感态度价值观目标:1. 培养学生对工程问题的探究精神,激发学生主动学习的兴趣。

2. 增强学生的团队合作意识,培养沟通协调能力,提高解决实际问题的能力。

3. 使学生认识到有限元技术在工程领域的重要价值,树立正确的科技观。

课程性质:本课程为专业选修课,旨在让学生掌握有限元程序设计的基本方法,提高解决工程问题的能力。

学生特点:学生具备一定的编程基础,对有限元分析有初步了解,但实践能力较弱。

教学要求:注重理论与实践相结合,强调学生动手实践,培养解决实际问题的能力。

通过本课程的学习,使学生能够将所学知识应用于工程实践,提高综合素养。

二、教学内容1. 有限元分析基本原理:包括有限元离散化方法、变分原理、刚度矩阵和质量矩阵的构建等。

教材章节:第一章 有限元分析概述,第二章 有限元离散化方法。

2. 有限元软件操作:介绍主流有限元软件的功能、操作流程,以ANSYS为例进行实践教学。

教材章节:第三章 有限元软件及其应用。

3. 有限元程序设计:讲解有限元程序设计的基本步骤、数据结构、算法实现等。

教材章节:第四章 有限元程序设计基础,第五章 数据结构及算法。

4. 实践案例:选取具有代表性的工程问题,指导学生运用有限元软件和编程技能解决问题。

教材章节:第六章 实践案例。

5. 课程项目:分组进行项目实践,要求学生完成项目报告和成果展示。

教材章节:第七章 课程项目与实践。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

0 0 0 K 45 K 55
0 0 K 36 K 46 K 56 K 66
0 0 0 0 0 K 67 K 77
0 0 0 0 K 58 0 K 78 K88
A(1) A
A( 3) A( 2)
A(5) A(4)
0 0 0 0 0 0 0 0 0 0 0 0 0 0 K 0 0
j列
顶线下 Kmj,j
(2-2)
第 j列
Ki,j
第i 行
Kj,j 图5-12
1)列的列高之和加1,即
MAXA(j) = h1 +…+ hj-2 - hj-1 + 1
=(h1 +…+ hj-2 + 1)+ hj-1 = MAXA(j - 1)+ hj-1
因为永远有
MAXA(1)= 1, MAXA(2)= 2
故计算主元地址的公式可写为
MAXA(j+1)= MAXA(j)+ hj 式中, j = 2,3,…,N; (2-1)
平均法整理单元应力
两单元平均法:把两个相邻单元中的常应力加 以平均,用来表示公共边界中点处的应力。 绕结点平均法:把环绕某一结点的各单元常应 力加以平均,用以表示该结点的应力。在内结 点效果较好,而在边界结点可能很差,一般改 为应由内结点的应力外推计算出来。 (2)网格的细分 通过网格的细分,使每个单元的面积缩小,那 么尽管每个单元是应变、常应力单元,仍可较 好地反映结构中的应力变化,使得到的解答收 敛于问题的精确解。
2
x
○ ○
1 2 3 4
连接数组: 1号单元: LM=[0, 0, 1, 0, 0, 2] 2号单元: LM=[0, 0, 2, 3, 4, 5] 3号单元: LM=[3, 4, 5, 6, 7, 8] 4单元: LM=[0, 0, 1, 6, 7, 8]
0 0 3 6 ID 0 0 4 7 1 2 5 8
剪应力 xy计算结果 ( MPa)
考察点y(m) 有限元结果 弹性力学结果 误差 -1.25 -0.75 -0.25 0.25 16.2 31.2 37.2 33.7 10.9 26.7 34.6 34.6 5.3 4.5 2.6 -0.9 0.75 20.7 26.7 -6.0 1.25 3.6 10.9 -7.3
10
k12 k 22 k 32
k13 u1 1 k11 1010 k 23 u 2 F2 u k 33 F 3 3
10
k11 10 u1 k12 u2 k13u3 1 k11 10
A(9) A(8) A(7) A(6)
A(11) A(10)
A(15) A(14) A(13) A(12)
A(17) A(16)
A( 21) A( 20) A(19) A(18)
MAXA 1 2 4 6 10 12 16
18 22
变带宽存贮:按列存贮方式。从左到右,逐列存 放;对每一列,先存主对角线元素,然后由下而上顺 序存放,直到顶线下第一个元素为止。为避免混淆, 我们把存贮[K]的一维数组称为[A]。 实现变带宽存贮的关键问题是:总刚中元素 Kij在 一维数组 A中的地址是什么?为此,需要知道主元Kii 在A中的位置和相应列高hi。 主元位置:采用一个一维数组 MAXA 存主元在 A中 位置。 MAXA =[1,2,4,6,10,12,16,18,22]。 列高hj:第j行的左带宽。
从第j列的主对角线元素起到该列上方第一个非零 元素为止,所含元素的个数称为第j列的列高,记为hj ; 如果把第j列上方第1个非零元素的行号记为mj,则第j 列的列高为 hj = j - mj + 1 其实,hj就是第j行的左带宽,因而必有 UBW= max(hj)
j=1,2, …,N
利用节点位移信息数组 ID (去约束后节点位移自 由度编码),可容易地确定刚度矩阵 [K] 任何一列的 列高。
第2章 有限元程序设计方法
2.1 程序基本框图
开始
1、输入基本数据(结构描述): 输入基本数据 (1)控制数据:如结点总数、单 计算单元刚度矩阵 元总数、约束条件总数等; (2)结点数据:如结点编号、结 形成总体刚度矩阵 点坐标、约束条件等; 形成结点荷载向量 (3)单元数据:如单元编号、单 元结点序号、单元的材料特性、 引入约束条件 几何特性等; 求解方程组,输出结点位移 (4)载荷数据:包括集中载荷、 分布载荷等。 计算单元应力,输出结果
y为挤压应力,属次要应 力。材料力学不考虑 , FEM与弹性力学误差较大。
2.2 提高计算精度的方法
(1) 计算结果的整理 计算结果包括位移和应力两个方面。在位移方 面,一般无须进行整理工作。应力结果则需要 整理。通常认为计算出的应力是三角形单元形 心处的应力。而相邻单元之间的应力存在突变, 甚至正、负符号都不相同。为了由计算结果推 算出结构内某一点的接接实际的应力,必须通 过某种平均计算。通常可采用两单元平均法或 绕结点平均法。
对 称
0 0 0 0 K 58 0 K 78 K88
顶线以上零元素无须存贮,仅顶线以下元素。
一维数组[A]存贮刚度矩阵[K]
K11 K
K12 K 22
0 K 23 K 33
K14 0 K 34 K 44
技巧要求较高,程序较长。
方阵形式的刚度矩阵[K]
UBW=4
顶线
K11 K
K12 K 22
0 K 23 K 33
K14 0 K 34 K 44
0 0 0 K 45 K 55
0 0 K 36 K 46 K 56 K 66
0 0 0 0 0 K 67 K 77
引入约束条件 求解方程组,输出结点位移 计算单元应力,输出结果 结束
[K]的存储;约束引入;求解
总刚存贮
全矩阵存贮法:不利于节省计算机的存贮空间, 很少采用。K[i,j] 对称三角存贮法:存贮上三角或下三角元素。 半带宽存贮法 :存贮上三角形(或下三角形) 半带宽以内的元素 。 一维压缩存贮法 :半带宽存贮中仍包含了许多 零元素。存贮每一行的第一个非零元素到主对 角线元素。
例:求图示框架结构h7=?。 利用ID数组得各单元的连接数组LM(假定小号为i) (1)ID数组
1 节点号:
2
3
4
Y
1 1 0 0 1 1 0 0 0 0 0 0
按列,遇1变0,遇0加1。
7
6
8
4
③ 3
4
④ 1 1

5 3

① 2
○ ○ ○
0 0 3 6 ID 0 0 4 7 1 2 5 8
Y
7
6
8 4 ③
4
3

5 3

1 1
○ ○ ○

2
○ ○ ○
2
a) 如果
ID(i, j ) = 0 则表明j号节点第i个自由度受有约束。 b) 如果
0 0 3 6 ID 0 0 4 7 1 2 5 8
ID( i, j ) ≠ 0 则j号节点第i个自由度不受约束。并且, j号节点第i 个位移分量在非约束节点位移列向量 f中的序号 就是: ID( i, j )
hj——刚度矩阵[K]第j列的列高。
一维数组A的总长度(S) ,即刚度矩阵K按变带宽存贮 的总存贮量 S = MAXA(N+1)- MAXA(1)
Ki,j在一维数组[A]中的地址 记Ki,j在一维数组A中的地址为AIJ。则由下图可知, A I J = MAXA[ J ] + J – I 其中,I = mj,mj+1,…,J。
UBW (d 1) ndf , ndf为一个结点的自由度数
结点编号:欲使最大半带宽UBW最小,必须注 意结点编号方法,使直接联系的相邻节点的最大点 号差最小。
例:计算下图半带宽。
结点数N=91,总刚[K]中的元素总数为: 82(91×2)×(91 ×2 )=33124 最大半带宽UBW=(7+1) ×2=16,半带宽存储矩阵元素总数为 182 ×16=2912,约方阵元素的8.8%。
u1 1
5、线性方程组求解
求解方法常用:GAUSS消元法,QR分解法等。
其程序在一些专著中列出(例如见:徐士良编。
FORTRAN常用算法程序集。清华大学出版社,
1992)。在此不作详细介绍,其方法参阅[数值分
析]有关书籍。
6、单元应力
节点位移求单元应力。首先整体节点位移变换成单元 节点位移,然后再用物理方程求单元应力。
(1)半带宽存贮法
行号
UBW
行号
UBW
1 → 0 0 0 0 0 0 IR → 0 0 N→
列号 1
JC
1 → IR → N→ 1
(2) 变带宽存贮(一维压缩存贮)
等带宽存贮虽然已经节省了不少内存,但认真 研究半带宽内的元素,还有相当数量的零元素。在 平衡方程求解过程中,有些零元素只增加运算工作 量而对计算结果不产生影响。如果这些零元素不存、 不算,更能节省内存和运算时间,采用变带宽存贮 可以实现(也称一维数组存贮) 。变带宽存贮编程
{ } [S ]{ }
例1:对角受压的正方形薄板,载 荷沿厚度均匀分布,为2N/m。由 于对称性,取1/4部分作为计算对
相关文档
最新文档