How to specify a variable (using linspace) like this?

7 次查看(过去 30 天)
Distance between first and second point and the distance between second last and last point is 0.5h. All other distances between the neighboring points is h. How to create a grid of say N points that do not include the first and the last point in the grid?

回答(2 个)

Andrei Bobrov
Andrei Bobrov 2012-10-8
编辑:Andrei Bobrov 2012-10-8
afirst = 2;
h = .5;
N = 5;
out = afirst + cumsum([0, .5*h,ones(1,N-1)*h,.5*h])
or
out = [afirst,linspace(afirst + .5*h,afirst + .5*h + (N-1)*h,N),afirst + N*h];
or
a = [2 6];
N = 5;
L = linspace(a(1),a(2),N+1)
L(2:end) = L(2:end)-diff(a)/N*.5
out = [L,a(end)];
  2 个评论
Taha
Taha 2012-10-8
He has asked "do not include the first and the last point". I think your solutions include the first and last points.
Shashank
Shashank 2012-10-8
Thanks Andrei. You seem to have given me a lot of options. I think the second one looks more cogent.

请先登录,再进行评论。


Taha
Taha 2012-10-8
编辑:Taha 2012-10-8
N = 5;
h = (last - first)/N;
grid = linspace(first+h/2, last-h/2, N);
  2 个评论
Shashank
Shashank 2012-10-8
So if I need to call a matrix, say A = f(1) + f(3), how should I do it using your method? And should I specify the values of "first" and "last" as the end points of my domain?
Taha
Taha 2012-10-8
编辑:Taha 2012-10-8
The above piece of code needs 'N', 'last', and 'first' as input parameters. Also, I didn't get what you mean by 'calling a matrix'.

请先登录,再进行评论。

类别

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