A = ones(3,3,3)
for i = 1:3
B(i) = trace(A(:,:,i));
end
arrayfun
내가 희망
f = @(x) trace(x)
B = arrayfun(f, A);
을 시도하여 다음과 같은 코드를 다시 작성하려고하지만 이것은 단지 (당신이 기대하는 것처럼) 각각의 A(i,j,k)
하지 이상 추적 A(:,:,i)
내가 원하는대로. 그런 다음 A{i}=ones(3,3)
을 셀로 지정하고 arrayfun
으로 전달하려고 시도했지만이 방법도 작동하지 않았습니다.
Matlab의 행렬에 함수를 벡터화하려면 어떻게해야합니까?
여기 제공된 솔루션 중 하나가 유용하면 궁금하십니까? – Divakar
안녕하세요, Divikar, 솔루션은 작동하지만 어느 누구도 제가 테스트 할 수있는 GPU에서 행렬의 함수를 벡터화하는 일반적인 방법을 제공하지 않습니다. 불행히도 내가 액세스 할 수있는 서버는'pagefun'없이 Matlab 버전을 실행하고 있지만 목요일에 업그레이드 될 예정입니다. – rwolst