/**************** s_m_a_vec.c (in su3.a) ****************************** * * * void scalar_mult_add_su3_vector(a,b,s,c) su3_vector *a,*b,*c; float s * * C <- A + s*B, A,B and C vectors * */ #include "complex.h" #include "su3.h" /* c <- a + s*b, vectors */ #ifdef PROTO void scalar_mult_add_su3_vector(su3_vector *a, su3_vector *b, float s, su3_vector *c){ #else void scalar_mult_add_su3_vector(a,b,s,c) su3_vector *a,*b,*c; float s;{ #endif #ifndef _IBMR2 register int i; for(i=0;i<3;i++){ c->c[i].real = a->c[i].real + s*b->c[i].real; c->c[i].imag = a->c[i].imag + s*b->c[i].imag; } #else /* RS6000 version */ register double ss; ss = s; c->c[0].real = a->c[0].real + ss*b->c[0].real; c->c[0].imag = a->c[0].imag + ss*b->c[0].imag; c->c[1].real = a->c[1].real + ss*b->c[1].real; c->c[1].imag = a->c[1].imag + ss*b->c[1].imag; c->c[2].real = a->c[2].real + ss*b->c[2].real; c->c[2].imag = a->c[2].imag + ss*b->c[2].imag; #endif }