⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 ytinprdm.h

📁 [[ Complex Matrices : Language c]]
💻 H
字号:
/* .h                          free ware                   xhunga@tiscali.fr  */

/* --------------------------------- FUNCTION ------------------------------  */
/* Do    :                                                                    */
/*                                                                            */
/* -------------------------------------------------------------------------- */
complexF innerprod_Mnm_zF(
PmzF mU,
PmzF mV
)
{
complexF InnerProduct;

double pbTrpsU [MXR][MXC*C4];mzF mTrpsU ={MXR,MXC*C4,&pbTrpsU [0][0]};
double pbcnjV  [MXR][MXC*C4];mzF mcnjV  ={MXR,MXC*C4,&pbcnjV  [0][0]};

double pbTrpsU_cnjV[MXR][MXC*C4];mzF mTrpsU_cnjV ={MXR,MXC*C4,&pbTrpsU_cnjV[0][0]};

               mcnjV.rows = mV->rows;             mcnjV.cols = mV->cols;
              mTrpsU.rows = mU->cols/C4;         mTrpsU.cols = mU->rows*C4;
         mTrpsU_cnjV.rows = mTrpsU.rows;    mTrpsU_cnjV.cols = mV->cols;

                  cnj_mzF(mV,&mcnjV);
            transpose_mzF(mU,&mTrpsU);
                  mul_mzF(&mTrpsU,&mcnjV,&mTrpsU_cnjV);
  InnerProduct= trace_mzF(&mTrpsU_cnjV);

 return(InnerProduct);
}


/* --------------------------------- FUNCTION ------------------------------  */
/* Do    :                                                                    */
/*                                                                            */
/* -------------------------------------------------------------------------- */
complexF normP2_Mnm_zF(
PmzF mu
)
{
complexF NormP2;

         NormP2 = innerprod_Mnm_zF(mu,mu);

  return(NormP2);
}


/* --------------------------------- FUNCTION ------------------------------  */
/* Do    :                                                                    */
/*                                                                            */
/* -------------------------------------------------------------------------- */
complexF distanceP2_Mnm_zF(
PmzF mu,
PmzF mv
)
{
complexF DistanceP2;

double pbu_mns_v [MXR][MXC*C4];mzF mu_mns_v={MXR, MXC*C4,&pbu_mns_v[0][0]};

       mu_mns_v.rows = mu->rows;
       mu_mns_v.cols = mu->cols;

      sub_mzF(mu,mv,&mu_mns_v);

  DistanceP2 = normP2_Mnm_zF(&mu_mns_v);

  return(DistanceP2);
}

/* ------------------------------------- FUNCTION --------------------------  */
/* Do    :                                                                    */
/*                                                                            */
/* -------------------------------------------------------------------------- */
void projwn_Mnm_mzF(
PmzF mu,
PmzF mv,
PmzF mvn
)
{
complexF InnerProduv;
complexF               NormvP2;
complexF             InvNormvP2;
complexF InnerProduv_InvNormvP2;
/*-------------------------------- PROGRAM ---------------------------------- */
             InnerProduv = innerprod_Mnm_zF(mu,mv);
                 NormvP2 =    normP2_Mnm_zF(mv);
               InvNormvP2 =          inv_zF(NormvP2);
   InnerProduv_InvNormvP2 =          mul_zF(InnerProduv,InvNormvP2);
                                   Zmul_mzF(InnerProduv_InvNormvP2,mv,mvn);
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -