Dismiss Notice
Join Physics Forums Today!
The friendliest, high quality science and math community on the planet! Everyone who loves science is here!

Matlab for Loop of two changing variables

  1. May 1, 2012 #1
    Hi,
    Please I need your assistance on this matlab code. I will really appreciate it.

    R=0.492; Pw=0.3708;

    for r=1:5;

    for teta=10:10:360;


    sigmar=(1-(R.^2./r.^2))+(1-((4.*R.^2)./r.^2)+((3.*R.^4)./r.^4)).*cos(2.*teta)+(1-((4.*R.^2)./r.^2)+((3.*R.^4)./r.^4)).*sin(2.*teta)+Pw.*(R.^2./r.^2);


    end

    end

    The only constraint is that for each time r changes, I want the loop to calculate value for sigmar with teta going form 10-360 with increament of 10 (teta=10:10:360).
    To make it clearer, What I want is that, I want the code to take r=1, calculate 36 values for sigmar using teta=10:10:360, then take r=2, calculate 36 values for sigmar using teta=10:10:360, then take r=3, calculate 36 values for sigmar using teta=10:10:360, then take r=4, calculate 36 values for sigmar using teta=10:10:360, then take r=5,calculate 36 values for sigmar using teta=10:10:360.

    Thanks for your usual assistance

    Best regards,
    Adeeyo
     
  2. jcsd
  3. May 1, 2012 #2
    Are you asking how to store the variables so that it doesn't get overwritten each time? If so, you could probably do that using cell arrays/structures/arrays

    For example:
    rndx = 1;

    for r=1:5;
    tetandx = 1;
    for teta=10:10:360;


    sigmar= ...
    data(1,tetandx,rndx) = sigmar;

    tetandx = tetandx + 1;
    end
    rndx = rnd + 1;
    end
     
  4. May 1, 2012 #3
    Hi Gringo,

    Thanks for your quick response.
    Yes. What I want is that I want calculated values of sigmar to be stored and not over-written at each value of r and teta=10:10:360.

    Once again thanks

    Adeeyo
     
  5. May 2, 2012 #4
    Hi Gringo,

    I want to make polar plot of the value of r and sigmar. polar(r,sigmar). Please how do I write the code so that I will have at each r (from r=1 to r=5) all the sigmar values corresponding to 36 teta values plotted in polar coordinate.

    I am very grateful

    Best regards,

    Adeeyo
     
  6. May 2, 2012 #5

    chiro

    User Avatar
    Science Advisor

    Hey Adeeyo and welcome to the forums.

    You should take a look at this for the general idea:

    http://stackoverflow.com/questions/466972/array-of-matrices-in-matlab
     
Know someone interested in this topic? Share this thread via Reddit, Google+, Twitter, or Facebook




Similar Discussions: Matlab for Loop of two changing variables
  1. Variable Change (Replies: 69)

Loading...