C++ code generation fail

2 views (last 30 days)
Andrew Grusha
Andrew Grusha on 8 Jul 2011
Commented: PIYUSH SWAMI on 13 Sep 2021
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?

Answers (1)

John Elliott
John Elliott on 8 Jul 2011
Instead of, say,
z = 42;
use
z = complex(42);
  1 Comment
PIYUSH SWAMI
PIYUSH SWAMI on 13 Sep 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?

Sign in to comment.

Categories

Find more on MATLAB Coder in Help Center and File Exchange

Tags

Products

Community Treasure Hunt

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

Start Hunting!