MATLAB Answers

How to write a range of numbers in MATLAB?

452 views (last 30 days)
Abdul Rahim Mahayadin
Abdul Rahim Mahayadin on 9 Apr 2018
Edited: Walter Roberson on 22 Jul 2021 at 18:22
Hi, I am trying to generate a speed range in MATLAB. Let V is the speed, then how to write the coding to find the speed range of:
0<V<=12
12<V<=20
20<V<=30
30<V<=40
40<V<=50
50<V<=60
60<V<=70
70<V<=80
80<V<=90
90<V<=100
100<V<=110
V>110

Answers (4)

Walter Roberson
Walter Roberson on 9 Apr 2018
or you can use the second output of histc() or the third output of histcounts()

njj1
njj1 on 18 Apr 2018
ranges = [0,12,20:10:110]; %end points of requested speeds
for i = 1:numel(ranges)-1
   v{i} = V((V>ranges(i) & (V<=ranges(i+1))); %speeds between endpoints
   numV{i} = numel(v{i}); %number of speed entries between endpoints
end
v{end+1} = V(V>110);

KSSV
KSSV on 9 Apr 2018
V = 1:100 ;
idx = V>=10 & V<=20 ; % Get indices of velocities lying between 10 to 20
V(idx)
  3 Comments
rahim njie
rahim njie on 22 Jul 2021 at 18:01
thank.
Also i have written code that solves 3D kinematics problem. the code calculates angular velocity at set precsion angle of 60. what function do i use that will allow me to use the same code but calculate the velocity and angle from 1-60 degrees.
i have vectors in some of the calucations so using 'theta= 1:60' Caused erros
thanks

Sign in to comment.


Walter Roberson
Walter Roberson on 22 Jul 2021 at 18:13
Edited: Walter Roberson on 22 Jul 2021 at 18:22
theta = (0:60).';
and remember to use cosd() and sind()
Notice the .' there: it is transposing the 0:60 from a row vector into a column vector. When you combine this with row vectors, then the result would be to implicitly expand to two dimensions. For example,
v = 1:100;
theta = (0:60).';
dist = (v - v.^2/100) .* sind(theta);
surf(v, theta, dist, 'edgecolor', 'none')
size(v), size(theta), size(dist)
ans = 1×2
1 100
ans = 1×2
61 1
ans = 1×2
61 100

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!