yglu.h

来自「[[ Complex Matrices : Language c]]」· C头文件 代码 · 共 57 行

H
57
字号
/* xcpivot.h                   freeware                   xhunga@tiscali.fr  */


/* --------------------------------- FUNCTION ------------------------------  */
/* Do    :                                                                    */
/*                                                                            */
/* -------------------------------------------------------------------------- */
void LU_mzF(
PmzF m,
PmzF mL,
PmzF mU
)
{
complexF pivot;
complexF underpivot;
     int rowpivot;
     int rowunder;
     int col;

     m0_mzF(  mL);
   copy_mzF(m,mU);


for( rowpivot=0, col=0; rowpivot<(mU->rows); rowpivot++, col=col+C4)
{
  pivot.r.n = *(mU->pb+rowpivot *mU->cols+col+0);
  pivot.r.d = *(mU->pb+rowpivot *mU->cols+col+1);
  pivot.i.n = *(mU->pb+rowpivot *mU->cols+col+2);
  pivot.i.d = *(mU->pb+rowpivot *mU->cols+col+3);

  pivot = inv_zF(pivot);

  *(mL->pb+rowpivot *mL->cols+col+0)=*(mU->pb+rowpivot *mU->cols+col+0);
  *(mL->pb+rowpivot *mL->cols+col+1)=*(mU->pb+rowpivot *mU->cols+col+1);
  *(mL->pb+rowpivot *mL->cols+col+2)=*(mU->pb+rowpivot *mU->cols+col+2);
  *(mL->pb+rowpivot *mL->cols+col+3)=*(mU->pb+rowpivot *mU->cols+col+3);

    mulrow_mzF(mU,rowpivot,pivot);

  for(rowunder = rowpivot+1; rowunder<mU->rows; rowunder++ )
     {
      *(mL->pb+rowunder *mL->cols+col+0)=  *(mU->pb+rowunder *mU->cols+col+0);
      *(mL->pb+rowunder *mL->cols+col+1)=  *(mU->pb+rowunder *mU->cols+col+1);
      *(mL->pb+rowunder *mL->cols+col+2)=  *(mU->pb+rowunder *mU->cols+col+2);
      *(mL->pb+rowunder *mL->cols+col+3)=  *(mU->pb+rowunder *mU->cols+col+3);

                         underpivot.r.n = -(*(mU->pb+rowunder *mU->cols+col+0));
                         underpivot.r.d =   *(mU->pb+rowunder *mU->cols+col+1);
                         underpivot.i.n = -(*(mU->pb+rowunder *mU->cols+col+2));
                         underpivot.i.d =   *(mU->pb+rowunder *mU->cols+col+3);

        addrow_mzF(mU,underpivot,rowpivot,rowunder);
     }
}
}

⌨️ 快捷键说明

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