error using matlabFunction : 'Error: argument must be of type 'Type:arithmetical' [cos]
이전 댓글 표시
I am attempting to write a symbolic matrix to a function using 'matlabFunction':
Here is my code, M_c is a 9x9 symbolic matrix: f = matlabFunction(M_c,'file','cluster_mass_eval')
This is the error I get:
??? Error using ==> mupadengine.mupadengine>mupadengine.feval at 162 Error: argument must be of type 'Type::Arithmetical' [cos]
Error in ==> sym.matlabFunction>optimize at 392 list = feval(symengine,'mlOptimizeWithIntermediates',f);
Error in ==> sym.matlabFunction>writeMATLAB at 367 [f,temps] = optimize(f);
Error in ==> sym.matlabFunction at 117 g = writeMATLAB(funs,file,varnames,outputs,body);
Is this saying that I can't have trigonometric functions of symbolic variables?
I am searching for the best way to be able to evaluate this symbolic matrix in a loop so if 'matlabFunction' isn't the best thing to use i welcome other suggestions.
Thanks, kyle
댓글 수: 3
Kyle Stanhouse
2011년 8월 10일
Walter Roberson
2011년 8월 10일
f = matlabFunction(M_c,'file','cluster_mass_eval','vars',{'theta', 'beta', 'p', 'q'})
Kyle Stanhouse
2011년 8월 10일
채택된 답변
추가 답변 (1개)
Walter Roberson
2011년 8월 11일
0 개 추천
Do not use eval() on a symbolic value to try to substitute specific values for variables. Instead, use subs(), possibly followed by double()
카테고리
도움말 센터 및 File Exchange에서 Operations on Strings에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!