18   auto const comm = sopt::mpi::Communicator::World();
 
   29                                                false, stokes::I, utilities::vis_units::radians);
 
   31       CHECK(comm.all_sum_all(
vis.size()) == 245886);
 
   32       CHECK(
vis.units == utilities::vis_units::radians);
 
   38           std::vector<std::string>{filename + 
".uvfits", filename + 
".uvfits"}, comm);
 
   40       CHECK(comm.all_sum_all(
uvfits.size()) == 245886 * 2);
 
   44           std::vector<std::string>{filename + 
".vis", filename + 
".vis"}, comm);
 
   46       CHECK(comm.all_sum_all(
vis.size()) == 245886 * 2);
 
   47       CHECK(
vis.units == utilities::vis_units::lambda);
 
   52 #ifdef PURIFY_CASACORE 
   55       CHECK(comm.all_sum_all(
ms.size()) == 245994);
 
   59 #ifdef PURIFY_CASACORE 
   61           std::vector<std::string>{filename + 
".ms", filename + 
".ms"}, comm);
 
   63       CHECK(comm.all_sum_all(
ms.size()) == 245994 * 2);
 
   72       const std::vector<double> 
u = f.read(
"u");
 
   75       CHECK(comm.all_sum_all(
u.size()) == 245886 * comm.size());
 
   80       const std::vector<double> 
u = f.distread(
"u");
 
   83       CHECK(comm.all_sum_all(
u.size()) == 245886);
 
   94       const size_t N = 10000;
 
   96       const std::vector<double> 
u = f.stochread(
"u", N);
 
   99       CHECK(comm.all_sum_all(
u.size()) == N * comm.size());
 
  105       const size_t N = 10000;
 
  109       CHECK(comm.all_sum_all(
uvfits.size()) == N * comm.size());
 
  116       const size_t N = 10000;
 
  118       using t_complexVec = Vector<t_complex>;
 
  121       auto functor = [&f = h5file, &N]() {
 
  123         auto phi = factory::measurement_operator_factory<t_complexVec>(
 
  124             factory::distributed_measurement_operator::mpi_distribute_image, uv_data, 128, 128, 1,
 
  127         return sopt::IterationState<t_complexVec>(uv_data.
vis, phi);
 
  131       sopt::IterationState<t_complexVec> item = functor();
 
  134       const bool pass = comm.all_sum_all(item.target().size()) == N * comm.size() &&
 
  135                         item.Phi().sizes()[0] == 0 && item.Phi().sizes()[1] == 1 &&
 
  136                         item.Phi().sizes()[2] == N;
 
#define CHECK(CONDITION, ERROR)
 
Purify interface class to handle HDF5 input files.
 
const std::vector< t_real > u
data for u coordinate
 
utilities::vis_params stochread_visibility(H5Handler &file, const size_t N, const bool w_term)
Stochastically reads dataset slices from the supplied HDF5-file handler, constructs a vis_params obje...
 
const std::map< std::string, kernel > kernel_from_string
 
utilities::vis_params read_measurements(const std::string &name, const bool w_term, const stokes pol, const utilities::vis_units units)
read in single measurement file
 
std::string atca_filename(std::string const &filename)
Specific atca data.