how to create a vector with if-else statement
Show older comments
Hello,
I have the table below and the only problem is for the highlighted column. ! want it to show me either (over-damped or underdamped oscillation) by comparing it with the damp_coefficient instead of showing me the actual values. if the damping_coeff >= to the response then the column should show overd-damped. in this case it is all overdamped. i attach the simple code i created for this.

K = [200,400,800,800,800,800,800,400,400,400]'; % different sprring constants
M = [0.5,0.5,0.5,0.5,0.5,0.5,0.5,1,2,3]'; % mass of each spring
Bc = [4,4,4,8,16,32,40,4,4,4,]'; %damping_coefficient
W = sqrt(K./M - (Bc.^2)./(4.*M.^2)); % frequency in rad/sec
V = W./(2*pi); %frequency in Hz
T_end = (10.*M)./Bc; %the time at which oscillation stops
z = 2*sqrt(K.*M); % condition for overdamp or underdamp
for k = 1:length(z)
if Bc >= z
disp('overdamped')
else
disp('underdamped')
end
end
table(K,M,Bc,z,W,V,T_end, 'variablenames', {'Spring_constant', 'mass',...
'damping_coeff','response','omega ', 'frequency', 'decay_time'})
Accepted Answer
More Answers (0)
Categories
Find more on Common Operations in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!