Bridge++  Version 1.5.4
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
field.cpp File Reference
#include "field.h"
#include <cstring>
#include "ResourceManager/threadManager_OpenMP.h"
#include "IO/bridgeIO.h"

Go to the source code of this file.

Functions

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 int exy, const Field &x, const int exx)
 
void dotc_and_norm2 (dcomplex &yx, double &y2, double &x2, const Field &y, const Field &x)
 
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 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 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 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)
 
void report_field_stat (const Bridge::VerboseLevel vl, const std::string &msg, const Field &f)
 

Detailed Description

Author
Hideo Matsufuru (matsufuru)
LastChangedBy:
kanamori
Date
LastChangedDate:
2020-03-16 15:02:44 #
Version
LastChangedRevision:
2054

Definition in file field.cpp.

Function Documentation

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

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

Definition at line 319 of file field.cpp.

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 336 of file field.cpp.

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 355 of file field.cpp.

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 394 of file field.cpp.

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

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

Definition at line 612 of file field.cpp.

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 628 of file field.cpp.

void copy ( Field y,
const Field x 
)

copy(y, x): y = x

Definition at line 532 of file field.cpp.

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 553 of file field.cpp.

double dot ( const Field y,
const Field x 
)

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

Definition at line 46 of file field.cpp.

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 68 of file field.cpp.

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 92 of file field.cpp.

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

Definition at line 123 of file field.cpp.

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 155 of file field.cpp.

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 192 of file field.cpp.

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 229 of file field.cpp.

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

Definition at line 274 of file field.cpp.

void report_field_stat ( const Bridge::VerboseLevel  vl,
const std::string &  msg,
const Field f 
)

Definition at line 703 of file field.cpp.

void scal ( Field x,
const double  a 
)

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

Definition at line 433 of file field.cpp.

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

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

Definition at line 449 of file field.cpp.

void scal ( Field x,
const dcomplex  a 
)

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

Definition at line 466 of file field.cpp.

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

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

Definition at line 499 of file field.cpp.