matlab - Iteration of matrix-vector multiplication which stores specific index-positions -



matlab - Iteration of matrix-vector multiplication which stores specific index-positions -

i need solve min distance problem, see of work has beingness tried take at:

link: click here

i have four elements: two column vectors: alpha of dim (px1) , beta of dim (qx1). in case p = q = 50 giving 2 column vectors of dim (50x1) each. defined follows:

alpha = alpha = 0:0.05:2; beta = beta = 0:0.05:2;

and have two matrices: l1 , l2.

l1 composed of 3 column-vectors of dimension (kx1) each.

l2 composed of 3 column-vectors of dimension (mx1) each.

in case, have equal size, meaning k = m = 1000 giving: l1 , l2 of dim (1000x3) each. values of these matrices predefined.

they have, nevertheless, next structure:

l1(kx3) = [t1(kx1) t2(kx1) t3(kx1)]; l2(mx3) = [t1(mx1) t2(mx1) t3(mx1)];

the min. distance problem need solve given (mathematically) follows:

d = min( (x-(alpha_p*t1_k - beta_q*t1_m)).^2 + (y-(alpha_p*t2_k - beta_q*t2_m)).^2 + (z-(alpha_p*t3_k - beta_q*t3_m)).^2 )

the values x,y,z 3 fixed constants.

my problem

i need develop iteration can give me index positions combination of: alpha, beta, l1 , l2 fulfills min-distance problem above.

i hope formulation problem clear, have been careful index notations. if still not clear... step size for:

alpha p = 1,...50

beta q = 1,...50

for l1; t1, t2, t3 k = 1,...,1000

for l2; t1, t2, t3 m = 1,...,1000

and need find index of p, index of q, index of k , index of m gives me min. distance point x,y,z.

thanks in advance help!

i don't know values wasn't able check code. using loops because obvious solution. pretty sure bsxfun-brigarde ( ;-d ) find shorter/more effective solution.

alpha = 0:0.05:2; beta = 0:0.05:2; l1(kx3) = [t1(kx1) t2(kx1) t3(kx1)]; l2(mx3) = [t1(mx1) t2(mx1) t3(mx1)]; idx_smallest_d =[1,1,1,1]; smallest_d = min((x-(alpha(1)*t1(1) - beta(1)*t1(1))).^2 + (y-(alpha(1)*t2(1) - beta(1)*t2(1))).^2+... (z-(alpha(1)*t3(1) - beta(1)*t3(1))).^2); %the min. distance problem need solve given (mathematically) follows: p=1:1:50 q=1:1:50 k=1:1:1000 m=1:1:1000 d = min((x-(alpha(p)*t1(k) - beta(q)*t1(m))).^2 + (y-(alpha(p)*t2(k) - beta(q)*t2(m))).^2+... (z-(alpha(p)*t3(k) - beta(q)*t3(m))).^2); if d < smallest_d smallest_d=d; idx_smallest_d= [p,q,k,m]; end end end end end

what doing predefining smallest distance distance of first combination , checking each combination rather distance smaller previous shortest distance.

matlab min matrix-multiplication

Comments

Popular posts from this blog

php - Android app custom user registration and login with cookie using facebook sdk -

django - Access session in user model .save() -

php - .htaccess Multiple Rewrite Rules / Prioritizing -