cantbeam_shkr_modeshape.m

来自「vibration simulation using ansys and mat」· M 代码 · 共 78 行

M
78
字号
	echo off
%	cantbeam_shkr_modeshape.m  Plots mode shapes for spring-tip cantilever
%	using the results from ANSYS model cantbeam_ss_spring_shkr.inp.  

   	clear all;
	
	hold off;

	clf;
				
%	load the .mat file cantbeamXXred, containing evr - the modal matrix, freqvec -
%	the frequency vector and node_numbers - the vector of node numbers for the modal
%	matrix

	model = menu('choose which finite element model to use ... ', ....
				'2 beam elements', ...
				'4 beam elements', ...
				'6 beam elements', ...
				'8 beam elements', ...
				'10 beam elements', ...
				'12 beam elements', ...
				'16 beam elements', ...
				'32 beam elements', ...
				'64 beam elements');

	if  model == 1
		load cantbeam2red_shkr;		
	elseif  model == 2
		load cantbeam4red_shkr;		
	elseif  model == 3
		load cantbeam6red_shkr;		
	elseif  model == 4
		load cantbeam8red_shkr;		
	elseif  model == 5
		load cantbeam10red_shkr;		
	elseif  model == 6
		load cantbeam12red_shkr;		
	elseif  model == 7
		load cantbeam16red_shkr;		
	elseif  model == 8
		load cantbeam32red_shkr;		
	elseif  model == 9
		load cantbeam64red_shkr;		
	end

%	define the number of degrees of freedom and number of modes from size of modal matrix

	[numdof,num_modes_total] = size(evr);

	elements = numdof - 1;

	xvec_beam = linspace(0,20,numdof);

	zvec_beam = zeros(size(xvec_beam));

	xvec_spring = [20 20];

	zvec_spring = [0 -3];
 
	for  cnt = 1:numdof
	
	ev = evr(:,cnt);

	ev = ev/max(abs(ev));
	
	freq = freqvec(cnt);	

	zvec_spring_ev = [-3 ev(numdof)];

	zvec_ev = ev;

   	plot(xvec_beam,zvec_beam,'k',xvec_spring,zvec_spring,'k',xvec_beam,zvec_ev,'k.-',xvec_spring,zvec_spring_ev,'k.-')
	title(['mode shape for ',num2str(elements),' element model, mode ',num2str(cnt),' at ',num2str(freq),' hz'])
	xlabel('distance along beam, mm')
	axis([-2.5 22.5 -5 5])
	pause

	end

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?