help-gsl
[Top][All Lists]
Advanced

[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





reply via email to

[Prev in Thread] Current Thread [Next in Thread]