MATLAB and Simulink resources for Arduino, LEGO, and Raspberry Pi

# Loop for function variable

Asked by Brian on 1 May 2013

Hello,

I need to set up a loop which will return the answers of a different function. What is the syntax to call the variables different names d1, d2, d3 from each iteration? I have tried the code in the loop A1, A2, A3 article, and other code. It doesn't seem to be relevant. The code is:

if i == 1;

xc = gd(2, i);
yc = gd(3, i);
r = gd(4, i)
%         d1->..
%     dx = dCircle(P,xc,yc,r) % x =1, 2,3 etc

It's proably something simple. Thanks for your time

## Products

No products are associated with this question.

Answer by Shashank on 1 May 2013

I am going to refer you back to the article you mentioned because the simple answer to your question is: don't do it.

If you necessarily have to do it, then I will ask you to take a look at the EVAL function which can be used to do that.

Is there a reason you want to do that and not use the alternate approaches in the above link?

Brian on 2 May 2013

Cheers for the reply. The reason I want to do it this way is because it has to fit into existing code, which takes d1, d2, d3 etc already. I am new to matlab so it could take a while to change the other code. I don't mind if this part of the code is slow as it will only run once. I looked into eval, it returned numbers as the answer (unless I was doing it wrong).

Shashank on 2 May 2013

This should help:

>> i = 3;
>> eval(['x' num2str(i) '=5'])
>> x2 =
5
Brian on 2 May 2013

You legend! Thank you sir