Write down your equation (or whatever) in a straightforward manner. Don't write weird code. Write code as straightforward as
dV = (1./m)*(Fa + P) + A*g - cross_product(w, V);
I strongly recommend you to keep your code as clear as possible and avoid premature optimizations (which can turn out a performance degradation in the end).
Write longer expressions. If you need to sum 3 vectors – do it!
v = v1 + v2 + v3;
Let the library and your compiler care about temporaries and other boring stuff. Don't bother about it!
This library respects programmers intent in the sense when you write
v2 = m1*m2*v1;
it is evaluated according to C++ operator precedence and associativity rules, that is (m1*m2) is evaluated first and then multiplied by v1. This can be inefficient so you may want to explicitly specify the order of operations, e.g.
v2 = m1*(m2*v1);
Generated on Thu Jul 19 2012 22:13:20 for NABLA by 1.8.1.2