How to create and empty matrix of a given size in a way that is compatible with codegen
4 views (last 30 days)
Show older comments
John Edwards
on 11 May 2022
Commented: John Edwards
on 11 May 2022
I have a function that is writing to an output matrix (y).
I can create y in the function using:
y = zeros(size(x));
x is a variable size large array and using zeros() is inefficient because it initializes the array with zeros that are then going to be overwritten.
I was wondering if there is a way to do this more efficiently?
I've tried a lot of the options I can find so far but none are compatible with codegen.
Thanks very much, as always,
John
2 Comments
Accepted Answer
Richard McCormack
on 11 May 2022
Edited: Richard McCormack
on 11 May 2022
Hi John,
I think coder.nullcopy is what you are looking for:
Be aware that this function is 'unsafe', in the sense that you can access uninitialized memory after using it.
Best,
Richard
More Answers (0)
See Also
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!