Bridge++  Ver. 1.1.x
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
force_F_Smeared.cpp
Go to the documentation of this file.
1 
14 #include "force_F_Smeared.h"
15 
16 //====================================================================
18 {
19  const string str_vlevel = params.get_string("verbose_level");
20 
21  m_vl = vout.set_verbose_level(str_vlevel);
22 }
23 
24 
25 //====================================================================
27 {
28  int Nc = CommonParameters::Nc();
29  int Nvol = CommonParameters::Nvol();
30  int Ndim = CommonParameters::Ndim();
31 
32  Field_G force(Nvol, Ndim), force1(Nvol, Ndim);
33  Mat_SU_N ut(Nc);
34 
35  force1 = force_udiv(eta);
36 
37  for (int mu = 0; mu < Ndim; ++mu) {
38  force.mult_Field_Gnn(mu, *m_U, mu, force1, mu);
39  force.at_Field_G(mu);
40  }
41 
42  force *= -2.0;
43 
44  return (Field)force;
45 }
46 
47 
48 //====================================================================
50 {
51  int Nc = CommonParameters::Nc();
52  int Nvol = CommonParameters::Nvol();
53  int Ndim = CommonParameters::Ndim();
54 
55  Field_G force(Nvol, Ndim), force1(Nvol, Ndim);
56  Mat_SU_N ut(Nc);
57 
58  force1 = force_udiv1(zeta, eta);
59 
60  for (int mu = 0; mu < Ndim; ++mu) {
61  force.mult_Field_Gnn(mu, *m_U, mu, force1, mu);
62  force.at_Field_G(mu);
63  }
64  force *= -2.0;
65 
66  return (Field)force;
67 }
68 
69 
70 //====================================================================
72 {
73  int Nvol = CommonParameters::Nvol();
74  int Ndim = CommonParameters::Ndim();
75 
76  Field_G force(Nvol, Ndim);
77 
78  int Nsmear = m_dr_smear->get_Nsmear();
79 
80  if (Nsmear == 0) {
81  force = m_force->force_udiv1(zeta, eta);
82  } else {
83  Field_G force1(Nvol, Ndim);
84  Field_G Usmear(Nvol, Ndim);
85  Field *Uptr;
86 
87  Uptr = m_dr_smear->getptr_smearedConfig(Nsmear);
88  Usmear = (Field_G) * Uptr;
89 
90  m_force->set_config((Field *)&Usmear);
91  force1 = m_force->force_udiv1(zeta, eta);
92 
93  for (int ismear = Nsmear - 1; ismear > 0; --ismear) {
94  Uptr = m_dr_smear->getptr_smearedConfig(ismear);
95  Usmear = (Field_G) * Uptr;
96 
97  force = m_force_smear->force_udiv(force1, Usmear);
98  force1 = force;
99  }
100 
101  Usmear = *m_U;
102  force = m_force_smear->force_udiv(force1, Usmear);
103  }
104 
105  return (Field)force;
106 }
107 
108 
109 //====================================================================
111 {
112  int Nvol = CommonParameters::Nvol();
113  int Ndim = CommonParameters::Ndim();
114 
115  Field_G force(Nvol, Ndim);
116 
117  int Nsmear = m_dr_smear->get_Nsmear();
118 
119  if (Nsmear == 0) {
120  force = m_force->force_udiv(eta);
121  } else {
122  Field_G force1(Nvol, Ndim);
123  Field_G Usmear(Nvol, Ndim);
124  Field *Uptr;
125 
126  Uptr = m_dr_smear->getptr_smearedConfig(Nsmear);
127  Usmear = (Field_G) * Uptr;
128 
129  m_force->set_config((Field *)&Usmear);
130  force1 = m_force->force_udiv(eta);
131 
132  for (int ismear = Nsmear - 1; ismear > 0; --ismear) {
133  Uptr = m_dr_smear->getptr_smearedConfig(ismear);
134  Usmear = (Field_G) * Uptr;
135 
136  force = m_force_smear->force_udiv(force1, Usmear);
137  force1 = force;
138  }
139 
140  Usmear = *m_U;
141  force = m_force_smear->force_udiv(force1, Usmear);
142  }
143 
144  return (Field)force;
145 }
146 
147 
148 //====================================================================
149 //============================================================END=====