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

📄 xglu.h

📁 基本矩阵运算 : + - *, power, transpose, trace, determinant, minor, matrix of minor, cofactor, matrix of co
💻 H
字号:
/* xglu.h                   freeware                   xhunga@tiscali.fr  */

/* --------------------------------- FUNCTION ------------------------------  */
/* Do    :                                                                    */
/*                                                                            */
/* -------------------------------------------------------------------------- */
void LU_mF(
PmF m,
PmF mL,
PmF mU
)
{
fraction pivot;
fraction underpivot;
     int rowpivot;
     int rowunder;
     int col;

    zero_mF(  mL);
   copy_mF(m,mU);

         col = 0;
for(rowpivot = 0; rowpivot<(mU->rows); rowpivot++)
{
  pivot.n = *(mU->pb+rowpivot *mU->cols+col+1);
  pivot.d = *(mU->pb+rowpivot *mU->cols+col  );
  if(pivot.d<0){pivot.n*= -1;pivot.d *= -1;}
  if(!pivot.n)
    {
     printf("\n Pivot error - A pivot is Zero");
     printf("\n Press return to continue");
     getchar();
     exit(1);
    }

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

    mulrow_mF(mU,rowpivot,pivot);
  frowmini_F(mU,rowpivot);

  for(rowunder = rowpivot+1; rowunder<mU->rows; rowunder++)
     {

*(mL->pb+rowunder *mL->cols+col  )= (*(mU->pb+rowunder *mU->cols+col ));
*(mL->pb+rowunder *mL->cols+col+1)=  *(mU->pb+rowunder *mU->cols+col+1);

                     underpivot.n =-(*(mU->pb+rowunder *mU->cols+col ));
                     underpivot.d =  *(mU->pb+rowunder *mU->cols+col+1);

        addrow_mF(mU,underpivot,rowpivot,rowunder);
      frowmini_F(mU,                    rowunder);
     }
  col++;
  col++;
}
}

⌨️ 快捷键说明

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