How can I replace ksdensity for c++ generation with the Matlab Coder ?

3 次查看(过去 30 天)
Hello everyone,
I am working on a c++ project and someone gave me a Matlab code so I try to use the Matlab Coder. The problem is that the ksdensity function is not supported, so I would like to know if I can replace this function with something else...

采纳的回答

Kaustubha Govind
Kaustubha Govind 2014-6-16
I don't know of a MATLAB function equivalent that is supported for code-generation, but if you are able to find a C implementation of the function, you can use the following construct in your MATLAB code to have the generated code call into the C-library:
if coder.target('MATLAB')
% Executing in MATLAB, call function ksdensity
[f,xi] = ksdensity(x);
else
% Executing in the generated code.
% Call the C function as per the signature.
coder.ceval('c_ksdensity', coder.ref(x), coder.ref(f), coder.ref(xi));
end

更多回答(1 个)

DN
DN 2014-9-10
Hi Jean,
How did you get on with this? It's still not supported, right? but have you managed to get a C version of this code to do what Kaustubha recommended?
best dian
  2 个评论
Jeanne
Jeanne 2014-9-12
Hi Dian,
I wrote my own C version and used it with Kaustubha's code. There is a similar function in the MLPack library, but I couldn't make it work with Windows 7 (64).
DN
DN 2014-10-5
Hi Jeanne,
I see, I don't know MLPack but it looks like a C++ library, right? Can you perhaps let me know what file to look for and where in the MLPack website can I find it? Apologies for asking you the name/path. Furthermore I wouldn't know where to start but I gather it (MLPack file) guided you allot to write your C version?
best wishes dian

请先登录,再进行评论。

产品

Community Treasure Hunt

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

Start Hunting!

Translated by