X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=src%2FParaMEDMEM%2FInterpKernelDEC.cxx;h=ccf6571c0b485c036abf3cbdf716845fee46b2a3;hb=c41e6035d050073ea10040690daae247865b8b74;hp=7f1be4b363e79ba30112275784ff4f91085442d9;hpb=c9020954af7fe85dd75b34e5ea7951b0f1f4cb25;p=tools%2Fmedcoupling.git diff --git a/src/ParaMEDMEM/InterpKernelDEC.cxx b/src/ParaMEDMEM/InterpKernelDEC.cxx index 7f1be4b36..ccf6571c0 100644 --- a/src/ParaMEDMEM/InterpKernelDEC.cxx +++ b/src/ParaMEDMEM/InterpKernelDEC.cxx @@ -1,4 +1,4 @@ -// Copyright (C) 2007-2015 CEA/DEN, EDF R&D +// Copyright (C) 2007-2016 CEA/DEN, EDF R&D // // This library is free software; you can redistribute it and/or // modify it under the terms of the GNU Lesser General Public @@ -30,7 +30,7 @@ #include "InterpKernelDEC.hxx" #include "ElementLocator.hxx" -namespace ParaMEDMEM +namespace MEDCoupling { /*! @@ -53,7 +53,7 @@ namespace ParaMEDMEM The name "InterpKernelDEC" comes from the fact that this class uses exactly the same algorithms as the sequential remapper. Both this class and the sequential - \ref ParaMEDMEM::MEDCouplingRemapper "MEDCouplingRemapper" are built on top of the %INTERP_KERNEL + \ref MEDCoupling::MEDCouplingRemapper "MEDCouplingRemapper" are built on top of the %INTERP_KERNEL algorithms (notably the computation of the intersection volumes). Among the important properties inherited from the parent abstract class \ref DisjointDEC-det "DisjointDEC", @@ -112,7 +112,7 @@ namespace ParaMEDMEM \f] \section InterpKernelDEC-options Options - On top of the usual \ref ParaMEDMEM::DECOptions "DEC options", the options supported by %InterpKernelDEC objects are + On top of the usual \ref MEDCoupling::DECOptions "DEC options", the options supported by %InterpKernelDEC objects are related to the underlying \ref InterpKerIntersectors "intersector class". All the options available in the intersector objects are available for the %InterpKernelDEC object. The various options available for intersectors can @@ -141,6 +141,8 @@ namespace ParaMEDMEM This constructor creates an InterpKernelDEC which has \a source_group as a working side and \a target_group as an idle side. All the processors will actually participate, but intersection computations will be performed on the working side during the \a synchronize() phase. The constructor must be called synchronously on all processors of both processor groups. + The source group and target group MUST form a partition of all the procs within the communicator passed as 'world_comm' + when building the group. \param source_group working side ProcessorGroup \param target_group lazy side ProcessorGroup @@ -154,6 +156,12 @@ namespace ParaMEDMEM } + + /*! + * Creates an InterpKernelDEC from a set of source procs IDs and target group IDs. + * The difference with the ctor using groups is that the set of procs might not cover entirely MPI_COMM_WORLD + * (a sub-communicator holding the union of source and target procs is recreated internally). + */ InterpKernelDEC::InterpKernelDEC(const std::set& src_ids, const std::set& trg_ids, const MPI_Comm& world_comm): DisjointDEC(src_ids,trg_ids,world_comm),