Error in passing parameter for MATLAB function From .net
8 visualizaciones (últimos 30 días)
Mostrar comentarios más antiguos
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
0 comentarios
Respuesta aceptada
Rajiv Singh
el 12 de Jul. de 2011
Hi Sathiyaseelan, Do you still have a question?
2 comentarios
Rajiv Singh
el 14 de Jul. de 2011
You should create a separate thread for your MPC question. Also post more details on your task - what you did, errors you saw and help you need.
Más respuestas (1)
Ver también
Categorías
Más información sobre Linear Plant Specification en Help Center y File Exchange.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!