Question
I am using MATLAB coder to generate code for following function. function [D] = getInterpolatedTransforms(q0,t0,q1,t1,steps,correction) D = zeros(4,4,steps); for i = 0:1:steps-1 coeff = single(i/steps); qt = slerp(q0,q1,coeff); tt = [t0*(1-coeff)+t1*coeff,1]'; D(1:3,1:3,i+1) = (quat2rotm(qt))*correction; D(1:4,4,i+1) = tt; end end I get following error while generating code at the "check for issues" step> ??? This assignment writes a 'single' value into a 'double' type. Code generation does not support changing types through assignment. Check preceding assignments or input type specifications for type mismatches. Error in ==>> quaternioncg Line: 48 Column: 17 Code generation failed: View Error Report ??? This assignment writes a 'single' value into a 'double' type. Code generation does not support changing types through assignment. Check preceding assignments or input type specifications for type mismatches. Error in ==>> quaternioncg Line: 48 Column: 17 Code generation failed: View Error Report The location of the error is in Matlab internal file quaternioncg.m
Expert Answer
John Williams
PhD Expert
Answered Aug 26, 2026
Solution 1 : Remove the single cast
function [D] = getInterpolatedTransforms(q0,t0,q1,t1,steps,correction)
D = zeros(4,4,steps);
for i = 0:1:steps-1
coeff = i/steps;
qt = slerp(q0,q1,coeff);
tt = [t0*(1-coeff)+t1*coeff,1]';
D(1:3,1:3,i+1) = (quat2rotm(qt))*correction;
D(1:4,4,i+1) = tt;
end
end
Solution 2: Make the input quaternion as single
>> a = quaternion(single([45,0,0]),'eulerd','ZYX','frame');
>> c = quaternion(single([-45,0,0]),'eulerd','ZYX','frame');
>> codegen getInterpolatedTransforms -args {a,1:3,c,3:5,10,0.5} -report
100% Run Guarantee
3-Hour Fast-Track Delivery
Need a Custom Version or Complete Simulation for This Problem?
Our 500+ PhD engineers build, debug, and optimize working MATLAB scripts and Simulink (.slx) models tailored to your exact assignment rubrics with zero plagiarism.
Tested on MATLAB R2024b / R2026a
Turnitin 0% Plagiarism Report
Free 7-Day Revisions Guarantee
Have a different question? Ask here
Related matlab Questions & Solutions
Browse All →
Explore similar technical troubleshooting questions and verified MATLAB solutions:
Ready-to-Run MATLAB & Simulink Projects
Browse All Projects →