multidimensional array as an input of function
3 次查看(过去 30 天)
显示 更早的评论
Thanks for taking the time to read this. I am working with 5D matrices (in my code resultG, resultX, resultY). These matrices contain 500*500 matrices that are generated 10 times(ntrials) for each value of q and n.
My question is how should I define resultG with indices as my input for function ADMM? I have attached a part of my script.
resultX=zeros(length(n),length(q), ntrials, M, N);
resultY=zeros(length(n),length(q), ntrials, M, N);
for i=1:length(n)
for j=1:length(q)
gamma = 6/((q(j) - p)*n(i));
for k=1:1:ntrials
[X,Y,Q, iter] = ADMM(resultG(i,j,k),c, n(i), gamma,tau, opt_tol, verbose);
resultX(i,j,k, :, :)=X;
resultY(i,j,k, :, :)=Y;
2 个评论
Adam Danz
2018-9-26
"My question is how should I define resultG with indices as my input for function ADMM"
I understand that resultG is a 5D array but I don't see where that array is created. To answer your question, we'll need to understand the size and shape you expect resultG to be when going into the ADMM() function.
采纳的回答
Adam Danz
2018-9-26
It's still a little unclear what size and shape you expect resultG(i,j,k) to be going into the ADMM() function but if you expect it to be a matrix, use squeeze().
[X,Y,Q, iter] = ADMM(squeeze(resultG(i,j,k,:,:)),c, n(i), gamma,tau, opt_tol, verbose)
更多回答(0 个)
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Multibody Modeling 的更多信息
产品
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!