3 #ifndef DISTNMF_DISTMU_HPP_     4 #define DISTNMF_DISTMU_HPP_    15 template <
class INPUTMATTYPE>
    32     WHtH = (this->W * this->HtH) + 
EPSILON;
    35 #endif  // ifdef MPI_VERBOSE    36     this->W = (this->W % this->AHtij.t()) / WHtH;
    42                   << norm(this->HtH, 
"fro") << 
"::WHtH::" << norm(WHtH, 
"fro")
    43                   << 
"::AHtij::" << norm(this->AHtij, 
"fro")
    44                   << 
"::W::" << norm(this->W, 
"fro"));
    59     this->Wt = this->W.t();
    70     HWtW = this->H * this->WtW + 
EPSILON;
    71     this->H = (this->H % this->WtAij.t()) / HWtW;
    74 #endif  // ifdef MPI_VERBOSE    82                   << norm(this->WtW, 
"fro") << 
"::HWtW::" << norm(HWtW, 
"fro")
    83                   << 
"::WtAij::" << norm(this->WtAij, 
"fro")
    84                   << 
"::H::" << norm(this->H, 
"fro"));
    85     this->Ht = this->H.t();
    89   DistMU(
const INPUTMATTYPE& input, 
const MAT& leftlowrankfactor,
    92       : 
DistAUNMF<INPUTMATTYPE>(input, leftlowrankfactor, rightlowrankfactor,
    93                                 communicator, numkblks) {
    94     WHtH.zeros(this->
globalm() / this->m_mpicomm.size(), this->k);
    95     HWtW.zeros(this->
globaln() / this->m_mpicomm.size(), this->k);
    96     localWnorm.zeros(this->k);
    98     PRINTROOT(
"DistMU() constructor successful");
   104 #endif  // DISTNMF_DISTMU_HPP_ const int globaln() const
returns globaln 
 
DistMU(const INPUTMATTYPE &input, const MAT &leftlowrankfactor, const MAT &rightlowrankfactor, const MPICommunicator &communicator, const int numkblks)
 
const int globalm() const
returns globalm 
 
#define DISTPRINTINFO(MSG)
 
ncp_factors contains the factors of the ncp every ith factor is of size n_i * k number of factors is ...