Skip to content

Commit f0f975d

Browse files
Wentzellclaude
andcommitted
Fix compiler warnings
- Remove unused variables and parameters - Fix float-to-int implicit conversions - Fix variable shadowing - Fix float-to-bool conversion in argument check Co-Authored-By: Claude <claude@anthropic.com>
1 parent 891f01f commit f0f975d

3 files changed

Lines changed: 12 additions & 42 deletions

File tree

c++/cppdlr2d/dlr2d.cpp

Lines changed: 4 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -62,8 +62,6 @@ namespace cppdlr2d {
6262

6363
std::tuple<nda::array<int, 2>, nda::array<int, 2>> build_dlr2d(double lambda, double eps, bool compressgrid, bool compressbasis) {
6464

65-
int rankmethod = 1;
66-
6765
// Get DLR frequencies
6866
auto dlr_rf = build_dlr_rf(lambda, eps);
6967
int r = dlr_rf.size(); // # DLR basis functions
@@ -101,7 +99,7 @@ namespace cppdlr2d {
10199
// Extract frequency pairs
102100
auto dlr2d_rf = nda::array<int, 2>(ncol, 3);
103101
int idx = 0;
104-
double k = 0, l = 0;
102+
int k = 0, l = 0;
105103
for (int i = 0; i < ncol; ++i) {
106104
idx = rf_idx(i);
107105
if (idx < r * r) {
@@ -152,9 +150,9 @@ namespace cppdlr2d {
152150

153151
// Extract imaginary frequency pairs from pivots
154152
dlr2d_if = nda::array<int, 2>(nrow, 2);
155-
for (int k = 0; k < nrow; ++k) {
156-
dlr2d_if(k, 0) = prod_if(if_idx(k), 0);
157-
dlr2d_if(k, 1) = prod_if(if_idx(k), 1);
153+
for (int m = 0; m < nrow; ++m) {
154+
dlr2d_if(m, 0) = prod_if(if_idx(m), 0);
155+
dlr2d_if(m, 1) = prod_if(if_idx(m), 1);
158156
}
159157

160158
fmt::print("Fine system matrix shape = {} x {}\n", 3 * r * r + r, 3 * r * r + r);
@@ -207,8 +205,6 @@ namespace cppdlr2d {
207205
}
208206
}
209207

210-
auto nu2d = (2 * nu2didx + 1) * pi * 1i;
211-
212208
// Get system matrix for dense grid
213209
auto kmat = fmatrix(2 * r * r, 2 * r * r + r);
214210

@@ -257,7 +253,6 @@ namespace cppdlr2d {
257253

258254
// Pivoted QR to determine sampling nodes
259255
auto kmatt = fmatrix(transpose(kmat));
260-
auto start = std::chrono::high_resolution_clock::now();
261256
auto piv = nda::zeros<int>(2 * r * r);
262257
auto tau = nda::vector<dcomplex>(2 * r * r);
263258
nda::lapack::geqp3(kmatt, piv, tau);
@@ -342,7 +337,6 @@ namespace cppdlr2d {
342337

343338
fmatrix build_cf2if(double beta, nda::vector_const_view<double> dlr_rf, nda::array_const_view<int, 2> dlr2d_if,
344339
nda::array_const_view<int, 2> dlr2d_rf) {
345-
int r = dlr_rf.size();
346340
int n_if = dlr2d_if.shape(0);
347341
int n_rf = dlr2d_rf.shape(0);
348342

@@ -427,7 +421,6 @@ namespace cppdlr2d {
427421
auto coefreg = nda::zeros<dcomplex>(3, r, r);
428422
auto coefsng = nda::zeros<dcomplex>(r);
429423

430-
int idx = 0, j = 0, k = 0, l = 0;
431424
for (int i = 0; i < n; ++i) {
432425
if (dlr2d_rf(i, 0) < 3) { // Regular part
433426
coefreg(dlr2d_rf(i, 0), dlr2d_rf(i, 1), dlr2d_rf(i, 2)) = tmp(i);

c++/cppdlr2d/polarization.cpp

Lines changed: 7 additions & 29 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22

33
namespace cppdlr2d {
44

5-
nda::vector<dcomplex> polarization(double beta, double lambda, double eps, cppdlr::imtime_ops const &itops, cppdlr::imfreq_ops const &ifops_fer,
5+
nda::vector<dcomplex> polarization(double beta, double lambda, double eps, cppdlr::imtime_ops const & /*itops*/, cppdlr::imfreq_ops const &ifops_fer,
66
cppdlr::imfreq_ops const &ifops_bos, nda::array_const_view<dcomplex, 1> fc,
77
nda::array_const_view<dcomplex, 1> gc, nda::array_const_view<dcomplex, 3> lambc,
88
nda::array_const_view<dcomplex, 1> lambc_sing) {
@@ -31,17 +31,11 @@ namespace cppdlr2d {
3131

3232
// Compute 1/(i Omega_m - omega_k)
3333
auto kkif = nda::array<dcomplex, 2>(r, r);
34-
auto iom = 2 * dlr_if_bos * pi * 1i;
3534
for (int j = 0; j < r; ++j) {
36-
for (int k = 0; k < r; ++k) {
37-
// kkif(j, k) = beta / (iom(j) - dlr_rf(k));
38-
kkif(j, k) = beta * k_if_boson(dlr_if_bos(j), dlr_rf(k));
39-
}
35+
for (int k = 0; k < r; ++k) { kkif(j, k) = beta * k_if_boson(dlr_if_bos(j), dlr_rf(k)); }
4036
}
4137

4238
// Compute F(tau) and G(tau)
43-
// auto fit = itops.coefs2vals(fc);
44-
// auto git = itops.coefs2vals(gc);
4539
auto fit = matvecmul(cf2itfine, fc);
4640
auto git = matvecmul(cf2itfine, gc);
4741

@@ -105,11 +99,9 @@ namespace cppdlr2d {
10599
auto tmp5 = matvecmul(tmp2, lambc_sing);
106100
auto tmp6 = cffine2if * itops2.vals2coefs(tmp5);
107101

108-
int m0idx = 0;
109102
for (int j = 0; j < r; ++j) {
110103
if (dlr_if_bos(j) == 0) {
111104
pol(j) += beta * beta * tmp6(j);
112-
m0idx = j;
113105
break;
114106
}
115107
}
@@ -122,7 +114,7 @@ namespace cppdlr2d {
122114
return pol;
123115
}
124116

125-
nda::vector<dcomplex> polarization_3term(double beta, double lambda, double eps, cppdlr::imtime_ops const &itops,
117+
nda::vector<dcomplex> polarization_3term(double beta, double lambda, double eps, cppdlr::imtime_ops const & /*itops*/,
126118
cppdlr::imfreq_ops const &ifops_fer, cppdlr::imfreq_ops const &ifops_bos,
127119
nda::array_const_view<dcomplex, 1> fc, nda::array_const_view<dcomplex, 1> gc,
128120
nda::array_const_view<dcomplex, 3> lambc, nda::array_const_view<dcomplex, 1> lambc_sing) {
@@ -151,17 +143,11 @@ namespace cppdlr2d {
151143

152144
// Compute 1/(i Omega_m - omega_k)
153145
auto kkif = nda::array<dcomplex, 2>(r, r);
154-
auto iom = 2 * dlr_if_bos * pi * 1i;
155146
for (int j = 0; j < r; ++j) {
156-
for (int k = 0; k < r; ++k) {
157-
// kkif(j, k) = beta / (iom(j) - dlr_rf(k));
158-
kkif(j, k) = beta * k_if_boson(dlr_if_bos(j), dlr_rf(k));
159-
}
147+
for (int k = 0; k < r; ++k) { kkif(j, k) = beta * k_if_boson(dlr_if_bos(j), dlr_rf(k)); }
160148
}
161149

162150
// Compute F(tau) and G(tau)
163-
// auto fit = itops.coefs2vals(fc);
164-
// auto git = itops.coefs2vals(gc);
165151
auto fit = matvecmul(cf2itfine, fc);
166152
auto git = matvecmul(cf2itfine, gc);
167153

@@ -215,11 +201,9 @@ namespace cppdlr2d {
215201
auto tmp5 = matvecmul(tmp2, lambc_sing);
216202
auto tmp6 = cffine2if * itops2.vals2coefs(tmp5);
217203

218-
int m0idx = 0;
219204
for (int j = 0; j < r; ++j) {
220205
if (dlr_if_bos(j) == 0) {
221206
pol(j) += beta * beta * tmp6(j);
222-
m0idx = j;
223207
break;
224208
}
225209
}
@@ -243,7 +227,6 @@ namespace cppdlr2d {
243227
auto dlr_if_fer = ifops_fer.get_ifnodes();
244228
auto dlr_if_bos = ifops_bos.get_ifnodes();
245229

246-
auto nu_dlr = ((2 * dlr_if_fer + 1) * pi * 1i) / beta;
247230
auto om_dlr = (2 * dlr_if_bos * pi * 1i) / beta;
248231

249232
// Prepare some objects
@@ -507,9 +490,8 @@ namespace cppdlr2d {
507490

508491
// Evaluate summand at fermionic DLR imag freq nodes
509492

510-
auto h = nda::vector<dcomplex>(r);
511-
std::complex<double> nu = 0;
512-
int channel = 1;
493+
auto h = nda::vector<dcomplex>(r);
494+
int channel = 1;
513495
for (int k = 0; k < r; ++k) {
514496
// h(k) = hubbg(u, nu1) * hubbg(u, -nu1) * hubbvert(u, beta, nu1, -nu1);
515497
h(k) = ifops_fer.coefs2eval(beta, fc, dlr_if_fer(k)) * ifops_fer.coefs2eval(beta, gc, -dlr_if_fer(k) - 1)
@@ -524,12 +506,8 @@ namespace cppdlr2d {
524506
for (int k = 0; k < r; ++k) { pol0 += hc(k) * k_it(0.0, ej(k), beta); }
525507

526508
// Fill in polarization at i omega_n = 0
527-
int m0idx = 0;
528509
for (int m = 0; m < r; ++m) {
529-
if (dlr_if_bos(m) == 0) {
530-
m0idx = m;
531-
pol(m) = pol0;
532-
}
510+
if (dlr_if_bos(m) == 0) { pol(m) = pol0; }
533511
}
534512

535513
return pol;

c++/cppdlr2d/utils.cpp

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -70,7 +70,7 @@ namespace cppdlr2d {
7070
}
7171
} else if (method == 3) {
7272

73-
if (!alpha || !nvec) { throw std::invalid_argument("alpha and nvec must be provided for method 3"); }
73+
if (alpha == 0 || nvec == 0) { throw std::invalid_argument("alpha and nvec must be provided for method 3"); }
7474

7575
// Set up random number generator
7676
std::random_device rd;
@@ -116,7 +116,6 @@ namespace cppdlr2d {
116116
for (int i = 0; i < n; ++i) { ynorm(i, 0) = max_element(ynorm(i, _)); }
117117

118118
// Estimate rank
119-
int rank = 0;
120119
double epssc = eps / (alpha * sqrt(2 / pi));
121120
for (int i = 0; i < n - 1; ++i) {
122121
if (ynorm(i + 1, 0) < epssc * epssc) {

0 commit comments

Comments
 (0)