Loading...
Searching...
No Matches
cvmul.c
Go to the documentation of this file.
/* cvmul.c CCMATH mathematics library source code.
*
* Copyright (C) 2000 Daniel A. Atkinson All rights reserved.
* This code may be redistributed under the terms of the GNU library
* public license (LGPL). ( See the lgpl.license file for details.)
* ------------------------------------------------------------------------
*/
#include "ccmath.h"
void cvmul(Cpx *u, Cpx *a, Cpx *v, int n)
{
Cpx *q;
int i, j;
for (i = 0; i < n; ++i, ++u) {
u->re = u->im = 0.;
for (j = 0, q = v; j < n; ++j, ++a, ++q) {
u->re += a->re * q->re - a->im * q->im;
u->im += a->im * q->re + a->re * q->im;
}
}
}
Cpx cvnrm(Cpx *u, Cpx *v, int n)
{
int k;
Cpx z;
z.re = z.im = 0.;
for (k = 0; k < n; ++k, ++u, ++v) {
z.re += u->re * v->re + u->im * v->im;
z.im += u->re * v->im - u->im * v->re;
}
return z;
}
ccmath.h
Cpx
struct complex Cpx
Definition ccmath.h:41
cvnrm
Cpx cvnrm(Cpx *u, Cpx *v, int n)
Definition cvmul.c:26
cvmul
void cvmul(Cpx *u, Cpx *a, Cpx *v, int n)
Definition cvmul.c:11
complex::re
double re
Definition ccmath.h:39
complex::im
double im
Definition ccmath.h:39