#pragma once

#include <vector>
#include <mpi.h>
#include <iostream>
#include <cassert>
#include <cfloat>

void DebugVector(const std::vector<double>& xin, MPI_Comm icomm);

double par_scalar(const std::vector<double> &x, const std::vector<double> &y, const MPI_Comm &icomm);

void par_minmax(std::vector<double> &x, double &min_val, double &max_val, const MPI_Comm &icomm);