File: reconstructProc0ForIntMpi.h

package info (click to toggle)
stopt 5.12%2Bdfsg-3
  • links: PTS, VCS
  • area: main
  • in suites: trixie
  • size: 8,860 kB
  • sloc: cpp: 70,456; python: 5,950; makefile: 72; sh: 57
file content (29 lines) | stat: -rw-r--r-- 1,191 bytes parent folder | download | duplicates (3)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
// Copyright (C) 2021 EDF
// All Rights Reserved
// This code is published under the GNU Lesser General Public License (GNU LGPL)
#ifndef  RECONSTRUCTPROC0FORINTMPI_H
#define  RECONSTRUCTPROC0FORINTMPI_H
#include <memory>
#include <Eigen/Dense>
#include "StOpt/core/grids/RegularSpaceIntGrid.h"

/** reconstructProc0Mpi.h
 *  Permit to reconstruct  the grid on processor 0 of  values associated at a integer point
 *
 */
namespace StOpt
{

/// \brief Calculate a function with values spread on processor at a given point for all simulations
/// \param p_point  point where reconstruction should be achieved
/// \param p_grid   global grid of the problem
/// \param p_values local values associated to the processor
/// \param p_bdimToSplit    Dimensions to split for parallelism
/// \param  p_world         MPI communicator
Eigen::ArrayXd  reconstructProc0ForIntMpi(const Eigen::ArrayXi &p_point,
        const std::shared_ptr<StOpt::RegularSpaceIntGrid> &p_grid,
        const std::shared_ptr< Eigen::ArrayXXd >    &p_values,
        const Eigen::Array< bool, Eigen::Dynamic, 1>   &p_bdimToSplit,
        const boost::mpi::communicator &p_world);
}
#endif /* RECONSTRUCTPROC0FORINTMPI_H */