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

Cell arrray that stores with iteration a new set of values

  1. Jan 10, 2013 #1
    Here,I have a pre-defined function called 'intersections(x,....) that finds the intersections between 2 functions of x.Now,for each iteration of the loop,I get a set of (x,y1) and (x,y2) values.
    I want to store them in an array without losing the previous iteration's values. So,I figured I'd use a cell array except I can't decipher its working mechanism.Someone,please help me with this.
    Have a looksie at the code below.

    for i=1:5
    for j=1:5
    %functions f1 and f2
    y1=@(x)C.*(x)./((x.^p)+1);
    y2=@(x)(r.*(1-(x./q)));
    [a{i,j},b{i,j}] = intersections(x,y1(x),x,y2(x),1);
    %a line of plot commands follow[not important]
    end
    end

    I initially used
    [xout,yout]= intersections(x,y1(x),x,y2(x),1);
    to store the coordinates of the intersections but it kept getting erased out after each iteration.I want the whole data stored coordinates stored in 1 cell array.
     
  2. jcsd
  3. Jan 10, 2013 #2

    kreil

    User Avatar
    Gold Member

    You just need to index the array somehow. For example,

    A = zeros(1,5);
    for i=1:5
    A(i) = i+1;
    end
    A

    This produces a 1x5 array A = [2 3 4 5 6]

    If you know the size the array needs to be, it's always better to preallocate with zeros (outside of the loop of course).

    Also in matlab at least, the index always starts with 1 (never 0)
     
Know someone interested in this topic? Share this thread via Reddit, Google+, Twitter, or Facebook




Similar Discussions: Cell arrray that stores with iteration a new set of values
Loading...