How to integrate Cantera Solution method (Solution.m contained in a @class folder) to a Matlab function used in Simulink
Mostrar comentarios más antiguos
I have the problem that I create a Simulink model which includes an additional user defined function which contained a call to an external Cantera toolbox (gas = Solution('gri30.cti','gri30')). I had just copy and paste the running code from a regular matlab file and put it to a Simulink Matlab Function block. But if I started the Simulink model I got the error "No class Solution". So I have read something about the propably underlying problem with @class folders but I cannot find a solution. Does anybody know how I can fix this problem?
Respuestas (1)
Prasad Raut
el 27 de Ag. de 2019
0 votos
Hi Timo,
I am facing similar issue. Were you able to resolve it?
6 comentarios
Timo
el 28 de Ag. de 2019
Prasad Raut
el 25 de Sept. de 2019
Hi Timo,
I tried but it's still throwing errors.
I am trying to run constant volume combustion through simulink.
Its basically reactor2 function from matlab cantera examples.
Any help you could would be great. Thank you so much.
Timo
el 26 de Sept. de 2019
Prasad Raut
el 26 de Sept. de 2019
Hi Timo,
I am able to run bits and pieces of reactor2 matlab example. such as setting temperature, pressure mass fractions and other in gas structure.
Problem comes when I am trying design Idealgasreactor with gas. I have attached the error. I will try to work out c code into s-function. I am not a software guy actually so I think it will take quiet a bit time.
Another option I though which I haven't ventured is using python code of same reactor and calling python from simulink if it's possible.
Let's see I will you keep you updated if I come across easier method.
Timo
el 26 de Sept. de 2019
Roberto Paolinelli.
el 8 de Nov. de 2021
Hi Timo
same problem as you but tried to go ahead...
I was succesful in running reactor2.m then I'm trying to run it in Simulink
I have converted @class to classdef Solution.m, ThermoPhase.m and Kinetics.m and some more.
I'm using matlab.system object to make it run on Simulink and it all works as interpreted execution.
Problems arise when I try and use it as Code Generation (I would this model to run as hardware in the loop...) and Simulink complains about mxArray (probably in ctmethods but it is a mexw64).
Did you succeed on your side? How?
Thank you very much
Roberto Paolinelli
Categorías
Más información sobre Using MATLAB Projects in Simulink en Centro de ayuda y File Exchange.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!