C++ code generation fail

I need to translate my program written in Matlab to C++. When I use MATLAB Coder, it offers me to define all variables which are input parameters for the function, but all local variables it defines itself, and by default it makes most of them non-complex. During translating, I've got message: "Cannot assign a complex value into a non-complex location." How can I directly declare local variables as complex?

Respuestas (1)

John Elliott
John Elliott el 8 de Jul. de 2011

1 voto

Instead of, say,
z = 42;
use
z = complex(42);

1 comentario

PIYUSH SWAMI
PIYUSH SWAMI el 13 de Sept. de 2021
Codegen is giving the same error for this line:
state.icaweights = V / sqrt(D) * V' * state.icaweights;
When I tried the codegen again by writing:
state.icaweights = complex(V / sqrt(D) * V' * state.icaweights);
OR
state.icaweights = double(V / sqrt(D) * V' * state.icaweights);
it still provided the same error. Can anyone please help in rectification of this error?

Iniciar sesión para comentar.

Productos

Etiquetas

Preguntada:

el 8 de Jul. de 2011

Comentada:

el 13 de Sept. de 2021

Community Treasure Hunt

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

Start Hunting!

Translated by