MCPcopy Create free account
hub / github.com/NGSolve/ngsolve / MultTransAdd

Method MultTransAdd

parallel/parallel_matrices.cpp:580–597  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

578 }
579
580 void ParallelMatrix :: MultTransAdd (double s, const BaseVector & x, BaseVector & y) const
581 {
582 // const auto & xpar = dynamic_cast_ParallelBaseVector(x);
583 // auto & ypar = dynamic_cast_ParallelBaseVector(y);
584 // if (op & char(1))
585 if (ColType(op)==CUMULATED)
586 x.Distribute();
587 else
588 x.Cumulate();
589
590 //if (op & char(2))
591 if (RowType(op)==CUMULATED)
592 y.Distribute();
593 else
594 y.Cumulate();
595 // mat->MultTransAdd (s, *xpar.GetLocalVector(), *ypar.GetLocalVector());
596 mat->MultTransAdd (s, *x.GetLocalVector(), *y.GetLocalVector());
597 }
598
599 shared_ptr<BaseMatrix> ParallelMatrix :: CreateMatrix () const
600 {

Callers

nothing calls this directly

Calls 12

ColTypeFunction · 0.85
RowTypeFunction · 0.85
DistributeMethod · 0.80
CumulateMethod · 0.80
GetDistantProcsMethod · 0.80
GetExchangeDofsMethod · 0.80
FVDoubleMethod · 0.80
MultAddFunction · 0.50
RangeFunction · 0.50
MultTransAddMethod · 0.45
GetCommunicatorMethod · 0.45
SizeMethod · 0.45

Tested by

no test coverage detected