验证ANSYS输出的整体K和M

2017-01-16  by:CAE仿真在线  来源:互联网

%
% 目的:验证ANSYS中输出整体刚度矩阵K和整体质量矩阵M
% 以一个6单元简支梁模型计算结果为例,相应ANSYS代码见例1所示。
%
% 验证基础:
% (1) 基于模态分析中,验证ANSYS振型是否关于质量矩阵M归一化
% (2) 特征值分析,由K,M计算特征值,即频率和振型,与ANSYS计算结果对比
%
% 注意事项:
% (1) ANSYS输出矩阵以Harwell-Boeing格式存储,并且由于K,M的对称性
% 仅存储了对角线以下的元素,因此,在还原矩阵时,还应将对称部分考虑进去。
%
% (2) 关于如何输出K,M的ANSYS命令流以及如何提取Harwell-Boeing格式矩阵,
% 可参考前期整理的资料。
%
% Author: J.H.Zhu
% 2009-06-09
clc;clear;
% 提取K,M
K1=full(hb_to_msm('stiffness'));
M1=full(hb_to_msm('mass'));
% 还原对角线以上元素,使之为对称阵
K =diag(diag(K1)/2)+K1-diag(diag(K1));
K = K+K';
M =diag(diag(M1)/2)+M1-diag(diag(M1));
M = M+M';
% 特征值分析,即计算频率Freq和振型Phi
[X1,Lamda]=eig(K,M);
[nd,nd]=size(K);
fdof=[1:18]';
pdof=[1,2,17]';% 约束自由度
fdof(pdof)=[];
[nfdof,nfdof]=size(X1);
for j=1:nfdof;
mnorm=sqrt(X1(:,j)'*M*X1(:,j));
X1(:,j)=X1(:,j)/mnorm;
end
[L,i]=sort(diag(Lamda));
X2=X1(:,i);
Phi=zeros(18,nfdof);
Phi(fdof,:)=X2;
Freq = sqrt(L)/(2*pi);
% 读取ANSYS输出的频率与振型;
Freq_ansys = load('Freq.txt');
for i =1:6
name=['mod0',num2str(i),'.txt'];
Phi_ansys(:,i)=load(name);
end
% 计算两者误差
Err_F = norm(Freq(1:6)-Freq_ansys(1:6));
Err_Phi = norm(Phi(:,1:6)-Phi_ansys(:,1:6));
% 验证归一化
Phi_ansys(pdof,:)=[];
test = Phi_ansys'*M*Phi_ansys;
bar3(test)





开放分享:优质有限元技术文章,助你自学成才

相关标签搜索:验证ANSYS输出的整体K和M Ansys有限元培训 Ansys workbench培训 ansys视频教程 ansys workbench教程 ansys APDL经典教程 ansys资料下载 ansys技术咨询 ansys基础知识 ansys代做 Fluent、CFX流体分析 HFSS电磁分析 Abaqus培训 

编辑
在线报名:
  • 客服在线请直接联系我们的客服,您也可以通过下面的方式进行在线报名,我们会及时给您回复电话,谢谢!
验证码

全国服务热线

1358-032-9919

广州公司:
广州市环市中路306号金鹰大厦3800
电话:13580329919
          135-8032-9919
培训QQ咨询:点击咨询 点击咨询
项目QQ咨询:点击咨询
email:kf@1cae.com