当前位置:文档之家› 提取刚度矩阵

提取刚度矩阵

提取刚度矩阵
提取刚度矩阵

============为什么折腾这个文档========

我有一个计算线性动力学方程组的瞬态、谐响应和静力学的python程序,现希望开发一个将ANSYS组集好的总体矩阵导入该PYTHON程序中的接口。

该问题可分解为:

[STEP1] [ANSYS]->[包含矩阵信息的文件]

[STEP2] [包含矩阵信息的文件]->[python通用数据对象]

[STEP3] [python通用数据对象]->[程序特定数据对象]->[进行计算]

因此检索了一些帖子,基本上完成了这项工作,本文是对[STEP1]和[STEP2]的整理,并且利用[STEP3]对结果进行了验证

============主要内容==================

1,了解从ANSYS中提取总体矩阵和载荷向量的方法;

2,了解提取出来的矩阵是怎样表示的;

3,说明在Python中,如何读取这样的矩阵;

4,构造一个简单的算例,说明整个【建模】-【提取】-【读取】过程及其正确性;

=========站内检索综述====================

检索词:提取矩阵

得到21个结果,代表性的帖子有下面这9个:

编号[1]

标题:ansys中怎样提取质量,刚度,阻尼矩阵?

地址:https://www.doczj.com/doc/1b9912903.html,/forum-vi ... fromuid-159019.html 要点:pengweicai给出了一段网上最常见的提取代码,该程序以fortran 写成,可以利用.full文件以及一些列约定将ANSYS中的总体矩阵读入FORTRAN中。

编号[2]

标题:如何得知HBMAT命令提取的质量、刚度矩阵对应的自由度?

地址:https://www.doczj.com/doc/1b9912903.html,/forum-vi ... fromuid-159019.html 要点:提出了使用HBMAT命令提取稀疏矩阵时常见的问题:我们如何知道提取出来的信息是怎么储存的呢?

编号[3]

标题:[分享]ANSYS中整体、单元刚度和质量矩阵的提取

地址:https://www.doczj.com/doc/1b9912903.html,/forum-vi ... fromuid-159019.html 要点:在该帖子的7楼,其实已经给出了帖子[2]中问题的解答,即HBMAT 中提取出来的矩阵是Harwell-Boeing格式的,并且给出了该格式的细节,可惜是英文的,没引起多少关注。

编号[4]

标题:帮我看看提取的刚度与质量矩阵

地址:https://www.doczj.com/doc/1b9912903.html,/forum-vi ... fromuid-159019.html 要点:这个帖子所示的矩阵并非是使用HBMAT命令提出出来的,而应该是SELIST命令列举出来的未压缩的矩阵,后续楼层的回帖给了大家一个提示,即有可能提取出来的矩阵是引入了边界条件的(即删除了被约束的行和列的)。

编号[5] 标题:提取刚度矩阵的问题

地址:https://www.doczj.com/doc/1b9912903.html,/forum-vi ... fromuid-159019.html 要点:本帖作者的工作是基于单元刚度矩阵的,因此ANSYS中提取的单元刚度矩阵是否处于总体坐标系就成为问题。该问题并非本文内容,但仍值得关注。

编号[6]

标题:提取刚度矩阵丢失节点的问题

地址:https://www.doczj.com/doc/1b9912903.html,/forum-vi ... fromuid-159019.html 要点:帖子[5]作者的又一帖,在这里帖子[5]的问题得到了欧阳中华老师的回答。

编号[7]

标题:提取刚度矩阵的ANSYS操作过程

地址:https://www.doczj.com/doc/1b9912903.html,/forum-vi ... fromuid-159019.html 要点:实际上这就是使用HBMAT从ANSYS中提取总体矩阵的全过程!只是还有一些细节待确定。

编号[8]

标题:提取整体刚度矩阵、质量矩阵及阻尼矩阵的简单方法

地址:https://www.doczj.com/doc/1b9912903.html,/forum-vi ... fromuid-159019.html 要点:给出了利用“不减缩的”子结构方法来得到总体矩阵的方法(这也是网络上常见的代码之一)

编号[9]

标题:质量矩阵、刚度矩阵如何提取?

地址:https://www.doczj.com/doc/1b9912903.html,/forum-vi ... fromuid-159019.html 要点:16443在5楼的回帖中给出了提取刚度矩阵的三种方法

=======站外检索略述========================

百度检索:提取矩阵

比较好的帖子有:

编号[10]

来源:百度文库

标题:怎样从ansys中提取单元刚度矩阵与质量矩阵

地址:https://www.doczj.com/doc/1b9912903.html,/view/3cf5e567f5335a8102d220d9.html 要点:这应该就是16443在帖子[9]中回复的内容了,全面的总结了在帖子[3,4,5,9]中涉及的问题。

编号[11]

来源:中华钢结构标题:ansys刚度矩阵Harwell-Boeing格式的具体含义讨论

地址:https://www.doczj.com/doc/1b9912903.html,/forum/viewthread.php?tid=184007

要点:如题,后续楼层给出了一些将矩阵读入ANSYS的APDL(好不容易读出来,又读进去干嘛呢……)

编号[12]

来源:simwe

标题:关于ANSYS(质量、刚度、阻尼)矩阵Harwell-boeing格式数据的说明

地址:https://www.doczj.com/doc/1b9912903.html,/archiver/tid-924778.html

要点:比[11]更透彻的HB格式说明!

=============================================================

=======1.从ANSYS中提取总体矩阵的方法================================= =============================================================

1,用/DEBUG命令

2,子结构法

3,HBMAT

详见帖子[10]

PS.个人感觉HBMAT方法最靠谱,一是它的格式(Harwell-boeing)在很多场合都是通用的,二是BHMAT命令是文档化的、功能就是用来提取总体刚度矩阵的命令。因此,相比于子结构法的剑走偏锋,/DEBUG命令的繁复,HBMAT命令方法更“标准”一些,因此在后文只关注此方法。

=======2.BH格式的矩阵是如何表示的===================================

HBMAT命令并不是很复杂的命令,稍复杂的地方是采用该命令提取出来的矩阵是经过压缩的,称为Harwell-boeing格式,也叫Compressed Sparse Column格式。

其具体压缩和还原方式见帖子[3](English)或[11][12](中文)

=======3.如何在Python中读入BH格式的矩阵===============================上文说过,Harwell-boeing格式,也叫Compressed Sparse Column格式,而Python.scipy中就有这样的稀疏矩阵:

1.class scipy.sparse.csc_matrix(arg1, shape=None, dtype=None, copy=False, dims=None, nzmax=None)

可以通过HB文件中直接读取的行标指针,行标和数据创建,例如:

1.>>> indptr = array([0,2,3,6])

2.>>> indices = array([0,2,2,0,1,2])

3.>>> data = array([1,2,3,4,5,6])

4.>>> csc_matrix( (data,indices,indptr), shape=(3,3) ).todense()

5.matrix([[1, 0, 4],

6. [0, 0, 5],

7. [2, 3, 6]])

对应的HB文件应为(*号部分表示并非本例关注的数据):

1.Rainyboy Testing Matrix in BH format

2. *** 4 6 6 0

3.RRA ** ** ** 0

4.(I14) (I14) (d2

5.15) (d25.15)

5.0

6. 2

7. 3

8. 6

9.0

10.2

11.2

12.0

13.1

14.2

15.1

16.2

17.3

18.4

19.5

20.6

由文件头可知,indptr的长度为4,因此0,2,3,6就是indotr的内容

indices的长度为6,因此后续的0,2,2,0,1,2就是indices的内容

data的长度为6,因此后续的1,2,3,4,5,6就是data的内容

=======4.一个【建模】-【提取】-【读取】-【计算】的例子===============

【建模APDL】

1.FINISH

2./CLEAR

3./TITLE,CASE STUDY _BEAM _BEAM3 BY RAINYBOY

4./PREP7

5./ESHAPE,1 !显示壳单元厚度

6.!**********************

7.!几何参数表

8.!**********************

9.*SET,L_HORI,0.1 !横梁的长度

10.*SET,TA,0.005 !正方形截面的边长

11.*SET,MESHCOUNT,2 !每段的分网数

12.*SET,IZZ,TA*TA*TA*TA/12 !转动惯量

13.*SET,IYY,TA*TA*TA*TA/12 !转动惯量

14.!**********************

15.!材料参数表

16.!**********************

17.*SET,MEX,1.78E11 !弹性模量

18.*SET,MPRXY,0.3 !泊松比

19.*SET,MDENS,7850 !密度

20.!**********************

21.!相关设置

22.!**********************

23.MP,EX,1,MEX !设置材料弹性模量

24.MP,PRXY,1,MPRXY !设置材料泊松比

25.MP,DENS,1,MDENS !设置材料密度

26.BETAD,1E-5 !BETA阻尼

27.ET,1,BEAM3 !设置平面梁单元

28.R,1,TA*TA,IZZ,TA !设置截面参数

29.!DMPRAT,0.10000 !阻尼比

30.!**********************

31.!几何->分网

32.!**********************

33.TYPE,1 !指定分网类型

34.MAT,1 !指定材料类型

35.REAL,1 !指定实参数

36.K,1,0,0,0 !建立三个关键点

37.K,2,L_HORI,0,0

38.L,1,2 !建立几何体

39.ALLSEL,ALL

40.LESIZE,ALL,,,MESHCOUNT !设置线段分网数

41.LMESH,ALL !分网

42.!**********************

43.!几何约束

44.!**********************

45.ALLSEL,ALL

46.NSEL,S,LOC,X,0 !选择固定端节点

47.D,ALL,ALL !设置为约束所有自由度

48.ALLSEL,ALL

49.NSEL,S,LOC,X,L_HORI

50.F,ALL,FY,10 !力载荷

51.ALLSEL,ALL

52.save

2011-4-11 13:58 上传

下载附件(39.32 KB)

【提取APDL】

1.!进行一次QRDAMP分析,以生成包含K、M、C和RHS的FULL文件

2./SOLU

3.ANTYPE,MODAL

4.MODOPT,QRDAMP,2,2

5.SOLVE

6.!将对应的矩阵提取到文件中

7./AUX2

8.FILE,re,FULL

9.HBMAT,K_RHS,txt,ASCII,,STIFF,YES

10.HBMAT,M,txt,ASCII,,MASS,YES

11.HBMAT,C,txt,ASCII,,DAMP,YES

12.FINISH

【ANSYS谐响应分析】(计算完毕后,手动把受力点的频响结果存在ree.txt中)

1./SOLU

2.ANTYPE,HARM

3.HARFRQ,0,502

4.NSUBST,251

5.KBC,1

6.HROPT,FULL

7.HROUT,OFF

8.LUMPM,0

9.EQSLV, ,1e-008,

10.SOLVE

【读取&计算】(运行APP_HP_From_ANSYS.py之前在当前目录准备刚才ANSYS计算目录下的K_RHS.txt,M.txt,K.txt,ree.txt)

1.# -*- coding: cp936 -*-

2.#2011.4 重构动力学计算程序

3.#使之可计算线性问题的瞬态和谐响应

4.#使之可从文件读入矩阵

5.#范雨 rainyboy@https://www.doczj.com/doc/1b9912903.html,

6.

7.#本文件包含:一个应用

8.#从ANSYS中导出一个模型的M,K,C和F信息,进行谐响应分析。

9.#与ANSYS的谐响应结果进行对比。

10.

11.import numpy as math;

12.from MechanicMode import *;

13.from HP_FullMethod import *;

14.from ReadMatricFromFile import*;

15.

16.if __name__ == '__main__':

17. K_RHS_filename = "K_RHS.txt";

18. M_filename = "M.txt";

19. C_filename = "C.txt";

20. df = 2;

21. freqzone = (0,500);

22. (K,RHS) = ReadDensMatrixFromFile(K_RHS_filename,True,True);

23. M = ReadDensMatrixFromFile(M_filename,True,False);

24. C = ReadDensMatrixFromFile(C_filename,True,False);

25. #K*1e-5

26. InitCondition = math.matrix(math.zeros((RHS.shape[1],3),dtype=float));

27. def forceFunc(f):

28. return RHS;

29. Mode = LinearMechanicMode(M,K,C,InitCondition,forceFunc);

30. Method = FullMethod();

31. Method.setMode(Mode);

32. Method.solve(df,freqzone);

33. #读入ANSYS的求解结果y

34. f = open("ree.txt");

35. fcmp = [];

36. dcomp = [];

37. while(True):

38. line = f.readline();

39. if not line:

40. break;

41. infolist = line.split();

42. fcmp.append(float(infolist[0]));

43. dcomp.append(float(infolist[1]));

44. #绘对比图

45. https://www.doczj.com/doc/1b9912903.html,apareFreqHist(fcmp,dcomp,4);

【结果对比图】

2011-4-11 13:58 上传

下载附件(33.91 KB)

【控制台输出】

正在读取:K_RHS.txt

文件说明:Stiffness matrix from ANSYS FULL file dumped into Harwell-Boeing format 行指针个数:7

行标个数:12

非零数据个数:12

右端数据个数:6

正在读取:M.txt

文件说明: Mass matrix from ANSYS FULL file dumped into Harwell-Boeing format 行指针个数:7

行标个数:12

非零数据个数:12

右端数据个数:6

正在读取:C.txt

文件说明: Damping matrix from ANSYS FULL file dumped into Harwell-Boeing format

行指针个数:7

行标个数:12

非零数据个数:12

右端数据个数:6

=============================================================

======5.值得注意的事情============================================

=============================================================

1,为什么在提取矩阵之前要进行QRDAMP的模态分析?

ANSYS帮助说,BHMAT命令中来获取DAMP参数,仅当进行考虑阻尼的模态分析时才有效:

DAMP — Write damping matrix to output matrix file. Only valid for damped modal analyses.

因此,我选择了QRDAMP,我只是借助该方法生成FULL文件,并不关注其求解结果

2,注意,在本例中(以及大多数场合),ANSYS导出的矩阵是对称的,即只导出了下三角(或上三角),在ReadFromFile.py 中的ReadDensMatrixFromFile函数作了相应的处理,使得到的矩阵是一个对称的满阵。而ReadSparseMatrixFromFile函数则没有。

3,注意,导出的矩阵已经引入了约束条件,即固定的自由度已经被删去了,这就是为什么上述测试用例中,明明是3个BEAM3单元(每个单元3个自由度),得到的矩阵只有6*6。

补充一下,如何得到矩阵的各行与模型各自由度之间的映射关系:

在HBMAT命令中打开mapping开关,即形如(最后那个YES即是此开关):

HBMAT,KK_RHS,txt,ASCII,,STIFF,YES,YES就会得到名为KK_RHS.mapping的文件,其内容大概为:Matrix Eqn Node DOF

1 3 UX

2 3 UY

3 3 ROTZ

4 2 UX

5 2 UY

6 2 ROTZ

通过这些内容就可以知道所关注的自由度对应的是哪个方程(矩阵的哪一行/列)了。

其原理很简单,即使用ansys的超单元即可解决问题。定义超单元,然后列出超单元的刚度矩阵即可。

面是一个小例题,自可明白。

/prep7

k,1

k,2,3000

l,1,2

et,1,beam3

mp,ex,1,2e5

mp,prxy,1,0.3

r,1,5000,2e7,200

lesize,all,,,10

lmesh,all

finish

!----以上正常建立模型,不必施加约束和荷载

/solu

antype,7 !substructuring分析类型

seopt,matname,1 !设置文件名称和刚度矩阵类型(刚度,质量,阻尼等)

nsel,all !选择所有节点

m,all,all !定义所有节点自由度为主自由度

solve !求解

selist,matname,3 !列出整体刚度矩阵

hefeng90#1 2008-2-22 11:09

4

2 4

3 4

0.300000000000000D+09 0.312000000000000D+10 0.300000000000000D+09 0.300000000000000D+09 0.312000000000000D+10 0.500000000000000D+09 0.200000000000000D+10 0.100000000000000D+10 0.000000000000000D+00 0.000000000000000D+00 0.000000000000000D+00 0.000000000000000D+00

hefeng902修改于2008-02-22 11:37

iamperis her

#2

2008-2-22 15:29

HBMAT 命令法提取整体矩阵 ⑴ HBMAT 命令

命令:HBMAT,fname,ext,--,form,matrx,rhs

其中:

Fname---输出矩阵的路径和文件名,缺省为当前工作路径和当前工作文件名。 ext---输出矩阵文件的扩展名,缺省为.matrix 。 form---定义输出矩阵文件的格式,其值可取: =ASCII :ASCII 码格式; =BIN :二进制格式。

matrix---定义输出矩阵的类型,其值可取:

=STIFF :输出刚度矩阵。可用于写入了.FULL 文件的任何类型的分析。 =MASS :输出质量矩阵。可用于特征值屈曲、子结构分析、模态分析。 =DAMP :输出阻尼矩阵。仅用于有阻尼的模态分析。

rhs---右边项输出控制(右边项指用矩阵所表示方程的等号右端矢量,这里可为节点荷载向量),如rhs=YES 则输出,如rhs=NO 则不输出。 模态分析时,因仅LANB 和QR 法可生成完整的质量矩阵,因此也仅采用这两种方法时才可使用HBMAT 命令得到质量矩阵文件。 ⑵ Harwell-Boeing 文件格式

用HBMAT 命令可输出结构刚度矩阵、质量矩阵和阻尼矩阵,其文件记录格式为大型稀疏矩阵的标准交换格式,采用索引存储方法仅记录矩阵的非零元素。文件基本格式是前面有4或5行描述数据,其后为单列矩阵元素值,说明如下:

第1行:格式(A72),为文件头的字符型解释,如刚度矩阵或质量矩阵等标题。

第2行:格式(5I14),分别表示该文件的总行数(不包括文件头)、矩阵列指针的总行数、矩阵行索引的总行数、矩阵元素数值的总行数、右边项总行数。

第3行:格式(A3,11X,4I14),分别为矩阵类型、矩阵行数、矩阵列数、矩阵行索引数(对组装后的矩阵,该值等于矩阵行索引数)、单元元素数(对组装后的矩阵此值为0)。

第4行:格式(2A16,2A20),分别表示列指针格式、行索引格式、系数矩阵数值格式、右边项数值格式。

第5行:格式(A3,11X,2I14),A3各列分别表示右边项格式、应用高斯起始矢量、应用eXact 求解矢量;两个整数分别表示右边项列数、行索引数。三个字符中的第1个字符可取:F---全部存贮(如节点荷载向量的全部元素)、M---与系数矩阵相同方法。 第6行后:矩阵元素值(单列)。

矩阵类型用3个字符表示,第1个字符可取:R---实数矩阵、C---复数矩阵、P---仅矩阵结构(无元素数值);第2个字符可取:S---对称矩阵、U---不对称矩阵、H---Hermitian 矩阵、Z---病态对称矩阵;R---带状矩阵;第3个字符可取:A---组装的矩阵、E---单元矩阵(未组装)。对称矩阵只存储下三角元素,如结构刚

度矩阵为对称矩阵,Harwell-Boeing 格式则仅记录下三角元素。

根据Harwell-Boeing

文件格式,可读取矩阵的任意行列元素的数值,也可编程还原为满矩阵存储,以便它用,很显然这种提取方式比较方便。如当生成

.FULL 文件后,可采用命令

/AUX2$FILE,mywork,full$HBMAT,mystiff,txt,ASCII,STIFF,YES$FINISH 将二进制mywork.full 文件输出为ASCII 码文件mystiff.txt ,并输出右边项。 摘自【ANSYS 工程结构数值分析】

书中还详细讲了刚度矩阵的提取与处理等。

hefeng902

积分 166 帖子 114

#3

2008-2-22 16:46

首先强烈地向iamperisher 致敬,回答得很详细,很好,谢谢。对照起来看,受益很大。

操作中还有些问题望你再指点一下,如何将稀疏矩

阵转为普通的矩阵呢,是下面这步吗? 采用命令/AUX2

$FILE,mywork,full$HBMAT,mystiff,txt,ASCII,STIFF,YES$FINISH 将二进制mywork.full 文件输出为ASCII 码文件mystiff.txt ,并输出右边项。

这几步如何操作啊,好象没有见过前输$的,这一步能不能详细一点呢?

hefeng902

积分 166 帖子 114

#4

2008-2-24 14:29

通过摸索,大致搞清了以上问题,为了更少了走老

路,把摸索的结果大致介绍一下: iamperisher 回答中

$FILE,mywork,full$HBMAT,mystiff,txt,ASCII,STIFF,YES$FINISH 将二进制mywork.full 文件输出为ASCII 码文件mystiff.txt ,并输出右边项。 的实现:FILE, Fname, Ext, --

Specifies the data file where results are to be found.

POST1: Set Up

POST26: Set Up

MP ME ST DY <> PR EM <> FL PP ED

Fname

File name and directory path (248 characters maximum, including directory). If you do not specify a directory path, it will default to your working directory and you can use all 248 characters for the file name.

The file name defaults to Jobname. Ext

Filename extension (8 character maximum).

If Fname is blank, the extension defaults to RST (for structural, fluid, or coupled-field analyses), to RTH (for thermal or electrical analyses), to RMG (for magnetic analyses), or to RFL (for FLOTRAN analyses). For postprocessing reduced structural analyses in POST26, use the RDSP extension for displacements from transient dynamic analyses or the RFRQ extension from harmonic response analyses.

Menu Paths

Main Menu>General Postproc>Data & File Opts Main Menu>TimeHist Postpro>Settings>File

Utility Menu>File>List>Binary Files

Utility Menu>List>Files>Binary Files

这一步一定要先读取数据,Main Menu>General Postproc>Data & File Opts 不然导不出来。

$HBMAT,mystiff,txt,ASCII,STIFF,YES 中把前面的$去掉,其实这个就是HBMAT 命令提取刚度矩阵的命令,我还研究半天,哎!$FINISH 就不管了,退出处理模块。然后在计算的工作目录下找到mystiff.txt ,OK 了,只不过这是Harwell-Boeing 文件格式的,还要利用程序把它转换了满矩阵存储,希望用过的高手把程序贴出来,让大家共同进步。急求把Harwell-Boeing 转化为满矩阵存储的命令或程序,请大家帮帮忙。

iamperis her

积分 163 帖子 151

#5

2008-2-24 14:48

这位先生有点懒啊,前帖告诉你了,找本【ANSYS 工程结构数值分析】看看就都有了。

1.$是ANSYS 的续行符号,你可在此处回车换行即

可,并删掉$符号。

2.下面是书中的一个例子,但要/input 读入,不能在命令行直接执行,因存在format 格式。

!================================================================================

!EX6.10 提取结构刚度矩阵及处理

FINISH$/CLEAR$/FILNAME,HBFILE$/PREP7 !定义工作文件名HBFILE.TXT ET,1,BEAM3$MP,EX,1,2E5$R,1,1E-2,32E-5,0.5 !定义单元类型、材料、实常数

N,1$N,2,0,4$N,3,4,4$N,4,4,0$EN,1,2,3$EN,2,1,2$EN,3,4,3 !按图6-9所示创建有限元模型 F,2,FX,5$SFBEAM,1,1,PRES,10,,,,2,-1$SFBEAM,2,1,PRES,3 !施加节点荷载和单元荷载 D,1,ALL$D,4,ALL !施加约束

/SOLU$SOLVE$FINISH$/AUX2 !进入求解层求解后再进入AUX2处理器 FILE,HBFILE,FULL !指定文件HBFILE.FULL

HBMAT,HBFILE,TXT,,ASCII,STIFF,YES !转换刚度矩阵和右边项为HBFILE.TXT 文件 FINISH

!以下从HBFILE.TXT 读入数据,并还原为满矩阵存储

*DIM,CONTLINE,,5 !定义一维数组

*VREAD,CONTLINE(1),HBFILE,TXT,,,5,,,1 !跳过第1行后读入5个数据 (5F14.0)

PTRCRD=CONTLINE(2) !保存列指针总行数 INDCRD=CONTLINE(3) !保存行索引总行数 VALCRD=CONTLINE(4) !保存矩阵元素总行数 RHSCRD=CONTLINE(5) !保存右边项总行数

*VREAD,CONTLINE(1),HBFILE,TXT,,,4,,,2 !跳过第2行后读入4个数据 (A3,11X,4F14.0)

NROW=CONTLINE(2)$NCOL=CONTLINE(3) !保存刚度矩阵的行列数 STRLINE=$CONTLINE= !删除数组

*IF,RHSCRD,EQ,0,THEN !如果无右边项取LS0=4行,否则取LS0=5 LS0=4$*ELSE$LS0=5$*ENDIF

*DIM,POINTR,,PTRCRD !定义列指针数组 *DIM,ROWIND,,INDCRD !定义行索引数组 *DIM,VALUES,,VALCRD !定义矩阵元素值数组 *DIM,RHSVAL,,RHSCRD !定义右边项元素值数组 *VREAD,POINTR(1),HBFILE,TXT,,,PTRCRD,,,LS0

(F14.0) !读入列指针数据 *VREAD,ROWIND(1),HBFILE,TXT,,,INDCRD,,,LS0+PTRCRD

(F14.0) !读入行索引数据 *VREAD,VALUES(1),HBFILE,TXT,,,VALCRD,,,LS0+PTRCRD+INDCRD

(D25.15) !读入矩阵元素数据 *VREAD,RHSVAL(1),HBFILE,TXT,,,RHSCRD,,,LS0+PTRCRD+INDCRD+VALCRD

(D25.15)

!读入右边项元素数据

*DIM,SMATR,,NROW,NCOL !定义矩阵行列数,满矩阵存储的矩阵 *DO,ICOL,1,NCOL !以列数循环

STACOL=POINTR(ICOL) !得到当前列指针(元素的列号) ENDCOL=POINTR(ICOL+1) !得到下一列指针

*DO,IROW,STACOL,ENDCOL-1 !以当前列中的非零元素个数循环 TRUEROW=ROWIND(IROW) !得到当前元素的行号

SMATR(TRUEROW,ICOL)=VALUES(IROW) !按行列号将元素值保存到矩阵中 *ENDDO$*ENDDO !结束两个循环

*DO,IROW,1,NROW !形成上三角元素,进而得到满矩阵 *DO,ICOL,1,NCOL

SMATR(IROW,ICOL)=SMATR(ICOL,IROW) *ENDDO$*ENDDO

!以下为删除临时变量和数组变量

POINTR=$ROWIND=$VALUES=$RHSVAL=$ICOL=$IROW=$LS0=$STACOL= ENDCOL=$TRUEROW=$TOTCRD=$PTRCRD=$INDCRD=$VALCRD=$RHSCRD=

hefeng902

积分 166 帖子 114

#6

2008-2-25 20:25

首先向iamperisher 致敬,感谢你的贡献,还有我要说明一点,不是我懒,是我买的这本书还在邮寄的

路上,去书店没有买到,呵呵。然后希望帮我再解决这下这个问题: 完全利用你写下的命令流,改写如下(应该没有问题吧): finish /clear

/filname,hbfile /prep7

et,1,beam3 mp,ex,1,2e5

r,1,1e-2,32e-5,0.5 n,1 n,2,0,4 n,3,4,4 n,4,4,0 en,1,2,3 en,2,1,2 en,3,4,3 f,2,fx,5

sfbeam,1,1,pres,10,,,,2,-1 sfbeam,2,1,pres,3 d,1,all d,4,all /solu solve finish /aux2

file,hbfile,full

hbmat,hbfile,txt,ascii,stiff,yes finish

*dim,contline,,5

*vread,contline(1),hbfile,txt,,,5,,,1 ptrcrd=contline(2) indcrd=contline(3) valcrd=contline(4) rhscrd=contline(5)

*vread,contline(1),hbfile,txt,,,4,,,2

nrow=contline(2)

ncol=contline(3)

strline=

contline=

*if,rhscrd,eq,0,then

ls0=4

*else

ls0=5

*endif

*dim,pointr,,ptrcrd

*dim,rowind,,indcrd

*dim,values,,valcrd

*dim,rhsval,,rhscrd

*vread,pointr(1),hbfile,txt,,,ptrcrd,,,ls0

*vread,rowind(1),hbfile,txt,,,indcrd,,,ls0+ptrcrd

*vread,values(1),hbfile,txt,,,valcrd,,,ls0+ptrcrd+indcrd

*vread,rhsval(1),hbfile,txt,,,rhscrd,,,ls0+ptrcrd+indcrd+valcrd

*dim,smatr,,nrow,ncol

*do,icol,1,ncol

stacol=pointr(icol)

endcol=pointr(icol+1)

*do,irow,stacol,endcol-1

truerow=rowind(irow)

smatr(truerow,icol)=values(irow)

*enddo

*enddo

*do,irow,1,nrow

*do,icol,1,ncol

smatr(irow,icol)=smatr(icol,irow)

*enddo

*enddo

运行中出现图中所示提示,而且目录下也没有出现SMATR这个文件,不知中何原因,查了错误日志,如下:*** WARNING *** CP= 2.031 TIME= 20:17:16

In the graphical user interface,the VREAD command can only be executed

from an external file such as /INPUT or *USE. The command is ignored.

*** WARNING *** CP= 2.047 TIME= 20:17:16

In the graphical user interface,the VREAD command can only be executed

from an external file such as /INPUT or *USE. The command is ignored.

*** WARNING *** CP= 2.078 TIME= 20:17:16

In the graphical user interface,the VREAD command can only be executed

from an external file such as /INPUT or *USE. The command is ignored.

*** WARNING *** CP= 2.094 TIME= 20:17:16

No *DO trips needed, enter *ENDDO .

*** WARNING *** CP= 2.125 TIME= 20:17:16

No *DO trips needed, enter *ENDDO .

能不能帮我看一下我是哪里出了问题,多谢了啊。

#7 2009-3-18 10:43

#8 2009-7-22 17:55

Iris.G

#9

2010-1-5 18:17

对于ANSYS 的HBMAT 命令得到的Harwell-Boeing

格式的矩阵,我用王老师的《ANSYS 工程结构数值分析》进行了满矩阵格式的转换,结果出现错误提示,*DO loop index same as outer index ICOL ,请问各位大侠这是啥问题啊,怎么调整,真诚期待指教...

0 分

pandeng 18

#10

2011-4-13 11:17

Mass matrix from ANSYS FULL file dumped into Harwell-Boeing format

53 7 20 20 6 RSA 6 6 20 0 (I14) (I14) (d25.15) (d25.15) F 1 6 1 4 8 11 15 18 21 1 3 4 2 3 5 6 3 5 6 4 6 0 0 5 6 0 6 0 0

0.627714285714286D+04 0.473571428571429D+03 0.130000000000000D+04 0.627714285714286D+04 0.473571428571429D+03 0.222857142857143D+03 -0.176428571428571D+03 0.321904761904762D+03 0.176428571428571D+03 -0.773809523809524D+02 0.627714285714286D+04 0.473571428571429D+03

关于ANSYS(质量、刚度、阻尼)矩阵Harwell-boeing格式数据的说明

[i=s] 本帖最后由nuaalyc 于2010-4-4 15:44 编辑[/i]

PS:主要针对ANSYS输出的HARWELL-BOEING 格式

头文件说明:

Stiffness matrix from ANSYS FULL file dumped into Harwell-Boeing format 361 25 156 156 24

RSA 24 24 156 0

(I14) (I14) (d25.15) (d25.15)

F 1 24

第一行:标题

第二行:

参数1,整个文件(除去头文件(header))的数据个数

参数2,列信息参数(pointers)个数

参数3,数据行标信息(row indices)参数个数

参数4,非零数据个数

参数5,right-hand sides(RHS)参数个数

第3行:

参数1,矩阵类型:

字符1:R(实矩阵)C(复数矩阵)P(非数值矩阵)

字符2:S(对称矩阵)U(非对称矩阵)H(Heritian矩阵)

Z(反对称矩阵)R(方阵)

字符3:A

参数2,系数矩阵的行数

参数3,系数矩阵的列数

参数4,单元矩阵(elemental matrix)的个数(0代表组装矩阵)

第4行:

参数1,列信息参数数据类型

参数2,行标信息参数数据类型

参数3,系数矩阵(coefficient matrix)数据类型

参数4,RHS数据的数据类型

第5行:Only present if there are right-hand sides present

参数1,字符1:Right-hand side类型:

F for full storage or

M for same format as matrix

字符2:G if a starting vector(s) (Guess) is supplied

字符3:X if an exact solution vector(s) is supplied

参数2,RHS个数

参数3,RHS数据行标信息(row indices)个数

文件数据说明:

思路:先确定稀疏矩阵各列的非零元素的个数,然后给出各非零元素的行标和数值。

Harwell-boeing 格式用一个一维数组确定稀疏矩阵,该数组数据可以分为三类:1,表示矩阵每一列包含

的非零数据的个数;

2,表示每列非零数据所在的行标;3,表示非零数据的值。这三类数依次排列。

第一类数据的个数由头文件中第2行参数2(设为n)给出,即一维数组前n个数据,通常有1开始。

这些数据前后两个数之差即是稀疏矩阵各列非零数据的个数。

例如:

1

13

24

36

47

57

67

76

84

93

101

108

115

121

126

132

137

141

145

148

150

153

155

156

157

由头文件可以知道,第一类数据有25个数,如上所示。则稀疏矩阵的第1列有13-1=12个非零数,第二列

有24-13=11个非零数,第三列有36-24=12个。依次类推,即可知道稀疏矩阵各个列所含非零数据的个数。

第一类数据后紧接着就是第二类数据,其个数由头文件中第2行参数3给出,可以确定每列非零数据所在的

行标。方法很简单,根据已知的每列的非零数据的个数,找出对应的行标即可。如,上例中第二类数据共156

个,稀疏矩阵第1列有12个元素,则第二类数据中前12个数据即是矩阵第一列的各非零数据的行标;接下来

的11个数据是第二列的行标。如此类推,即可以知道稀疏矩阵各列非零元素的位置。

每列非零元素的值从第三类数据中找到对应的数据即可,其位置与第二类数据一一对应,其方法与第二类数据

类似;

另,关于right-hand sides 的作用与原理尚不清楚,欢迎大家讨论!

关于harwell-boeing 格式可参考:

[url=https://www.doczj.com/doc/1b9912903.html,/MatrixMarket/formats.html]https://www.doczj.com/doc/1b9912903.html,/MatrixMarket/formats.html[/url] harwell-boeing 转化成稀疏矩阵的的MATLAB程序:

[url=https://www.doczj.com/doc/1b9912903.html,/~burkardt/m_src/hb_to_mm/hb_to_mm.html]https://www.doczj.com/doc/1b9912903.html,/~bur kardt/m_src/hb_to_mm/hb_to_mm.html[/url]

注意:该程序给出的稀疏矩阵不是对称矩阵

[attach]237948[/attach]

[color=red]%%头文件

Stiffness matrix from ANSYS FULL file dumped into Harwell-Boeing format 361 25 156 156 24

RSA 24 24 156 0

(I14) (I14) (d25.15) (d25.15)

F 1 24

[/color]

[color=blue]%%第一类数据

1

13

24

36

47

57

67

76

84

93

101

108

115

121

126

132

137

141

145

148

150

153

155

156

157

[/color][color=magenta]%%第二类数据

1

2

6

7

8

12 %稀疏矩阵第1列各非零元素的行标

13

14

18

19

20

24

[color=black][color=darkorange] 2

6

7

8

12 %第2列非零数据的行标

13

14

18

19

20

24

[/color] 。。。。。。。。。。。。[/color]

.

[/color][color=darkorchid]%%第三类数据

0.908905677655663D+08

0.356662087912088D+08

-0.480769230769231D+05

-0.523328754578740D+08

-0.269917582417582D+07

-0.480769230769231D+05 %稀疏矩阵第1列各非零元素的值 -0.575572344322359D+08

-0.356662087912088D+08

-0.480769230769231D+05

0.189995421245436D+08

0.269917582417582D+07

-0.480769230769231D+05

[color=black]0.908905677655663D+08

0.480769230769231D+05

0.269917582417582D+07

0.189995421245436D+08

0.480769230769231D+05

-0.356662087912088D+08

-0.575572344322359D+08

0.480769230769231D+05

-0.269917582417582D+07

-0.523328754578740D+08

0.480769230769231D+05

。。。。。。。。。。。。。。

[/color]

[/color][color=yellowgreen]%%right-hand sides 对应的数据

0.000000000000000D+00

0.000000000000000D+00

0.000000000000000D+00

0.000000000000000D+00

0.000000000000000D+00

0.000000000000000D+00

0.000000000000000D+00

0.000000000000000D+00

0.000000000000000D+00

0.000000000000000D+00

0.000000000000000D+00

0.000000000000000D+00

0.000000000000000D+00

0.000000000000000D+00

0.000000000000000D+00

0.000000000000000D+00

0.000000000000000D+00

0.000000000000000D+00

0.000000000000000D+00

0.000000000000000D+00

0.000000000000000D+00

0.000000000000000D+00

0.000000000000000D+00

0.000000000000000D+00[/color]

结构力学思考题答案

1、结构的动力特性一般指什么? 答:结构的动力特性是指:频率(周期)、振型和阻尼。动力特性是结构固有的,这是因为它们是由体系的基本参数(质量、刚度)所确定的、表征结构动力响应特性的量。动力特性不同,在振动中的响应特点亦不同。 2、什么是阻尼、阻尼力,产生阻尼的原因一般有哪些?什么是等效粘滞阻尼? 答:振动过程的能量耗散称为阻尼。 产生阻尼的原因主要有:材料的内摩擦、构件间接触面的摩擦、介质的阻力等等。当然,也包括结构中安装的各种阻尼器、耗能器。 阻尼力是根据所假设的阻尼理论作用于质量上用于代替能量耗散的一种假想力。粘滞阻尼理论假定阻尼力与质量的速度成比例。 粘滞阻尼理论的优点是便于求解,但其缺点是与往往实际不符,为扬长避短,按能量等效原则将实际的阻尼耗能换算成粘滞阻尼理论的相关参数,这种阻尼假设称为等效粘滞阻尼。 3、采用集中质量法、广义位移法(坐标法)和有限元法都可使无限自由度体系简化为有限自由度体系,它们采用的手法有何不同? 答:集中质量法:将结构的分布质量按一定规则集中到结构的某个或某些位置上,认为其他地方没有质量。质量集中后,结构杆件仍具有可变形性质,称为“无重杆”。 广义坐标法:在数学中常采用级数展开法求解微分方程,在结构动力分析中,也可采用相同的方法求解,这就是广义坐标法的理论依据。所假设的形状曲线数目代表在这个理想化形式中所考虑的自由度个数。考虑了质点间均匀分布质量的影响(形状函数),一般来说,对于一个给定自由度数目的动力分析,用理想化的形状函数法比用集中质量法更为精确。 有限元法:有限元法可以看成是广义坐标法的一种特殊的应用。一般的广义坐标中,广义坐标是形函数的幅值,有时没有明确的物理意义,并且在广义坐标中,形状函数是针对整个结构定义的。而有限元法则采用具有明确物理意义的参数作为广义坐标,且形函数是定义在分片区域的。在有限元分析中,形函数被称为插值函数。 综上所述,有限元法综合了集中质量法和广义坐标法的特点: (l) 与广义坐标法相似,有限元法采用了形函数的概念。但不同于广义坐标法在整体结构上插值(即定义形函数),而是采用了分片的插值,因此形函数的表达式(形状)可以相对简单。 (2) 与集中质量法相比,有限元法中的广义坐标也采用了真实的物理量,具有直接、直观的优点,这与集中质量法相同。 4、直接动力平衡法中常用的有哪些具体方法?它们所建立的方程各代表什么条件? 答:常用方法有两种:刚度法和柔度法。刚度法方程代表的是体系在满足变形协调条件下所应满足的动平衡条件;而柔度法方程则代表体系在满足动平衡条件下所应满足的变形协调条件。 5、刚度法与柔度法所建立的体系运动方程间有何联系?各在什么情况下使用方便? 答:刚度法与柔度法建立的运动方程在所反映的各量值之间的关系上是完全一致的。由于刚度矩阵与柔度矩阵互逆,刚度法建立的运动方程可转化为柔度法建立的方程。一般来,对于单自由度体系,求[δ]和求[k]的难易程度是相同的,因为它们互为倒数,都可以用同一方法求得,不同的是一个已知力求位移,一个已知位移求力。对于多自由度体系,若是静定结构,一般情况下求柔度系数容易些,但对于超静定结构就要根据具体情况而定。若仅从建立运动方程来看,当刚度系数容易求时用刚度法,柔度系数容易求时用柔度法。 6、计重力与不计重力所得到的运动方程是一样的吗? 答:如果计与不计重力时都相对于无位移的位置来建立运动方程,则两者是不一样的。但如果计重力时相对静力平衡位置来建立运动方程,不计重力仍相对于无位移位置来建立,

ansys质量矩阵刚度矩阵提取

ansys质量矩阵刚度矩阵提取 看了这么久了都没人回,查了一些质料终于找到答案了,,下面提供三种方法:方便与其他程序进行接口编程1. Which matrix you would like? element stiffness matrix or full stiffness matrix? element stiffness is within file.emat. full stiffness matrix is within file.full A simple way to dump the matrix is as follow: ------------------- /aux2 fileaux2,file,emat form,long dump,all ------------------- 2. 可以使用/DEBUG命令来得到。详细步骤参见下面的宏文件 finish /clear PI=3.1415926 w1=3 w2=10 w3=6 w4=1.2 r=.8 t=0.08 /PREP7 !* ET,1,SHELL63 R,1,t ET,2,MASS21 R,2,500,500,500,2000,2000,2000,

!* UIMP,1,EX, , ,2e11 UIMP,1,NUXY, , ,0.3, UIMP,1,DAMP, , ,0.2, UIMP,1,DENS, , ,7800, BLC4,0,0,w2,w1 ESIZE,1.5,0, AMESH,all NSEL,S,LOC,X,0.0 D,all, , , , , ,ALL, , , , , allsel,all SFA,all,1,PRES,12 FINISH /OUTPUT,cp,out,, ! 将输出信息送到cp.out文件 /debug,-1,,,1 ! 指定输出单元矩阵 /SOLU SOLVE finish /OUTPUT, TERM ! 将输出信息送到output windows中 ! 这时用编辑器打开cp.out文件,可以看到按单元写出的质量、刚度等矩阵 3. 其原理很简单,即使用ansys的超单元即可解决问题。定义超单元,然后列出超单元的刚度矩阵即可。 面是一个小例题,自可明白。 /prep7 k,1 k,2,3000 l,1,2 et,1,beam3 mp,ex,1,2e5 mp,prxy,1,0.3 mp,dens,1,2e3 r,1,5000,2e7,200 lesize,all,,,10 lmesh,all

常用单元的刚度矩阵

r u r r u r =-+= πππεθ22)(2 由于各点在圆周方向上无位移,因而剪应变θr v 和r v θ均为 零。将应变写成向量的形式,则{}?? ?? ? ?????? ?????? ???????+??????=??????????????=r w z u z w r u r u rz z r γεεεεθ 根据上式,可推导出几何方程{}[]{})(e B ?ε= 其中几何矩阵[]????????? ?????????? ??= ij ji ki ik jk kj ji ik kj k j i ij kj jk z r z r z r r r r r z r N r z r N r z r N z z z B 000 0),(0),(0),(00021 3.弹性方程和弹性矩阵[D] 依照广义虎克定律,同样可以写出在轴对称中应力和应变之间的弹性方程,其形式为 [])(1 θσσσε+-= z r r u E [])(1 z r u E σσσεθθ+-= [])(1 θσσσε+-=r z z u E rz rz E r τμ)1(2+= 所以弹性方程为{}[]{}εσD = 式中应力矩阵{}{}T rz z r τσσσσθ=

弹性矩阵[]? ? ??????? ???? ?-----+=221000010101)21)(1(μμμμμμμμμμ μμE D 4.单元刚度矩阵[])(e k 与平面问题相同,仍用虚功原理来建立单元刚度矩阵,其积分式为 [][][][]dV B D B k V T e ?=)( 在柱面坐标系中,drdz dV π2= 将drdz dV π2=代入[][][][]dV B D B k V T e ?=)(,则[][][][]rdrdz B D B k T e ??=π2)( 即为轴对称问题求单元刚度矩阵的积分式。 与弹性力学平面问题的三角形单元不同,在轴对称问题中,几何矩阵[B]有的元素(如r z r N i ),(等)是坐标r 、z 的函 数,不是常量。因此,乘积[][][]B D B T 不能简单地从式 [][][][]rdrdz B D B k T e ??=π2)(的积分号中提出。如果对该乘积逐项求 积分,将是一个繁重的工作。一般采用近似的方法:用三角形形心的坐标值代替几何矩阵[B]的r 和z 的值。用[]B 表示在形心),(z r 处计算出的矩阵[B]。其中 3 ) (,3 ) (k j i k j i z z z z r r r r ++= ++= 只要单元尺寸不太大,经过这样处理引起的误差也不大。被积函数又成为常数,可以提出到积分号外面:

提取刚度矩阵

============为什么折腾这个文档======== 我有一个计算线性动力学方程组的瞬态、谐响应和静力学的python程序,现希望开发一个将ANSYS组集好的总体矩阵导入该PYTHON程序中的接口。 该问题可分解为: [STEP1] [ANSYS]->[包含矩阵信息的文件] [STEP2] [包含矩阵信息的文件]->[python通用数据对象] [STEP3] [python通用数据对象]->[程序特定数据对象]->[进行计算] 因此检索了一些帖子,基本上完成了这项工作,本文是对[STEP1]和[STEP2]的整理,并且利用[STEP3]对结果进行了验证 ============主要内容================== 1,了解从ANSYS中提取总体矩阵和载荷向量的方法; 2,了解提取出来的矩阵是怎样表示的; 3,说明在Python中,如何读取这样的矩阵; 4,构造一个简单的算例,说明整个【建模】-【提取】-【读取】过程及其正确性; =========站内检索综述==================== 检索词:提取矩阵 得到21个结果,代表性的帖子有下面这9个: 编号[1] 标题:ansys中怎样提取质量,刚度,阻尼矩阵? 地址:https://www.doczj.com/doc/1b9912903.html,/forum-vi ... fromuid-159019.html 要点:pengweicai给出了一段网上最常见的提取代码,该程序以fortran 写成,可以利用.full文件以及一些列约定将ANSYS中的总体矩阵读入FORTRAN中。 编号[2] 标题:如何得知HBMAT命令提取的质量、刚度矩阵对应的自由度? 地址:https://www.doczj.com/doc/1b9912903.html,/forum-vi ... fromuid-159019.html 要点:提出了使用HBMAT命令提取稀疏矩阵时常见的问题:我们如何知道提取出来的信息是怎么储存的呢? 编号[3] 标题:[分享]ANSYS中整体、单元刚度和质量矩阵的提取 地址:https://www.doczj.com/doc/1b9912903.html,/forum-vi ... fromuid-159019.html 要点:在该帖子的7楼,其实已经给出了帖子[2]中问题的解答,即HBMAT 中提取出来的矩阵是Harwell-Boeing格式的,并且给出了该格式的细节,可惜是英文的,没引起多少关注。 编号[4] 标题:帮我看看提取的刚度与质量矩阵 地址:https://www.doczj.com/doc/1b9912903.html,/forum-vi ... fromuid-159019.html 要点:这个帖子所示的矩阵并非是使用HBMAT命令提出出来的,而应该是SELIST命令列举出来的未压缩的矩阵,后续楼层的回帖给了大家一个提示,即有可能提取出来的矩阵是引入了边界条件的(即删除了被约束的行和列的)。 编号[5] 标题:提取刚度矩阵的问题 地址:https://www.doczj.com/doc/1b9912903.html,/forum-vi ... fromuid-159019.html 要点:本帖作者的工作是基于单元刚度矩阵的,因此ANSYS中提取的单元刚度矩阵是否处于总体坐标系就成为问题。该问题并非本文内容,但仍值得关注。 编号[6] 标题:提取刚度矩阵丢失节点的问题 地址:https://www.doczj.com/doc/1b9912903.html,/forum-vi ... fromuid-159019.html 要点:帖子[5]作者的又一帖,在这里帖子[5]的问题得到了欧阳中华老师的回答。 编号[7] 标题:提取刚度矩阵的ANSYS操作过程 地址:https://www.doczj.com/doc/1b9912903.html,/forum-vi ... fromuid-159019.html 要点:实际上这就是使用HBMAT从ANSYS中提取总体矩阵的全过程!只是还有一些细节待确定。 编号[8] 标题:提取整体刚度矩阵、质量矩阵及阻尼矩阵的简单方法 地址:https://www.doczj.com/doc/1b9912903.html,/forum-vi ... fromuid-159019.html 要点:给出了利用“不减缩的”子结构方法来得到总体矩阵的方法(这也是网络上常见的代码之一) 编号[9] 标题:质量矩阵、刚度矩阵如何提取? 地址:https://www.doczj.com/doc/1b9912903.html,/forum-vi ... fromuid-159019.html 要点:16443在5楼的回帖中给出了提取刚度矩阵的三种方法 =======站外检索略述======================== 百度检索:提取矩阵 比较好的帖子有: 编号[10] 来源:百度文库 标题:怎样从ansys中提取单元刚度矩阵与质量矩阵 地址:https://www.doczj.com/doc/1b9912903.html,/view/3cf5e567f5335a8102d220d9.html 要点:这应该就是16443在帖子[9]中回复的内容了,全面的总结了在帖子[3,4,5,9]中涉及的问题。 编号[11] 来源:中华钢结构标题:ansys刚度矩阵Harwell-Boeing格式的具体含义讨论 地址:https://www.doczj.com/doc/1b9912903.html,/forum/viewthread.php?tid=184007 要点:如题,后续楼层给出了一些将矩阵读入ANSYS的APDL(好不容易读出来,又读进去干嘛呢……) 编号[12] 来源:simwe 标题:关于ANSYS(质量、刚度、阻尼)矩阵Harwell-boeing格式数据的说明 地址:https://www.doczj.com/doc/1b9912903.html,/archiver/tid-924778.html 要点:比[11]更透彻的HB格式说明! ============================================================= =======1.从ANSYS中提取总体矩阵的方法================================= ============================================================= 1,用/DEBUG命令 2,子结构法

结构力学概念题

概念题 1.1 结构动力计算与静力计算的主要区别是什么? 答:主要区别表现在: (1)在动力分析中要计入惯性力,静力分析中无惯性力; (2)在动力分析中,结构的内力、位移等是时间的函数,静力分析中则是不随时间变化的量; (3)动力分析方法常与荷载类型有关,而静力分析方法一般与荷载类型无关。 1.2 什么是动力自由度,确定体系动力自由度的目的是什么? 答:确定体系在振动过程中任一时刻体系全部质量位置或变形形态所需要的独立参数的个数,称为体系的动力自由度(质点处的基本位移未知量)。 确定动力自由度的目的是:(1) 根据自由度的数目确定所需建立的方程个数(运动方程数=自由度数),自由度不同所用的分析方法也不同;(2) 因为结构的动力响应(动力内力和动位移)与结构的动力特性有密切关系,而动力特性又与质量的可能位置有关。 1.3 结构动力自由度与体系几何分析中的自由度有何区别? 答:二者的区别是:几何组成分析中的自由度是确定刚体系位置所需独立参数的数目,分析的目的是要确定体系能否发生刚体运动。结构动力分析自由度是确定结构上各质量位置所需的独立参数数目,分析的目的是要确定结构振动形状。 1.4 结构的动力特性一般指什么? 答:结构的动力特性是指:频率(周期)、振型和阻尼。动力特性是结构固有的,这是因为它们是由体系的基本参数(质量、刚度)所确定的、表征结构动力响应特性的量。动力特性不同,在振动中的响应特点亦不同。 1.5 什么是阻尼、阻尼力,产生阻尼的原因一般有哪些?什么是等效粘滞阻尼?答:振动过程的能量耗散称为阻尼。 产生阻尼的原因主要有:材料的内摩擦、构件间接触面的摩擦、介质的阻力等等。当然,也包括结构中安装的各种阻尼器、耗能器。阻尼力是根据所假设的阻尼理论作用于质量上用于代替能量耗散的一种假想力。粘滞阻尼理论假定阻尼力与质量的速度成比例。粘滞阻尼理论的优点是便于求解,但其缺点是与往往实际不符,为扬长避短,按能量等效原则将实际的阻尼耗能换算成粘滞阻尼理论的相关参数,这种阻尼假设称为等效粘滞阻尼。 1.6 采用集中质量法、广义位移法(坐标法)和有限元法都可使无限自由度体系简化为有限自由度体系,它们采用的手法有何不同? 答:集中质量法:将结构的分布质量按一定规则集中到结构的某个或某些位置上,认为其他地方没有质量。质量集中后,结构杆件仍具有可变形性质,称为“无重杆”。 广义坐标法:在数学中常采用级数展开法求解微分方程,在结构动力分析中,也可采用相同的方法求解,这就是广义坐标法的理论依据。所假设的形状曲线数目代表在这个理想化形式中所考虑的自由度个数。考虑了质点间均匀分布质量的影

第4章 多自由度系统的振动题解

62 习 题 4-1 在题3-10中,设m 1=m 2=m ,l 1=l 2=l ,k 1=k 2=0,求系统的固有频率和主振型。 解:由题3-10的结果 2 2121111)(l g m l g m m k k + ++ =,2 221l g m k - =, 2 212l g m k - =,2 2222l g m k k + = 代入m m m ==21,021==k k ,l l l ==21 可求出刚度矩阵K 和质量矩阵M ?? ? ? ??=m m M 0 0;?? ?? ? ???? ?- - =l mg l mg l mg l mg K 3 由频 02 =-M p K ,得 032 2 =????? ?? ?? ?-- --=mp l mg l mg l mg mp l mg B 0242 2 22 2 4 2=+ - ∴l g m p l g m p m l g p ) 22(1-= ∴ ,l g p ) 22(2+= 为求系统主振型,先求出adjB 的第一列 ???? ? ? ? ?? ?-=l mg mp l mg adjB 2 分别将频率值21p p 和代入,得系统的主振型矩阵为 ? ? ????-=112) 1(A ??????+=112) 2(A 题4-1图

63 4-2 题4-2图所示的均匀刚性杆质量为m 1,求系统的频率方程。 解:设杆的转角θ和物块位移x 为广义坐标。利用刚度影响系数法求刚度矩阵k 。 设0,1==x θ,画出受力图,并施加物体力偶与力 2111,k k ,由平衡条件得到, 2 22 111a k b k k +=, a k k 221-= 设1,0==x θ,画出受力图,并施加物体力偶与力2212,k k ,由平衡条件得到, 12k a k 2-=, a k k 222= 得作用力方程为 ?? ? ???=???????????? --++????????????? ?000031222222122 1x a k a k a k a k b k x m a m θθ 由频率方程02=-M K p ,得 031 2 22222 212 22 1=---- +p m a k a k a k p a m a k b k 4-3 题4-3图所示的系统中,两根长度为l 的均匀刚性杆的质量为m 1及m 2,求系统的刚度矩阵和柔度矩阵,并求出当m 1=m 2=m 和k 1=k 2=k 时系统的固有频率。 解:如图取21,θθ为广义坐标,分别画受力图。由动量矩定理得到, l l k l l k I 434343432 1 1 1 11θθθ+-= 2 2434343432 2 2 1 1 1 22l l k l l k l l k I θθθθ--= 整理得到, 016 916 922 1 12 1 11=-+θθθl k l k I 题4-3图 题4-2图

提取单元刚度矩阵

单元刚度矩阵的提取 刚度矩阵在有限元求解过程中扮演者非常重要的角色,以最小位能原理求解过程为例最终越是转换为含有结构刚度矩阵的能量泛函的取值问题。有限元过程中涉及到三类刚度:单元刚度矩阵,组合结构刚度矩阵和最终求解刚度矩阵。 其中单元刚度矩阵:仅与单元的自身自由度有关,同一编号的单元矩阵的维数是固定。组合结构刚度:矩阵根据求解的初始变量个数决定刚度矩阵的维数,属于单元组装后的初始刚度,维数和整个单元初始变量个数相等。最终求解刚度矩阵:代入边界条件简化后的刚度。以《Finite Element Analysis-Theory and Application With ANSYS》中的梁单元例子为例,解释刚度提取过程: 此模型的单元刚度矩阵:(学则beam3梁单元后,该单元包含两节点,每个节点具有三个自由度,因此对应单元刚度矩阵为6*6的方阵)

组合结构刚度矩阵:(该结构含有三个节点,每个节点具有三个原始自由度,因此组合结构刚度矩阵具有9*9阶的形式) 最终求解刚度矩阵:(由于边界条件的存在,该结构中,1,3点的自由度不存在,求解参数中有六个参数已知,因此对最终求解刚度矩阵为三阶方阵) 通过最终的刚度矩阵组成的方程,求解出2节点的位移解,再以这些原始解得出应力,应变,支反力的其他的解。 ansys实现过程: 提取思路如下:通过/debug提取单元刚度矩阵,通过filname.full文件提取后两者的矩阵 ansys实现过程如下: finish /clear /filname,k,1 /prep7 N,1 N,2,120 N,3,120,-108 et,1,beam3 mp,ex,1,3.0e7 mp,prxy,1,0.3 R,1,7.65,204,10 E,1,2 E,2,3 /debug,-1,,,1,,,,,

结构动力学复习 新

结构动力学与稳定复习 1.1 结构动力计算与静力计算的主要区别是什么? 答:主要区别表现在:(1) 在动力分析中要计入惯性力,静力分析中无惯性力; (2) 在动力分析中,结构的内力、位移等是时间的函数,静力分析中则是不随时间变化的量;(3) 动力分析方法常与荷载类型有关,而静力分析方法一般与荷载类型无关。 1.2 什么是动力自由度,确定体系动力自由度的目的是什么? 答:确定体系在振动过程中任一时刻体系全部质量位置或变形形态所需要的独立参数的个数,称为体系的动力自由度(质点处的基本位移未知量)。 确定动力自由度的目的是:(1) 根据自由度的数目确定所需建立的方程个数(运动方程数=自由度数),自由度不同所用的分析方法也不同;(2) 因为结构的动力响应(动力内力和动位移)与结构的动力特性有密切关系,而动力特性又与质量的可能位置有关。 1.3 结构动力自由度与体系几何分析中的自由度有何区别? 答:二者的区别是:几何组成分析中的自由度是确定刚体系位置所需独立参数的数目,分析的目的是要确定体系能否发生刚体运动。结构动力分析自由度是确定结构上各质量位置所需的独立参数数目,分析的目的是要确定结构振动形状。1.4 结构的动力特性一般指什么? 答:结构的动力特性是指:频率(周期)、振型和阻尼。动力特性是结构固有的,这是因为它们是由体系的基本参数(质量、刚度)所确定的、表征结构动力响应特性的量。动力特性不同,在振动中的响应特点亦不同。 1.5 什么是阻尼、阻尼力,产生阻尼的原因一般有哪些?什么是等效粘滞阻尼? 答:振动过程的能量耗散称为阻尼。 产生阻尼的原因主要有:材料的内摩擦、构件间接触面的摩擦、介质的阻力等等。当然,也包括结构中安装的各种阻尼器、耗能器。 阻尼力是根据所假设的阻尼理论作用于质量上用于代替能量耗散的一种假

基于matlab的有限元法分析平面应力应变问题刘刚

姓名:刘刚学号:15 平面应力应变分析有限元法 Abstruct:本文通过对平面应力/应变问题的简要理论阐述,使读者对要分析的问题有大致的印象,然后结合两个实例,通过MATLAB软件的计算,将有限元分析平面应力/应变问题的过程形象的展示给读者,让人一目了然,快速了解有限元解决这类问题的方法和步骤! 一.基本理论 有限元法的基本思路和基本原则以结构力学中的位移法为基础,把复杂的结构或连续体看成有限个单元的组合,各单元彼此在节点出连接而组成整体。把连续体分成有限个单元和节点,称为离散化。先对单元进行特性分析,然后根据节点处的平衡和协调条件建立方程,综合后做整体分析。这样一分一合,先离散再综合的过程,就是把复杂结构或连续体的计算问题转化简单单元分析与综合问题。因此,一般的有限揭发包括三个主要步骤:离散化单元分析整体分析。 二.用到的函数 1. LinearTriangleElementStiffness(E,NU,t,xi,yi,xj,yj,xm,ym,p) (K k I f) (k u) (k u A) (E NU t) 三.实例 例1.考虑如图所示的受均布载荷作用的薄平板结构。将平板离散化成两个线性三角元,假定E=200GPa,v=,t=0.025m,w=3000kN/m. 1.离散化 2.写出单元刚度矩阵

通过matlab 的LinearTriangleElementStiffness 函数,得到两个单元刚度矩阵1k 和2k ,每个矩阵都是6 6的。 >> E=210e6 E = >> k1=LinearTriangleElementStiffness(E,NU,t,0,0,,,0,,1) k1 = +006 * Columns 1 through 5 0 0 0 0 0 0 0 0 Column 6 >> NU= NU = >> t= t = >> k2=LinearTriangleElementStiffness(E,NU,t,0,0,,0,,,1)

工程力学 第17章 复合材料的力学行为 习题及解析

工程力学(静力学与材料力学)习题解答 第17章 复合材料的力学行为 17-1 图示结构中,两种材料的弹性模量分别为E a 和E b ,且已知E a >E b ,二杆的横截面面积均为bh ,长度为l ,两轮之间的间距为a ,试求: 1.二杆横截面上的正应力; 2.杆的总伸长量及复合弹性模量; 3.各轮所受的力。 知识点:静不定问题,复合弹性模量 难度:很难 解答: 解:1.P Nb Na F F F =+ (1) b a l l ?=? (2) bh E l F l a Na a =? (3) bh E l F l b b Nb = ? (4) 将(3)、(4)代入(2),得b Nb a Na E F E F = (5) (1)、(5)联立解得 P b a a Na F E E E F +=,P b a b Nb F E E E F += bh F E E E bh F P b a a Na a +==σ,bh F E E E bh F P b a b Nb b +==σ 2.由(3)式 bh E E l F bh E l F l )(b a P a Na a +== ? 设复合弹性模量E c ) 2(c P bh E l F l =?,由于a l l ?=?,比较两式得 2 b a c E E E += 3.由于F Na >F Nb ,所以,轮C 、轮G 脱离接触面,所以受力为零。 0)(=∑F k M ,02 2R Nb Na =--a F h F h F H ∴ b a b a P R 2E E E E a h F F H +-=,b a b a P R R 2E E E E a h F F F H D +-== 17-2 玻璃纤维/环氧树脂单层复合材料由2.5kg 纤维与5kg 树脂组成。已知玻璃纤维的弹性模量E f = 85GPa ,密度f ρ= 2500kg/m 3 ,环氧树脂的弹性模量E m = 5GPa ,密度m ρ= 1200kg/m 3。试求垂直于纤维方向和平行于纤维方向的弹性模量E y 和E x 。 知识点:单向铺层纤维增强复合材料,复合弹性模量 难度:一般 解答: 解:纤维和基体的总体积:00517.01200 5 25005.2=+= V m 3 纤维体积与复合材料总体积之比:1934.000517 .025005 .2f ==V 11.685 )1934.01(51934.085 5)1(f f m f f m =?-+??=-+= E V E V E E E y GPa G D R F D Na F Nb F C H R F H P F a K (a) 习题17-1图

几个基本常数弹性模量-泊松比-应力应变曲线

全应力-应变曲线 测量岩石的应力应变曲线一般可以有两中试验机:一种是,柔性试验机,使用这种试验机测量时,容易发发生“岩爆”现象,导致试验中不能得到峰值以后的应力应变信息。另种是,刚性试验机,这种试验机刚度比较高,有“让压”的特点,就不会有“岩爆”现象发生,可以得到全应力-应变曲线用以研究岩石破裂的性质。 刚度矩阵的物理意义: 单元刚度矩阵的物理意义,一句话概括说来就是各个节点在广义力的作用下节点的位移变化量。 强度是零件的抗应力程度,反映的是什么时候断裂,破损等 刚度反映的是变形大小,就是零件受力后的变形。 刚度矩阵和柔度矩阵的物理意义: 一般将刚度矩阵记为[D],柔度矩阵为[C],二者互为逆矩阵。 [C]矩阵中任一元素Cij的物理意义为:当微小单元体上仅作用有j方向的单位应力增加,而其他方向无应力增量时,i方向的应变增量分量就等于Cij。 [D]矩阵中任一元素Dij的物理意义为:要使微小单元体只在j方向发生单位应变,而其他方向不允许发生应变,则必须造成某种应力组合,在这种应力组合中,i方向应力分量为Dij。 对于各向异性材料,[D]和[C]都是非对称矩阵,从机理上来说是合理的,然而它给数学模型带来复杂性,也增加了有限元计算的困难。从工程实用的角度来考虑,往往忽略这种非对称性,而处理为对称矩阵。 物理概念:杨氏模量和泊松比 在弹性范围内大多数材料服从虎克定律,即变形与受力成正比。纵向应力与纵向应变的比例常数就是材料的弹性模量E,也叫杨氏模量。而横向应变与纵向应变之比值称为泊松比μ,也叫横向变性系数,它是反映材料横向变形的弹性常数。 杨氏模量(Young's modulus)是表征在弹性限度内物质材料抗拉或抗压的物理量,它是沿纵向的弹性模量。1807年因英国医生兼物理学家托马斯·杨(Thomas

最新7.4-单元刚度矩阵组装及整体分析

7.4 单元刚度矩阵组装及整体分析 7.4.1 单刚组装形成总刚 根据全结构的平衡方程可知,总体刚度矩阵是由单元刚度矩阵集合而成的.如果一个结构的计算模型分成个单元,那么总体刚度矩阵可由各个单元的刚度矩阵组装而成,即 [K]是由每个单元的刚度矩阵的每个系数按其脚标编号“对号入座”叠加而成的.这种叠加要求在同一总体坐标系下进行.如果各单元的刚度矩阵是在单元局部坐标下建立的,就必须要把它们转换到统一的结构(总体)坐标系.将总体坐标轴分别用表示,对某单元有 式中,和分别是局部坐标系和总体坐标系下的单元结点位移向量;[T]为坐标转换阵,仅与两个坐标系的夹角有关,这样就有 是该单元在总体坐标系下的单元刚度矩阵.以后如不特别强调,总体坐标系下的各种物理参数 均不加顶上的横杠. 下面就通过简单的例子来说明如何形成总体刚度矩阵.设有一个简单的平面结构,选取6个结点,划分为4个单元.单元及结点编号如图3-27所示.每个结点有两个自由度.总体刚度矩阵的组装过程可分为 下面几步:

图7-27 (1)按单元局部编号顺序形成单元刚度矩阵.图7-27中所示的单元③,结点的局部编号顺序为.形成的单元刚度矩阵以子矩阵的形式给出是 (2)将单元结点的局部编号换成总体编号,相应的把单元刚度矩阵中的子矩阵的下标也换成总体编号.对下图3-27所示单元③的刚度矩阵转换成总体编号后为 (3)将转换后的单元刚度矩阵的各子矩阵,投放到总体刚度矩阵的对应位置上.单元③的各子矩阵投放后情况如下:

(4)将所有的单元都执行上述的1,2,3步,便可得到总体刚度矩阵,如式(3-9).其中右上角的上标表示第单元所累加上的子矩阵. (3-9)(5)从式(3-9)可看出,总体刚度矩阵中的子矩阵AB是单元刚度矩阵的子矩阵转换成总体编号后 具有相同的下标,的那些子矩阵的累加.总体刚度矩阵第行的非零子矩阵是由与结点相联系的那些单元的子矩阵向这行投放所构成的. 7.4.2 结点平衡方程 我们首先用结构力学方法建立结点平衡方程.连续介质用有限元法离散以后,取出其中任意一个结点,从环绕点各单元移置而来的结点载荷为 式中表示对环绕结点的所有单元求和,环绕结点的各单元施加于结点的结点力为

ansys质量矩阵刚度矩阵提取说课材料

a n s y s质量矩阵刚度 矩阵提取

ansys质量矩阵刚度矩阵提取 看了这么久了都没人回,查了一些质料终于找到答案了,,下面提供三种方法:方便与其他程序进行接口编程1. Which matrix you would like? element stiffness matrix or full stiffness matrix? element stiffness is within file.emat. full stiffness matrix is within file.full A simple way to dump the matrix is as follow: ------------------- /aux2 fileaux2,file,emat form,long dump,all ------------------- 2. 可以使用/DEBUG命令来得到。详细步骤参见下面的宏文件 finish /clear PI=3.1415926 w1=3 w2=10 w3=6 w4=1.2 r=.8 t=0.08 /PREP7 !* ET,1,SHELL63 R,1,t ET,2,MASS21 R,2,500,500,500,2000,2000,2000,

!* UIMP,1,EX, , ,2e11 UIMP,1,NUXY, , ,0.3, UIMP,1,DAMP, , ,0.2, UIMP,1,DENS, , ,7800, BLC4,0,0,w2,w1 ESIZE,1.5,0, AMESH,all NSEL,S,LOC,X,0.0 D,all, , , , , ,ALL, , , , , allsel,all SFA,all,1,PRES,12 FINISH /OUTPUT,cp,out,, ! 将输出信息送到cp.out文件 /debug,-1,,,1 ! 指定输出单元矩阵 /SOLU SOLVE finish /OUTPUT, TERM ! 将输出信息送到output windows中 ! 这时用编辑器打开cp.out文件,可以看到按单元写出的质量、刚度等矩阵 3. 其原理很简单,即使用ansys的超单元即可解决问题。定义超单元,然后列出超单元的刚度矩阵即可。 面是一个小例题,自可明白。 /prep7 k,1 k,2,3000 l,1,2 et,1,beam3 mp,ex,1,2e5 mp,prxy,1,0.3 mp,dens,1,2e3 r,1,5000,2e7,200 lesize,all,,,10 lmesh,all

第12章 模态分析21

第12章 模态分析 12.1 模态分析概述 模态分析是ANSYS 中分析结构自然频率和模态形状的方法;它假设:①结构刚度矩阵和质量矩阵不发生改变;②除非指定使用阻尼特征求解方法,否则不考虑阻尼效应;③结构中没有随时间变化的载荷。 在无阻尼系统中,结构振动方程如下 []{}[]{}{}0=+u K u M (12-1) 式中,[]M 为质量矩阵;[]K 为刚度矩阵;{}u 为节点加速度向量;{}u 节点位移向量。其中刚度矩阵可以包括预应力效应带来的附加刚度。对线性系统而言,自由振动满足下面方程 {}{}t u i i ω?cos = (12-2) 式中,{}i ?为第i 阶模态形状的特征向量; i ω第i 阶自然振动频率;t 时间。 将(12-2)代入方程(12-1),得到 [][]() {}{}02=+-i i K M ?ω (12-3) 从式(12-3)中得到结构的振动特征方程为 [][]02=+-K M i ω (12-4) 通过式(12-4)可以求出第i 阶自然振动频率i ω,进而代入(12-3)可以求出第i 阶模态形状的特征向量{}i ?。将{}i ?对质量矩阵[]M 进行归一化处理,使用命令MODOPT,,,,,,,OFF ,可以得到 {}[]{}1=i T i M ?? (12-5) 如果{}i ?,向自身做归一化处理,使用命令MODOPT ,,,,,,ON ,那么{}i ?中最大的向量坐标将归一化为1.0。 如果使用缩减模态提取方法,使用MODOPT,REDUC ,第i 阶模态形状的特征向量{}i ?可以通过使用MXPAND 命令进行扩展。

12.2模态分析过程 ANSYS的模态分析是线性分析的一种,对于任何非线性特性,如塑性和接触(间隙)单元,在模态分析中将被忽略。 模态分析过程由4个主要步骤组成,即前处理、加载与求解、扩展模态,以及查看结果和后处理。 12.2.1前处理 建模是指建立分析的有限元数学模型,包括建立几何模型和划分网格,模态分析的建模过程与一般的建模过程并没有实质性的区别,具体建模可以参见第三章。但根据模态分析的特点,需要注意以下几点: ?定义材料特性时,必须考虑质量的问题。如果最终得到的模型中没有任何质量, 那么质量矩阵将为[]0,而无法求解系统的固有频率。 ?模态分析只考虑材料的线性行为。材料可以为线性各向同性、正交各向异性、温 度无关和温度有关等类型,必须定义材料的杨氏模量和质量相关属性。对于可能 定义的非线性特性,ANSYS在求解时都将忽略。 模态分析只考虑网格单元的线性行为,对于非线性的单元类型将会被视为线性单元处理,例如在结构中定义了接触单元,在分析中将计算接触单元初始状态的刚度矩阵,而将此刚度矩阵应用到分析的其他任何时候。对于预应力分析,模态分析将接触单元的刚度矩阵取为静态预应力分析结束时的刚度矩阵。 如果定义特殊的阻尼单元类型(如COMBIN14, COMBIN37等),必须按单元的要求定义需要的实常数。 12.2.2加载与求解 在这个步骤中要定义分析类型和分析选项,施加载荷,指定加载阶段选项,并进行固频率的有限元求解。应在求解前设置模态扩展选项,或在得到初始解后,对模态进行扩展以供查看。1.设置分析类型 首先进入求解器,并使用ANTYPE命令或GUI交互的方式,定义求解类型为模态分析。具体操作方法如下。 命令方式: ANTXPE, 2 GUI方式: 选择Main Menu > Solution > Analysis Type > New Analysis命令,弹出New Analysis对话框,在对话框中选中Modal,单击OK按钮确认。 2.设置分析选项

复合材料力学讲义

复合材料力学讲义 第一部分简单层板宏观力学性能 1.1各向异性材料的应力—应变关系 应力—应变的广义虎克定律可以用简写符号写成为: (1—1) 其中σ i 为应力分量,C ij 为刚度矩阵ε j 为应变分量.对于应力和应变张量对称 的情形(即不存在体积力的情况),上述简写符号和常用的三维应力—应变张量符号的对照列于表1—1。 按表1—l,用简写符号表示的应变定义为: 表1—1 应力——应变的张量符号与简写符号的对照 注:γ ij (i≠j)代表工程剪应变,而ε ij (i≠j)代表张量剪应变 (1—2) 其中u,v,w是在x,y,z方向的位移。 在方程(1—2)中,刚度矩阵C ij 有30个常数.但是当考虑应变能时可以证明弹性材料的实际独立常数是少于36个的.存在有弹性位能或应变能密度函数的 弹性材料当应力σ i 作用于应变dε j 时,单位体积的功的增量为: (1—3) 由应力—应变关系式(1—1),功的增量为: (1—4)

沿整个应变积分,单位体积的功为: (1—5) 虎克定律关系式(1—1)可由方程(1—5)导出: (1—6) 于是 (1—7) 同样 (1—8) 因W的微分与次序无,所以: (1—9) 这样刚度矩阵是对称的且只有21个常数是独立的。 用同样的方法我们可以证明: (1—10) 其中S 是柔度矩阵,可由反演应力—变关系式来确定应变应力关系式为ij (1—11) 同理 (1—12)即柔度矩阵是对称的,也只有21个独立常数.刚度和柔度分量可认为是弹性常数。 在线性弹性范围内,应力—应变关系的一般表达式为: (1—13)实际上,关系式(1—13)是表征各向异性材料的,因为材料性能没有对称平面.这

弹性力学 本构方程 刚度矩阵 柔度矩阵

弹性力学本构方程刚度矩阵柔度矩阵弹性力学本构方程刚度矩阵柔度矩 阵 中文名称: 弹性力学 英文名称: theory of elasticity 其他名称: 弹性理论 定义: 研究弹性体在荷载等外来因素作用下所产生的应力、应变、位移和稳定性的学科。 所属学科: 水利科技(一级学科) ;工程力学、工程结构、建筑材料(二级学科) ;工程力学(水利)(三级学科) 弹性力学也称弹性理论,主要研究弹性体在外力作用或温度变化等外界因素下所产生的应力、应变和位移,从而解决结构或机械设计中所提出的强度和刚度问题。在研究对象上,弹性力学同材料力学和结构力学之间有一定的分工。材料力学基本上只研究杆状构件;结构力学主要是在材料力学的基础上研究杆状构件所组成的结构,即所谓杆件系统;而弹性力学研究包括杆状构件 在内的各种形状的弹性体。

弹性力学是固体力学的重要分支,它研究弹性物体在外力和其它外界因素作用下产生的变形和内力,也称为弹性理论。它是材料力学、结构力学、塑性力学和某些交叉学科的基础,广泛应用于建筑、机械、化工、航天等工程领域。 弹性体是变形体的一种,它的特征为:在外力作用下物体变形,当外力不超过某一限度时,除去外力后物体即恢复原状。绝对弹性体是不存在的。物体在外力除去后的残余变形很小时,一般就把它当作弹性体处理。 弹性力学的发展大体分为四个时期。 人类从很早时就已经知道利用物体的弹性性质了,比如古代弓箭就是利用物体弹性的例子。当时人们还是不自觉的运用弹性原理,而人们有系统、定量地研究弹性力学,是从17世纪开始的。 发展初期的工作是通过实践,探索弹性力学的基本规律。这个时期的主要成就是R.胡克于1678年发表的弹性体的变形与外力成正比的定律,后来被称为胡克定律。第二个时期是理论基础的建立时期。这个时期的主要成就是,从1822,1828年间,在A.-L?柯西发表的一系列论文中明确地提出了应变、应变分量、应力和应力分量概念,建立了弹性力学的几何方程、平衡(运动)微分方程,各向同性和各向异性材料的广义胡克定律,从而为弹性力学奠定了理论基础。 弹性力学的发展初期主要是通过实践,尤其是通过实验来探索弹性力学的基本规律。英国的胡克和法国的马略特于1680年分别独立地提出了弹性体的变形和所受外力成正比的定律,后被 称为胡克定律。牛顿于1687年确立了力学三定律。 同时,数学的发展,使得建立弹性力学数学理论的条件已大体具备,从而推动弹性力学进入第二个时期。在这个阶段除实验外,人们还用最粗糙的、不完备的理论来处理一些简单构件的力学问题。这些理论在后来都被指出有或多或少的缺点,有些甚至是完全错误的。

相关主题
文本预览
相关文档 最新文档