#include "catch2/catch_all.hpp"
#include "purify/mpi_utilities.h"
 
Go to the source code of this file.
 | 
|   | TEST_CASE ("Distribution of visibility data") | 
|   | 
◆ TEST_CASE()
      
        
          | TEST_CASE  | 
          ( | 
          "Distribution of visibility data"  | 
           | ) | 
           | 
        
      
 
Definition at line 7 of file parallel_mpi_utilities.cc.
    8   auto const world = sopt::mpi::Communicator::World();
 
   12   params.
u = Vector<t_real>::Random(N);
 
   13   params.
v = Vector<t_real>::Random(N);
 
   14   params.
w = Vector<t_real>::Random(N);
 
   15   params.
vis = Vector<t_complex>::Random(N);
 
   16   params.
weights = Vector<t_complex>::Random(N);
 
   18   std::vector<t_int> order(N);
 
   20   if (world.size() == 1) 
return;
 
   22   std::fill(order.begin() + 1, order.end(), 0);
 
   25   if (world.rank() == 0) {
 
   26     CHECK(actual.u.size() == 4);
 
   27     CHECK(actual.u(0) == Approx(params.
u(N - 1)));
 
   28     CHECK(actual.u.tail(N - 2).isApprox(params.
u.segment(1, N - 2)));
 
   29   } 
else if (world.rank() == 1) {
 
   30     CHECK(actual.u.size() == 1);
 
   31     CHECK(actual.u(0) == Approx(params.
u(0)));
 
   33     CHECK(actual.u.size() == 0);
 
#define CHECK(CONDITION, ERROR)
 
vis_params regroup_and_scatter(vis_params const ¶ms, std::vector< t_int > const &groups, sopt::mpi::Communicator const &comm)
 
Vector< t_complex > weights
 
 
References CHECK, purify::utilities::regroup_and_scatter(), purify::utilities::vis_params::u, purify::utilities::vis_params::v, purify::utilities::vis_params::vis, purify::utilities::vis_params::w, and purify::utilities::vis_params::weights.