Bridge++  Ver. 1.3.x
force.cpp
Go to the documentation of this file.
1 
14 #include "force.h"
15 
16 
17 // default templates for core and core1
18 //====================================================================
19 void Force::force_core(Field& force_, const Field& eta)
20 {
21  int Nvol = CommonParameters::Nvol();
22  int Ndim = CommonParameters::Ndim();
23 
24  Field_G force(Nvol, Ndim);
25 
26  force_udiv(force, eta);
27 
28  mult_generator(force);
29 
30  force_ = force;
31 }
32 
33 
34 //====================================================================
35 void Force::force_core1(Field& force_, const Field& zeta, const Field& eta)
36 {
37  int Nvol = CommonParameters::Nvol();
38  int Ndim = CommonParameters::Ndim();
39 
40  Field_G force(Nvol, Ndim);
41 
42  force_udiv1(force, zeta, eta);
43 
44  mult_generator(force);
45 
46  force_ = force;
47 }
48 
49 
50 // utility function
51 //====================================================================
53 {
54 // int Nvol = CommonParameters::Nvol();
55 // int Ndim = CommonParameters::Ndim();
56  int Nvol = force.nvol();
57  int Ndim = force.nex();
58 
59  for (int mu = 0; mu < Ndim; ++mu) {
60  for (int isite = 0, nsite = Nvol; isite < nsite; ++isite) {
61  Mat_SU_N u = m_U->mat(isite, mu);
62 
63  u *= force.mat(isite, mu);
64  u.at();
65  u *= -2.0;
66 
67  force.set_mat(isite, mu, u);
68  }
69  }
70 }
71 
72 
73 //====================================================================
Container of Field-type object.
Definition: field.h:39
int nvol() const
Definition: field.h:116
Field_G * m_U
Definition: force.h:70
Mat_SU_N & at()
antihermitian traceless
Definition: mat_SU_N.h:329
virtual void force_core1(Field &, const Field &, const Field &)
Definition: force.cpp:35
SU(N) gauge field.
Definition: field_G.h:38
int nex() const
Definition: field.h:117
virtual void force_core(Field &, const Field &)
Definition: force.cpp:19
virtual void force_udiv(Field &, const Field &)
Definition: force.h:62
virtual void force_udiv1(Field &, const Field &, const Field &)
Definition: force.h:63
void set_mat(const int site, const int mn, const Mat_SU_N &U)
Definition: field_G.h:159
Mat_SU_N mat(const int site, const int mn=0) const
Definition: field_G.h:113
void mult_generator(Field_G &)
Definition: force.cpp:52