logspace with gap of half

2 次查看(过去 30 天)
Megha
Megha 2019-1-6
评论: Megha 2019-1-6
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?

采纳的回答

Stephen23
Stephen23 2019-1-6
编辑:Stephen23 2019-1-6
>> 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.

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Creating and Concatenating Matrices 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by