[其他] 建立向量之問題(a:step:b)

看板MATLAB作者 (伊武天澤)時間11年前 (2013/12/01 10:26), 編輯推噓4(405)
留言9則, 5人參與, 最新討論串1/1
想問一個很簡單的向量問題, 小弟現在寫程式 常常要建立向量,但又不喜歡用linspace來建立 常常會用a:step:b,但常常都會碰上一個大問題 比如說dt=0.01 a=0 b=0.125 a:dt:b 跑到最後只會出現0.12,0.125即不出現 小弟現在解決方法是用floor(b/dt)~=b/dt 這個判定式來解決 如果發生的話 即改成[a:dt:b b]才能解決這個問題.. 請問各位高手們,還有甚麼其他解決的方法嗎? (因為作有限元分析,會探討切的元素段,所以我的程式碼的b是多少我自己也不知道 但發現b/dt不能整除的時候就會出現這問題) -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.116.138.142

12/01 15:48, , 1F
用linspace 不喜歡就學著用
12/01 15:48, 1F

12/01 15:51, , 2F
不然自己定一個function, inputs are a, b, dt
12/01 15:51, 2F

12/01 17:11, , 3F
[a:dt:b,b(rem(b,dt)>0)]
12/01 17:11, 3F

12/01 21:59, , 4F
為什麼會不喜歡用linspace?
12/01 21:59, 4F

12/02 05:21, , 5F
這根用不用linspace好像沒關 你用linspace也不可能間距都
12/02 05:21, 5F

12/02 05:21, , 6F
0.01然後最後一個是0.125
12/02 05:21, 6F

12/02 09:16, , 7F
阿~仔細看了下3F的方法應該是原PO要的 不過可以改成
12/02 09:16, 7F

12/02 09:16, , 8F
[a:dt:b,b(rem(b-a,dt)>0)]
12/02 09:16, 8F

12/02 10:10, , 9F
感謝各位,晚上來試試
12/02 10:10, 9F
文章代碼(AID): #1Icfvpxw (MATLAB)
文章代碼(AID): #1Icfvpxw (MATLAB)