[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Help-gsl] angle between two vectors
From: |
John D Lamb |
Subject: |
Re: [Help-gsl] angle between two vectors |
Date: |
Sun, 28 Mar 2010 15:33:06 +0100 |
On Sun, 2010-03-28 at 11:07 +0200, Jordi wrote:
> I am quite new to maths and gsl I would like to get the angle between two
> vectors.
In C it should be something like the following. (You may have to check
where acos is defined, check norm_u * norm_v != 0; and you may want a
direction with the angle.) For floats use snrm and sdot instead of dnrm
and ddot.
#include<gsl/gsl_blas.h>
…
gsl_vector* u, v;
double norm_u, norm_v, x, angle;
…
norm_u = gdl_blas_dnrm( u );
norm_v = gdl_blas_dnrm( v );
gsl_blas_ddot( u, v, &x );
angle = acos( x / (norm_u * norm_v ) );
--
JDL