Med Memory Users' Guide 5.1.3
|
Functions | |
ParaMEDMEM::ParaFIELD::ParaFIELD (TypeOfField type, TypeOfTimeDiscretization td, ParaMESH *mesh, const ComponentTopology &component_topology) | |
ParaMEDMEM::ParaFIELD::ParaFIELD (MEDCouplingFieldDouble *field, const ProcessorGroup &group) | |
virtual | ParaMEDMEM::ParaFIELD::~ParaFIELD () |
void | ParaMEDMEM::ParaFIELD::synchronizeTarget (ParaMEDMEM::ParaFIELD *source_field) |
void | ParaMEDMEM::ParaFIELD::synchronizeSource (ParaMEDMEM::ParaFIELD *target_field) |
DataArrayInt * | ParaMEDMEM::ParaFIELD::returnCumulativeGlobalNumbering () const |
DataArrayInt * | ParaMEDMEM::ParaFIELD::returnGlobalNumbering () const |
int | ParaMEDMEM::ParaFIELD::nbComponents () const |
double | ParaMEDMEM::ParaFIELD::getVolumeIntegral (int icomp, bool isWAbs) const |
This class encapsulates parallel fields. It basically encapsulates a MEDCouplingField with extra information related to parallel topology. It is most conveniently created by giving a pointer to a MEDCouplingField object and a ProcessorGroup
. By default, a ParaFIELD object will be constructed with all field components located on the same processors. In some specific cases, it might be necessary to scatter components over several processors. In this case, the constructor using a ComponentTopology is required.
ParaMEDMEM::ParaFIELD::ParaFIELD | ( | TypeOfField | type, |
TypeOfTimeDiscretization | td, | ||
ParaMESH * | para_support, | ||
const ComponentTopology & | component_topology | ||
) | [inherited] |
Constructing a ParaFIELD
from a ParaSUPPORT
and a ComponentTopology
.
This constructor creates an empty field based on the ParaSUPPORT description and the partitioning of components described in component_topology. It takes ownership over the _field
object that it creates.
Here come the three ComponentTopology constructors :
ComponentTopology c; // one component in the field ComponentTopology c(6); //six components, all of them on the same processor ComponentTopology c(6, proc_group); // six components, evenly distributed over the processors of procgroup
ParaMEDMEM::ParaFIELD::ParaFIELD | ( | MEDCouplingFieldDouble * | subdomain_field, |
const ProcessorGroup & | proc_group | ||
) | [inherited] |
Constructor creating the ParaFIELD from a given FIELD and a processor group.
This constructor supposes that support underlying subdomain_field has no ParaSUPPORT attached and it therefore recreates one. It therefore takes ownership over _support. The component topology associated with the field is a basic one (all components on the same processor).
ParaMEDMEM::ParaFIELD::~ParaFIELD | ( | ) | [virtual, inherited] |
void ParaMEDMEM::ParaFIELD::synchronizeTarget | ( | ParaMEDMEM::ParaFIELD * | source_field | ) | [inherited] |
void ParaMEDMEM::ParaFIELD::synchronizeSource | ( | ParaMEDMEM::ParaFIELD * | target_field | ) | [inherited] |
DataArrayInt * ParaMEDMEM::ParaFIELD::returnCumulativeGlobalNumbering | ( | ) | const [inherited] |
This method returns, if it exists, an array with only one component and as many as tuples as _field has. This array gives for every element on which this->_field lies, its global number, if this->_field is nodal. For example if _field is a nodal field : returned array will be the nodal global numbers. The content of this method is used to inform Working side to accumulate data recieved by lazy side.
DataArrayInt * ParaMEDMEM::ParaFIELD::returnGlobalNumbering | ( | ) | const [inherited] |
int ParaMEDMEM::ParaFIELD::nbComponents | ( | ) | const [inherited] |
double ParaMEDMEM::ParaFIELD::getVolumeIntegral | ( | int | icomp, |
bool | isWAbs | ||
) | const [inherited] |
This method retrieves the integral of component icomp over the all domain.
References ParaMEDMEM::CommInterface::allReduce().
Referenced by ParaMEDMEM::DEC::renormalizeTargetField().