int main() { //char filename[100]="new_data.dat"; int i,j; float *FT; float *ThPh; float *G; float *Gt; float *A; float *F; float *t; float *b; float *L; float *Lu; float *J; float *M; FILE *am; float *datas1; float *theta; //char *datas=""; char *punto1="punto4Cos.dat"; F=malloc(sizeof(float)*1000); t=malloc(sizeof(float)*1000); theta=malloc(sizeof(float)*1000); Gt=malloc(sizeof(float)*1000*2); A=malloc(sizeof(float)*3*3); b=malloc(sizeof(float)*3); L=malloc(sizeof(float)*3*3); Lu=malloc(sizeof(float)*3*3); J=malloc(sizeof(float)*3); M=malloc(sizeof(float)*3); am=malloc(sizeof(char)*1000); G=malloc(sizeof(float)*2000); FT=ImportData("Efes.txt",1000,2); for(i=0;i<1000;i++) { t[i]=FT[2*i]; F[i]=FT[2*i+1]; } for(i=0;i<1000;i++) { for(j=0;j<2;j++) { if(j==0) { G[i*3+j]=2*cos(t[i]); } else if(j==1) { G[i*3+j]=1; } } } Gt=Transpose(G,1000,2); A=MatrixMultiplication(Gt,G,2,1000,1000,2); b=MatrixMultiplication(Gt,F,2,1000,1000,1); L=Cholesky(A,2); Lu=Transpose(L,2,2); J=SolverL(L,b,J,2); M=SolverU(Lu,J,M,2); printf("M\n"); for (i=0;i<2;i++) { printf("%f\n",M[i]); } am=fopen(punto1,"a"); if(!am) { printf("problem opening"); } for(i=0;i<2;i++) { fprintf(am,"%f\t",M[i]); } fprintf(am,"\n"); fclose(am); return 0; }
int main() { int size=6; int dim,i,j; int a[6][6], b[6][6], result[6][6]; printf("Please enter a dimension equal or less than 6: "); scanf("%5d",&dim); while(dim>6) { printf("Please reenter a dimension equal or less than 6: "); scanf("%5d",&dim); } //a printf("Please enter the values for matrix a:\n"); for (i=0;i<dim;i++) { for (j=0;j<dim;j++) { printf("[i] [j] (seperate by hitting enter) = "); scanf("%5d",&a[i][j]); } printf("\n"); } //b printf("Please enter the values for matrix b:\n"); for (i=0;i<dim;i++) { for (j=0;j<dim;j++) { printf("[i] [j] (seperate by hitting enter) = "); scanf("%5d",&b[i][j]); } printf("\n"); } //print a printf("Matrix a:\n"); printMatrix(a, dim); //print b printf("Matrix b:\n"); printMatrix(b, dim); //compute and print sum. printf("----------------------------------"); printf("\nAddition a + b:\n\n"); MatrixAddition(a,b,result,dim); printf("resulting matrix\n\n"); printMatrix(result, dim); //compute and print difference between a and b meaning a - b printf("----------------------------------"); printf("\nSubtraction a - b:\n\n"); MatrixSubtraction(a,b,result,dim); printf("resulting matrix\n\n"); printMatrix(result, dim); //compute and print difference between b and a meaning b - a printf("----------------------------------"); printf("\nSubtraction b - a:\n\n"); MatrixSubtraction(b,a,result,dim); printf("resulting matrix\n\n"); printMatrix(result, dim); // multiplication for a * b. printf("----------------------------------"); printf("\nMultiplication a * b:\n\n"); MatrixMultiplication(a,b,result,dim); printf("resulting matrix\n\n"); printMatrix(result,dim); // multiplication for b * a. printf("----------------------------------"); printf("\nMultiplication b * a:\n\n"); MatrixMultiplication(b,a,result,dim); printf("resulting matrix\n\n"); printMatrix(result,dim); // Transpose Matrix a. printf("----------------------------------"); printf("\nTransposing matrix a:"); MatrixTranspose(a,result,dim); printf("resulting matrix\n\n"); printMatrix(result,dim); // Transpose Matrix b. printf("----------------------------------"); printf("\nTransposing matrix b:"); MatrixTranspose(b,result,dim); printf("resulting matrix\n\n"); printMatrix(result,dim); return 0; }
int main(int argc, char **argv) { //char filename[100]="new_data.dat"; int i,j; float *YT; float *ThPh; float *G; float *Gt; float *A; float *Y; float *t; float *b; float *L; float *Lu; float *J; float *M; FILE *am; float *datas1; float *theta; char *datas="Theta_Phi.dat"; char *punto1="punto4.dat"; Y=malloc(sizeof(float)*38); t=malloc(sizeof(float)*38); theta=malloc(sizeof(float)*1000); Gt=malloc(sizeof(float)*38*2); A=malloc(sizeof(float)*3*3); b=malloc(sizeof(float)*3); L=malloc(sizeof(float)*3*3); Lu=malloc(sizeof(float)*3*3); J=malloc(sizeof(float)*3); M=malloc(sizeof(float)*3); am=malloc(sizeof(char)*1000); YT=ImportData("Efes.txt",39,2); datas1=ImportData(datas,1000,2); for(i=0;i<38;i++) { t[i]=YT[2*i]; Y[i]=YT[2*i+1]; } //printf("theta"); for(i=0;i<100;i++) { theta[i]=datas1[2*i]; // printf("%f \n",theta[i]); } for(i=0;i<38;i++) { for(j=0;j<3;j++) { if(j==0) { G[i*3+j]=1; } else if(j==1) { G[i*3+j]=t[i]; } else if(j==2) { G[i*3+j]=pow(t[i],2); } } } Gt=Transpose(G,38,3); A=MatrixMultiplication(Gt,G,3,38,38,3); b=MatrixMultiplication(Gt,Y,3,38,38,1); L=Cholesky(A,3); Lu=Transpose(L,3,3); J=SolverL(L,b,J,3); M=SolverU(Lu,J,M,3); printf("M\n"); for (i=0;i<3;i++) { printf("%f\n",M[i]); } am=fopen(punto1,"a"); if(!am) { printf("problem opening"); } for(i=0;i<3;i++) { fprintf(am,"%f\t",M[i]); } fprintf(am,"\n"); fclose(am); return 0; }