I Have A Program of Rotor Shaft Analysis in Matlab

Download as docx, pdf, or txt
Download as docx, pdf, or txt
You are on page 1of 2

i have a program of rotor shaft analysis in

matlab.i am able to plot mode shapes but i need


the values for displacements.can any one help
me

clear format short e close all

set(0,'defaultaxesfontsize',12) set(0,'defaultaxesfontname','Times New


Roman') set(0,'defaulttextfontsize',12) set(0,'defaulttextfontname','Times New
Roman')

% set the material parameters E = 211e9; G = 81.2e9; rho = 7810;


damping_factor = 0; % no damping in shaft

% Consider the model with 6 equal length elements % Shaft is 1.5m long
model.node = [1 0.0; 2 0.25; 3 0.5; 4 0.75; 5 1.0; 6 1.25; 7 1.50;];

% Assume shaft type 2 - Timoshenko with gyroscopic effects included % Solid


shaft with 50mm outside diameter shaft_od = 0.05; shaft_id = 0.0; model.shaft
= [2 1 2 shaft_od shaft_id rho E G damping_factor; ... 2 2 3 shaft_od shaft_id
rho E G damping_factor; ... 2 3 4 shaft_od shaft_id rho E G damping_factor; ... 2
4 5 shaft_od shaft_id rho E G damping_factor; ... 2 5 6 shaft_od shaft_id rho E G
damping_factor; ... 2 6 7 shaft_od shaft_id rho E G damping_factor];

% Disk 1 at node 3 has diameter of 280mm and thickness of 70mm % Note


inside diameter of disk is assumed to be the outside diameter of the % shaft
disk_od = 0.28;

disk_thick = 0.07; model.disc = [1 4 rho disk_thick disk_od shaft_od];

% constant stiffness short isotropic bearing (1NM/m) with no damping %


bearings at the ends - nodes 1 and 7 bear_stiff = 1e6; model.bearing = [3 1
bear_stiff bear_stiff 0 0; ... 3 7 bear_stiff bear_stiff 0 0];

% draw the rotor figure(1), clf picrotor(model)

% plot the Campbell diagram and root locus

Rotor_Spd_rpm = 0:100:4500.0; Rotor_Spd = 2*pi*Rotor_Spd_rpm/60; % convert


to rad/s

[eigenvalues,eigenvectors,kappa] = chr_root(model,Rotor_Spd);

figure(2) NX = 2; damped_NF = 1; % plot damped natural frequencies


plotcamp(Rotor_Spd,eigenvalues,NX,damped_NF,kappa)

figure(3) plotloci(Rotor_Spd,eigenvalues,NX)

% plot the modes at a given speed

Rotor_Spd_rpm = 4000; Rotor_Spd = 2*pi*Rotor_Spd_rpm/60; % convert to rad/s


[eigenvalues,eigenvectors,kappa] = chr_root(model,Rotor_Spd);
figure(4) subplot(221) plotmode(model,eigenvectors(:,1),eigenvalues(1))
subplot(222) plotmode(model,eigenvectors(:,3),eigenvalues(3)) subplot(223)
plotmode(model,eigenvectors(:,5),eigenvalues(5)) subplot(224)
plotmode(model,eigenvectors(:,7),eigenvalues(7))

% plot orbits

figure(5) outputnode = [3 5]; axes('position',[0.2 0.53 0.2 0.2 ])


plotorbit(eigenvectors(:,1),outputnode,'Mode 1',eigenvalues(1))
axes('position',[0.39 0.53 0.2 0.2 ])
plotorbit(eigenvectors(:,3),outputnode,'Mode 2',eigenvalues(3))
axes('position',[0.58 0.53 0.2 0.2 ])
plotorbit(eigenvectors(:,5),outputnode,'Mode 3',eigenvalues(5))
axes('position',[0.2 0.25 0.2 0.2 ]) plotorbit(eigenvectors(:,7),outputnode,'Mode
4',eigenvalues(7)) axes('position',[0.39 0.25 0.2 0.2 ])
plotorbit(eigenvectors(:,9),outputnode,'Mode 5',eigenvalues(9))
axes('position',[0.58 0.25 0.2 0.2 ])
plotorbit(eigenvectors(:,11),outputnode,'Mode 6',eigenvalues(11))

eigval = chr_root(model,Rotor_Spd); nat_freq_Hz = abs(eigval(1:2:16)/(2*pi));

format short disp(' Model') disp(' ') disp([nat_freq_Hz])

i need the values used to draw mode shapes the below programs should be
pasted in the directory to get the result

Error in chr_root (line 108)


kk = whirl(evector(1:2:ndof),evector(2:2:ndof));
Error in (line 70)
[eigenvalues,eigenvectors,kappa] = chr_root(model,Rotor_Spd);
can anyone help with this?

You might also like