MATLAB can't create a vector -10e-6:10e-6 of a certain length. Anyone knows how to do it?

8 ビュー (過去 30 日間)
Neelima Dahal
Neelima Dahal 2018 年 7 月 31 日
編集済み: KALYAN ACHARJYA 2018 年 7 月 31 日
Suppose, h = 10e-6 and l = 125e-6.
I want to create two vectors of the same length, say 51. The first vector goes from -h to h, and the second vector goes from -l to l.
MATLAB computes -10e-6:10e-6 as just -10e-6, which I think is because I am dealing with very small numbers here. How can I fix this? If instead I also specify the step size -10e-6:2e-6:10e-6, then it works fine.
Thank you!
  2 件のコメント
David Goodmanson
David Goodmanson 2018 年 7 月 31 日
編集済み: David Goodmanson 2018 年 7 月 31 日
Hi Neelima,
type 'help linspace' and take a look at that function
KALYAN ACHARJYA
KALYAN ACHARJYA 2018 年 7 月 31 日
編集済み: KALYAN ACHARJYA 2018 年 7 月 31 日
You can use linespace function to the required vector length.
vector=linespace(initial_vale,last_value,length_required)

サインインしてコメントする。

回答 (1 件)

Guillaume
Guillaume 2018 年 7 月 31 日
編集済み: Guillaume 2018 年 7 月 31 日
This is very basic matlab here.
a:b
generates numbers from a to b in step of 1, so it generates [a, a+1, a+2, ..., a+n] with a+n <= b. So yes, -10e-6:10e-6 only generates -10e-6 since -10e-6 + 1 is greater than 10e-6.
a:k:b
generates numbers from a to b in step of k, so it generates [a, a+1*k, a+2*k, ..., a+n*k], with a+n*k <= b. So you could use for example -10e-6:10e-6:10e-6 to generate 21 numbers.
linspace(a, b, n)
generates exactly n numbers by spreading them evenly between a and b, including them. This is probably what you want here, since it sounds like you want exactly 51 numbers
linspace(-10e-6, 10e-6, 51)
  1 件のコメント
Neelima Dahal
Neelima Dahal 2018 年 7 月 31 日
I actually got it work. -h:h/n:h and -l:l/n:l where n is any factor does the trick. I wasn't thinking simple. Thanks anyways! :)

サインインしてコメントする。

カテゴリ

Help Center および File ExchangeC Code Generation についてさらに検索

タグ

Community Treasure Hunt

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

Start Hunting!

Translated by