# how to make a column vector with evenly spaced entries with different coefficients

9 views (last 30 days)
Vincent Gambuzza on 15 Mar 2019
Commented: alda alda on 5 Mar 2020
I am trying to make the following 16x1 column vector
y = 3 %given, could be any value
ycoeff = [0;0;0;-4y;0;0;0;-3y;0;0;0;-2y;0;0;0-y]
If you could help me i would be very appreciative.
Thank you!
madhan ravi on 15 Mar 2019
doc colon
Jos (10584) on 15 Mar 2019
You forgot to add the multiplication symbol, and a semi-colon is missing before the last y ...
y = 3 %given, could be any value
ycoeff = [0;0;0;-4*y;0;0;0;-3*y;0;0;0;-2*y;0;0;0 ; -y]
Yet, somehow I feel that this is not the real question you want to have asnwers to ... :-D

Andrei Bobrov on 15 Mar 2019
Edited: Andrei Bobrov on 15 Mar 2019
k = -4:-1;
y = 3;
n = numel(k);
y = [zeros(n-1,n);y*k(:)'];
ycoeff = y(:);
or
k = -4:-1;
y = 3;
n = numel(k);
ycoeff = zeros(n^2,1);
ycoeff(n:n:end) = k*y;

Jos (10584) on 15 Mar 2019
A simple one-liner:
y = 3 ;
k = 4 ;
ycoeff(k:k:(k*k), 1) = (-k:-1)*y
madhan ravi on 15 Mar 2019
Impacts Andrei's second solution on a larger scale ;-)
alda alda on 5 Mar 2020