Azzera filtri
Azzera filtri

Why is the Matlab R2015a Coder not able to generate code from resample function - but Matlab 2016b Coder is?

2 visualizzazioni (ultimi 30 giorni)
Hi everybody, I try to generate C++ Code from my function but I cant use the resample function (it always ends with err "coder.const could not reduce this expression to a constant: Time out exceeded.") although I declare each input as a constant and i have licensed the USP System Toolbox ( license checkout signal_blocks == true). Also I ran the same code with the Matlab 2016b Coder and generated my C++ Code without any problem. So where is the difference? Best regards
My code looks like this:
Q=1000000;
% P=floor(Resampling_Faktor*Q); % floor: rounds to the nearest integer
P = 500000; % for testing
Input=1:0.1:20; % for testing
Input = resample(Input,P,Q,5,20);

Risposta accettata

Venkata Siva Krishna Madala
Hello Daniel,
Try to increase Constant Folding Timeout value.This can be done in two ways:
1. At the command line, create a configuration object for code generation. Set the property ConstantFoldingTimeout to the value that you want, like 400000:
c = coder.confi;
c.ConstantFoldingTimeout = 4e5;
2. In the Project Settings dialog box, on the All Settings tab, set the field Constant folding timeout to the value that you want.
Regards,
Krishna Madala

Più risposte (1)

Daniel Burger
Daniel Burger il 20 Mar 2018
Modificato: Daniel Burger il 20 Mar 2018
Dear Krishna, thanks for your advice. So do you mean that the failing code generation doesnt depend on my MATLAB version but instead on the system? Since I used two differend machines with different performance to run both MATLAB versions i mentioned above and therefore on the slower machine the time ran out before code generation was successful?
Regards, Daniel

Categorie

Scopri di più su MATLAB Coder in Help Center e File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by