"Subscripted assignment dimension mismatch.' when running a linprog coding.
조회 수: 2 (최근 30일)
이전 댓글 표시
"Subscripted assignment dimension mismatch.' when running a linprog coding.
My code is
for M = 1 : size(PV_output,1)
for N = 1 : size(WT_output,2)
f(:,M:N ) = [((CRF*CC_PV(M)/PVenergy(M)+OM_PV)); ((CRF*CC_WT(N))/WTenergy(N))+OM_WT]; % Objective function coefficients
%A(:,:) = [-PV_output(:,:,K) -WT_output(:,:,L)];
A (:,M,N) = [-PV_output(:,M) -WT_output(:,N) ];
b(:,:) = -Demand(:);
lb = zeros(2,1);
ub = [max_PV_area/PV_area; max_WT_area/WT_area]';
end
end
[x, fval, exitflag] = linprog(f,A,b,[],[],lb,ub)
PV_output is 8760x1x27 and WT_output is 8760x1x3
I am trying to find the "f" coefficients below for all the combinations of the 27 and 3 PV and WT's in this code Does anyone know how to index the "f" to do so?
Thank you
댓글 수: 0
채택된 답변
Sean de Wolski
2012년 6월 21일
Huh?
You could squeeze() it to remove the singleton dimension.
댓글 수: 7
Sean de Wolski
2012년 6월 21일
So why are they 3d matrices and not just two, considering that there is only 1 column and thus it is essentially a 2d matrix permuted into the third dimension?
And, what you have here is _exactly_ what I said in my reply, if m, n are 1.
추가 답변 (1개)
Andrew Alkiviades
2012년 6월 21일
댓글 수: 4
Sean de Wolski
2012년 6월 21일
That was a typo, you will want:
A{ii,jj}, note the xcurly '{' which indicates conversion. The regular parenthesis assumes it is a cell already and that is why you see the error.
참고 항목
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!