Simulink subsystem to numerically solve a complex exponential function
2 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
This is the Matlab script of what I have to solve at each iteration of a complex simulink model:
B, T and W known; solving for a:
sol = vpasolve( 0.88*(1-exp(-0.1*B))*(1-exp(-9.5*a)) - (0.9/B + 0.5*a/sqrt(B)) - T/W, a)
I cannot use this directley in a user defined Simulink funcation since symbolc variables are not accepted.
How would you suggest to draw/code this in Simulink?
Thanks!
0 Kommentare
Antworten (1)
Pavan Guntha
am 30 Aug. 2021
Hello Ario,
You could follow the following steps to solve the issue:
1) Create a '.m' file containing the function (for example, name it complexExponential.m) to solve the complex exponential equation.
2) You could use a MATLAB Function block in Simulink to call this function as shown below.
coder.extrinsic('complexExponential');
out = 0;
out = double(complexExponential(inputs));
Since the equation involves symbolic variables, it is necessary to use 'coder.extrinsic()' to avoid generating code for it. For more details you could have a look at the documentation page of coder.extrinsic.
Hope this helps!
0 Kommentare
Siehe auch
Kategorien
Mehr zu Schedule Model Components finden Sie in Help Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!