diff --git a/docs/main/.doctrees/environment.pickle b/docs/main/.doctrees/environment.pickle index 4e1049d..dacf2d0 100644 Binary files a/docs/main/.doctrees/environment.pickle and b/docs/main/.doctrees/environment.pickle differ diff --git a/docs/main/doxygen/html/classcppdlr_1_1imtime__ops-members.html b/docs/main/doxygen/html/classcppdlr_1_1imtime__ops-members.html index a6b832d..107fc48 100644 --- a/docs/main/doxygen/html/classcppdlr_1_1imtime__ops-members.html +++ b/docs/main/doxygen/html/classcppdlr_1_1imtime__ops-members.html @@ -96,7 +96,7 @@ hdf5_format()cppdlr::imtime_opsinlinestatic imtime_ops(double lambda, nda::vector_const_view< double > dlr_rf, bool symmetrize)cppdlr::imtime_ops imtime_ops(double lambda, nda::vector_const_view< double > dlr_rf)cppdlr::imtime_ops - imtime_ops(double lambda, nda::vector_const_view< double > dlr_rf, nda::vector_const_view< double > dlr_it, nda::matrix_const_view< double > cf2it, nda::matrix_const_view< double > it2cf_lu, nda::matrix_const_view< dcomplex > it2cf_zlu, nda::vector_const_view< int > it2cf_piv)cppdlr::imtime_opsinline + imtime_ops(double lambda, nda::vector_const_view< double > dlr_rf, nda::vector_const_view< double > dlr_it, nda::matrix_const_view< double > cf2it, nda::matrix_const_view< double > it2cf_lu, nda::vector_const_view< int > it2cf_piv)cppdlr::imtime_opsinline imtime_ops()=defaultcppdlr::imtime_ops innerprod(T const &fc, T const &gc) constcppdlr::imtime_opsinline innerprod_init() constcppdlr::imtime_opsinline diff --git a/docs/main/doxygen/html/classcppdlr_1_1imtime__ops.html b/docs/main/doxygen/html/classcppdlr_1_1imtime__ops.html index eb5bbce..0d395da 100644 --- a/docs/main/doxygen/html/classcppdlr_1_1imtime__ops.html +++ b/docs/main/doxygen/html/classcppdlr_1_1imtime__ops.html @@ -90,8 +90,8 @@  imtime_ops (double lambda, nda::vector_const_view< double > dlr_rf)  Constructor for imtime_ops. More...
  - imtime_ops (double lambda, nda::vector_const_view< double > dlr_rf, nda::vector_const_view< double > dlr_it, nda::matrix_const_view< double > cf2it, nda::matrix_const_view< double > it2cf_lu, nda::matrix_const_view< dcomplex > it2cf_zlu, nda::vector_const_view< int > it2cf_piv) -  + imtime_ops (double lambda, nda::vector_const_view< double > dlr_rf, nda::vector_const_view< double > dlr_it, nda::matrix_const_view< double > cf2it, nda::matrix_const_view< double > it2cf_lu, nda::vector_const_view< int > it2cf_piv) +   imtime_ops ()=default   template<nda::MemoryArray T, nda::Scalar S = nda::get_value_t<T>> @@ -273,8 +273,8 @@

-

◆ imtime_ops() [3/4]

+ +

◆ imtime_ops() [3/4]

@@ -312,12 +312,6 @@

nda::matrix_const_view< double >  it2cf_lu, - - - - nda::matrix_const_view< dcomplex >  - it2cf_zlu, - diff --git a/docs/main/doxygen/html/dlr__imtime_8hpp_source.html b/docs/main/doxygen/html/dlr__imtime_8hpp_source.html index c9c321d..c79454d 100644 --- a/docs/main/doxygen/html/dlr__imtime_8hpp_source.html +++ b/docs/main/doxygen/html/dlr__imtime_8hpp_source.html @@ -111,9 +111,9 @@
58 
65  imtime_ops(double lambda, nda::vector_const_view<double> dlr_rf);
66 
-
67  imtime_ops(double lambda, nda::vector_const_view<double> dlr_rf, nda::vector_const_view<double> dlr_it, nda::matrix_const_view<double> cf2it,
-
68  nda::matrix_const_view<double> it2cf_lu, nda::matrix_const_view<dcomplex> it2cf_zlu, nda::vector_const_view<int> it2cf_piv)
-
69  : lambda_(lambda), r(dlr_rf.size()), dlr_rf(dlr_rf), dlr_it(dlr_it), cf2it(cf2it), it2cf{it2cf_lu, it2cf_zlu, it2cf_piv} {};
+
67  imtime_ops(double lambda, nda::vector_const_view<double> dlr_rf, nda::vector_const_view<double> dlr_it, nda::matrix_const_view<double> cf2it,
+
68  nda::matrix_const_view<double> it2cf_lu, nda::vector_const_view<int> it2cf_piv)
+
69  : lambda_(lambda), r(dlr_rf.size()), dlr_rf(dlr_rf), dlr_it(dlr_it), cf2it(cf2it), it2cf{it2cf_lu, it2cf_lu, it2cf_piv} {};
70 
71  imtime_ops() = default;
72 
@@ -610,30 +610,28 @@
843  h5::write(gr, "it", m.get_itnodes());
844  h5::write(gr, "cf2it", m.get_cf2it());
845  h5::write(gr, "it2cf_lu", m.get_it2cf_lu());
-
846  h5::write(gr, "it2cf_zlu", m.get_it2cf_zlu());
-
847  h5::write(gr, "it2cf_piv", m.get_it2cf_piv());
-
848  }
-
849 
-
850  friend void h5_read(h5::group fg, std::string const &subgroup_name, imtime_ops &m) {
-
851 
-
852  h5::group gr = fg.open_group(subgroup_name);
-
853  assert_hdf5_format(gr, m);
-
854 
-
855  auto lambda = h5::read<double>(gr, "lambda");
-
856  auto rf = h5::read<nda::vector<double>>(gr, "rf");
-
857  auto it = h5::read<nda::vector<double>>(gr, "it");
-
858  auto cf2it_ = h5::read<nda::matrix<double>>(gr, "cf2it");
-
859  auto it2cf_lu = h5::read<nda::matrix<double>>(gr, "it2cf_lu");
-
860  auto it2cf_zlu = h5::read<nda::matrix<dcomplex>>(gr, "it2cf_zlu");
-
861  auto it2cf_piv = h5::read<nda::vector<int>>(gr, "it2cf_piv");
-
862 
-
863  m = imtime_ops(lambda, rf, it, cf2it_, it2cf_lu, it2cf_zlu, it2cf_piv);
-
864  }
-
865  };
-
866 
-
867 } // namespace cppdlr
+
846  h5::write(gr, "it2cf_piv", m.get_it2cf_piv());
+
847  }
+
848 
+
849  friend void h5_read(h5::group fg, std::string const &subgroup_name, imtime_ops &m) {
+
850 
+
851  h5::group gr = fg.open_group(subgroup_name);
+
852  assert_hdf5_format(gr, m);
+
853 
+
854  auto lambda = h5::read<double>(gr, "lambda");
+
855  auto rf = h5::read<nda::vector<double>>(gr, "rf");
+
856  auto it = h5::read<nda::vector<double>>(gr, "it");
+
857  auto cf2it_ = h5::read<nda::matrix<double>>(gr, "cf2it");
+
858  auto it2cf_lu = h5::read<nda::matrix<double>>(gr, "it2cf_lu");
+
859  auto it2cf_piv = h5::read<nda::vector<int>>(gr, "it2cf_piv");
+
860 
+
861  m = imtime_ops(lambda, rf, it, cf2it_, it2cf_lu, it2cf_piv);
+
862  }
+
863  };
+
864 
+
865 } // namespace cppdlr
Class responsible for all DLR imaginary time operations, including building imaginary time grid and t...
Definition: dlr_imtime.hpp:46
-
friend void h5_read(h5::group fg, std::string const &subgroup_name, imtime_ops &m)
Definition: dlr_imtime.hpp:850
+
friend void h5_read(h5::group fg, std::string const &subgroup_name, imtime_ops &m)
Definition: dlr_imtime.hpp:849
T::regular_type reflect(T const &g) const
Compute reflection of imaginary time Green's function.
Definition: dlr_imtime.hpp:263
friend void h5_write(h5::group fg, std::string const &subgroup_name, imtime_ops const &m)
Definition: dlr_imtime.hpp:836
auto coefs2eval(T const &gc, double t) const
Evaluate DLR expansion of G, given by its DLR coefficients, at imaginary time point.
Definition: dlr_imtime.hpp:161
@@ -643,6 +641,7 @@
nda::vector_const_view< double > get_rfnodes() const
Get DLR real frequency nodes.
Definition: dlr_imtime.hpp:616
void reflect_init() const
Initialization for reflection method.
Definition: dlr_imtime.hpp:787
double lambda() const
Definition: dlr_imtime.hpp:654
+
imtime_ops(double lambda, nda::vector_const_view< double > dlr_rf, nda::vector_const_view< double > dlr_it, nda::matrix_const_view< double > cf2it, nda::matrix_const_view< double > it2cf_lu, nda::vector_const_view< int > it2cf_piv)
Definition: dlr_imtime.hpp:67
nda::matrix< dcomplex > zlu
Same as lu, cast to complex (for use with lapack::getrs w/ cmplx input)
Definition: dlr_imtime.hpp:813
nda::matrix< S > convmat(double beta, statistic_t statistic, T const &fc, bool time_order=false) const
Compute matrix of convolution by an imaginary time Green's function.
Definition: dlr_imtime.hpp:452
T::regular_type convolve(double beta, statistic_t statistic, T const &fc, T const &gc, bool time_order=false) const
Compute convolution of two imaginary time Green's functions.
Definition: dlr_imtime.hpp:309
@@ -659,7 +658,6 @@
nda::vector_const_view< double > get_itnodes() const
Get DLR imaginary time nodes.
Definition: dlr_imtime.hpp:607
imtime_ops()=default
S innerprod(T const &fc, T const &gc) const
Compute inner product of two imaginary time Green's functions.
Definition: dlr_imtime.hpp:578
-
imtime_ops(double lambda, nda::vector_const_view< double > dlr_rf, nda::vector_const_view< double > dlr_it, nda::matrix_const_view< double > cf2it, nda::matrix_const_view< double > it2cf_lu, nda::matrix_const_view< dcomplex > it2cf_zlu, nda::vector_const_view< int > it2cf_piv)
Definition: dlr_imtime.hpp:67
double get_rfnodes(int i) const
Definition: dlr_imtime.hpp:617
nda::vector_const_view< int > get_it2cf_piv() const
Get LU pivots of transformation matrix from DLR imaginary time values to coefficients.
Definition: dlr_imtime.hpp:646
void tconvolve_init() const
Initialization for time-ordered convolution methods.
Definition: dlr_imtime.hpp:719
diff --git a/docs/main/doxygen/html/search/all_8.js b/docs/main/doxygen/html/search/all_8.js index 659eec5..358a584 100644 --- a/docs/main/doxygen/html/search/all_8.js +++ b/docs/main/doxygen/html/search/all_8.js @@ -1,7 +1,7 @@ var searchData= [ ['imfreq_5fops_53',['imfreq_ops',['../classcppdlr_1_1imfreq__ops.html',1,'cppdlr::imfreq_ops'],['../classcppdlr_1_1imfreq__ops.html#a2296d91d2652b85462653f6147d95065',1,'cppdlr::imfreq_ops::imfreq_ops(double lambda, nda::vector_const_view< double > dlr_rf, statistic_t statistic, bool symmetrize=false)'],['../classcppdlr_1_1imfreq__ops.html#afc68ce6e34ea9a23e763f9b1919ea573',1,'cppdlr::imfreq_ops::imfreq_ops(double lambda, nda::vector_const_view< double > dlr_rf, statistic_t statistic, nda::vector_const_view< int > dlr_if, nda::matrix_const_view< nda::dcomplex > cf2if, nda::matrix_const_view< nda::dcomplex > if2cf_lu, nda::vector_const_view< int > if2cf_piv)'],['../classcppdlr_1_1imfreq__ops.html#aec1f430ef8442851ca0003bc89620feb',1,'cppdlr::imfreq_ops::imfreq_ops()=default']]], - ['imtime_5fops_54',['imtime_ops',['../classcppdlr_1_1imtime__ops.html',1,'cppdlr::imtime_ops'],['../classcppdlr_1_1imtime__ops.html#a31b2703038bafa04b59e3731ab0bf234',1,'cppdlr::imtime_ops::imtime_ops(double lambda, nda::vector_const_view< double > dlr_rf, bool symmetrize)'],['../classcppdlr_1_1imtime__ops.html#a0a1d4dfc2eb1ebc6fbd4cf6b9c13b2d7',1,'cppdlr::imtime_ops::imtime_ops(double lambda, nda::vector_const_view< double > dlr_rf)'],['../classcppdlr_1_1imtime__ops.html#ac44ddf86d5fd185dcf12add54362a6c0',1,'cppdlr::imtime_ops::imtime_ops(double lambda, nda::vector_const_view< double > dlr_rf, nda::vector_const_view< double > dlr_it, nda::matrix_const_view< double > cf2it, nda::matrix_const_view< double > it2cf_lu, nda::matrix_const_view< dcomplex > it2cf_zlu, nda::vector_const_view< int > it2cf_piv)'],['../classcppdlr_1_1imtime__ops.html#a8da78cf54d39d48d2be19ad1f146b03c',1,'cppdlr::imtime_ops::imtime_ops()=default']]], + ['imtime_5fops_54',['imtime_ops',['../classcppdlr_1_1imtime__ops.html',1,'cppdlr::imtime_ops'],['../classcppdlr_1_1imtime__ops.html#a31b2703038bafa04b59e3731ab0bf234',1,'cppdlr::imtime_ops::imtime_ops(double lambda, nda::vector_const_view< double > dlr_rf, bool symmetrize)'],['../classcppdlr_1_1imtime__ops.html#a0a1d4dfc2eb1ebc6fbd4cf6b9c13b2d7',1,'cppdlr::imtime_ops::imtime_ops(double lambda, nda::vector_const_view< double > dlr_rf)'],['../classcppdlr_1_1imtime__ops.html#a43a9b5fb6aeefad7d8ae6865329e69de',1,'cppdlr::imtime_ops::imtime_ops(double lambda, nda::vector_const_view< double > dlr_rf, nda::vector_const_view< double > dlr_it, nda::matrix_const_view< double > cf2it, nda::matrix_const_view< double > it2cf_lu, nda::vector_const_view< int > it2cf_piv)'],['../classcppdlr_1_1imtime__ops.html#a8da78cf54d39d48d2be19ad1f146b03c',1,'cppdlr::imtime_ops::imtime_ops()=default']]], ['innerprod_55',['innerprod',['../classcppdlr_1_1imtime__ops.html#aaaa4303e1ee0897417308f380bb75de8',1,'cppdlr::imtime_ops']]], ['innerprod_5finit_56',['innerprod_init',['../classcppdlr_1_1imtime__ops.html#a6ce574cd38bdb5bee21d499710f2e8fa',1,'cppdlr::imtime_ops']]], ['interp_57',['interp',['../classcppdlr_1_1barycheb.html#ab2f5044a724a2450499000f078b495c3',1,'cppdlr::barycheb::interp()'],['../classcppdlr_1_1baryleg.html#ab540248ef2bbc19cc6345ad07bc779ed',1,'cppdlr::baryleg::interp()']]], diff --git a/docs/main/doxygen/html/search/functions_7.js b/docs/main/doxygen/html/search/functions_7.js index 28d1486..113d39f 100644 --- a/docs/main/doxygen/html/search/functions_7.js +++ b/docs/main/doxygen/html/search/functions_7.js @@ -1,7 +1,7 @@ var searchData= [ ['imfreq_5fops_154',['imfreq_ops',['../classcppdlr_1_1imfreq__ops.html#a2296d91d2652b85462653f6147d95065',1,'cppdlr::imfreq_ops::imfreq_ops(double lambda, nda::vector_const_view< double > dlr_rf, statistic_t statistic, bool symmetrize=false)'],['../classcppdlr_1_1imfreq__ops.html#afc68ce6e34ea9a23e763f9b1919ea573',1,'cppdlr::imfreq_ops::imfreq_ops(double lambda, nda::vector_const_view< double > dlr_rf, statistic_t statistic, nda::vector_const_view< int > dlr_if, nda::matrix_const_view< nda::dcomplex > cf2if, nda::matrix_const_view< nda::dcomplex > if2cf_lu, nda::vector_const_view< int > if2cf_piv)'],['../classcppdlr_1_1imfreq__ops.html#aec1f430ef8442851ca0003bc89620feb',1,'cppdlr::imfreq_ops::imfreq_ops()=default']]], - ['imtime_5fops_155',['imtime_ops',['../classcppdlr_1_1imtime__ops.html#a31b2703038bafa04b59e3731ab0bf234',1,'cppdlr::imtime_ops::imtime_ops(double lambda, nda::vector_const_view< double > dlr_rf, bool symmetrize)'],['../classcppdlr_1_1imtime__ops.html#a0a1d4dfc2eb1ebc6fbd4cf6b9c13b2d7',1,'cppdlr::imtime_ops::imtime_ops(double lambda, nda::vector_const_view< double > dlr_rf)'],['../classcppdlr_1_1imtime__ops.html#ac44ddf86d5fd185dcf12add54362a6c0',1,'cppdlr::imtime_ops::imtime_ops(double lambda, nda::vector_const_view< double > dlr_rf, nda::vector_const_view< double > dlr_it, nda::matrix_const_view< double > cf2it, nda::matrix_const_view< double > it2cf_lu, nda::matrix_const_view< dcomplex > it2cf_zlu, nda::vector_const_view< int > it2cf_piv)'],['../classcppdlr_1_1imtime__ops.html#a8da78cf54d39d48d2be19ad1f146b03c',1,'cppdlr::imtime_ops::imtime_ops()=default']]], + ['imtime_5fops_155',['imtime_ops',['../classcppdlr_1_1imtime__ops.html#a31b2703038bafa04b59e3731ab0bf234',1,'cppdlr::imtime_ops::imtime_ops(double lambda, nda::vector_const_view< double > dlr_rf, bool symmetrize)'],['../classcppdlr_1_1imtime__ops.html#a0a1d4dfc2eb1ebc6fbd4cf6b9c13b2d7',1,'cppdlr::imtime_ops::imtime_ops(double lambda, nda::vector_const_view< double > dlr_rf)'],['../classcppdlr_1_1imtime__ops.html#a43a9b5fb6aeefad7d8ae6865329e69de',1,'cppdlr::imtime_ops::imtime_ops(double lambda, nda::vector_const_view< double > dlr_rf, nda::vector_const_view< double > dlr_it, nda::matrix_const_view< double > cf2it, nda::matrix_const_view< double > it2cf_lu, nda::vector_const_view< int > it2cf_piv)'],['../classcppdlr_1_1imtime__ops.html#a8da78cf54d39d48d2be19ad1f146b03c',1,'cppdlr::imtime_ops::imtime_ops()=default']]], ['innerprod_156',['innerprod',['../classcppdlr_1_1imtime__ops.html#aaaa4303e1ee0897417308f380bb75de8',1,'cppdlr::imtime_ops']]], ['innerprod_5finit_157',['innerprod_init',['../classcppdlr_1_1imtime__ops.html#a6ce574cd38bdb5bee21d499710f2e8fa',1,'cppdlr::imtime_ops']]], ['interp_158',['interp',['../classcppdlr_1_1barycheb.html#ab2f5044a724a2450499000f078b495c3',1,'cppdlr::barycheb::interp()'],['../classcppdlr_1_1baryleg.html#ab540248ef2bbc19cc6345ad07bc779ed',1,'cppdlr::baryleg::interp()']]] diff --git a/docs/main/doxygen/latex/classcppdlr_1_1imtime__ops.tex b/docs/main/doxygen/latex/classcppdlr_1_1imtime__ops.tex index 42eb895..abbdf07 100644 --- a/docs/main/doxygen/latex/classcppdlr_1_1imtime__ops.tex +++ b/docs/main/doxygen/latex/classcppdlr_1_1imtime__ops.tex @@ -16,7 +16,7 @@ \begin{DoxyCompactList}\small\item\em Constructor for \mbox{\hyperlink{classcppdlr_1_1imtime__ops}{imtime\+\_\+ops}}. \end{DoxyCompactList}\item \mbox{\hyperlink{classcppdlr_1_1imtime__ops_a0a1d4dfc2eb1ebc6fbd4cf6b9c13b2d7}{imtime\+\_\+ops}} (double \mbox{\hyperlink{classcppdlr_1_1imtime__ops_a401521dedc309ca12c1ec345da983c80}{lambda}}, nda\+::vector\+\_\+const\+\_\+view$<$ double $>$ dlr\+\_\+rf) \begin{DoxyCompactList}\small\item\em Constructor for \mbox{\hyperlink{classcppdlr_1_1imtime__ops}{imtime\+\_\+ops}}. \end{DoxyCompactList}\item -\mbox{\hyperlink{classcppdlr_1_1imtime__ops_ac44ddf86d5fd185dcf12add54362a6c0}{imtime\+\_\+ops}} (double \mbox{\hyperlink{classcppdlr_1_1imtime__ops_a401521dedc309ca12c1ec345da983c80}{lambda}}, nda\+::vector\+\_\+const\+\_\+view$<$ double $>$ dlr\+\_\+rf, nda\+::vector\+\_\+const\+\_\+view$<$ double $>$ dlr\+\_\+it, nda\+::matrix\+\_\+const\+\_\+view$<$ double $>$ cf2it, nda\+::matrix\+\_\+const\+\_\+view$<$ double $>$ it2cf\+\_\+lu, nda\+::matrix\+\_\+const\+\_\+view$<$ dcomplex $>$ it2cf\+\_\+zlu, nda\+::vector\+\_\+const\+\_\+view$<$ int $>$ it2cf\+\_\+piv) +\mbox{\hyperlink{classcppdlr_1_1imtime__ops_a43a9b5fb6aeefad7d8ae6865329e69de}{imtime\+\_\+ops}} (double \mbox{\hyperlink{classcppdlr_1_1imtime__ops_a401521dedc309ca12c1ec345da983c80}{lambda}}, nda\+::vector\+\_\+const\+\_\+view$<$ double $>$ dlr\+\_\+rf, nda\+::vector\+\_\+const\+\_\+view$<$ double $>$ dlr\+\_\+it, nda\+::matrix\+\_\+const\+\_\+view$<$ double $>$ cf2it, nda\+::matrix\+\_\+const\+\_\+view$<$ double $>$ it2cf\+\_\+lu, nda\+::vector\+\_\+const\+\_\+view$<$ int $>$ it2cf\+\_\+piv) \item \mbox{\hyperlink{classcppdlr_1_1imtime__ops_a8da78cf54d39d48d2be19ad1f146b03c}{imtime\+\_\+ops}} ()=default \item @@ -129,11 +129,11 @@ \mbox{\texttt{ in}} & {\em dlr\+\_\+rf} & DLR frequencies \\ \hline \end{DoxyParams} -\mbox{\Hypertarget{classcppdlr_1_1imtime__ops_ac44ddf86d5fd185dcf12add54362a6c0}\label{classcppdlr_1_1imtime__ops_ac44ddf86d5fd185dcf12add54362a6c0}} +\mbox{\Hypertarget{classcppdlr_1_1imtime__ops_a43a9b5fb6aeefad7d8ae6865329e69de}\label{classcppdlr_1_1imtime__ops_a43a9b5fb6aeefad7d8ae6865329e69de}} \index{cppdlr::imtime\_ops@{cppdlr::imtime\_ops}!imtime\_ops@{imtime\_ops}} \index{imtime\_ops@{imtime\_ops}!cppdlr::imtime\_ops@{cppdlr::imtime\_ops}} \doxysubsubsection{\texorpdfstring{imtime\_ops()}{imtime\_ops()}\hspace{0.1cm}{\footnotesize\ttfamily [3/4]}} -{\footnotesize\ttfamily cppdlr\+::imtime\+\_\+ops\+::imtime\+\_\+ops (\begin{DoxyParamCaption}\item[{double}]{lambda, }\item[{nda\+::vector\+\_\+const\+\_\+view$<$ double $>$}]{dlr\+\_\+rf, }\item[{nda\+::vector\+\_\+const\+\_\+view$<$ double $>$}]{dlr\+\_\+it, }\item[{nda\+::matrix\+\_\+const\+\_\+view$<$ double $>$}]{cf2it, }\item[{nda\+::matrix\+\_\+const\+\_\+view$<$ double $>$}]{it2cf\+\_\+lu, }\item[{nda\+::matrix\+\_\+const\+\_\+view$<$ dcomplex $>$}]{it2cf\+\_\+zlu, }\item[{nda\+::vector\+\_\+const\+\_\+view$<$ int $>$}]{it2cf\+\_\+piv }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}} +{\footnotesize\ttfamily cppdlr\+::imtime\+\_\+ops\+::imtime\+\_\+ops (\begin{DoxyParamCaption}\item[{double}]{lambda, }\item[{nda\+::vector\+\_\+const\+\_\+view$<$ double $>$}]{dlr\+\_\+rf, }\item[{nda\+::vector\+\_\+const\+\_\+view$<$ double $>$}]{dlr\+\_\+it, }\item[{nda\+::matrix\+\_\+const\+\_\+view$<$ double $>$}]{cf2it, }\item[{nda\+::matrix\+\_\+const\+\_\+view$<$ double $>$}]{it2cf\+\_\+lu, }\item[{nda\+::vector\+\_\+const\+\_\+view$<$ int $>$}]{it2cf\+\_\+piv }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}} \mbox{\Hypertarget{classcppdlr_1_1imtime__ops_a8da78cf54d39d48d2be19ad1f146b03c}\label{classcppdlr_1_1imtime__ops_a8da78cf54d39d48d2be19ad1f146b03c}} \index{cppdlr::imtime\_ops@{cppdlr::imtime\_ops}!imtime\_ops@{imtime\_ops}} diff --git a/docs/main/searchindex.js b/docs/main/searchindex.js index 3364cfa..8dcbfeb 100644 --- a/docs/main/searchindex.js +++ b/docs/main/searchindex.js @@ -1 +1 @@ -Search.setIndex({"docnames": ["ChangeLog", "background", "documentation", "examples", "index", "install", "issues"], "filenames": ["ChangeLog.md", "background.rst", "documentation.rst", "examples.rst", "index.rst", "install.rst", "issues.rst"], "titles": ["Changelog", "Background", "Reference documentation", "Examples", "cppdlr: Imaginary time calculations using the discrete Lehmann representation", "Installation", "Issues and contributions"], "terms": {"thi": [0, 1, 3, 4, 5], "updat": 0, "cppdlr": [0, 1, 5, 6], "add": 0, "signific": 0, "function": [0, 3, 4], "includ": [0, 1, 3, 4, 5], "symmetr": [0, 3, 4], "dlr": [0, 4], "grid": [0, 3, 4], "improv": 0, "ensur": 0, "accuraci": [0, 1, 3], "expans": [0, 4], "l": [0, 1, 3], "2": [0, 1, 3, 5], "tau": [0, 1, 3], "norm": [0, 1], "both": [0, 3, 4], "describ": [0, 3], "document": [0, 3, 4, 5], "we": [0, 1, 3, 5, 6], "thank": 0, "all": [0, 1, 3, 5, 6], "contributor": 0, "thoma": 0, "hahn": 0, "alexand": 0, "hampel": 0, "jason": 0, "kay": [0, 4], "henri": 0, "menk": 0, "hugo": 0, "u": [0, 1, 4, 5], "r": [0, 1, 3, 4], "strand": [0, 4], "nil": 0, "wentzel": [0, 4], "w": 0, "test": [0, 1, 3, 5], "compar": [0, 1, 3], "non": [0, 1, 3], "discuss": [0, 1, 3], "error": [0, 3, 4], "imaginari": 0, "time": 0, "quadratur": [0, 1], "weight": [0, 1], "frequenc": [0, 4], "select": [0, 1], "accordingli": 0, "comput": [0, 1, 3], "inner": [0, 1, 3], "product": [0, 1, 3], "program": [0, 3, 4], "print": 0, "rank": [0, 1], "variou": 0, "lambda": [0, 1, 3], "interpol": [0, 1, 4], "imag": 0, "measur": [0, 3, 4], "freq": 0, "vice": 0, "versa": 0, "unit": [0, 3], "via": [0, 1, 4, 5], "fmt": 0, "implement": [0, 1, 4], "pivot": [0, 1], "gram": [0, 1], "schmidt": [0, 1], "toler": [0, 1, 3], "specifi": [0, 1, 3, 5], "warn": 0, "user": [0, 1, 3, 4], "choos": 0, "epsilon": [0, 1, 3], "danger": 0, "small": [0, 4], "expos": 0, "fermion": [0, 1, 3], "boson": [0, 1, 3], "matsubara": [0, 3, 4], "kernel": [0, 1], "directli": [0, 1, 3], "i": [0, 1, 3, 4, 5], "om_n": 0, "involv": [0, 3], "contigu": 0, "view": 0, "vals2coef": [0, 3], "check": 0, "fine": [0, 1], "discret": [0, 3], "geterr_k_it": 0, "uniniti": 0, "niom": 0, "valu": [0, 1, 3], "dlr_imfreq": 0, "constructor": 0, "rang": 0, "imtime_op": [0, 3], "interp_matrix_sym_bo": [0, 3], "make": [0, 1, 5], "complex": 0, "copi": 0, "it2cf": 0, "lu": 0, "avoid": [0, 1], "fly": 0, "convolv": 0, "us": [0, 1, 3, 5, 6], "nda": [0, 4, 5], "matmul": 0, "when": 0, "possibl": [0, 1], "code": [0, 3, 5], "simplif": 0, "adjust": 0, "refer": [0, 1], "preprint": 0, "readm": 0, "merg": 0, "latest": [0, 5], "app4triq": 0, "skeleton": 0, "ubuntu": 0, "intel": 0, "build": [0, 5], "jenkin": 0, "initi": 0, "releas": [0, 5], "c": [0, 1, 4], "librari": [0, 5], "lehmann": [0, 3], "represent": [0, 3], "green": [0, 3, 4], "": [0, 3, 4], "page": [1, 3, 4, 6], "give": [1, 3], "brief": [1, 3, 4], "review": 1, "establish": 1, "definit": [1, 3], "convent": [1, 3], "which": [1, 3, 4, 5, 6], "can": [1, 3, 4, 5], "vari": 1, "from": [1, 3, 4, 5], "one": [1, 3], "anoth": 1, "If": [1, 3, 4, 5, 6], "you": [1, 3, 4, 5, 6], "ar": [1, 3, 4, 5], "alreadi": 1, "familiar": [1, 4], "should": [1, 3, 4], "probabl": 1, "still": [1, 4], "read": [1, 3, 4], "section": [1, 3, 5], "rel": [1, 3], "below": [1, 3, 4, 5], "For": [1, 3, 6], "more": [1, 3, 4], "detail": [1, 3, 4], "descript": [1, 3], "pleas": [1, 3, 4, 5, 6], "see": [1, 3, 4, 5], "list": [1, 4], "main": [1, 3, 6], "exampl": [1, 4], "concept": 1, "The": [1, 3, 4, 5], "singl": [1, 4], "particl": [1, 4], "defin": [1, 3], "term": [1, 3], "order": 1, "expect": 1, "g_": 1, "ab": 1, "langl": 1, "mathcal": 1, "t": 1, "c_a": 1, "c_b": 1, "dagger": 1, "0": [1, 3, 5], "rangl": 1, "where": [1, 5], "dagger_b": 1, "creation": 1, "state": 1, "b": [1, 4], "annihil": 1, "interv": 1, "beta": [1, 3], "invers": [1, 3], "temperatur": [1, 3], "extend": 1, "period": 1, "anti": 1, "properti": 1, "xi": 1, "1": [1, 3, 5], "respect": [1, 3], "spectral": [1, 3], "given": [1, 3], "g": [1, 3], "int_": 1, "infti": 1, "k": [1, 3, 4], "omega": [1, 3], "rho": [1, 3], "d": 1, "correspond": [1, 3], "analyt": [1, 3], "continu": 1, "frac": [1, 3], "e": [1, 3], "take": [1, 3, 4], "fourier": [1, 3], "transform": [1, 3], "nu_n": [1, 3], "tanh": 1, "here": [1, 3], "n": [1, 3, 4], "pi": 1, "2n": 1, "low": 1, "approxim": 1, "decomposit": 1, "let": [1, 5], "dimensionless": 1, "cutoff": [1, 3], "paramt": 1, "equiv": [1, 3], "omega_": [1, 3], "max": [1, 3], "outsid": 1, "In": [1, 3, 5], "practic": [1, 3], "typic": 1, "known": [1, 3], "estim": 1, "paramet": [1, 3], "case": [1, 3], "exactli": 1, "result": [1, 3], "converg": [1, 3], "an": [1, 3, 5], "begin": [1, 3, 4], "equat": [1, 3], "approx": [1, 3], "sum_": [1, 3], "omega_l": [1, 3], "widehat": [1, 3], "_l": [1, 3], "label": 1, "dlrexp": 1, "tag": [1, 5], "end": 1, "equal": 1, "suitabl": 1, "determin": [1, 3], "carefulli": 1, "chosen": 1, "procedur": 1, "depend": [1, 4], "onli": [1, 3], "itself": [1, 5], "As": 1, "close": 1, "relat": 1, "intermedi": 1, "spars": 1, "ir": 1, "orthogon": 1, "explicit": 1, "have": [1, 3, 5], "o": [1, 4], "log": 1, "thu": 1, "enabl": [1, 4], "highli": 1, "effici": 1, "high": [1, 4], "accur": 1, "number": [1, 3], "degre": 1, "freedom": 1, "independ": 1, "specif": [1, 4], "structur": 1, "beyond": 1, "its": [1, 3, 4], "coeffici": [1, 3], "must": 1, "some": [1, 3], "sampl": 1, "done": [1, 3], "fit": [1, 3], "data": [1, 3], "ordinari": 1, "least": 1, "squar": 1, "node": [1, 3], "tau_k": [1, 3], "These": [1, 3], "also": [1, 3, 4, 5], "particular": [1, 3, 5], "solv": [1, 3], "linear": [1, 3], "system": [1, 3, 4], "problem": [1, 3], "obtain": [1, 3], "evalu": [1, 4], "eqref": 1, "yield": [1, 3], "dlrexp_imfreq": 1, "so": [1, 3, 6], "perform": [1, 3], "nu_": 1, "n_k": 1, "whereupon": 1, "sinc": [1, 3], "common": 1, "straightforwardli": 1, "repres": 1, "them": 1, "explain": 1, "abov": [1, 3, 5], "switch": 1, "between": 1, "addit": [1, 5], "simpli": [1, 3], "multipli": 1, "h": [1, 4], "f": 1, "recov": 1, "convolut": [1, 3], "full": 1, "int_0": 1, "requir": [1, 5], "condit": 1, "etc": 1, "form": [1, 4], "vector": [1, 3], "matric": 1, "tensor": 1, "act": 1, "either": 1, "friendli": [1, 3], "manner": 1, "new": [1, 5, 6], "request": [1, 6], "github": [1, 4, 5, 6], "issu": [1, 4, 5], "first": [1, 3], "scale": [1, 4], "becaus": [1, 3], "work": [1, 3, 4, 5], "variabl": [1, 3], "whenev": 1, "mani": [1, 4], "unnecessari": 1, "explicitli": 1, "second": 1, "store": 1, "peculiar": 1, "call": [1, 3, 5], "subtl": 1, "awar": 1, "want": [1, 5], "suppli": [1, 3], "tldr": 1, "skip": 1, "guidelin": 1, "even": 1, "than": [1, 3, 5], "appendix": 1, "paper": [1, 4], "follow": [1, 3, 4, 5], "5": 1, "normal": 1, "howev": [1, 3], "instead": [1, 5], "other": [1, 4, 5], "word": [1, 3], "neg": 1, "distanc": 1, "rather": [1, 3], "standard": [1, 4], "absolut": 1, "straightforward": 1, "rel2ab": 1, "reason": 1, "ha": [1, 3, 4], "do": [1, 3, 6], "maintain": [1, 4], "float": 1, "arithmet": 1, "To": [1, 3, 4, 5], "sometim": [1, 3], "need": [1, 3, 4], "veri": 1, "loss": 1, "due": 1, "catastroph": 1, "cancel": 1, "appear": 1, "extrem": 1, "physic": [1, 3], "regim": 1, "exploit": 1, "symmetri": 1, "ever": 1, "annoy": 1, "price": 1, "arithm": 1, "But": 1, "larg": [1, 3, 4], "ignor": 1, "notic": 1, "your": [1, 3, 4, 5], "applic": [1, 4, 5], "provid": [1, 4], "carri": 1, "out": 1, "usual": 1, "hide": 1, "technic": 1, "complic": [1, 3], "situat": 1, "two": [1, 3], "option": [1, 4], "power": 1, "accord": 1, "instruct": [1, 4], "relev": [1, 3], "therebi": 1, "calcul": 1, "don": 1, "care": 1, "about": [1, 3, 4], "minor": 1, "digit": 1, "come": 1, "subtleti": 1, "convert": [1, 3], "abs2rel": 1, "start": [1, 3], "life": 1, "cannot": 1, "compat": [1, 4], "subroutin": 1, "happen": 1, "equispac": [1, 3], "eqpts_rel": 1, "gener": [1, 3], "integ": 1, "whether": 1, "statistic_t": 1, "what": 1, "sens": 1, "guarante": 1, "less": [1, 3], "strictli": 1, "speak": 1, "finit": 1, "observ": 1, "well": [1, 6], "control": 1, "answer": 1, "consid": [1, 3], "scalar": 1, "simplic": 1, "_": 1, "By": 1, "parsev": 1, "theorem": 1, "level": [1, 4], "machin": 1, "precis": 1, "shown": [1, 3], "exist": [1, 4], "text": 1, "leq": 1, "note": [1, 3, 4], "inequ": 1, "hold": 1, "long": 1, "row": 1, "appropri": 1, "latter": 1, "origin": [1, 3, 4], "upcom": 1, "public": 1, "statement": 1, "actual": 1, "find": [1, 3], "suffici": 1, "would": [1, 3], "satisfi": 1, "bound": 1, "produc": 1, "qualiti": 1, "nearli": 1, "therefor": [1, 3], "recommend": [1, 3, 5, 6], "wish": [1, 5, 6], "pointwis": [1, 3], "decreas": 1, "further": [1, 3], "default": 1, "nor": 1, "inde": 1, "constraint": 1, "necessari": [1, 3], "most": [1, 3], "might": [1, 3], "desir": [1, 3], "flag": [1, 5], "capabl": [1, 4], "showcas": 1, "alwai": 1, "extra": 1, "slightli": 1, "overdetermin": 1, "method": [1, 3], "step": [3, 4], "basic": 3, "usag": 3, "within": 3, "overview": 3, "background": [3, 4], "contain": 3, "thorough": 3, "found": 3, "directori": [3, 5], "repositori": [3, 5], "serv": [3, 6], "good": [3, 4], "point": [3, 4], "write": 3, "own": 3, "being": 3, "cover": 3, "compon": 3, "though": 3, "thei": 3, "current": [3, 5], "temporari": 3, "until": 3, "comprehens": 3, "set": 3, "file": 3, "dlr_interpol": 3, "cpp": 3, "know": [3, 5], "look": [3, 4, 5], "up": 3, "inform": [3, 4], "header": 3, "hpp": 3, "namespac": 3, "gfun": 3, "simpl": [3, 4], "sum": 3, "delta": 3, "a_i": 3, "taken": 3, "each": 3, "matrix": 3, "There": 3, "noth": 3, "special": 3, "except": 3, "conveni": 3, "space": 3, "direct": 3, "next": 3, "move": [3, 5], "orbit": 3, "indic": 3, "our": 3, "took": 3, "width": 3, "safe": 3, "unknown": 3, "after": 3, "now": 3, "build_dlr_rf": 3, "input": 3, "31": 3, "although": 3, "dimension": 3, "back": 3, "figur": 3, "object": 3, "type": [3, 4], "class": [3, 4], "respons": 3, "oper": [3, 4], "extract": 3, "get_itnod": 3, "could": 3, "plot": 3, "basi": [3, 4], "constitut": 3, "character": 3, "ani": [3, 5], "coefs2ev": 3, "eqptsrel": 3, "format": [3, 4], "true": 3, "top": 3, "left": 3, "entri": 3, "g_00": 3, "correct": 3, "10": 3, "construct": [3, 4], "imfreq_op": 3, "analog": 3, "index": 3, "again": 3, "agreement": 3, "themselv": 3, "sever": 3, "fit_scalar": 3, "fit_matrix": 3, "fit_matrix_cmplx": 3, "convolve_scalar_r": 3, "convolve_scalar_cmplx": 3, "convolve_matrix_r": 3, "convolve_matrix_cmplx": 3, "reflect": 3, "mapsto": 3, "refl_matrix": 3, "innerprod": 3, "interp_scalar": 3, "interp_matrix": 3, "interp_matrix_sym_f": 3, "show": 3, "how": 3, "fix": 3, "self": 3, "energi": 3, "dyson": 3, "dyson_it": 3, "dyson_vs_ed_r": 3, "dyson_vs_ed_cmplx": 3, "dyson_beth": 3, "consist": 3, "express": 3, "dyson_bethe_fpi": 3, "quantiti": 4, "It": 4, "download": [4, 5], "been": 4, "languag": 4, "offer": 4, "particularli": 4, "interfac": 4, "templat": 4, "arrai": 4, "bla": [4, 5], "lapack": [4, 5], "facilit": 4, "softwar": 4, "project": 4, "triq": 4, "quantum": 4, "bodi": 4, "incorpor": 4, "instal": 4, "unfamiliar": 4, "introduct": 4, "import": 4, "publish": 4, "research": 4, "mention": 4, "cite": 4, "citat": 4, "help": 4, "encourag": 4, "develop": [4, 6], "open": 4, "sourc": [4, 5], "scientif": 4, "j": 4, "chen": 4, "parcollet": 4, "phy": 4, "rev": 4, "105": 4, "235115": 4, "2022": 4, "arxiv": 4, "2107": 4, "13094": 4, "companion": 4, "2404": 4, "02334": 4, "2024": 4, "avail": [4, 5], "python": [4, 5], "pydlr": 4, "fortran": 4, "libdlr": 4, "julia": 4, "jl": 4, "toolbox": 4, "interact": 4, "version": 4, "custom": 4, "cmake": 4, "compil": 4, "clang": 4, "maco": 4, "domain": 4, "contribut": 4, "stabl": 5, "troubl": 5, "gcc": 5, "12": 5, "later": 5, "OR": 5, "15": 5, "hdf5": 5, "openmp": 5, "mpi": 5, "built": 5, "automat": 5, "libclang": 5, "packag": 5, "sphinx": 5, "nbsphinx": 5, "myst_pars": 5, "sphinx_rtd_them": 5, "linkifi": 5, "py": 5, "clone": 5, "git": 5, "http": 5, "com": 5, "flatironinstitut": 5, "src": 5, "creat": [5, 6], "mkdir": 5, "cd": 5, "dcmake_install_prefix": 5, "path_to_install_dir": 5, "run": 5, "go": 5, "checkout": 5, "4": 5, "configur": 5, "doption1": 5, "value1": 5, "doption2": 5, "value2": 5, "syntax": 5, "path": 5, "path_to_triq": 5, "path_to_cppdlr": 5, "debug": 5, "mode": 5, "dcmake_build_typ": 5, "disabl": 5, "dbuild_test": 5, "off": 5, "dbuild_document": 5, "ON": 5, "command": 5, "3": 5, "dcmake_c_compil": 5, "dcmake_cxx_compil": 5, "dcmake_cxx_flag": 5, "stdlib": 5, "libc": 5, "doe": 5, "support": 5, "appleclang": 5, "homebrew": 5, "brew": 5, "llvm": 5, "prefix": 5, "opt": 5, "bin": 5, "report": 6, "bug": 6, "featur": 6, "pull": 6, "branch": 6, "target": 6, "major": 6, "chang": 6, "coordin": 6}, "objects": {}, "objtypes": {}, "objnames": {}, "titleterms": {"changelog": 0, "version": [0, 5], "1": 0, "0": 0, "new": 0, "featur": 0, "bug": 0, "fix": 0, "optim": 0, "other": [0, 3], "chang": 0, "background": 1, "imaginari": [1, 3, 4], "time": [1, 3, 4], "green": 1, "": 1, "function": 1, "lehmann": [1, 4], "represent": [1, 4], "discret": [1, 4], "construct": 1, "dlr": [1, 3], "expans": [1, 3], "matsubara": 1, "frequenc": [1, 3], "domain": 1, "oper": 1, "basi": 1, "point": 1, "format": 1, "measur": 1, "error": 1, "symmetr": 1, "grid": 1, "refer": [2, 4], "document": 2, "exampl": 3, "form": 3, "via": 3, "interpol": 3, "evalu": 3, "list": 3, "cppdlr": [3, 4], "capabl": 3, "calcul": 4, "us": 4, "get": 4, "start": 4, "relat": 4, "librari": 4, "content": 4, "instal": 5, "depend": 5, "step": 5, "custom": 5, "cmake": 5, "option": 5, "compil": 5, "clang": 5, "note": 5, "maco": 5, "user": 5, "issu": 6, "contribut": 6}, "envversion": {"sphinx.domains.c": 2, "sphinx.domains.changeset": 1, "sphinx.domains.citation": 1, "sphinx.domains.cpp": 8, "sphinx.domains.index": 1, "sphinx.domains.javascript": 2, "sphinx.domains.math": 2, "sphinx.domains.python": 3, "sphinx.domains.rst": 2, "sphinx.domains.std": 2, "sphinx.ext.intersphinx": 1, "sphinx.ext.todo": 2, "sphinx.ext.viewcode": 1, "sphinx": 57}, "alltitles": {"Reference documentation": [[2, "reference-documentation"]], "Examples": [[3, "examples"]], "Example: form a DLR expansion via interpolation, and evaluate it in imaginary time and frequency": [[3, "example-form-a-dlr-expansion-via-interpolation-and-evaluate-it-in-imaginary-time-and-frequency"]], "List of examples": [[3, "list-of-examples"]], "List of other cppdlr capabilities": [[3, "list-of-other-cppdlr-capabilities"]], "Changelog": [[0, "changelog"]], "Version 1.1.0": [[0, "version-1-1-0"]], "New features": [[0, "new-features"]], "Bug fixes": [[0, "bug-fixes"]], "Optimizations": [[0, "optimizations"]], "Other changes": [[0, "other-changes"]], "Version 1.0.0": [[0, "version-1-0-0"]], "Background": [[1, "background"]], "Imaginary time Green\u2019s functions and the Lehmann representation": [[1, "imaginary-time-green-s-functions-and-the-lehmann-representation"]], "Discrete Lehmann representation": [[1, "discrete-lehmann-representation"]], "Constructing a DLR expansion": [[1, "constructing-a-dlr-expansion"]], "DLR in the Matsubara frequency domain": [[1, "dlr-in-the-matsubara-frequency-domain"]], "Operations in the DLR basis": [[1, "operations-in-the-dlr-basis"]], "Imaginary time point format": [[1, "imaginary-time-point-format"]], "Matsubara frequency point format": [[1, "matsubara-frequency-point-format"]], "Measuring error": [[1, "measuring-error"]], "Symmetrized DLR grids": [[1, "symmetrized-dlr-grids"]], "Issues and contributions": [[6, "issues-and-contributions"]], "Installation": [[5, "installation"]], "Dependencies": [[5, "dependencies"]], "Installation steps": [[5, "installation-steps"]], "Versions": [[5, "versions"]], "Custom CMake options": [[5, "custom-cmake-options"]], "Compiling with clang": [[5, "compiling-with-clang"]], "Note for MacOS users": [[5, "note-for-macos-users"]], "cppdlr: Imaginary time calculations using the discrete Lehmann representation": [[4, "cppdlr-imaginary-time-calculations-using-the-discrete-lehmann-representation"]], "Getting started": [[4, "getting-started"]], "References": [[4, "references"]], "Related libraries": [[4, "related-libraries"]], "Contents:": [[4, null]]}, "indexentries": {}}) \ No newline at end of file +Search.setIndex({"docnames": ["ChangeLog", "background", "documentation", "examples", "index", "install", "issues"], "filenames": ["ChangeLog.md", "background.rst", "documentation.rst", "examples.rst", "index.rst", "install.rst", "issues.rst"], "titles": ["Changelog", "Background", "Reference documentation", "Examples", "cppdlr: Imaginary time calculations using the discrete Lehmann representation", "Installation", "Issues and contributions"], "terms": {"thi": [0, 1, 3, 4, 5], "updat": 0, "cppdlr": [0, 1, 5, 6], "add": 0, "signific": 0, "function": [0, 3, 4], "includ": [0, 1, 3, 4, 5], "symmetr": [0, 3, 4], "dlr": [0, 4], "grid": [0, 3, 4], "improv": 0, "ensur": 0, "accuraci": [0, 1, 3], "expans": [0, 4], "l": [0, 1, 3], "2": [0, 1, 3, 5], "tau": [0, 1, 3], "norm": [0, 1], "both": [0, 3, 4], "describ": [0, 3], "document": [0, 3, 4, 5], "we": [0, 1, 3, 5, 6], "thank": 0, "all": [0, 1, 3, 5, 6], "contributor": 0, "thoma": 0, "hahn": 0, "alexand": 0, "hampel": 0, "jason": 0, "kay": [0, 4], "henri": 0, "menk": 0, "hugo": 0, "u": [0, 1, 4, 5], "r": [0, 1, 3, 4], "strand": [0, 4], "nil": 0, "wentzel": [0, 4], "w": 0, "test": [0, 1, 3, 5], "compar": [0, 1, 3], "non": [0, 1, 3], "discuss": [0, 1, 3], "error": [0, 3, 4], "imaginari": 0, "time": 0, "quadratur": [0, 1], "weight": [0, 1], "frequenc": [0, 4], "select": [0, 1], "accordingli": 0, "comput": [0, 1, 3], "inner": [0, 1, 3], "product": [0, 1, 3], "program": [0, 3, 4], "print": 0, "rank": [0, 1], "variou": 0, "lambda": [0, 1, 3], "interpol": [0, 1, 4], "imag": 0, "measur": [0, 3, 4], "freq": 0, "vice": 0, "versa": 0, "unit": [0, 3], "via": [0, 1, 4, 5], "fmt": 0, "implement": [0, 1, 4], "pivot": [0, 1], "gram": [0, 1], "schmidt": [0, 1], "toler": [0, 1, 3], "specifi": [0, 1, 3, 5], "warn": 0, "user": [0, 1, 3, 4], "choos": 0, "epsilon": [0, 1, 3], "danger": 0, "small": [0, 4], "expos": 0, "fermion": [0, 1, 3], "boson": [0, 1, 3], "matsubara": [0, 3, 4], "kernel": [0, 1], "directli": [0, 1, 3], "i": [0, 1, 3, 4, 5], "om_n": 0, "involv": [0, 3], "contigu": 0, "view": 0, "vals2coef": [0, 3], "check": 0, "fine": [0, 1], "discret": [0, 3], "geterr_k_it": 0, "uniniti": 0, "niom": 0, "valu": [0, 1, 3], "dlr_imfreq": 0, "constructor": 0, "rang": 0, "imtime_op": [0, 3], "interp_matrix_sym_bo": [0, 3], "make": [0, 1, 5], "complex": 0, "copi": 0, "it2cf": 0, "lu": 0, "avoid": [0, 1], "fly": 0, "convolv": 0, "us": [0, 1, 3, 5, 6], "nda": [0, 4, 5], "matmul": 0, "when": 0, "possibl": [0, 1], "code": [0, 3, 5], "simplif": 0, "adjust": 0, "refer": [0, 1], "preprint": 0, "readm": 0, "merg": 0, "latest": [0, 5], "app4triq": 0, "skeleton": 0, "ubuntu": 0, "intel": 0, "build": [0, 5], "jenkin": 0, "initi": 0, "releas": [0, 5], "c": [0, 1, 4], "librari": [0, 5], "lehmann": [0, 3], "represent": [0, 3], "green": [0, 3, 4], "": [0, 3, 4], "page": [1, 3, 4, 6], "give": [1, 3], "brief": [1, 3, 4], "review": 1, "establish": 1, "definit": [1, 3], "convent": [1, 3], "which": [1, 3, 4, 5, 6], "can": [1, 3, 4, 5], "vari": 1, "from": [1, 3, 4, 5], "one": [1, 3], "anoth": 1, "If": [1, 3, 4, 5, 6], "you": [1, 3, 4, 5, 6], "ar": [1, 3, 4, 5], "alreadi": 1, "familiar": [1, 4], "should": [1, 3, 4], "probabl": 1, "still": [1, 4], "read": [1, 3, 4], "section": [1, 3, 5], "rel": [1, 3], "below": [1, 3, 4, 5], "For": [1, 3, 6], "more": [1, 3, 4], "detail": [1, 3, 4], "descript": [1, 3], "pleas": [1, 3, 4, 5, 6], "see": [1, 3, 4, 5], "list": [1, 4], "main": [1, 3, 6], "exampl": [1, 4], "concept": 1, "The": [1, 3, 4, 5], "singl": [1, 4], "particl": [1, 4], "defin": [1, 3], "term": [1, 3], "order": 1, "expect": 1, "g_": 1, "ab": 1, "langl": 1, "mathcal": 1, "t": 1, "c_a": 1, "c_b": 1, "dagger": 1, "0": [1, 3, 5], "rangl": 1, "where": [1, 5], "dagger_b": 1, "creation": 1, "state": 1, "b": [1, 4], "annihil": 1, "interv": 1, "beta": [1, 3], "invers": [1, 3], "temperatur": [1, 3], "extend": 1, "period": 1, "anti": 1, "properti": 1, "xi": 1, "1": [1, 3, 5], "respect": [1, 3], "spectral": [1, 3], "given": [1, 3], "g": [1, 3], "int_": 1, "infti": 1, "k": [1, 3, 4], "omega": [1, 3], "rho": [1, 3], "d": 1, "correspond": [1, 3], "analyt": [1, 3], "continu": 1, "frac": [1, 3], "e": [1, 3], "take": [1, 3, 4], "fourier": [1, 3], "transform": [1, 3], "nu_n": [1, 3], "tanh": 1, "here": [1, 3], "n": [1, 3, 4], "pi": 1, "2n": 1, "low": 1, "approxim": 1, "decomposit": 1, "let": [1, 5], "dimensionless": 1, "cutoff": [1, 3], "paramt": 1, "equiv": [1, 3], "omega_": [1, 3], "max": [1, 3], "outsid": 1, "In": [1, 3, 5], "practic": [1, 3], "typic": 1, "known": [1, 3], "estim": 1, "paramet": [1, 3], "case": [1, 3], "exactli": 1, "result": [1, 3], "converg": [1, 3], "an": [1, 3, 5], "begin": [1, 3, 4], "equat": [1, 3], "approx": [1, 3], "sum_": [1, 3], "omega_l": [1, 3], "widehat": [1, 3], "_l": [1, 3], "label": 1, "dlrexp": 1, "tag": [1, 5], "end": 1, "equal": 1, "suitabl": 1, "determin": [1, 3], "carefulli": 1, "chosen": 1, "procedur": 1, "depend": [1, 4], "onli": [1, 3], "itself": [1, 5], "As": 1, "close": 1, "relat": 1, "intermedi": 1, "spars": 1, "ir": 1, "orthogon": 1, "explicit": 1, "have": [1, 3, 5], "o": [1, 4], "log": 1, "thu": 1, "enabl": [1, 4], "highli": 1, "effici": 1, "high": [1, 4], "accur": 1, "number": [1, 3], "degre": 1, "freedom": 1, "independ": 1, "specif": [1, 4], "structur": 1, "beyond": 1, "its": [1, 3, 4], "coeffici": [1, 3], "must": 1, "some": [1, 3], "sampl": 1, "done": [1, 3], "fit": [1, 3], "data": [1, 3], "ordinari": 1, "least": 1, "squar": 1, "node": [1, 3], "tau_k": [1, 3], "These": [1, 3], "also": [1, 3, 4, 5], "particular": [1, 3, 5], "solv": [1, 3], "linear": [1, 3], "system": [1, 3, 4], "problem": [1, 3], "obtain": [1, 3], "evalu": [1, 4], "eqref": 1, "yield": [1, 3], "dlrexp_imfreq": 1, "so": [1, 3, 6], "perform": [1, 3], "nu_": 1, "n_k": 1, "whereupon": 1, "sinc": [1, 3], "common": 1, "straightforwardli": 1, "repres": 1, "them": 1, "explain": 1, "abov": [1, 3, 5], "switch": 1, "between": 1, "addit": [1, 5], "simpli": [1, 3], "multipli": 1, "h": [1, 4], "f": 1, "recov": 1, "convolut": [1, 3], "full": 1, "int_0": 1, "requir": [1, 5], "condit": 1, "etc": 1, "form": [1, 4], "vector": [1, 3], "matric": 1, "tensor": 1, "act": 1, "either": 1, "friendli": [1, 3], "manner": 1, "new": [1, 5, 6], "request": [1, 6], "github": [1, 4, 5, 6], "issu": [1, 4, 5], "first": [1, 3], "scale": [1, 4], "becaus": [1, 3], "work": [1, 3, 4, 5], "variabl": [1, 3], "whenev": 1, "mani": [1, 4], "unnecessari": 1, "explicitli": 1, "second": 1, "store": 1, "peculiar": 1, "call": [1, 3, 5], "subtl": 1, "awar": 1, "want": [1, 5], "suppli": [1, 3], "tldr": 1, "skip": 1, "guidelin": 1, "even": 1, "than": [1, 3, 5], "appendix": 1, "paper": [1, 4], "follow": [1, 3, 4, 5], "5": 1, "normal": 1, "howev": [1, 3], "instead": [1, 5], "other": [1, 4, 5], "word": [1, 3], "neg": 1, "distanc": 1, "rather": [1, 3], "standard": [1, 4], "absolut": 1, "straightforward": 1, "rel2ab": 1, "reason": 1, "ha": [1, 3, 4], "do": [1, 3, 6], "maintain": [1, 4], "float": 1, "arithmet": 1, "To": [1, 3, 4, 5], "sometim": [1, 3], "need": [1, 3, 4], "veri": 1, "loss": 1, "due": 1, "catastroph": 1, "cancel": 1, "appear": 1, "extrem": 1, "physic": [1, 3], "regim": 1, "exploit": 1, "symmetri": 1, "ever": 1, "annoy": 1, "price": 1, "arithm": 1, "But": 1, "larg": [1, 3, 4], "ignor": 1, "notic": 1, "your": [1, 3, 4, 5], "applic": [1, 4, 5], "provid": [1, 4], "carri": 1, "out": 1, "usual": 1, "hide": 1, "technic": 1, "complic": [1, 3], "situat": 1, "two": [1, 3], "option": [1, 4], "power": 1, "accord": 1, "instruct": [1, 4], "relev": [1, 3], "therebi": 1, "calcul": 1, "don": 1, "care": 1, "about": [1, 3, 4], "minor": 1, "digit": 1, "come": 1, "subtleti": 1, "convert": [1, 3], "abs2rel": 1, "start": [1, 3], "life": 1, "cannot": 1, "compat": [1, 4], "subroutin": 1, "happen": 1, "equispac": [1, 3], "eqpts_rel": 1, "gener": [1, 3], "integ": 1, "whether": 1, "statistic_t": 1, "what": 1, "sens": 1, "guarante": 1, "less": [1, 3], "strictli": 1, "speak": 1, "finit": 1, "observ": 1, "well": [1, 6], "control": 1, "answer": 1, "consid": [1, 3], "scalar": 1, "simplic": 1, "_": 1, "By": 1, "parsev": 1, "theorem": 1, "level": [1, 4], "machin": 1, "precis": 1, "shown": [1, 3], "exist": [1, 4], "text": 1, "leq": 1, "note": [1, 3, 4], "inequ": 1, "hold": 1, "long": 1, "row": 1, "appropri": 1, "latter": 1, "origin": [1, 3, 4], "upcom": 1, "public": 1, "statement": 1, "actual": 1, "find": [1, 3], "suffici": 1, "would": [1, 3], "satisfi": 1, "bound": 1, "produc": 1, "qualiti": 1, "nearli": 1, "therefor": [1, 3], "recommend": [1, 3, 5, 6], "wish": [1, 5, 6], "pointwis": [1, 3], "decreas": 1, "further": [1, 3], "default": 1, "nor": 1, "inde": 1, "constraint": 1, "necessari": [1, 3], "most": [1, 3], "might": [1, 3], "desir": [1, 3], "flag": [1, 5], "capabl": [1, 4], "showcas": 1, "alwai": 1, "extra": 1, "slightli": 1, "overdetermin": 1, "method": [1, 3], "step": [3, 4], "basic": 3, "usag": 3, "within": 3, "overview": 3, "background": [3, 4], "contain": 3, "thorough": 3, "found": 3, "directori": [3, 5], "repositori": [3, 5], "serv": [3, 6], "good": [3, 4], "point": [3, 4], "write": 3, "own": 3, "being": 3, "cover": 3, "compon": 3, "though": 3, "thei": 3, "current": [3, 5], "temporari": 3, "until": 3, "comprehens": 3, "set": 3, "file": 3, "dlr_interpol": 3, "cpp": 3, "know": [3, 5], "look": [3, 4, 5], "up": 3, "inform": [3, 4], "header": 3, "hpp": 3, "namespac": 3, "gfun": 3, "simpl": [3, 4], "sum": 3, "delta": 3, "a_i": 3, "taken": 3, "each": 3, "matrix": 3, "There": 3, "noth": 3, "special": 3, "except": 3, "conveni": 3, "space": 3, "direct": 3, "next": 3, "move": [3, 5], "orbit": 3, "indic": 3, "our": 3, "took": 3, "width": 3, "safe": 3, "unknown": 3, "after": 3, "now": 3, "build_dlr_rf": 3, "input": 3, "31": 3, "although": 3, "dimension": 3, "back": 3, "figur": 3, "object": 3, "type": [3, 4], "class": [3, 4], "respons": 3, "oper": [3, 4], "extract": 3, "get_itnod": 3, "could": 3, "plot": 3, "basi": [3, 4], "constitut": 3, "character": 3, "ani": [3, 5], "coefs2ev": 3, "eqptsrel": 3, "format": [3, 4], "true": 3, "top": 3, "left": 3, "entri": 3, "g_00": 3, "correct": 3, "10": 3, "construct": [3, 4], "imfreq_op": 3, "analog": 3, "index": 3, "again": 3, "agreement": 3, "themselv": 3, "sever": 3, "fit_scalar": 3, "fit_matrix": 3, "fit_matrix_cmplx": 3, "convolve_scalar_r": 3, "convolve_scalar_cmplx": 3, "convolve_matrix_r": 3, "convolve_matrix_cmplx": 3, "reflect": 3, "mapsto": 3, "refl_matrix": 3, "innerprod": 3, "interp_scalar": 3, "interp_matrix": 3, "interp_matrix_sym_f": 3, "show": 3, "how": 3, "fix": 3, "self": 3, "energi": 3, "dyson": 3, "dyson_it": 3, "dyson_vs_ed_r": 3, "dyson_vs_ed_cmplx": 3, "dyson_beth": 3, "consist": 3, "express": 3, "dyson_bethe_fpi": 3, "quantiti": 4, "It": 4, "download": [4, 5], "been": 4, "languag": 4, "offer": 4, "particularli": 4, "interfac": 4, "templat": 4, "arrai": 4, "bla": [4, 5], "lapack": [4, 5], "facilit": 4, "softwar": 4, "project": 4, "triq": 4, "quantum": 4, "bodi": 4, "incorpor": 4, "instal": 4, "unfamiliar": 4, "introduct": 4, "import": 4, "publish": 4, "research": 4, "mention": 4, "cite": 4, "citat": 4, "help": 4, "encourag": 4, "develop": [4, 6], "open": 4, "sourc": [4, 5], "scientif": 4, "j": 4, "chen": 4, "parcollet": 4, "phy": 4, "rev": 4, "105": 4, "235115": 4, "2022": 4, "arxiv": 4, "2107": 4, "13094": 4, "companion": 4, "2404": 4, "02334": 4, "2024": 4, "avail": [4, 5], "python": [4, 5], "pydlr": 4, "fortran": 4, "libdlr": 4, "julia": 4, "jl": 4, "toolbox": 4, "interact": 4, "version": 4, "custom": 4, "cmake": 4, "compil": 4, "clang": 4, "maco": 4, "domain": 4, "contribut": 4, "stabl": 5, "troubl": 5, "gcc": 5, "12": 5, "later": 5, "OR": 5, "15": 5, "hdf5": 5, "openmp": 5, "mpi": 5, "built": 5, "automat": 5, "libclang": 5, "packag": 5, "sphinx": 5, "nbsphinx": 5, "myst_pars": 5, "sphinx_rtd_them": 5, "linkifi": 5, "py": 5, "clone": 5, "git": 5, "http": 5, "com": 5, "flatironinstitut": 5, "src": 5, "creat": [5, 6], "mkdir": 5, "cd": 5, "dcmake_install_prefix": 5, "path_to_install_dir": 5, "run": 5, "go": 5, "checkout": 5, "4": 5, "configur": 5, "doption1": 5, "value1": 5, "doption2": 5, "value2": 5, "syntax": 5, "path": 5, "path_to_triq": 5, "path_to_cppdlr": 5, "debug": 5, "mode": 5, "dcmake_build_typ": 5, "disabl": 5, "dbuild_test": 5, "off": 5, "dbuild_document": 5, "ON": 5, "command": 5, "3": 5, "dcmake_c_compil": 5, "dcmake_cxx_compil": 5, "dcmake_cxx_flag": 5, "stdlib": 5, "libc": 5, "doe": 5, "support": 5, "appleclang": 5, "homebrew": 5, "brew": 5, "llvm": 5, "prefix": 5, "opt": 5, "bin": 5, "report": 6, "bug": 6, "featur": 6, "pull": 6, "branch": 6, "target": 6, "major": 6, "chang": 6, "coordin": 6}, "objects": {}, "objtypes": {}, "objnames": {}, "titleterms": {"changelog": 0, "version": [0, 5], "1": 0, "0": 0, "new": 0, "featur": 0, "bug": 0, "fix": 0, "optim": 0, "other": [0, 3], "chang": 0, "background": 1, "imaginari": [1, 3, 4], "time": [1, 3, 4], "green": 1, "": 1, "function": 1, "lehmann": [1, 4], "represent": [1, 4], "discret": [1, 4], "construct": 1, "dlr": [1, 3], "expans": [1, 3], "matsubara": 1, "frequenc": [1, 3], "domain": 1, "oper": 1, "basi": 1, "point": 1, "format": 1, "measur": 1, "error": 1, "symmetr": 1, "grid": 1, "refer": [2, 4], "document": 2, "exampl": 3, "form": 3, "via": 3, "interpol": 3, "evalu": 3, "list": 3, "cppdlr": [3, 4], "capabl": 3, "calcul": 4, "us": 4, "get": 4, "start": 4, "relat": 4, "librari": 4, "content": 4, "instal": 5, "depend": 5, "step": 5, "custom": 5, "cmake": 5, "option": 5, "compil": 5, "clang": 5, "note": 5, "maco": 5, "user": 5, "issu": 6, "contribut": 6}, "envversion": {"sphinx.domains.c": 2, "sphinx.domains.changeset": 1, "sphinx.domains.citation": 1, "sphinx.domains.cpp": 8, "sphinx.domains.index": 1, "sphinx.domains.javascript": 2, "sphinx.domains.math": 2, "sphinx.domains.python": 3, "sphinx.domains.rst": 2, "sphinx.domains.std": 2, "sphinx.ext.intersphinx": 1, "sphinx.ext.todo": 2, "sphinx.ext.viewcode": 1, "sphinx": 57}, "alltitles": {"Reference documentation": [[2, "reference-documentation"]], "Background": [[1, "background"]], "Imaginary time Green\u2019s functions and the Lehmann representation": [[1, "imaginary-time-green-s-functions-and-the-lehmann-representation"]], "Discrete Lehmann representation": [[1, "discrete-lehmann-representation"]], "Constructing a DLR expansion": [[1, "constructing-a-dlr-expansion"]], "DLR in the Matsubara frequency domain": [[1, "dlr-in-the-matsubara-frequency-domain"]], "Operations in the DLR basis": [[1, "operations-in-the-dlr-basis"]], "Imaginary time point format": [[1, "imaginary-time-point-format"]], "Matsubara frequency point format": [[1, "matsubara-frequency-point-format"]], "Measuring error": [[1, "measuring-error"]], "Symmetrized DLR grids": [[1, "symmetrized-dlr-grids"]], "Changelog": [[0, "changelog"]], "Version 1.1.0": [[0, "version-1-1-0"]], "New features": [[0, "new-features"]], "Bug fixes": [[0, "bug-fixes"]], "Optimizations": [[0, "optimizations"]], "Other changes": [[0, "other-changes"]], "Version 1.0.0": [[0, "version-1-0-0"]], "Examples": [[3, "examples"]], "Example: form a DLR expansion via interpolation, and evaluate it in imaginary time and frequency": [[3, "example-form-a-dlr-expansion-via-interpolation-and-evaluate-it-in-imaginary-time-and-frequency"]], "List of examples": [[3, "list-of-examples"]], "List of other cppdlr capabilities": [[3, "list-of-other-cppdlr-capabilities"]], "Issues and contributions": [[6, "issues-and-contributions"]], "Installation": [[5, "installation"]], "Dependencies": [[5, "dependencies"]], "Installation steps": [[5, "installation-steps"]], "Versions": [[5, "versions"]], "Custom CMake options": [[5, "custom-cmake-options"]], "Compiling with clang": [[5, "compiling-with-clang"]], "Note for MacOS users": [[5, "note-for-macos-users"]], "cppdlr: Imaginary time calculations using the discrete Lehmann representation": [[4, "cppdlr-imaginary-time-calculations-using-the-discrete-lehmann-representation"]], "Getting started": [[4, "getting-started"]], "References": [[4, "references"]], "Related libraries": [[4, "related-libraries"]], "Contents:": [[4, null]]}, "indexentries": {}}) \ No newline at end of file