내 작업의 95 %를 포함하는 .m 스크립트 파일이 있습니다. 필자의 임무 중 하나는 특정 계산을 수행 한 다음 다양한 예제에 함수를 사용하는 함수를 작성하는 것이 었습니다.matlab 함수를 게시하는 데 문제가 있습니다.
함수에 대해 별도의 .m 파일을 만들고 함수의 이름을 따서 명명했습니다. 그런 다음 내 주 .m 스크립트에서이 기능을 사용하면 모든 것이 잘 작동합니다. 나는 .m 스크립트를 발행했고 모든 것이 잘 보였다.
그러나 내가 만든 제 기능은 포함되지 않습니다. 이것이 내 작업의 일부이기 때문에, 나는 이것을 메인 스크립트 파일과 함께 돌릴 필요가있다. 원래 발행물에 포함시킬 방법이 없기 때문에이 책을 별도로 게시해야한다고 가정합니다. 여기
내 MATLAB 기능%% Function rvm
function [y1,y2] = rvm(x,y)
discr = sqrt((x^2)-(4*y));
y1 = (-x-discr)/2;
y2 = (-x+discr)/2;
end
이며, 여기에 게시 할 때 내가 오류입니다 :
Not enough input arguments.
Error in rvm(line 4)
discr = sqrt((x^2)-(y*c));
것은 내가 광범위하게 MATLAB을 사용하지 않은, 그리고 시간이 지났는데 그 이후 나는 그렇게 이 문제를 디버깅하는 데 약간의 문제가 있습니다.
내 주 스크립트가 오류없이 게시되고 기능이 잘 작동하므로 오류가 발생하는 이유가 무엇인지 혼란 스럽습니다. 또한 구문은 괜찮아 보이는 것 같습니다 ...
hmmm 그래서 함수를 게시하면 함수가 자동으로 호출됩니까? 함수가 이미 내 주 스크립트에서 호출되기 때문에 입력 인수를 설정하고 싶지 않습니다. 스크립트를 정상적으로 인쇄하는 가장 합리적인 옵션은 무엇입니까? –
MATLAB의'publish'는 함수에 의해 호출되는 함수를 출력하지 않습니다 (당신이 내가 링크 한 파일 교환 제출물을 사용하지 않는 한). 위에 제공된 코드를 사용하여 하위 함수 만 게시 할 수 있습니다. 'publish'의 모든 기능을 필요로하지 않는다면 단순히 .m 파일을 출력 할 수도 있습니다. – Suever