logspace with gap of half

1 view (last 30 days)
Megha
Megha on 6 Jan 2019
Commented: Megha on 6 Jan 2019
yt = logspace(-3,4,8);
This gives 0.001, 0.01, 0.1,1,10,100,1000,10000
However, I want
0.001, 0.005, 0.01,0.05, 0.1, 0.5, 1,5, 10,50, 100,500, 1000,5000, 10000
How Can i get that?
Can anyone help?

Accepted Answer

Stephen23
Stephen23 on 6 Jan 2019
Edited: Stephen23 on 6 Jan 2019
>> V = logspace(-3,4,8);
>> V = [V;5*V];
>> V = V(1:end-1)
V =
0.001 0.005 0.010 0.050 0.100 0.500 1.000 5.000 10.000 50.000 100.000 500.000 1000.000 5000.000 10000.000
Note that the values you requested are not evenly spaced in log-space (because the power difference between adjacent values alternates between ~0.30103 and ~0.69897). Evenly spaced values would simply be:
>> V = logspace(-3,4,15)
0.0010000 0.0031623 0.0100000 0.0316228 0.1000000 0.3162278 1.0000000 3.1622777 10.0000000 31.6227766 100.0000000 316.2277660 1000.0000000 3162.2776602 10000.0000000
where the difference in powers between adjacent values is always exactly 0.5.

More Answers (0)

Community Treasure Hunt

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

Start Hunting!