Version: 5.1.6

ParaMEDMEM.OverlapInterpolationMatrix Class Reference

#include <OverlapInterpolationMatrix.hxx>

Inheritance diagram for ParaMEDMEM.OverlapInterpolationMatrix:
Inheritance graph

Public Member Functions

 OverlapInterpolationMatrix (ParaFIELD *source_field, ParaFIELD *target_field, const ProcessorGroup &group, const DECOptions &dec_opt, const InterpolationOptions &i_opt)
void keepTracksOfSourceIds (int procId, DataArrayInt *ids)
void keepTracksOfTargetIds (int procId, DataArrayInt *ids)
void addContribution (const MEDCouplingPointSet *src, const DataArrayInt *srcIds, const std::string &srcMeth, int srcProcId, const MEDCouplingPointSet *trg, const DataArrayInt *trgIds, const std::string &trgMeth, int trgProcId)
void prepare (const std::vector< std::vector< int > > &procsInInteraction)
void computeDeno ()
void multiply ()
void transposeMultiply ()
virtual ~OverlapInterpolationMatrix ()
bool isSurfaceComputationNeeded (const std::string &method) const
void fillDistributedMatrix (const std::vector< std::map< int, double > > &res, const DataArrayInt *srcIds, int srcProc, const DataArrayInt *trgIds, int trgProc)

Data Fields

ParaMEDMEM::ParaFIELD_source_field
ParaMEDMEM::ParaFIELD_target_field
std::vector< int_row_offsets
std::map< std::pair< int, int >
, int
_col_offsets
MEDCouplingPointSet_source_support
MEDCouplingPointSet_target_support
OverlapMapping _mapping
const ProcessorGroup_group
std::vector< std::vector
< double > > 
_target_volume
std::vector< std::vector
< std::pair< int, double > > > 
_coeffs
std::vector< std::vector
< double > > 
_deno_multiply
std::vector< std::vector
< double > > 
_deno_reverse_multiply

Constructor & Destructor Documentation

ParaMEDMEM.OverlapInterpolationMatrix.OverlapInterpolationMatrix ( ParaFIELD source_field,
ParaFIELD target_field,
const ProcessorGroup group,
const DECOptions dec_opt,
const InterpolationOptions &  i_opt 
)
ParaMEDMEM.OverlapInterpolationMatrix::~OverlapInterpolationMatrix (  )  [virtual]

Member Function Documentation

void ParaMEDMEM.OverlapInterpolationMatrix::keepTracksOfSourceIds ( int  procId,
DataArrayInt ids 
)
void ParaMEDMEM.OverlapInterpolationMatrix::keepTracksOfTargetIds ( int  procId,
DataArrayInt ids 
)
void ParaMEDMEM.OverlapInterpolationMatrix::addContribution ( const MEDCouplingPointSet src,
const DataArrayInt srcIds,
const std::string &  srcMeth,
int  srcProcId,
const MEDCouplingPointSet trg,
const DataArrayInt trgIds,
const std::string &  trgMeth,
int  trgProcId 
)
void ParaMEDMEM.OverlapInterpolationMatrix::prepare ( const std::vector< std::vector< int > > &  procsInInteraction  ) 

'procsInInteraction' gives the global view of interaction between procs. In 'procsInInteraction' for a proc with id i, is in interaction with procs listed in procsInInteraction[i]

References ParaMEDMEM.OverlapInterpolationMatrix._mapping, ParaMEDMEM.OverlapInterpolationMatrix._source_support, ParaMEDMEM.OverlapInterpolationMatrix._target_field, ParaMEDMEM.ParaFIELD.getField(), ParaMEDMEM.MEDCouplingField.getNumberOfTuplesExpected(), and ParaMEDMEM.OverlapMapping.prepare().

void ParaMEDMEM.OverlapInterpolationMatrix::computeDeno (  ) 
void ParaMEDMEM.OverlapInterpolationMatrix::multiply (  ) 
void ParaMEDMEM.OverlapInterpolationMatrix::transposeMultiply (  ) 
bool ParaMEDMEM.OverlapInterpolationMatrix::isSurfaceComputationNeeded ( const std::string &  method  )  const
void ParaMEDMEM.OverlapInterpolationMatrix::fillDistributedMatrix ( const std::vector< std::map< int, double > > &  res,
const DataArrayInt srcIds,
int  srcProc,
const DataArrayInt trgIds,
int  trgProc 
)

res rows refers to target and column (first param of map) to source.

References ParaMEDMEM.OverlapInterpolationMatrix._mapping, and ParaMEDMEM.OverlapMapping.addContributionST().


Field Documentation

std::vector<std::vector<std::pair<int,double> > > ParaMEDMEM.OverlapInterpolationMatrix._coeffs