Commit 270abd45 authored by Haehner, Urs Rene's avatar Haehner, Urs Rene
Browse files

Extend analysis code to DCA with post-interpolation.

parent d928e4f0
Loading
Loading
Loading
Loading
+10 −5
Original line number Diff line number Diff line
@@ -309,8 +309,8 @@ void BseLatticeSolver<ParametersType, DcaDataType, ScalarType>::computeChi0Latti

  clustermapping::coarsegraining_tp<ParametersType, k_HOST_VERTEX> coarsegraining_tp(parameters);

  // DCA+: Compute \chi_0 from continuous lattice self-energy.
  if (parameters.do_dca_plus()) {
  // DCA+/DCA with post-interpolation: Compute \chi_0 from continuous lattice self-energy.
  if (parameters.do_dca_plus() || parameters.do_post_interpolation()) {
    latticemapping::lattice_mapping_sp<ParametersType, k_DCA, k_HOST> lattice_map_sp(parameters);

    MOMS.Sigma_lattice_interpolated = 0.;
@@ -335,7 +335,12 @@ void BseLatticeSolver<ParametersType, DcaDataType, ScalarType>::computeChi0Latti
      lattice_map_sp.execute(MOMS.Sigma, MOMS.Sigma_lattice_interpolated,
                             MOMS.Sigma_lattice_coarsegrained, MOMS.Sigma_lattice);
    }

    if (parameters.do_dca_plus())
      coarsegraining_tp.execute(MOMS.H_HOST, MOMS.Sigma_lattice, chi_0_lattice);

    else  // do_post_interpolation
      coarsegraining_tp.execute(MOMS.H_HOST, MOMS.Sigma_lattice_interpolated, chi_0_lattice);
  }

  // (Standard) DCA: Compute \chi_0 from cluster self-energy.
@@ -367,8 +372,8 @@ void BseLatticeSolver<ParametersType, DcaDataType, ScalarType>::computeGammaLatt
  if (concurrency.id() == concurrency.first())
    std::cout << "\n" << __FUNCTION__ << std::endl;

  // DCA+: Compute Gamma_lattice from an interpolation of Gamma_cluster followed by a deconvolution.
  if (parameters.do_dca_plus()) {
  // DCA+/DCA with post-interpolation: Compute Gamma_lattice with continuous momentum dependence.
  if (parameters.do_dca_plus() || parameters.do_post_interpolation()) {
    latticemapping::lattice_mapping_tp<ParametersType, k_DCA, k_HOST_VERTEX> lattice_map_tp(
        parameters);
    lattice_map_tp.execute(Gamma_cluster, Gamma_lattice);
+4 −4
Original line number Diff line number Diff line
@@ -107,7 +107,7 @@ void lattice_mapping_tp<parameters_type, source_k_dmn_t, target_k_dmn_t>::execut
    interpolation_obj.execute(f_source, f_target);
  }

  {
  if (parameters.do_dca_plus()) {
    if (concurrency.id() == concurrency.first())
      std::cout << "\n\n start tp-deconvolution of Gamma \n\n";

@@ -139,8 +139,8 @@ void lattice_mapping_tp<parameters_type, source_k_dmn_t, target_k_dmn_t>::plot_f
  util::Plot::heatMap(x, y, z_im);
}

}  // latticemapping
}  // phys
}  // dca
}  // namespace latticemapping
}  // namespace phys
}  // namespace dca

#endif  // DCA_PHYS_DCA_STEP_LATTICE_MAPPING_LATTICE_MAPPING_TP_HPP
+1 −1
Original line number Diff line number Diff line
@@ -293,7 +293,7 @@ void Parameters<Concurrency, Threading, Profiler, Model, RandomNumberGenerator,
    KSpHostDmn::parameter_type::print(std::cout);

  // Host grid for two-particle functions (tp-lattice)
  if (do_dca_plus()) {
  if (do_dca_plus() || do_post_interpolation()) {
    domains::cluster_domain_initializer<RTpHostDmn>::execute(Model::get_r_DCA_basis(),
                                                             DomainsParameters::get_tp_host());
  }