Error in passing parameter for MATLAB function From .net
이전 댓글 표시
Dear all, I was trying to communicate MATLAB with .Net.
I created X and Y variables and Testing values are x=[1,2,3,4,5] and Y=[5,10,15,20,25] and created the model(amx) using Identification Tool. Then saved as .MAT file. The problem is, when I am passing values from C#.net If MATLAB function is like this working fine,
function [out]= test(path, X, Y,pos) load(path); d=iddata(X,Y,1); y1=predict(amx,d); a=y1.y(pos); out =a;
Running Command in MATLAB is,
Test(‘C:\Test\\Tables.mat’,[11;12;13;14;15],[55;60;65;70;75];3)
ans= 15
But answer was based on our created X and Y values, it won’t to consider passing values. So I made change in MATLAB function as,
function [out]= test(path,inputX,outputY,pos) load(path); d=iddata(outputY,inputX,1); y1=predict(amx,d); a=y1.y(pos); out =a;
Now I am facing Error like,
“MWMCR::EvaluateFunction error: Error using ==> idmodel.predict at 111 Mismatch in input/output numbers for model and data.Error in =>passmodel.m at 4.”
C# code is, TABS.TABS_CLASS obj = new TABS.TABS_CLASS();
double[] input = new double[5] { 11, 12, 13, 14, 15 }; double[] output = new double[5] { 55, 60, 65, 70, 75 }; double pos = 2;
MWNumericArray InputX = (MWNumericArray)input;
MWNumericArray OutputY = (MWNumericArray)output;
MWNumericArray mwchar = null; mwchar = (MWNumericArray)obj.test(@"C:\5TAB\5TABS.mat",InputX, OutputY, (MWNumericArray)pos);
Thanks
채택된 답변
추가 답변 (1개)
카테고리
도움말 센터 및 File Exchange에서 Deploy to .NET Applications Using MWArray API에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!