"John Smith" <johnps@gmail.com> wrote in message <j1s57e$eo8$1@newscl01ah.mathworks.com>...
> The output of the program I'm working on is confusing me. It is supposed to create a table of solutions, and as it finds solutions, it adds to the table, and when no more solutions are found, it displays the table. However, it seems that the code is somehow adding a vector to the table that's not supposed to be there, so that my solutions are "lost" in a sea of numbers. I cannot figure out how it is happening. Here is my code, and my apologies for the length: (I edited out a few things).
>
> starter1 = input('Enter vector of starting guesses in the same format as upper bounds: ');
> starter2 = starter1;
>
> options = optimset('MaxFunEvals', 5000, 'MaxIter', 5000, 'Display', 'notify');
>
> number_of_thrusters = input('Enter number of thrusters: ');
>
> if number_of_thrusters == 6
>
>
> n = 0;
> for angle = 0:10:180
> disp('Angle:')
> disp(angle)
> n = n+1;
> warning('off','all');
>
> counter = 0;
> Coefficients = [Cxwi(n) Cywi(n) Cxywi(n) Cxcur(n) Cycur(n) Cxycur(n) Cxwav(n) Cywav(n) Cxywav(n)];
> f = @(x)start_over1(x,Coefficients, x1,x2,x3,x4,x5,x6,y1,y2,y3,y4,y5,y6);
> for lb1 = [0 (T1bc+(T1bz/2))]
> for lb2 = [0 (T2bc+(T2bz/2))]
> for lb3 = [0 (T3bc+(T3bz/2))]
> for lb4 = [0 (T4bc+(T3bz/2))]
> for ub1 = [(T1bc(T1bz/2)) 940]
> for ub2 = [(T2bc(T2bz/2)) 940]
> for ub3 = [(T3bc(T3bz/2)) 940]
> for ub4 = [(T4bc(T4bz/2)) 940]
>
> l = [0 0 0 0 0 0 lb1 lb2 lb3 lb4 0 0 0];
> u = [940 940 940 940 940 940 ub1 ub2 ub3 ub4 2*pi 2*pi 200];
> LB1 = [0 (T1bc+(T1bz/2))];
> LB2 = [0 (T2bc+(T2bz/2))];
> LB3 = [0 (T3bc+(T3bz/2))];
> LB4 = [0 (T4bc+(T3bz/2))];
> UB1 = [(T1bc(T1bz/2)) 2*pi];
> UB2 = [(T2bc(T2bz/2)) 2*pi];
> UB3 = [(T3bc(T3bz/2)) 2*pi];
> UB4 = [(T4bc(T4bz/2)) 2*pi];
>
> sn1 = fmincon(@myfun1,starter1,[],[],[],[],l,u,f, options);
> if (sn1(7)>=LB1(1) && (sn1(7)<= UB1(1)  sn1(7)>=LB1(2)) && sn1(7)<=UB1(2))...
> && (sn1(8)>=LB2(1) && (sn1(8)<= UB2(1)  sn1(8)>=LB2(2)) && sn1(8)
>
> counter = counter + 1;
> solutions_table(counter,:) = sn1;
> end
>
>
>
> sn2 = fmincon(@myfun1,starter2,[],[],[],[],l,u,f, options);
> if (sn2(7)>=LB1(1) && (sn2(7)<=UB1(1)  sn2(7)>=LB1(2)) && sn2(7)<=UB1(2))...
> && (sn2(8)>=LB2(1) && (sn2(8)<=UB2(1)  sn2(8)>=LB2(2)) && sn2(8)
>
> counter = counter + 1;
> solutions_table(counter,:) = sn2;
> end
>
> end
> end
> end
> end
> end
> end
> end
> end
> disp(solutions_table)
> end
>
>
> Now, what seems to be happening is that my "starter1" is somehow becoming a part of solutions_table. If anyone can point out what's going on it would be MUCH appreciated!!
I meant to add a sample of the output. Here is a sample of columns 913. As one can see, the solutions are interspersed with the initial guess for some reason.
.2832 6.2832 6.2832 6.2832 200.0000
6.2832 6.2832 6.2832 6.2832 200.0000
6.2832 6.2832 6.2832 6.2832 200.0000
6.2832 6.2832 6.2832 6.2832 200.0000
6.2832 6.2832 6.2832 6.2832 200.0000
0.2314 4.3650 6.2832 6.2832 111.5148
0.2314 4.3650 6.2832 6.2832 111.5148
0.0000 6.2832 6.2832 6.2832 123.3065
0.0000 6.2832 6.2832 6.2832 123.3065
6.2832 6.2832 6.2832 6.2832 200.0000
6.2832 6.2832 6.2832 6.2832 200.0000
6.2832 6.2832 6.2832 6.2832 200.0000
6.2832 6.2832 6.2832 6.2832 200.0000
6.2832 6.2832 6.2832 6.2832 200.0000
