min関数の式で、「入力引数が不足しています。」というエラーメッセージが表示されます。
2 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
次のようなコードを、添付させていただいたzipファイルに格納されたExcelファイルにあるデータを読み込んだうえで実行すると、"p_high(:,n) = min(p_delta(:,n), -4*d_least*ones(Span,1));"の部分に関して「入力引数が不足しています。」というエラーメッセージが表示されます。
BESS_eff = 0.9
NumHouses = 528
Delta_bat = zeros(1,NumHouses);
delta_bat = zeros(1,NumHouses);
Delta_bat2 = zeros(1,NumHouses);
delta_bat2 = zeros(1,NumHouses);
diff = zeros(Span,NumHouses);
diff_sum = zeros(Span,NumHouses/4);
E_diff = zeros(1,NumHouses/4);
E_delta = zeros(1,NumHouses/4);
p_delta = zeros(Span,NumHouses/4);
p_high = zeros(Span,NumHouses/4);
com = zeros(1,NumHouses/4);
delta_delta_diff = zeros(1,NumHouses);
delta_delta_diff2 = zeros(1,NumHouses);
delta_diff = zeros(Span,NumHouses);
delta_diff2 = zeros(Span,NumHouses);
E_high = 0;
for n=1:NumHouses/4
for m=1:4
Delta_bat(4*(n-1)+m) = sum(surplus_pre(t_arr(4*(n-1)+m):t_initial(4*(n-1)+m),4*(n-1)+m), [1 2]);
delta_bat(4*(n-1)+m) = max(Cap(4*(n-1)+m)*gran/BESS_eff-Delta_bat(4*(n-1)+m),0);
E_diff(n) = E_diff(n) + sum(-diff(t_sun_arr(4*(n-1)+m)+1:t_initial(4*(n-1)+m),4*(n-1)+m),"all");
diff_sum(:,n) = diff_sum(:,n) - diff(:,4*(n-1)+m);
end
E_delta(n) = sum(delta_bat(4*(n-1)+1:4*(n-1)+4),"all");
com(n) = max(E_diff(n)-E_delta(n),0);
for m=1:4
delta_delta_diff(4*(n-1)+m) = com(n)/tim(4*(n-1)+m);
delta_delta_diff_arr = delta_delta_diff(4*(n-1)+m) .* ones(t_sun_arr(4*(n-1)+m)-t_start_arr(4*(n-1)+m)+1,1);
delta_diff_all = diff_sum(t_start_arr(4*(n-1)+m):t_sun_arr(4*(n-1)+m),n)-delta_delta_diff_arr;
delta_diff(t_start_arr(4*(n-1)+m):t_sun_arr(4*(n-1)+m),4*(n-1)+m) = delta_diff_all .* (delta_bat(4*(n-1)+m)/E_delta(n));
diff(t_start_arr(4*(n-1)+m):t_sun_arr(4*(n-1)+m),4*(n-1)+m) = diff(t_start_arr(4*(n-1)+m):t_sun_arr(4*(n-1)+m),4*(n-1)+m) + delta_diff(t_start_arr(4*(n-1)+m):t_sun_arr(4*(n-1)+m),4*(n-1)+m);
end
p_delta(:,n) = -(diff(:,4*(n-1)+1)+diff(:,4*(n-1)+2)+diff(:,4*(n-1)+3)+diff(:,4*(n-1)+4));
p_high(:,n) = min(p_delta(:,n), -4*d_least*ones(Span,1));
E_high = E_high + sum(p_high(t_start_arr(n):t_sun_arr(n),n),"all");
end
Excelに変数の値を出力させたところ、p_deltaまでは全ての変数に値があり、配列のサイズも同一の式においては一致していました。
この場合に考えられる原因や、問題を分解する方法をご教示いただけないでしょうか。
あいまいな質問でご迷惑をおかけして恐縮ですが、ご回答よろしくお願いいたします。
0 commentaires
Réponses (0)
Voir également
Catégories
En savoir plus sur Creating and Concatenating Matrices dans Help Center et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!