Vector indexing inefficiency question.

Hi all,
I am having performance issues with matlab and I was wondering if anybody had any ideas to speed up my algorithm
I have four vectors, a,b,c,d each of varying lengths. Each value inside the vectors represents a particular angle.
a = [1 2 3 5]
b = [2 52 53 51 55 66]
c = [1]
d = [3 6 9]
A set of four values from A, B, C, D represents a particular geometry I need to evaluate. For example, [1 52 1 9] is a geometry [2 2 1 6] is a geometry etc.... I need to do this for every possible combination of geometry available.
currently I have a bunch of nested for loops, and while I know this is inefficient, it helps me for debugging and I wasn't sure how to vectorize when you need to do each geometry, especially when the vectors are of varying lengths.
Anybody have any good ideas?
Thanks,
Dan

2 Comments

Please post your MATLAB code.
a = [1 2 3 5]
b = [2 52 53 51 55 66]
c = [1]
d = [3 6 9]
for i = 1:length(a)
for j = 1: length(b)
for k = 1: length(c)
for r = 1: length(d)
data = function( a(i), b(j), c(k) d(r) )
end
end
end
end
What I'm trying to do is get rid of these for loops

Sign in to comment.

 Accepted Answer

Mahdi
Mahdi on 3 Jun 2014
Have you looked at perms built-in function? I'm sure you can manipulate to fulfill your need.

2 Comments

That's what I'm looking for. thank you.
No problem.

Sign in to comment.

More Answers (0)

Categories

Find more on Mathematics in Help Center and File Exchange

Asked:

on 3 Jun 2014

Commented:

on 3 Jun 2014

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!