Bridge++
Ver. 1.3.x
|
Fermion operator with CRS matrix format. More...
#include <fopr_CRS.h>
Public Member Functions | |
Fopr_CRS (Fopr *fopr) | |
Fopr_CRS (unique_ptr< 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_config (unique_ptr< Field_G > &U) |
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 |
only for Fopr_Overlap 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... | |
![]() | |
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::vector< int > &, std::vector< double > &, Field &) |
Private Attributes | |
int | m_Nin |
int | m_Nvol |
int | m_Nex |
int | m_Nsize |
int | m_Nnz |
std::vector< int > | m_rowidx_nz |
std::vector< int > | m_column_nz |
std::vector< double > | m_elem_nz |
std::string | m_mode |
Fopr * | m_fopr |
Additional Inherited Members | |
![]() | |
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 37 of file fopr_CRS.h.
|
inline |
Definition at line 53 of file fopr_CRS.h.
|
inline |
Definition at line 59 of file fopr_CRS.h.
|
inline |
Definition at line 65 of file fopr_CRS.h.
Definition at line 62 of file fopr_CRS.cpp.
Definition at line 95 of file fopr_CRS.cpp.
Definition at line 52 of file fopr_CRS.cpp.
|
inlinevirtual |
returns the external d.o.f. for which the fermion operator is defined.
Implements Fopr.
Definition at line 140 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 139 of file fopr_CRS.h.
|
inlinevirtual |
returns the volume for which the fermion operator is defined.
Implements Fopr.
Definition at line 138 of file fopr_CRS.h.
|
inlinevirtual |
multiplies fermion operator to a given field (2nd argument)
Implements Fopr.
Definition at line 105 of file fopr_CRS.h.
hermitian conjugate of mult(Field&, const Field&).
Reimplemented from Fopr.
Definition at line 119 of file fopr_CRS.h.
|
inlinevirtual |
setting pointer to the gauge configuration.
Implements Fopr.
Definition at line 75 of file fopr_CRS.h.
|
inlinevirtual |
Implements Fopr.
Definition at line 85 of file fopr_CRS.h.
|
private |
Definition at line 128 of file fopr_CRS.cpp.
|
private |
|
private |
Definition at line 211 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 95 of file fopr_CRS.h.
|
virtual |
Implements Fopr.
Definition at line 43 of file fopr_CRS.cpp.
void Fopr_CRS::write_matrix | ( | std::string | ) |
Definition at line 279 of file fopr_CRS.cpp.
|
static |
Definition at line 40 of file fopr_CRS.h.
|
private |
Definition at line 46 of file fopr_CRS.h.
|
private |
Definition at line 47 of file fopr_CRS.h.
|
private |
Definition at line 49 of file fopr_CRS.h.
|
private |
Definition at line 48 of file fopr_CRS.h.
|
private |
Definition at line 43 of file fopr_CRS.h.
|
private |
Definition at line 43 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 43 of file fopr_CRS.h.
|
private |
Definition at line 45 of file fopr_CRS.h.