Question
Hi everyone, I have a dimension issue: I have a Simulink Matlab Function block that has a [3x1] vector of values called pd as its input. This vector should turn into a [6x1] vector called pdot by adding three zeros to every element. Basically just resizing from to it sounds rather simple but I can't get it to work. The code that I use in my Simulink function block is shown below. function pdot = fcn(pd) pdot = zeros(6,1); temp = zeros(6,1); for i = 1:length(pd) pdot(i) = temp(i) + [pd(i); 0; 0; 0]; end end
Expert Answer
Neeta Dsouza
PhD Expert
Answered Aug 24, 2026
This seems like you maybe over complicated it? Is it as simple as...
x=[1;3;5]
x = 3×1
1 3 5
fcn(x)
ans = 6×1
1 3 5 0 0 0
function pdot = fcn(pd) pdot=[pd;0;0;0]; end
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 →