Текст подпрограммы и версий
av04r_c.zip  av04d_c.zip  av04c_c.zip 
Тексты тестовых примеров
tav04r_c.zip  tav04d_c.zip  tav04c_c.zip 

Функция:  av04r_c

Назначение

Вычисление скалярного произведения векторов.

Математическое описание

Для заданных векторов U и V длины N вычисляется скалярное произведение

     (U,V) = U1*V1 + U2*V2 + ... + UN*VN. 

Использование

    real av04r_c (real *u, real *v, integer *n)

Параметры

u, v - одномерные массивы длины n, в которых задаются исходные векторы (тип: вещественный);
n - размерность векторов U и V (тип: целый).

Версии

av04d_c - вычисление скалярного произведения векторов с повышенной точностью;
av04c_c - вычисление скалярного произведения комплексных векторов;

Вызываемые подпрограммы: нет

Замечания по использованию

  1. 

В функции av04d_c параметры u и v имеют тип double.

  2. 

В функции av04c_c параметры u и v имеют тип complex.

  3. 

В функции av04c_c скалярное произведение вычисляется по формуле

(U,V) = U1*V*1 + U2*V*2 +... + UN*V*N
где " * " - знак комплексного сопряжения.

Пример использования

int main(void)
{
    /* Initialized data */
    static float u1[4] = { 3.f,2.f,1.f,1.f };
    static float u2[4] = { 1.f,2.f,0.f,1.f };

    /* Local variables */
    extern float av04r_c(float *, float *, int *);
    static int n;
    static float s;

    n = 4;
    s = (float)av04r_c(u1, u2, &n);

    printf("\n  %16.7e \n", s);
    return 0;
} /* main */


Результат:    s = 8.