Inizialize variable s function builder C

2 visualizaciones (últimos 30 días)
alessandro mutasci
alessandro mutasci el 13 de Oct. de 2022
Respondida: Manas el 8 de Sept. de 2023
Good evening, I have read the manual for S function, but I still couldnt understand how to inizialize an array in the s function boiler block. I hope someone could help me, telling me how to inizialize a variabile, lets say an array of 10 elements, that is an intemediate variabile in the script, I fill the array with the input.. in C I use the following code: static double a{}. Thank you.

Respuestas (1)

Manas
Manas el 8 de Sept. de 2023
Hi Alessandro Mutasci,
I understand that you are facing difficulties conceptualizing defining variables and managing them in S functions.
To initialize variables which in your case is an array, you need to first allocate the appropriate amount of space. You can use the “ssSetUserDataSize” and “ssSetOptions” functions for this purpose.
ssSetUserDataSize(YourStructElement, sizeof(double) * ARRAY_SIZE);
Later, you can follow basic C constructs and paradigms to input a variable, loop over the array and assign data.
I would highly recommend looking at S function examples from the MATLAB documentation here https://www.mathworks.com/help/simulink/sfg/s-function-examples.html to gain more clarity.

Categorías

Más información sobre Block and Blockset Authoring 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!

Translated by