matlab分式多项式化简,有理分式多项式法模态参数识别
本帖最后由 simplebinbin 于 2014-9-10 09:30 编辑
clear;format long
%%%%%%%%%%%%%%%%%%%%%%%%%
%声明为全局变量
global mn;
fni=input('有理分式多项式法-输入数据批文件名:','s');
fid=fopen(fni,'r');
mn=fscanf(fid,'%d',1); %模态阶数
df=fscanf(fid,'%f',1); %频率间隔
fno=fscanf(fid,'%s',1); %输出数据文件名
b=fscanf(fid,'%f',[2,inf]); %输出实测频响函数实虚部数值数组
status=fclose(fid);
%定义幂多项式的阶次
nm=mn*2;
%取频响函数长度
n=length(b(1,:));
%建立离散频率向量
f=0:df:(n-1)*df;
%建立离散圆频率向量
w=2*pi*f;
%建立归一化离散频率向量
wi=w/max(w);
%建立实测频响函数复数向量
H=b(1,:)+i*b(2,:);
%计算拟合频响函数的分子和分母系数向量
[A,B]=invfreqs(H,wi,nm,nm,[],100);
%幂多项式方程求根
P=roots(B);
%计算模态频率向量
F1=abs(P)*max(w)/(2*pi);
%计算阻尼比向量
D1=-real(P)./(abs(P));
%计算振型系数向量
for k=1:mn
if k==1
p(1:nm-1)=P(2:nm);
else
p(1:k-1)=P(1:k-1);
p(k:nm-1)=P(k+1:nm);
end
y=poly(p);
S1(k)=polyval(A,P(k))/polyval(y,P(k));
end
%计算拟合的频响函数
H1=freqs(A,B,wi);
%绘制频响函数实部拟合曲线图
figure(2)
nn=1:n;
subplot(2,1,1);
plot(f,real(H(nn)),':',f,real(H1(nn)),'r');
xlabel('频率(Hz)');
ylabel('实部');
legend('实测','拟合');
grid on;
%绘制频响函数虚部拟合曲线图
subplot(2,1,2);
plot(f,b(2,:),':',f,imag(H1(nn)),'r');
xlabel('频率(Hz)');
ylabel('虚部');
legend('实测','拟合');
grid on;
%将模态频率从小到大排序
[F2,I]=sort(F1);
%剔除方程解中的非模态项和共轭项
m=0;
for k=1:nm-1
if F2(k)~=F2(k+1)
continue;
end
m=m+1;
l=I(k);
F(m)=F1(l); %模态频率
D(m)=D1(l); %阻尼比
S(m)=S1(l); %振型系数
end
%打开文件输出模态参数数据
fid=fopen(fno,'w');
fprintf(fid,'频率(Hz) 阻尼比(%%) 振型系数\n');
for k=1:mn
fprintf(fid,'%10.4f %10.4f %10.6f\n',F(k),D(k)*100.0,S(k));
end
status=fclose(fid);
matlab分式多项式化简,有理分式多项式法模态参数识别相关推荐
- matlab符号运算化简命令
MATLAB常见的化简函数如下: pretty(Alpha) collect(Alpha) factor(Alpha) expand(Alpha) simplify(Alpha) horner(Alp ...
- 多元经验模态分解_环境激励桥梁模态参数识别—环境激励模态参数识别概述
环境激励模态参数识别概述 1 结构模态参数识别 结构模态参数识别属于动力学的反问题,是利用外部激励和系统的响应求解系统的参数问题;这一过程亦称为模态分析(Modal Analysis).模态分析又分为 ...
- 连续小波变换应用于密集模态参数识别
我的第一篇文章: 摘要: 用 连续小波变换方法进行模态参数识别时,减小小波函数的带宽可以提高小波变换的频率分辨能力,但同时也会增大边沿效应,影响密集模态参数识别的精度.本文提 出了极值 ...
- c语言循环计算分式加减乘除混合运算,计算()_分式的加减乘除混合运算及分式的化简_中学题库-沪江中学学科网...
分式加减乘除混合运算:分式的混合运算应先乘方,再乘除,最后算加减,有括号的先算括号内的,也可以把除法转化为乘法,再运用乘法运算. 分式化简:在数学上,化简是十分重要的概念,一些复杂难辨的式子,很多时候 ...
- Matlab符号方程组化简
最近在上课的时候,发现一个很难化简的方程,如下: 从左化简到右,虽然能够用手写,但是太麻烦了,能不能用Maltab呢? 当然,根据高斯消元,首先得从方程组中最下面的方程化起,然后再回代到第一个方程,即 ...
- matlab符号表达式的化简
simplify(f) 对符号表达式进行化简,它利用各种类型的代数恒等式,包括求和. 积分.三角函数.指数函数以及 Bessel 函数等来化简符号表达式 simple(f) 对符号表达式尝试多种不同的 ...
- bouc wen matlab,基于Matlab磁流变阻尼器Bouc-Wen模型的参数识别
2018年 3月 第 46卷 第 5期 机床与液压 MACHINE TO0L& HYDRAULICS Mat.2018 Vo1.46 No.5 DOI:10.3969/j.issn.1001- ...
- 分式化简结果要求_分式的化简(含答案)
如何列分式方程解应用题 列分式方程解简单的实际应用问题的方法和步骤是: (1) 设 弄清题意和题目中的数量关系,用字母(如x )表示题目中的一个未知数: (2) 找 找到能够表示应用题全部含义的一个相 ...
- MATLAB中 分数化简
1.format rat (分数格式的意思,rat即ratio缩写): 以下皆按分数来计算: 用format命令还原回小数计算: 2.>>sym(15/9); sym是记号符号运算的意 ...
最新文章
- 大数据分布式集群搭建(插曲)
- 将字符串a复制到字符串b
- Ubuntu中使用VS Code
- md5校验工具hash
- shp文件中polyline是什么_SHP文件坐标转换工具1.0版
- 微信小程序——样式覆盖
- 美团外卖订单中心的演进
- wifi一到晚上服务器无响应,一到晚上九点,网络就开始卡了?主要原因是这三点!...
- 快速开发 HTML5 交互式地铁线路图
- [附源码]Java计算机毕业设计SSM办公自动化系统
- 蔡颖-《APS走向实践》书解读之二:需求驱动-预测、掌握、满足需求
- 二叉树-求叶节点个数
- java 调用jar_在Java程序中执行另一个jar
- java存根_java – Mockito在测试方法之外的存根
- 【时间之外】10分钟搞懂Python+Tushare+Excel股票分析
- 回文数--java两种方法实现
- 信道检测手机软件 ios_一分钟,教你检测iPhone硬件故障
- thinkpad装linux无线网卡驱动,ThinkPad E530 Fedora 20 下无线网卡驱动的安装
- 数据结构与算法-打印直角三角形算法
- VMware Fusion5激活Win7
热门文章
- 10秒就会让男人爱上的美女 长什么样
- 上网行为管理设备的介绍,部署与使用
- AtCoder Beginner Contest 170 F. Pond Skater
- 找不到或无法加载主类com.kuang.springcloud.DeptProvider_8002
- nas服务器上文件恢复,nas文件恢复
- Python开发实例:TPYBoard开发板制作声光控开关
- 2022北京高考数学压轴题21题的一种解答
- kestrel轻量级消息队列的安装
- LCD1602液晶显示模块学习笔记
- mysql程序语句范文_MySQL基本语句