generalize​dInverseKi​nematics in a nested parforloop

1 view (last 30 days)
Hello everyone,
I am trying to use PCT for my inverse kinematics solver for my robotic arm: [qWaypoints(2,:), solutionInfo] = gik_Pick(q0, fixOrientation);
but I get this error :
Error: Unable to classify the variable 'qWaypoints' in the body of the parfor-loop. For more information, see Parallel for Loops in MATLAB, "Solve Variable Classification Issues in parfor-Loops".
I looked at the sliced variables etc. but could not find anything that could help me. Any ideas how to make this work?
Also another question, PCT can be used to run simulink files as well ? Or will it cause problems ? Becuse I'll be also trying that in the future.

Accepted Answer

Edric Ellis
Edric Ellis on 2 May 2024
Edited: Edric Ellis on 2 May 2024
You haven't given us a lot to go on there, but the form of assignment you mention is only valid if qWaypoints is a parfor "temporary" variable. In other words, you must have a full (non-indexed) assignment inside the loop to that variable, like this:
parfor i = 1:N
qWaypoints = zeros(3, 5); % or whatever size is appropriate
[qWaypoints(2,:), solutionInfo] = gik_Pick(q0, fixOrientation);
end
I doubt this is actually what you want though. Could you update your question please to give us a minimal reproduction of what you're trying to achieve.
  1 Comment
Denizhan AKINCI
Denizhan AKINCI on 6 May 2024
I apologize for not providing sufficient context initially. My intention was to ask for assistance in resolving that variable issue in my code. Your response addressed my question effectively. Thank you for your assistance!

Sign in to comment.

More Answers (0)

Categories

Find more on Programming in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!