4 행 3 행렬 ('mymatrix')이 있습니다. myfunc는 'mymatrix'를 입력하고 '결과'를 출력합니다. 내 스크립트에서 루프에서 myfunc를 사용하고 있습니다 (17280 시간). 그래서, 매번 syms x y z t를 다시 정의합니다. myfunc 외부에서 'syms x y z t'를 취할 수있는 방법이 있습니까? 매번 초기화 할 때까지 0.004 초가 걸립니다.함수 외부에 sym 정의하기
function result = myfunc(mymatrix)
tic
syms x y z t
toc
f = 3*x+5*y-6*z+7;
eqn = subs(f,{x,y,z},{mymatrix(:,1)*t,mymatrix(:,2)*t,mymatrix(:,3)*t});
for ii = 1:4
result(ii,1) = solve(eq(ii))
end
추신 : 나는 또한 루프를 위해 벡터화를 시도했지만 성공하지 못했습니다. 할 수 있으면 기쁠 것입니다.
당신은이 함수를'17280' 번 호출했다고하셨습니다. 그리고이 함수에 대한 입력은'mymatrix'이므로,이 행렬이 어떤 종류의 루프에서 이러한 반복을 통해 변하고 있다고 가정하고 있습니다. 그래서, 제 질문은 다음과 같습니다 -'for iterations = 1 : 17280' 루프를 시작하기 전에이 '17280' 데이터 세트에 모두 액세스 할 수 있습니까? – Divakar
또한,'result'를 숫자 배열로 얻거나, 출력으로서 sym 변수가 절대적으로 필요합니까? – Divakar
'class (mymatrix) '란 무엇입니까? 그것은 숫자인가 상징인가? – horchler