Bridge++  Ver. 1.2.x
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
field.h File Reference
#include <valarray>
#include <string>
#include <assert.h>
#include "commonParameters.h"
#include "communicator.h"
#include "bridge_complex.h"

Go to the source code of this file.

Classes

class  Field
 Container of Field-type object. More...
 

Functions

Field operator* (const Field &v, const double s)
 
Field operator* (const double s, const Field &v)
 
Field operator+ (const Field &lhs, const Field &rhs)
 
Field operator- (const Field &lhs, const Field &rhs)
 
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...
 
dcomplex dotc (const Field &y, const Field &x)
 
dcomplex dotc (const Field &y, const int exy, const Field &x, const int nexx)
 dotc(y, j, x, k) := y[j]^dag 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 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)
 
int exchange (int count, Field *recv_buf, Field *send_buf, int idir, int ipm, int tag)
 
int send_1to1 (int count, Field *recv_buf, Field *send_buf, int p_to, int p_from, int tag)
 
void report_field_stat (const Bridge::VerboseLevel vl, const std::string &msg, const Field &f)
 

Function Documentation

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

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

Definition at line 193 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 211 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 231 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 270 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 489 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 505 of file field.cpp.

void copy ( Field y,
const Field x 
)

copy(y, x): y = x

Definition at line 409 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 430 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 71 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 98 of file field.cpp.

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

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

Definition at line 145 of file field.cpp.

int exchange ( int  count,
Field recv_buf,
Field send_buf,
int  idir,
int  ipm,
int  tag 
)
inline

Definition at line 362 of file field.h.

Field operator* ( const Field v,
const double  s 
)
inline

Definition at line 271 of file field.h.

Field operator* ( const double  s,
const Field v 
)
inline

Definition at line 280 of file field.h.

Field operator+ ( const Field lhs,
const Field rhs 
)
inline

Definition at line 286 of file field.h.

Field operator- ( const Field lhs,
const Field rhs 
)
inline

Definition at line 295 of file field.h.

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

Definition at line 580 of file field.cpp.

void scal ( Field x,
const double  a 
)

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

Definition at line 310 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 326 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 343 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 376 of file field.cpp.

int send_1to1 ( int  count,
Field recv_buf,
Field send_buf,
int  p_to,
int  p_from,
int  tag 
)
inline

Definition at line 368 of file field.h.