compute force matrix from positions matrix
1 次查看(过去 30 天)
显示 更早的评论
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 个评论
回答(1 个)
Jos (10584)
2016-3-25
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 个评论
另请参阅
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!