Index exceeds matrix dimensions
Info
This question is closed. Reopen it to edit or answer.
Show older comments
Hello all,
Anyone knows what goes wrong? I receive this error:
Index exceeds matrix dimensions.
on the following code:
X = [ones(M,1), r(:,t,1), r(:,t,2), r(:,t,3), r(:,t,4), r(:,t,5),...
z(:,t,1), z(:,t,1).^2, z(:,t,2), z(:,t,2).^2, z(:,t,3),...
z(:,t,3).^2, z(:,t,4), z(:,t,4).^2, z(:,t,5), z(:,t,5).^2, ...
z(:,t,1).*z(:,t,2), z(:,t,1).*z(:,t,3),z(:,t,1).*z(:,t,4),...
z(:,t,1).*z(:,t,5), z(:,t,2).*z(:,t,3), z(:,t,2).*z(:,t,4),...
z(:,t,2).*z(:,t,5), z(:,t,3).*z(:,t,4), z(:,t,3).*z(:,t,5),...
z(:,t,4).*z(:,t,5)];
referring to this function
function Weights = Portfolio_fmincon_multiple_it_state_vb_bs(r,z,gamma,r_f,constr_ON,... it_ON, N_max)
Help would be much appreciated!!
Thanks.
Kevin
Answers (2)
Azzi Abdelmalek
on 10 Jun 2013
0 votes
You should look at the sizes of r and z, and check if their indices do not exceed those sizes
3 Comments
Azzi Abdelmalek
on 10 Jun 2013
Kevin van Berkel commented
Hi Azzi, thanks for your reply.
Both r and z are 1000x20 (double) matrices.
This code is previous before the 'X=...' code:
[M,T,N_assets] = size(r);
x = zeros(M,T-1,N_assets);
x_0 = zeros(N_assets,1);
options = optimset('Display','off','TolFun',1e-6,'LargeScale','off');
if constr_ON==1
LB = zeros(N_assets,1);
UB = ones(N_assets,1);
else
LB = [];
UB = [];
end
So wat should I check?
THanks for your help!
Azzi Abdelmalek
on 10 Jun 2013
You said that r is a 1000x20 double, then why to write
r(:,t,3)
Kevin van Berkel
on 10 Jun 2013
Kevin van Berkel
on 10 Jun 2013
0 votes
1 Comment
Azzi Abdelmalek
on 10 Jun 2013
Kevin, if you want to add a comment, just click on comment on this answer
This question is closed.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!