code generation with do not using temp local variable

14 visualizaciones (últimos 30 días)
TaeHee Kwun
TaeHee Kwun el 4 de Jun. de 2019
Comentada: Nick Sarnie el 5 de Jun. de 2019
I try to use multy operation sentence in stateflow.
And I generate this code, it makes temp variable.
example of sentence is ' input = KTH / HJY * JSM ' .
And it brings
rtb_Gain1_h = KTH / HJY; ( rtb_Gain1_h is autmatically generated Local variable )
input = rtb_Gain1_h * JSM;
I want to use this sentence in once like ' input = KTH / HJY * JSM '
I tried to change optimize setting not to 'Enable local block ouputs' it works but other code are affectted to be bad readabillity.
Isn't no way to remove any of not intended local variable?
Thank you.

Respuesta aceptada

Nick Sarnie
Nick Sarnie el 5 de Jun. de 2019
Editada: Nick Sarnie el 5 de Jun. de 2019
Hi TaeHee,
It is unlikely that you will be able to control the optimization to this level of detail. If you prefer the temporary variable to be removed, please 'Enable local block outputs' option. There is often a tradeoff between performance and readability in many areas of computing.
Thanks,
Nick
  2 comentarios
TaeHee Kwun
TaeHee Kwun el 5 de Jun. de 2019
I really appreciate your answer. Nick.
I tried your solution. and it generate without local variable.
But now it generate so many global variable to represent mid-process of operation.
It seems just using global variable instead local variable and readability is so bad.
I hope to just touch only that part.
Thanks for your answer.
TaeHee Kwun
Nick Sarnie
Nick Sarnie el 5 de Jun. de 2019
Hi TaeHee,
If global variables are your concern, you can tell the code generator to try to avoid them. Please see the below doc link:
Thanks,
Nick

Iniciar sesión para comentar.

Más respuestas (0)

Categorías

Más información sobre Simulink Coder en Help Center y File Exchange.

Productos


Versión

R2019a

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by