DEC

Functions

 ParaMEDMEM::DEC::DEC (ProcessorGroup &source_group, ProcessorGroup &target_group)
virtual ParaMEDMEM::DEC::~DEC ()
void ParaMEDMEM::DEC::setNature (NatureOfField nature)
void ParaMEDMEM::DEC::attachLocalField (const ParaFIELD *field)
void ParaMEDMEM::DEC::attachLocalField (MEDCouplingFieldDouble *field)
void ParaMEDMEM::DEC::attachLocalField (const ICoCo::Field *field)
void ParaMEDMEM::DEC::renormalizeTargetField (bool isWAbs)

Detailed Description

Introduction

Interface class for creation of a link between two processor groups for exhanging mesh or field data. The DEC is defined by attaching a field on the receiving or on the sending side. On top of attaching a ParaMEDMEM::FIELD, it is possible to attach a ICoCo::Field. This class is an abstract class that enables coupling of codes that respect the ICoCo interface icoco. It has two implementations: one for codes that express their fields as MEDCoupling fields (ICoCo::MEDField) and one for codes that express their fields as Trio/U fields.

DEC Options

Options supported by DEC objects are

OptionDescriptionDefault value
ForcedRenormalizationAfter receiving data, the target field is renormalized so that L2-norms of the source and target fields match.false

The following code excerpt shows how to set options for an object that inherits from DEC :

 InterpKernelDEC dec(source_group,target_group);
 dec.setOptions("ForcedRenormalization",true);
 dec.attachLocalField(field);
 dec.synchronize();
 if (source_group.containsMyRank())
 dec.sendData();
 else
 dec.recvData();

Function Documentation

ParaMEDMEM::DEC::DEC ( ProcessorGroup &  source_group,
ProcessorGroup &  target_group 
) [inherited]
ParaMEDMEM::DEC::~DEC (  )  [virtual, inherited]
void ParaMEDMEM::DEC::setNature ( NatureOfField  nature  )  [inherited]
void ParaMEDMEM::DEC::attachLocalField ( const ParaFIELD field  )  [inherited]

Attaches a local field to a DEC. If the processor is on the receiving end of the DEC, the field will be updated by a recvData() call. Reversely, if the processor is on the sending end, the field will be read, possibly transformed, and sent appropriately to the other side.

References ParaMEDMEM::DEC::_comm_interface, ParaMEDMEM::DEC::_local_field, ParaMEDMEM::DEC::compareFieldAndMethod(), and ParaMEDMEM::ParaFIELD::getTopology().

void ParaMEDMEM::DEC::attachLocalField ( MEDCouplingFieldDouble *  field  )  [inherited]

Attaches a local field to a DEC. The method will test whether the processor is on the source or the target side and will associate the mesh underlying the field to the local side.

If the processor is on the receiving end of the DEC, the field will be updated by a recvData() call. Reversely, if the processor is on the sending end, the field will be read, possibly transformed, and sent appropriately to the other side.

References ParaMEDMEM::DEC::_comm_interface, ParaMEDMEM::DEC::_local_field, ParaMEDMEM::DEC::_owns_field, ParaMEDMEM::DEC::_source_group, and ParaMEDMEM::DEC::_target_group.

Referenced by ParaMEDMEM::DEC::attachLocalField().

void ParaMEDMEM::DEC::attachLocalField ( const ICoCo::Field *  field  )  [inherited]

Attaches a local field to a DEC. If the processor is on the receiving end of the DEC, the field will be updated by a recvData() call. Reversely, if the processor is on the sending end, the field will be read, possibly transformed, and sent appropriately to the other side. The field type is a generic ICoCo Field, so that the DEC can couple a number of different fields :

  • a ICoCo::MEDField, that is created from a MEDCoupling structure
  • a ICOCo::TrioField, that is created from tables extracted from a TRIO-U structure.

References ParaMEDMEM::DEC::_source_group, ParaMEDMEM::DEC::_target_group, and ParaMEDMEM::DEC::attachLocalField().

void ParaMEDMEM::DEC::renormalizeTargetField ( bool  isWAbs  )  [inherited]
Generated on Tue Jul 27 22:08:44 2010 for Med Memory Users' Guide by  doxygen 1.6.3