how to implement symbolic matlab function on simulink?
조회 수: 6 (최근 30일)
이전 댓글 표시
im trying to implement the following function on matlab function on simulink but error 'syms is not supported for a stand alone code generation' occures
function fkt = fcn(c,p,k,N)
syms t
ft=p^(-c/2)*(c/2)*t.^((c/2)-1).*exp(-(t./p).^(c/2));
Ft=1-exp(-(t/p).^(c/2));
fkt=k*nchoosek(N/2,k)*(1-Ft)^(N/2-k)*(Ft)^(k-1)*ft
end
댓글 수: 2
Nicolas Schmit
2017년 10월 18일
Simulink works only with numerical data. Why do you need to use the Symbolic Toolbox in a MATLAB function?
답변 (1개)
Sean de Wolski
2017년 11월 2일
You can do this by putting syms inside of a function called by a MATLAB Function block where the inner function is flagged as extrinsic:

댓글 수: 5
Walter Roberson
2017년 11월 2일
In that case, extrinsic is not going to work, unfortunately. You will need to use a MATLAB Function block for at least the nchoosek; perhaps it would be easier to put it all into a MATLAB Function block to do the
(c*k*t^(c/2 - 1)*exp(-(t/p)^(c/2))^(N/2 - k + 1)*nchoosek(N/2, k)*(1 - exp(-(t/p)^(c/2)))^(k - 1))/(2*p^(c/2))
참고 항목
카테고리
Help Center 및 File Exchange에서 Logical에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!