基于Matlab对多自由度振动系统的数值分析机械工程.doc

上传人:b****2 文档编号:1642814 上传时间:2022-10-23 格式:DOC 页数:7 大小:613.62KB
下载 相关 举报
基于Matlab对多自由度振动系统的数值分析机械工程.doc_第1页
第1页 / 共7页
基于Matlab对多自由度振动系统的数值分析机械工程.doc_第2页
第2页 / 共7页
基于Matlab对多自由度振动系统的数值分析机械工程.doc_第3页
第3页 / 共7页
基于Matlab对多自由度振动系统的数值分析机械工程.doc_第4页
第4页 / 共7页
基于Matlab对多自由度振动系统的数值分析机械工程.doc_第5页
第5页 / 共7页
点击查看更多>>
下载资源
资源描述

基于Matlab对多自由度振动系统的数值分析机械工程.doc

《基于Matlab对多自由度振动系统的数值分析机械工程.doc》由会员分享,可在线阅读,更多相关《基于Matlab对多自由度振动系统的数值分析机械工程.doc(7页珍藏版)》请在冰豆网上搜索。

基于Matlab对多自由度振动系统的数值分析机械工程.doc

研究生课程论文封面

课程名称:

数值分析

论文题目:

基于Matlab对多自由度振动系统的数值分析

学生班级;机械工程机械电子系3班

学生姓名:

陈大爷

任课教师:

王师傅

学位类别:

学位课(2学分,32学时)

评分标准及分值

选题与参阅资料

(分值)

论文内容

(分值)

论文表述

(分值)

创新性

(分值)

评分

论文评语:

总评分

评阅教师:

评阅时间

年月日

注:

此表为每个学生的论文封面,请任课教师填写分项分值

基于Matlab对多自由度振动系统的数值分析

摘要:

多自由度主要研究矩阵的迭代求解,我们在分析抽象的理论的同时根据MATLAB编程实现数据的迭代最后可以得到所要的数据,使我们的计算更加简便。

关键词:

振动系统;多自由度;迭代;MATLAB

引言:

在工程振动中,研究某系统振动时,首先要求出系统的固有频率。

对于多自由度振动系统,计算系统固有频率与主振型主要有2种方法:

(1)利用特征矩阵方程式与特征方程式求解;

(2)矩阵迭代法求解【1】。

MATLAB作为一个以矩阵和数组为核心计算的软件,对矩阵迭代法中的矩阵迭代计算尤其适合【2】。

本文主要利用MATLAB对多自由度系统振动矩阵迭代求解。

一.多自由度振动系统 

1.多自由度振动系统的数学模型

多自由度振动系统的数学模型【1】:

(1-1)

其中、、、和分别为质量矩阵、阻尼矩阵、刚度矩阵、力向量和响应向量。

把这个时域矩阵方程变换到拉氏域(变数为),并假定初始位移和初始速度为零,则得:

(1-2)

或(1-3)

式中:

动刚度矩阵。

对于自由度系统,此方程有个复共轭对出现的特征根:

其中阻尼因子;为阻尼固有频率。

将带入公式中,得

(1-4)

二.多自由度振动系统的数值分析

1.多自由度振动系统的迭代运算

记为初始迭代列阵,由展开定理,可以表示为

(1-5)

对上式左乘矩阵A,由式(1-4)得知第一次迭代后所得的列阵为

=(1-6)

经第二次迭代后,得

同理第(r-1)次迭代后的结果为

(1-7)

2.矩阵迭代法的实例分析

k

k

2k

m

2m

m

图1-1分析图

用矩阵迭代法求解过程如下:

解:

用影响系数法求得系统的质量矩阵和刚度矩阵为

算出K的逆阵及系统的动力矩阵为

若,第一次迭代后得到

重复上述步骤,各次的迭代结果列于表1-1。

由表可见,经过6次迭代后已有,所以第一阶主振型及基频取为,

表1-1第一阶主振型的迭代

r

1

2

3

4

5

6

7

1

1

1

0.500000

0.875000

1.000000

0.465517

0.862069

1.000000

0.462830

0.860911

1.000000

0.462617

0.860814

1.000000

0.462598

0.860806

1.000000

0.462598

0.860806

1.000000

8

7.250000

7.189655

7.184652

7.184245

7.184210

三.利用MATLAB对多自由度系统振动矩阵迭代求解

1.MATLAB计算程序

clc;

clear;

%建立质量矩阵M,刚度矩阵K\

symskm;

M=[m00

0m0

002*m];

K=[2*k-k0

-k3*k-2*k

0-2*k2*k];

%*********迭代第n阶主阵型********************

%n为计数器

%

n=1;

whilen<=3

%计算系统动力矩阵A

ifn==1

A(:

:

n)=K\M;

elseifn~=1

A(:

:

n)=A(:

:

n-1)-(MP(:

n-1)\t(:

n-1))*f(:

n-1)*f(:

n-1)'*M;

end

%定义初始迭代向量X

(1)

ifn==1

X(:

1,n)=[111]';

elseifn==2

X(:

1,n)=[11-1]';

elseifn==3

X(:

1,n)=[1-11]';

end

%迭代过程,Y为中间矩阵,i为迭代次数

i=1;

Y(:

1,n)=A(:

:

n)*X(:

1,n);

X(:

2,n)=Y(3,1,n).\Y(:

1,n);

whileabs(X(1,i,n)-X(1,i+1,n))>=0.000001&&abs(X(2,i,n)-X(2,i+1,n))>0.000001

Y(:

i+1,n)=A(:

:

n)*X(:

i+1,n);

X(:

i+2,n)=Y(3,i+1,n).\Y(:

i+1,n);

X(:

2);

i=i+1;

end

%X(:

:

n)

f(:

n)=X(:

i,n);

t(n)=Y(3,i,n);

MP(:

n)=f(:

n)'*M*f(:

n);

n=n+1;

end

%输出数据过程

disp('第一阶主阵型的迭代结果');

X(:

:

1)

disp('第二阶主阵型的迭代结果');

X(:

:

2)

disp('第三阶主阵型的迭代结果');

X(:

:

3)

disp('φi的计算结果,矩阵的每列分别是1,2,3阶的');

f

disp('######******注意***********主阵型的迭代结果后面的0是系统的占位符号,不算计算结果');

2.MATLAB编程计算结果

四.结束语

本文采用MATLAB语言,不仅相对语句少,可读性强,只要输入必要的数据,就可以快速地获得振动系统的固有频率以及主振型【3】。

对设计人员计算复杂多自由度系统固有频率具有参考意义。

参考文献

[1]许本文,焦群英.机械振动与模态分析基础[M].北京:

机械工业出版社,1988.

[2]方治华,贾宏玉,沈利.应用Matlab对有死区的振动系统进行仿真分析[J],包头钢铁学院学报,2004,12.

[3张志涌等,精通MATLAB[M],北京:

北京航空航天大学出版社,2000.

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 医药卫生 > 基础医学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1