Back to index

salome-med  6.5.0
Public Member Functions | Public Attributes | Protected Member Functions | Protected Attributes | Private Member Functions | Private Attributes | Static Private Attributes
ParaMEDMEM::StructuredCoincidentDEC Class Reference

#include <StructuredCoincidentDEC.hxx>

Inheritance diagram for ParaMEDMEM::StructuredCoincidentDEC:
Inheritance graph
[legend]
Collaboration diagram for ParaMEDMEM::StructuredCoincidentDEC:
Collaboration graph
[legend]

List of all members.

Public Member Functions

 StructuredCoincidentDEC ()
 StructuredCoincidentDEC (ProcessorGroup &source, ProcessorGroup &target)
virtual ~StructuredCoincidentDEC ()
void synchronize ()
 Prepares a DEC for data exchange.
void recvData ()
void sendData ()
void prepareSourceDE ()
 Creates the arrays necessary for the data transfer and fills the send array with the values of the source field.
void prepareTargetDE ()
 Creates the buffers for receiving the fields on the target side.
def __init__
def synchronize
def recvData
def sendData
def prepareSourceDE
def prepareTargetDE
void setNature (NatureOfField nature)
void attachLocalField (MEDCouplingFieldDouble *field)
 Attaches a local field to a DEC.
void attachLocalField (const ParaFIELD *field, bool ownPt=false)
 Attaches a local field to a DEC.
void attachLocalField (const ICoCo::Field *field)
 Attaches a local field to a DEC.
void sendRecvData (bool way=true)
 If way==true, source procs call sendData() and target procs call recvData().
def sendRecvData
virtual void computeProcGroup ()
void renormalizeTargetField (bool isWAbs)
 Computes the field norm over its support on the source side and renormalizes the field on the target side so that the norms match.
ProcessorGroupgetSourceGrp () const
ProcessorGroupgetTargetGrp () const
bool isInSourceSide () const
bool isInTargetSide () const
bool isInUnion () const
void copyFrom (const DEC &other)
def copyFrom
const std::string & getMethod () const
def getMethod
void setMethod (const char *m)
def setMethod
TimeInterpolationMethod getTimeInterpolationMethod () const
def getTimeInterpolationMethod
void setTimeInterpolationMethod (TimeInterpolationMethod it)
def setTimeInterpolationMethod
bool getForcedRenormalization () const
def getForcedRenormalization
void setForcedRenormalization (bool dr)
def setForcedRenormalization
bool getAsynchronous () const
def getAsynchronous
void setAsynchronous (bool dr)
def setAsynchronous
AllToAllMethod getAllToAllMethod () const
def getAllToAllMethod
void setAllToAllMethod (AllToAllMethod sp)
def setAllToAllMethod

Public Attributes

 this

Protected Member Functions

void compareFieldAndMethod () const throw (INTERP_KERNEL::Exception)
void cleanInstance ()
void copyInstance (const DisjointDEC &other)

Protected Attributes

const ParaFIELD_local_field
ProcessorGroup_union_group
 Processor group representing the union of target and source processors.
ProcessorGroup_source_group
ProcessorGroup_target_group
const CommInterface_comm_interface
bool _owns_field
bool _owns_groups
std::string _method
bool _asynchronous
TimeInterpolationMethod _timeInterpolationMethod
AllToAllMethod _allToAllMethod
bool _forcedRenormalization

Private Member Functions

void synchronizeTopology ()
 Synchronization process for exchanging topologies.
void broadcastTopology (BlockTopology *&, int tag)
 Synchronizing a topology so that all the group possesses it.

Private Attributes

BlockTopology_topo_source
BlockTopology_topo_target
int * _send_counts
int * _recv_counts
int * _send_displs
int * _recv_displs
double * _recv_buffer
double * _send_buffer

Static Private Attributes

dictionary __swig_setmethods__ = {}
tuple __setattr__ = lambdaself,name,value:_swig_setattr(self, StructuredCoincidentDEC, name, value)
dictionary __swig_getmethods__ = {}
tuple __getattr__ = lambdaself,name:_swig_getattr(self, StructuredCoincidentDEC, name)
 __repr__ = _swig_repr
 __swig_destroy__ = _ParaMEDMEM.delete_StructuredCoincidentDEC
 __del__ = lambdaself:None;

Detailed Description

1

Definition at line 31 of file StructuredCoincidentDEC.hxx.


Constructor & Destructor Documentation

Definition at line 90 of file StructuredCoincidentDEC.cxx.

  {
    delete [] _send_buffer;
    delete [] _recv_buffer;
    delete []_send_displs;
    delete [] _recv_displs;
    delete [] _send_counts;
    delete [] _recv_counts;
    if (! _source_group->containsMyRank())
      delete _topo_source;
    if(!_target_group->containsMyRank())
      delete _topo_target;
  }

Here is the call graph for this function:

def ParaMEDMEM.StructuredCoincidentDEC.__init__ (   self,
  args 
)
__init__(self) -> StructuredCoincidentDEC
__init__(self, ProcessorGroup source, ProcessorGroup target) -> StructuredCoincidentDEC

1

Reimplemented from ParaMEDMEM::DECOptions.

Definition at line 15548 of file ParaMEDMEM.py.

15548 
15549     def __init__(self, *args): 
15550         """
15551         __init__(self) -> StructuredCoincidentDEC
15552         __init__(self, ProcessorGroup source, ProcessorGroup target) -> StructuredCoincidentDEC
15553 
15554         1
15555         """
15556         this = _ParaMEDMEM.new_StructuredCoincidentDEC(*args)
15557         try: self.this.append(this)
        except: self.this = this

Member Function Documentation

void ParaMEDMEM::DisjointDEC::compareFieldAndMethod ( ) const throw (INTERP_KERNEL::Exception) [protected, inherited]

Definition at line 356 of file DisjointDEC.cxx.

  {
    if (_local_field)
      {
        TypeOfField entity = _local_field->getField()->getTypeOfField();
        if ( getMethod() == "P0" )
          {
            if ( entity != ON_CELLS )
              throw INTERP_KERNEL::Exception("Field support and interpolation method mismatch."
                                             " For P0 interpolation, field must be on MED_CELL's");
          }
        else if ( getMethod() == "P1" )
          {
            if ( entity != ON_NODES )
              throw INTERP_KERNEL::Exception("Field support and interpolation method mismatch."
                                             " For P1 interpolation, field must be on MED_NODE's");
          }
        else if ( getMethod() == "P1d" )
          {
            if ( entity != ON_CELLS )
              throw INTERP_KERNEL::Exception("Field support and interpolation method mismatch."
                                             " For P1d interpolation, field must be on MED_CELL's");
            if ( _target_group->containsMyRank() )
              throw INTERP_KERNEL::Exception("Projection to P1d field not supported");
          }
        else
          {
            throw INTERP_KERNEL::Exception("Unknown interpolation method. Possible methods: P0, P1, P1d");
          }
      }
  }

Here is the call graph for this function:

Here is the caller graph for this function:

virtual void ParaMEDMEM::DisjointDEC::computeProcGroup ( ) [inline, virtual, inherited]

Definition at line 61 of file DisjointDEC.hxx.

{ }
void ParaMEDMEM::DEC::copyFrom ( const DEC other) [inherited]

Definition at line 40 of file DEC.cxx.

  {
    _comm_interface=other._comm_interface;
  }

Here is the caller graph for this function:

def ParaMEDMEM.DEC.copyFrom (   self,
  args 
) [inherited]
copyFrom(self, DEC other)

1

Definition at line 15445 of file ParaMEDMEM.py.

15445 
15446     def copyFrom(self, *args):
15447         """
15448         copyFrom(self, DEC other)
15449 
15450         1
15451         """
15452         return _ParaMEDMEM.DEC_copyFrom(self, *args)

Here is the call graph for this function:

Definition at line 69 of file DECOptions.hxx.

{ return _allToAllMethod; }

Here is the caller graph for this function:

def ParaMEDMEM.DECOptions.getAllToAllMethod (   self) [inherited]
getAllToAllMethod(self) -> AllToAllMethod

1

Definition at line 14967 of file ParaMEDMEM.py.

14967 
14968     def getAllToAllMethod(self):
14969         """
14970         getAllToAllMethod(self) -> AllToAllMethod
14971 
14972         1
14973         """
14974         return _ParaMEDMEM.DECOptions_getAllToAllMethod(self)

Here is the call graph for this function:

bool ParaMEDMEM::DECOptions::getAsynchronous ( ) const [inline, inherited]

Definition at line 66 of file DECOptions.hxx.

Here is the caller graph for this function:

def ParaMEDMEM.DECOptions.getAsynchronous (   self) [inherited]
getAsynchronous(self) -> bool

1

Definition at line 14951 of file ParaMEDMEM.py.

14951 
14952     def getAsynchronous(self):
14953         """
14954         getAsynchronous(self) -> bool
14955 
14956         1
14957         """
14958         return _ParaMEDMEM.DECOptions_getAsynchronous(self)

Here is the call graph for this function:

bool ParaMEDMEM::DECOptions::getForcedRenormalization ( ) const [inline, inherited]

Definition at line 63 of file DECOptions.hxx.

Here is the caller graph for this function:

getForcedRenormalization(self) -> bool

1

Definition at line 14935 of file ParaMEDMEM.py.

14935 
14936     def getForcedRenormalization(self):
14937         """
14938         getForcedRenormalization(self) -> bool
14939 
14940         1
14941         """
14942         return _ParaMEDMEM.DECOptions_getForcedRenormalization(self)

Here is the call graph for this function:

const std::string& ParaMEDMEM::DECOptions::getMethod ( ) const [inline, inherited]

Definition at line 57 of file DECOptions.hxx.

{ return _method; }

Here is the caller graph for this function:

def ParaMEDMEM.DECOptions.getMethod (   self) [inherited]
getMethod(self) -> string

1

Definition at line 14903 of file ParaMEDMEM.py.

14903 
14904     def getMethod(self):
14905         """
14906         getMethod(self) -> string
14907 
14908         1
14909         """
14910         return _ParaMEDMEM.DECOptions_getMethod(self)

Here is the call graph for this function:

ProcessorGroup* ParaMEDMEM::DisjointDEC::getSourceGrp ( ) const [inline, inherited]

Definition at line 64 of file DisjointDEC.hxx.

{ return _source_group; }

Here is the caller graph for this function:

ProcessorGroup* ParaMEDMEM::DisjointDEC::getTargetGrp ( ) const [inline, inherited]

Definition at line 65 of file DisjointDEC.hxx.

{ return _target_group; }

Here is the caller graph for this function:

Definition at line 60 of file DECOptions.hxx.

Here is the caller graph for this function:

getTimeInterpolationMethod(self) -> TimeInterpolationMethod

1

Definition at line 14919 of file ParaMEDMEM.py.

14919 
14920     def getTimeInterpolationMethod(self):
14921         """
14922         getTimeInterpolationMethod(self) -> TimeInterpolationMethod
14923 
14924         1
14925         """
14926         return _ParaMEDMEM.DECOptions_getTimeInterpolationMethod(self)

Here is the call graph for this function:

bool ParaMEDMEM::DisjointDEC::isInSourceSide ( ) const [inherited]

Definition at line 335 of file DisjointDEC.cxx.

  {
    if(!_source_group)
      return false;
    return _source_group->containsMyRank();
  }

Here is the call graph for this function:

Here is the caller graph for this function:

bool ParaMEDMEM::DisjointDEC::isInTargetSide ( ) const [inherited]

Definition at line 342 of file DisjointDEC.cxx.

  {
    if(!_target_group)
      return false;
    return _target_group->containsMyRank();
  }

Here is the call graph for this function:

Here is the caller graph for this function:

bool ParaMEDMEM::DisjointDEC::isInUnion ( ) const [inherited]

Definition at line 349 of file DisjointDEC.cxx.

  {
    if(!_union_group)
      return false;
    return _union_group->containsMyRank();
  }

Here is the call graph for this function:

Here is the caller graph for this function:

prepareSourceDE(self)

1

Definition at line 15584 of file ParaMEDMEM.py.

15584 
15585     def prepareSourceDE(self):
15586         """
15587         prepareSourceDE(self)
15588 
15589         1
15590         """
15591         return _ParaMEDMEM.StructuredCoincidentDEC_prepareSourceDE(self)

Here is the call graph for this function:

prepareTargetDE(self)

1

Definition at line 15592 of file ParaMEDMEM.py.

15592 
15593     def prepareTargetDE(self):
15594         """
15595         prepareTargetDE(self)
15596 
15597         1
15598         """
15599         return _ParaMEDMEM.StructuredCoincidentDEC_prepareTargetDE(self)

Here is the call graph for this function:

recvData(self)

1

Definition at line 15568 of file ParaMEDMEM.py.

15568 
15569     def recvData(self):
15570         """
15571         recvData(self)
15572 
15573         1
15574         """
15575         return _ParaMEDMEM.StructuredCoincidentDEC_recvData(self)

Here is the call graph for this function:

sendData(self)

1

Definition at line 15576 of file ParaMEDMEM.py.

15576 
15577     def sendData(self):
15578         """
15579         sendData(self)
15580 
15581         1
15582         """
15583         return _ParaMEDMEM.StructuredCoincidentDEC_sendData(self)

Here is the call graph for this function:

void ParaMEDMEM::DisjointDEC::sendRecvData ( bool  way = true) [virtual, inherited]

If way==true, source procs call sendData() and target procs call recvData().

if way==false, it's the other way round.

Implements ParaMEDMEM::DEC.

Definition at line 392 of file DisjointDEC.cxx.

  {
    if(!isInUnion())
      return;
    if(isInSourceSide())
      {
        if(way)
          sendData();
        else
          recvData();
      }
    else if(isInTargetSide())
      {
        if(way)
          recvData();
        else
          sendData();
      }
  }

Here is the call graph for this function:

Here is the caller graph for this function:

def ParaMEDMEM.DEC.sendRecvData (   self,
  way = True 
) [inherited]
sendRecvData(self, bool way = True)
sendRecvData(self)

1

Definition at line 15461 of file ParaMEDMEM.py.

15461 
15462     def sendRecvData(self, way = True):
15463         """
15464         sendRecvData(self, bool way = True)
15465         sendRecvData(self)
15466 
15467         1
15468         """
15469         return _ParaMEDMEM.DEC_sendRecvData(self, way)

Here is the call graph for this function:

Definition at line 70 of file DECOptions.hxx.

Here is the caller graph for this function:

def ParaMEDMEM.DECOptions.setAllToAllMethod (   self,
  args 
) [inherited]
setAllToAllMethod(self, AllToAllMethod sp)

1

Definition at line 14975 of file ParaMEDMEM.py.

14975 
14976     def setAllToAllMethod(self, *args):
14977         """
14978         setAllToAllMethod(self, AllToAllMethod sp)
14979 
14980         1
14981         """
14982         return _ParaMEDMEM.DECOptions_setAllToAllMethod(self, *args)

Here is the call graph for this function:

void ParaMEDMEM::DECOptions::setAsynchronous ( bool  dr) [inline, inherited]

Definition at line 67 of file DECOptions.hxx.

Here is the caller graph for this function:

def ParaMEDMEM.DECOptions.setAsynchronous (   self,
  args 
) [inherited]
setAsynchronous(self, bool dr)

1

Definition at line 14959 of file ParaMEDMEM.py.

14959 
14960     def setAsynchronous(self, *args):
14961         """
14962         setAsynchronous(self, bool dr)
14963 
14964         1
14965         """
14966         return _ParaMEDMEM.DECOptions_setAsynchronous(self, *args)

Here is the call graph for this function:

void ParaMEDMEM::DECOptions::setForcedRenormalization ( bool  dr) [inline, inherited]

Definition at line 64 of file DECOptions.hxx.

Here is the caller graph for this function:

def ParaMEDMEM.DECOptions.setForcedRenormalization (   self,
  args 
) [inherited]
setForcedRenormalization(self, bool dr)

1

Definition at line 14943 of file ParaMEDMEM.py.

14943 
14944     def setForcedRenormalization(self, *args):
14945         """
14946         setForcedRenormalization(self, bool dr)
14947 
14948         1
14949         """
14950         return _ParaMEDMEM.DECOptions_setForcedRenormalization(self, *args)

Here is the call graph for this function:

void ParaMEDMEM::DECOptions::setMethod ( const char *  m) [inline, inherited]

Definition at line 58 of file DECOptions.hxx.

{ _method=m; }

Here is the caller graph for this function:

def ParaMEDMEM.DECOptions.setMethod (   self,
  args 
) [inherited]
setMethod(self, char m)

1

Definition at line 14911 of file ParaMEDMEM.py.

14911 
14912     def setMethod(self, *args):
14913         """
14914         setMethod(self, char m)
14915 
14916         1
14917         """
14918         return _ParaMEDMEM.DECOptions_setMethod(self, *args)

Here is the call graph for this function:

Definition at line 61 of file DECOptions.hxx.

Here is the caller graph for this function:

def ParaMEDMEM.DECOptions.setTimeInterpolationMethod (   self,
  args 
) [inherited]
setTimeInterpolationMethod(self, TimeInterpolationMethod it)

1

Definition at line 14927 of file ParaMEDMEM.py.

14927 
14928     def setTimeInterpolationMethod(self, *args):
14929         """
14930         setTimeInterpolationMethod(self, TimeInterpolationMethod it)
14931 
14932         1
14933         """
14934         return _ParaMEDMEM.DECOptions_setTimeInterpolationMethod(self, *args)

Here is the call graph for this function:

synchronize(self)

1

Reimplemented from ParaMEDMEM::DEC.

Definition at line 15560 of file ParaMEDMEM.py.

15560 
15561     def synchronize(self):
15562         """
15563         synchronize(self)
15564 
15565         1
15566         """
15567         return _ParaMEDMEM.StructuredCoincidentDEC_synchronize(self)

Here is the call graph for this function:


Member Data Documentation

ParaMEDMEM.StructuredCoincidentDEC.__del__ = lambdaself:None; [static, private]

Definition at line 15559 of file ParaMEDMEM.py.

tuple ParaMEDMEM.StructuredCoincidentDEC.__getattr__ = lambdaself,name:_swig_getattr(self, StructuredCoincidentDEC, name) [static, private]

Reimplemented from ParaMEDMEM::DEC.

Definition at line 15546 of file ParaMEDMEM.py.

Reimplemented from ParaMEDMEM::DEC.

Definition at line 15547 of file ParaMEDMEM.py.

tuple ParaMEDMEM.StructuredCoincidentDEC.__setattr__ = lambdaself,name,value:_swig_setattr(self, StructuredCoincidentDEC, name, value) [static, private]

Reimplemented from ParaMEDMEM::DEC.

Definition at line 15544 of file ParaMEDMEM.py.

ParaMEDMEM.StructuredCoincidentDEC.__swig_destroy__ = _ParaMEDMEM.delete_StructuredCoincidentDEC [static, private]

Reimplemented from ParaMEDMEM::DEC.

Definition at line 15558 of file ParaMEDMEM.py.

dictionary ParaMEDMEM.StructuredCoincidentDEC.__swig_getmethods__ = {} [static, private]

Reimplemented from ParaMEDMEM::DEC.

Definition at line 15545 of file ParaMEDMEM.py.

dictionary ParaMEDMEM.StructuredCoincidentDEC.__swig_setmethods__ = {} [static, private]

Reimplemented from ParaMEDMEM::DEC.

Definition at line 15543 of file ParaMEDMEM.py.

Definition at line 37 of file DECOptions.hxx.

bool ParaMEDMEM::DECOptions::_asynchronous [protected, inherited]

Definition at line 35 of file DECOptions.hxx.

Reimplemented from ParaMEDMEM::DEC.

Definition at line 80 of file DisjointDEC.hxx.

Definition at line 38 of file DECOptions.hxx.

const ParaFIELD* ParaMEDMEM::DisjointDEC::_local_field [protected, inherited]

Definition at line 74 of file DisjointDEC.hxx.

std::string ParaMEDMEM::DECOptions::_method [protected, inherited]

Reimplemented in ParaMEDMEM::NonCoincidentDEC.

Definition at line 34 of file DECOptions.hxx.

bool ParaMEDMEM::DisjointDEC::_owns_field [protected, inherited]

Definition at line 81 of file DisjointDEC.hxx.

bool ParaMEDMEM::DisjointDEC::_owns_groups [protected, inherited]

Definition at line 82 of file DisjointDEC.hxx.

Definition at line 53 of file StructuredCoincidentDEC.hxx.

Definition at line 50 of file StructuredCoincidentDEC.hxx.

Definition at line 52 of file StructuredCoincidentDEC.hxx.

Definition at line 54 of file StructuredCoincidentDEC.hxx.

Definition at line 49 of file StructuredCoincidentDEC.hxx.

Definition at line 51 of file StructuredCoincidentDEC.hxx.

Definition at line 77 of file DisjointDEC.hxx.

Definition at line 78 of file DisjointDEC.hxx.

Definition at line 36 of file DECOptions.hxx.

Definition at line 47 of file StructuredCoincidentDEC.hxx.

Definition at line 48 of file StructuredCoincidentDEC.hxx.

Processor group representing the union of target and source processors.

Definition at line 76 of file DisjointDEC.hxx.

Reimplemented from ParaMEDMEM::DECOptions.

Definition at line 15557 of file ParaMEDMEM.py.


The documentation for this class was generated from the following files: