compute force matrix from positions matrix
3 views (last 30 days)
Show older comments
Hi,
I have the following problem. I want to create a function which takes as inputs a 1XN vector of masses and a Nx3 matrix of positions. The k-th row is the coordinates (x,y,z) of the k-th particle. The function should output a Nx3 matrix where the k-th row consists of the cartesian coordinates of the total gravitational force exerted upon the k-th particle.
This is very easy to achive by using loops in the function, but I was wondering whether there is some brief and more eficient way to do this without using any iteration loops.
Thank you for your help!
0 Comments
Answers (1)
Jos (10584)
on 25 Mar 2016
There surely is way to vectorise your code, using bsxfun, accumarray and/or arrayfun, for instance. However, this most likely to make your code less efficient and readable.
0 Comments
See Also
Categories
Find more on Creating and Concatenating Matrices in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!