How can I convert double to const real_T of a sfunction?

8 ビュー (過去 30 日間)
Alexander Nass
Alexander Nass 2018 年 2 月 7 日
回答済み: Benjamin Thompson 2022 年 10 月 10 日
Hi everyone :) ,
I am working on my Masters and have a C-code which I have to put into a sfunction for SIMULINK. As an in between result I have a value of an variable of datatype double (fx_u). With it other values have to be calculated also, which will be output of the sfunction in SIMULINK as well.
For that I have to convert the double to real_T, haven´t I? (real_T as output data type of a sfunction) How can I do that?
Code is something like:
for(i = 0; i <= limit; i++)
{
fx_u[i] = x0 + x1*u + x2*(u*u) + x3*(u*u*u) + x4*(u*u*u*u) + x5*(u*u*u*u*u);
u = u+res;
}
x = &fx_u; // <<--- I MEAN THIS LINE BECAUSE I GET A WARNING WHICH IS:
"warning: assignment from incompatible pointer type x = &fx_u;"
x is of data type real_T and fx_u is of data type double. x should be the output and fx_u is meant for further calculations.
In advance I thank you for your help. :)
Please don´t beat me, I am still a student.
  1 件のコメント
fus
fus 2022 年 4 月 26 日
Did you ever find a solution for this? Running into the same problem and google is not being my friend

サインインしてコメントする。

回答 (1 件)

Benjamin Thompson
Benjamin Thompson 2022 年 10 月 10 日
If x is a constant you cannot change it. You would need to supply a more complete example, it is hard to tell what you are trying to do.

カテゴリ

Help Center および File ExchangeSimulink についてさらに検索

Community Treasure Hunt

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

Start Hunting!

Translated by