Loading include/dca/phys/dca_step/cluster_solver/ctaux/ctaux_accumulator.hpp +8 −6 Original line number Diff line number Diff line Loading @@ -25,14 +25,20 @@ #include "dca/linalg/matrix.hpp" #include "dca/linalg/util/gpu_event.hpp" #include "dca/phys/dca_step/cluster_solver/cluster_solver_id.hpp" #ifdef DCA_HAVE_GPU #include "dca/phys/dca_step/cluster_solver/shared_tools/accumulation/sp/sp_accumulator_gpu.hpp" #include "dca/phys/dca_step/cluster_solver/shared_tools/accumulation/tp/tp_accumulator_gpu.hpp" #else #include "dca/phys/dca_step/cluster_solver/shared_tools/accumulation/sp/sp_accumulator.hpp" #endif // DCA_HAVE_GPU #include "dca/phys/dca_step/cluster_solver/shared_tools/accumulation/tp/tp_accumulator_cpu.hpp" #include "dca/phys/dca_step/cluster_solver/ctaux/accumulator/tp/tp_equal_time_accumulator.hpp" #include "dca/phys/dca_step/cluster_solver/ctaux/domains/feynman_expansion_order_domain.hpp" #include "dca/phys/dca_step/cluster_solver/ctaux/structs/ct_aux_hs_configuration.hpp" #include "dca/phys/dca_step/cluster_solver/ctaux/structs/vertex_pair.hpp" #include "dca/phys/dca_step/cluster_solver/ctaux/structs/vertex_singleton.hpp" #include "dca/phys/dca_step/cluster_solver/shared_tools/accumulation/mc_accumulator_data.hpp" #include "dca/phys/dca_step/cluster_solver/shared_tools/accumulation/sp/sp_accumulator.hpp" #include "dca/phys/dca_step/cluster_solver/shared_tools/accumulation/tp/tp_accumulator_cpu.hpp" #include "dca/phys/domains/cluster/cluster_domain.hpp" #include "dca/phys/domains/quantum/electron_band_domain.hpp" Loading @@ -42,14 +48,10 @@ #include "dca/phys/domains/time_and_frequency/time_domain.hpp" #include "dca/phys/domains/time_and_frequency/vertex_frequency_domain.hpp" #include "dca/phys/four_point_type.hpp" #ifdef DCA_HAVE_GPU #include "dca/phys/dca_step/cluster_solver/shared_tools/accumulation/sp/sp_accumulator_gpu.hpp" #include "dca/phys/dca_step/cluster_solver/shared_tools/accumulation/tp/tp_accumulator_gpu.hpp" #ifdef DCA_HAVE_MPI // #include "dca/phys/dca_step/cluster_solver/shared_tools/accumulation/tp/tp_accumulator_mpi_blocked_gpu.hpp" // #include "dca/phys/dca_step/cluster_solver/shared_tools/accumulation/tp/tp_accumulator_mpi_gpu.hpp" #endif // DCA_HAVE_MPI #endif // DCA_HAVE_GPU namespace dca { namespace phys { Loading include/dca/phys/dca_step/cluster_solver/ctint/structs/interaction_vertices.hpp +1 −0 Original line number Diff line number Diff line Loading @@ -110,6 +110,7 @@ std::pair<short, short> InteractionVertices::getInsertionIndices(Rng& rng, auto do_double = [&]() -> bool { if (double_update_prob == 0) return 0; // this is problematic in that fewer rng than might be expected are consumed if prob==1 else if (double_update_prob == 1) return 1; else Loading include/dca/phys/dca_step/cluster_solver/ctint/walker/ctint_walker_cpu_submatrix.hpp +2 −1 Original line number Diff line number Diff line Loading @@ -368,6 +368,7 @@ void CtintWalkerSubmatrixCpu<Parameters, DIST>::mainSubmatrixProcess() { std::vector<int> aux_spin_type, new_aux_spin_type, move_band; acceptance_prob_ = 1.0; for (int delay_ind = 0; delay_ind < delayed_moves_.size(); ++delay_ind) { current_move_ = &delayed_moves_[delay_ind]; const auto move_type = current_move_->move_type; Loading Loading @@ -460,7 +461,7 @@ void CtintWalkerSubmatrixCpu<Parameters, DIST>::mainSubmatrixProcess() { // Compute acceptance probability. auto [acceptance_prob, mc_weight_ratio] = computeAcceptanceProbability(); acceptance_prob_ = acceptance_prob; acceptance_prob_ *= acceptance_prob; // Note: acceptance and rejection can be forced for testing with the appropriate "acceptance_rng". const bool accepted = Loading test/integration/cluster_solver/ctaux/bilayer_lattice/Nc1_interband/bilayer_lattice_Nc1_interband.cpp +1 −2 Original line number Diff line number Diff line Loading @@ -16,7 +16,6 @@ #include <dca/function/util/difference.hpp> #include "dca/testing/gtest_h_w_warning_blocking.h" #include "dca/config/mc_options.hpp" #include "dca/function/domains.hpp" #include "dca/function/function.hpp" Loading Loading @@ -59,7 +58,7 @@ TEST(bilayerLattice_Nc1_interband, Self_Energy) { dca::ClusterSolverId::CT_AUX,dca::NumericalTraits<dca::util::RealAlias<Scalar>, Scalar>>; using DcaDataType = dca::phys::DcaData<ParametersType>; using QmcSolverType = dca::phys::solver::CtauxClusterSolver<dca::linalg::CPU, ParametersType, DcaDataType>; dca::phys::solver::CtauxClusterSolver<dca::linalg::CPU, ParametersType, DcaDataType, dca::DistType::NONE>; using w = dca::func::dmn_0<dca::phys::domains::frequency_domain>; using b = dca::func::dmn_0<dca::phys::domains::electron_band_domain>; Loading test/integration/statistical_tests/rashba_lattice/CMakeLists.txt +1 −0 Original line number Diff line number Diff line dca_add_gtest(test_rashba_lattice EXTENSIVE MPI MPI_NUMPROC 2 CUDA INCLUDE_DIRS ${DCA_INCLUDE_DIRS};${PROJECT_SOURCE_DIR} LIBS ${DCA_LIBS} ${DCA_GPU_LIBS}) Loading
include/dca/phys/dca_step/cluster_solver/ctaux/ctaux_accumulator.hpp +8 −6 Original line number Diff line number Diff line Loading @@ -25,14 +25,20 @@ #include "dca/linalg/matrix.hpp" #include "dca/linalg/util/gpu_event.hpp" #include "dca/phys/dca_step/cluster_solver/cluster_solver_id.hpp" #ifdef DCA_HAVE_GPU #include "dca/phys/dca_step/cluster_solver/shared_tools/accumulation/sp/sp_accumulator_gpu.hpp" #include "dca/phys/dca_step/cluster_solver/shared_tools/accumulation/tp/tp_accumulator_gpu.hpp" #else #include "dca/phys/dca_step/cluster_solver/shared_tools/accumulation/sp/sp_accumulator.hpp" #endif // DCA_HAVE_GPU #include "dca/phys/dca_step/cluster_solver/shared_tools/accumulation/tp/tp_accumulator_cpu.hpp" #include "dca/phys/dca_step/cluster_solver/ctaux/accumulator/tp/tp_equal_time_accumulator.hpp" #include "dca/phys/dca_step/cluster_solver/ctaux/domains/feynman_expansion_order_domain.hpp" #include "dca/phys/dca_step/cluster_solver/ctaux/structs/ct_aux_hs_configuration.hpp" #include "dca/phys/dca_step/cluster_solver/ctaux/structs/vertex_pair.hpp" #include "dca/phys/dca_step/cluster_solver/ctaux/structs/vertex_singleton.hpp" #include "dca/phys/dca_step/cluster_solver/shared_tools/accumulation/mc_accumulator_data.hpp" #include "dca/phys/dca_step/cluster_solver/shared_tools/accumulation/sp/sp_accumulator.hpp" #include "dca/phys/dca_step/cluster_solver/shared_tools/accumulation/tp/tp_accumulator_cpu.hpp" #include "dca/phys/domains/cluster/cluster_domain.hpp" #include "dca/phys/domains/quantum/electron_band_domain.hpp" Loading @@ -42,14 +48,10 @@ #include "dca/phys/domains/time_and_frequency/time_domain.hpp" #include "dca/phys/domains/time_and_frequency/vertex_frequency_domain.hpp" #include "dca/phys/four_point_type.hpp" #ifdef DCA_HAVE_GPU #include "dca/phys/dca_step/cluster_solver/shared_tools/accumulation/sp/sp_accumulator_gpu.hpp" #include "dca/phys/dca_step/cluster_solver/shared_tools/accumulation/tp/tp_accumulator_gpu.hpp" #ifdef DCA_HAVE_MPI // #include "dca/phys/dca_step/cluster_solver/shared_tools/accumulation/tp/tp_accumulator_mpi_blocked_gpu.hpp" // #include "dca/phys/dca_step/cluster_solver/shared_tools/accumulation/tp/tp_accumulator_mpi_gpu.hpp" #endif // DCA_HAVE_MPI #endif // DCA_HAVE_GPU namespace dca { namespace phys { Loading
include/dca/phys/dca_step/cluster_solver/ctint/structs/interaction_vertices.hpp +1 −0 Original line number Diff line number Diff line Loading @@ -110,6 +110,7 @@ std::pair<short, short> InteractionVertices::getInsertionIndices(Rng& rng, auto do_double = [&]() -> bool { if (double_update_prob == 0) return 0; // this is problematic in that fewer rng than might be expected are consumed if prob==1 else if (double_update_prob == 1) return 1; else Loading
include/dca/phys/dca_step/cluster_solver/ctint/walker/ctint_walker_cpu_submatrix.hpp +2 −1 Original line number Diff line number Diff line Loading @@ -368,6 +368,7 @@ void CtintWalkerSubmatrixCpu<Parameters, DIST>::mainSubmatrixProcess() { std::vector<int> aux_spin_type, new_aux_spin_type, move_band; acceptance_prob_ = 1.0; for (int delay_ind = 0; delay_ind < delayed_moves_.size(); ++delay_ind) { current_move_ = &delayed_moves_[delay_ind]; const auto move_type = current_move_->move_type; Loading Loading @@ -460,7 +461,7 @@ void CtintWalkerSubmatrixCpu<Parameters, DIST>::mainSubmatrixProcess() { // Compute acceptance probability. auto [acceptance_prob, mc_weight_ratio] = computeAcceptanceProbability(); acceptance_prob_ = acceptance_prob; acceptance_prob_ *= acceptance_prob; // Note: acceptance and rejection can be forced for testing with the appropriate "acceptance_rng". const bool accepted = Loading
test/integration/cluster_solver/ctaux/bilayer_lattice/Nc1_interband/bilayer_lattice_Nc1_interband.cpp +1 −2 Original line number Diff line number Diff line Loading @@ -16,7 +16,6 @@ #include <dca/function/util/difference.hpp> #include "dca/testing/gtest_h_w_warning_blocking.h" #include "dca/config/mc_options.hpp" #include "dca/function/domains.hpp" #include "dca/function/function.hpp" Loading Loading @@ -59,7 +58,7 @@ TEST(bilayerLattice_Nc1_interband, Self_Energy) { dca::ClusterSolverId::CT_AUX,dca::NumericalTraits<dca::util::RealAlias<Scalar>, Scalar>>; using DcaDataType = dca::phys::DcaData<ParametersType>; using QmcSolverType = dca::phys::solver::CtauxClusterSolver<dca::linalg::CPU, ParametersType, DcaDataType>; dca::phys::solver::CtauxClusterSolver<dca::linalg::CPU, ParametersType, DcaDataType, dca::DistType::NONE>; using w = dca::func::dmn_0<dca::phys::domains::frequency_domain>; using b = dca::func::dmn_0<dca::phys::domains::electron_band_domain>; Loading
test/integration/statistical_tests/rashba_lattice/CMakeLists.txt +1 −0 Original line number Diff line number Diff line dca_add_gtest(test_rashba_lattice EXTENSIVE MPI MPI_NUMPROC 2 CUDA INCLUDE_DIRS ${DCA_INCLUDE_DIRS};${PROJECT_SOURCE_DIR} LIBS ${DCA_LIBS} ${DCA_GPU_LIBS})