Bridge++  Ver. 2.0.2
field.cpp File Reference
#include "Field/field.h"
#include <cstring>
#include "ResourceManager/threadManager.h"
#include "IO/bridgeIO.h"
#include "Field/field_thread-inc.h"

Go to the source code of this file.

Functions

void copy (Field &y, const Field &x)
 copy(y, x): y = x More...
 
void copy (Field &y, const int exy, const Field &x, const int exx)
 copy(y, j, x, k): y[j] = x[k] More...
 
void scal (Field &x, const double a)
 scal(x, a): x = a * x More...
 
void scal (Field &x, const int exx, const double a)
 scal(x, k, a): x[k] = a * x[k] More...
 
void scal (Field &x, const dcomplex a)
 
void scal (Field &x, const int exx, const dcomplex a)
 scal(x, k, a): x[k] = a * x[k] More...
 
void axpy (Field &y, const double a, const Field &x)
 axpy(y, a, x): y := a * x + y More...
 
void axpy (Field &y, const int exy, const double a, const Field &x, const int exx)
 axpy(y, j, a, x, k): y[j] := a * x[k] + y[j] More...
 
void axpy (Field &y, const dcomplex a, const Field &x)
 
void axpy (Field &y, const int exy, const dcomplex a, const Field &x, const int exx)
 axpy(y, j, a, x, k): y[j] := a * x[k] + y[j] More...
 
void aypx (const double a, Field &y, const Field &x)
 aypx(y, a, x): y := a * y + x More...
 
void aypx (const dcomplex a, Field &y, const Field &x)
 
double dot (const Field &y, const Field &x)
 
double dot (const Field &y, const int exy, const Field &x, const int exx)
 dot(y[j], x[k]) := y[j]^T x[k] More...
 
void dot_and_norm2 (double &yx, double &y2, double &x2, const Field &y, const int exy, const Field &x, const int exx)
 
void dot_and_norm2 (double &yx, double &y2, double &x2, const Field &y, const Field &x)
 
dcomplex dotc (const Field &y, const Field &x)
 
dcomplex dotc (const Field &y, const int exy, const Field &x, const int exx)
 dotc(y, j, x, k) := y[j]^dag x[k] More...
 
void dotc_and_norm2 (dcomplex &yx, double &y2, double &x2, const Field &y, const Field &x)
 
void dotc_and_norm2 (dcomplex &yx, double &y2, double &x2, const Field &y, const int exy, const Field &x, const int exx)
 

Detailed Description

Author
Hideo Matsufuru (matufuru)
LastChangedBy
matufuru
Date
$LastChangedDate:: 2023-02-28 16:09:41 #$
Version
LastChangedRevision
2492

Definition in file field.cpp.

Function Documentation

◆ axpy() [1/4]

void axpy ( Field y,
const dcomplex  a,
const Field x 
)

axpy(y, a, x): y := a * x + y fails if x or y is real vector

Definition at line 430 of file field.cpp.

◆ axpy() [2/4]

void axpy ( Field y,
const double  a,
const Field x 
)

axpy(y, a, x): y := a * x + y

Definition at line 380 of file field.cpp.

◆ axpy() [3/4]

void axpy ( Field y,
const int  exy,
const dcomplex  a,
const Field x,
const int  exx 
)

axpy(y, j, a, x, k): y[j] := a * x[k] + y[j]

Definition at line 470 of file field.cpp.

◆ axpy() [4/4]

void axpy ( Field y,
const int  exy,
const double  a,
const Field x,
const int  exx 
)

axpy(y, j, a, x, k): y[j] := a * x[k] + y[j]

Definition at line 405 of file field.cpp.

◆ aypx() [1/2]

void aypx ( const dcomplex  a,
Field y,
const Field x 
)

aypx(y, a, x): y := a * y + x fails if x or y is real vector

Definition at line 534 of file field.cpp.

◆ aypx() [2/2]

void aypx ( const double  a,
Field y,
const Field x 
)

aypx(y, a, x): y := a * y + x

Definition at line 509 of file field.cpp.

◆ copy() [1/2]

void copy ( Field y,
const Field x 
)

copy(y, x): y = x

Definition at line 212 of file field.cpp.

◆ copy() [2/2]

void copy ( Field y,
const int  exy,
const Field x,
const int  exx 
)

copy(y, j, x, k): y[j] = x[k]

Definition at line 237 of file field.cpp.

◆ dot() [1/2]

double dot ( const Field y,
const Field x 
)

dot(y,x) := y^T x N.B. treat as real vectors.

Definition at line 576 of file field.cpp.

◆ dot() [2/2]

double dot ( const Field y,
const int  exy,
const Field x,
const int  exx 
)

dot(y[j], x[k]) := y[j]^T x[k]

Definition at line 607 of file field.cpp.

◆ dot_and_norm2() [1/2]

void dot_and_norm2 ( double &  yx,
double &  y2,
double &  x2,
const Field y,
const Field x 
)

Definition at line 674 of file field.cpp.

◆ dot_and_norm2() [2/2]

void dot_and_norm2 ( double &  yx,
double &  y2,
double &  x2,
const Field y,
const int  exy,
const Field x,
const int  exx 
)

Definition at line 637 of file field.cpp.

◆ dotc() [1/2]

dcomplex dotc ( const Field y,
const Field x 
)

dotc(y, x) := y^dag x x, y may be real or complex vectors. (must be of same element type)

Definition at line 712 of file field.cpp.

◆ dotc() [2/2]

dcomplex dotc ( const Field y,
const int  exy,
const Field x,
const int  exx 
)

dotc(y, j, x, k) := y[j]^dag x[k]

Definition at line 760 of file field.cpp.

◆ dotc_and_norm2() [1/2]

void dotc_and_norm2 ( dcomplex &  yx,
double &  y2,
double &  x2,
const Field y,
const Field x 
)

Definition at line 806 of file field.cpp.

◆ dotc_and_norm2() [2/2]

void dotc_and_norm2 ( dcomplex &  yx,
double &  y2,
double &  x2,
const Field y,
const int  exy,
const Field x,
const int  exx 
)

Definition at line 861 of file field.cpp.

◆ scal() [1/4]

void scal ( Field x,
const dcomplex  a 
)

scal(x, a): x = a * x fails if x is a real vector

Definition at line 304 of file field.cpp.

◆ scal() [2/4]

void scal ( Field x,
const double  a 
)

scal(x, a): x = a * x

Definition at line 261 of file field.cpp.

◆ scal() [3/4]

void scal ( Field x,
const int  exx,
const dcomplex  a 
)

scal(x, k, a): x[k] = a * x[k]

Definition at line 343 of file field.cpp.

◆ scal() [4/4]

void scal ( Field x,
const int  exx,
const double  a 
)

scal(x, k, a): x[k] = a * x[k]

Definition at line 284 of file field.cpp.