Bridge++
Ver. 1.2.x
|
Fermion operator with CRS matrix format. More...
#include <fopr_CRS.h>
Public Member Functions | |
Fopr_CRS (Fopr *fopr) | |
Fopr_CRS (std::string fname) | |
void | set_parameters (const Parameters &) |
void | write_matrix (std::string) |
void | set_config (Field *U) |
setting pointer to the gauge configuration. More... | |
void | set_mode (std::string mode) |
setting the mode of multiplication if necessary. Default implementation here is just to avoid irrelevant call. More... | |
std::string | get_mode () const |
const Field | mult (const Field &f) |
multiplies fermion operator to a given field and returns the resultant field. More... | |
const Field | mult_dag (const Field &f) |
hermitian conjugate of mult(const Field&). More... | |
void | mult (Field &v, const Field &f) |
multiplies fermion operator to a given field (2nd argument) More... | |
void | mult_dag (Field &v, const Field &f) |
hermitian conjugate of mult(Field&, const Field&). More... | |
void | DdagD (Field &, const Field &) |
void | D (Field &, const Field &) |
void | Ddag (Field &, const Field &) |
void | H (Field &, const Field &) |
int | field_nvol () |
returns the volume for which the fermion operator is defined. More... | |
int | field_nin () |
returns the on-site d.o.f. for which the fermion operator is defined. More... | |
int | field_nex () |
returns the external d.o.f. for which the fermion operator is defined. More... | |
Public Member Functions inherited from Fopr | |
Fopr () | |
virtual | ~Fopr () |
void | set_parameter_verboselevel (const Bridge::VerboseLevel vl) |
virtual void | mult_up (int mu, Field &, const Field &) |
nearest neighbor hopping term: temporary entry [H.Matsufuru] More... | |
virtual void | mult_dn (int mu, Field &, const Field &) |
virtual double | flop_count () |
returns the flops per site. More... | |
Static Public Attributes | |
static const std::string | class_name = "Fopr_CRS" |
Private Member Functions | |
void | set_matrix () |
void | set_matrix (std::string) |
void | set_matrix_1row (int &, std::valarray< int > &, std::valarray< double > &, Field &) |
Private Attributes | |
int | m_Nin |
int | m_Nvol |
int | m_Nex |
int | m_Nsize |
int | m_Nnz |
std::valarray< int > | m_rowidx_nz |
std::valarray< int > | m_column_nz |
std::valarray< double > | m_elem_nz |
std::string | m_mode |
Fopr * | m_fopr |
Additional Inherited Members | |
Protected Attributes inherited from Fopr | |
Bridge::VerboseLevel | m_vl |
Fermion operator with CRS matrix format.
This fermion operator class is defined by CRS matrix format which is widely used in studies of linear algorithms. The matrix is defined by giving fermion operator, or reading from a file (filename is provided at construction). In present implementation, this class works only on single node. Parallel version should be implemented. [07 Dec 2011 H.Matsufuru]
Definition at line 38 of file fopr_CRS.h.
|
inline |
Definition at line 54 of file fopr_CRS.h.
|
inline |
Definition at line 60 of file fopr_CRS.h.
Definition at line 44 of file fopr_CRS.cpp.
Definition at line 76 of file fopr_CRS.cpp.
Definition at line 34 of file fopr_CRS.cpp.
|
inlinevirtual |
returns the external d.o.f. for which the fermion operator is defined.
Implements Fopr.
Definition at line 141 of file fopr_CRS.h.
|
inlinevirtual |
returns the on-site d.o.f. for which the fermion operator is defined.
Implements Fopr.
Definition at line 140 of file fopr_CRS.h.
|
inlinevirtual |
returns the volume for which the fermion operator is defined.
Implements Fopr.
Definition at line 139 of file fopr_CRS.h.
|
inlinevirtual |
Reimplemented from Fopr.
Definition at line 85 of file fopr_CRS.h.
multiplies fermion operator to a given field and returns the resultant field.
Implements Fopr.
Definition at line 90 of file fopr_CRS.h.
multiplies fermion operator to a given field (2nd argument)
Reimplemented from Fopr.
Definition at line 106 of file fopr_CRS.h.
hermitian conjugate of mult(const Field&).
Reimplemented from Fopr.
Definition at line 98 of file fopr_CRS.h.
hermitian conjugate of mult(Field&, const Field&).
Reimplemented from Fopr.
Definition at line 120 of file fopr_CRS.h.
|
inlinevirtual |
setting pointer to the gauge configuration.
Implements Fopr.
Definition at line 70 of file fopr_CRS.h.
|
private |
Definition at line 109 of file fopr_CRS.cpp.
|
private |
|
private |
Definition at line 192 of file fopr_CRS.cpp.
|
inlinevirtual |
setting the mode of multiplication if necessary. Default implementation here is just to avoid irrelevant call.
Reimplemented from Fopr.
Definition at line 80 of file fopr_CRS.h.
|
virtual |
Implements Fopr.
Definition at line 25 of file fopr_CRS.cpp.
void Fopr_CRS::write_matrix | ( | std::string | ) |
Definition at line 260 of file fopr_CRS.cpp.
|
static |
Definition at line 41 of file fopr_CRS.h.
|
private |
Definition at line 47 of file fopr_CRS.h.
|
private |
Definition at line 48 of file fopr_CRS.h.
|
private |
Definition at line 50 of file fopr_CRS.h.
|
private |
Definition at line 49 of file fopr_CRS.h.
|
private |
Definition at line 44 of file fopr_CRS.h.
|
private |
Definition at line 44 of file fopr_CRS.h.
|
private |
Definition at line 45 of file fopr_CRS.h.
|
private |
Definition at line 45 of file fopr_CRS.h.
|
private |
Definition at line 44 of file fopr_CRS.h.
|
private |
Definition at line 46 of file fopr_CRS.h.