/* gjid03.c freeware [[Email Removed]]
*/
/* --------------------------------- INCLUDES ------------------------------- */
#include "xa_hfile.h"
/* --------------------------------- MAIN ----------------------------------- */
main()
{
double pb[5][6*TWOCOL]=
{
5,1, 4,1, 1,1, 0,1, 5,1, 5,1,
2,1, 1,1, 7,1, 4,1, 0,1, 5,1,
3,1, 2,1, 6,1, 1,1, 1,1, 8,1,
2,1, 3,1, 2,1, 2,1, 2,1, 7,1,
7,1, 5,1, 0,1, 9,1, 1,1, 5,1,
};
matrix m={5,6*TWOCOL,&pb[0][0]};
double pbT3 [5][6*TWOCOL]; matrix mT3 ={5,6*TWOCOL,&pbT3 [0][0]};
double pbT4 [5][6*TWOCOL]; matrix mT4 ={5,6*TWOCOL,&pbT4 [0][0]};
double pbID [5][5*TWOCOL]; matrix mID ={5,5*TWOCOL,&pbID [0][0]};
/*-------------------------------- PROGRAM ---------------------------------- */
copymF(&m,&mT3);
copymF(&m,&mT4);
printf("\n");
printf(" The matrix mA \n");
printmF4(&m);
getchar();
printf(" Find mID (below the pivots) \n");
idF4(&mID,&m);
printmF4(&mID);
getchar();
printf(" mID * mA \n");
multmF(&mID,&mT3,&m);
printmF4(&m);
getchar();
copymF(&m,&mT3);
clrscrn();
printf(" Find mID (above the pivots) \n");
idF4a(&mID,&m);
printmF4(&mID);
getchar();
printf(" mID * mA \n");
multmF(&mID,&mT3,&m);
printmF4(&m);
getchar();
printf(" Verify with gaussjordanF(); \n");
copymF(&mT4,&m);
gaussjordanF(&m);
printmF4(&m);
printf("\n Press return to continue");
getchar();
return 0;
}