Mathc complexes/Fichiers h : vfpm
Installer ce fichier dans votre répertoire de travail.
wpfm.h |
---|
/* ------------------------------------ */
/* Save as : wpfm.h */
/* ------------------------------------ */
double **fp_mZ(
double **A,
char FileName[],
char MatrixName[],
int Sr,
int Pr,
int Si,
int Pi,
int Cn
)
{
FILE * fp = fopen(FileName,"a");
int r;
int c;
int n_c;
int n_c_LAST;
int n_c_FIRST;
fprintf(fp,"%s",MatrixName);
n_c = R1;
while(n_c<A[C_SIZE][C0])
{
n_c+=Cn*C2;
n_c_FIRST = n_c-Cn*C2;
if(n_c<A[C_SIZE][C0])n_c_LAST = n_c;
else n_c_LAST = A[C_SIZE][C0];
for(r=R1; r<A[R_SIZE][C0]; r++)
{
fprintf(fp,"\n");
for (c=n_c_FIRST; c<n_c_LAST; c+=C2)
fprintf(fp,"%+*.*f%+*.*fi ",Sr,Pr,A[r][c],Si,Pi,A[r][c+C1]);
}
fprintf(fp,"\n");
}
fprintf(fp,"\n");
fclose(fp);
return(A);
}
/* ------------------------------------ */
double **fpE_mZ(
double **A,
char FileName[],
char MatrixName[],
int Sr,
int Pr,
int Si,
int Pi,
int Cn
)
{
FILE * fp = fopen(FileName,"a");
int r;
int c;
int n_c;
int n_c_LAST;
int n_c_FIRST;
fprintf(fp,"%s",MatrixName);
n_c = R1;
while(n_c<A[C_SIZE][C0])
{
n_c+=Cn*C2;
n_c_FIRST = n_c-Cn*C2;
if(n_c<A[C_SIZE][C0])n_c_LAST = n_c;
else n_c_LAST = A[C_SIZE][C0];
for(r=R1; r<A[R_SIZE][C0]; r++)
{
fprintf(fp,"\n");
for (c=n_c_FIRST; c<n_c_LAST; c+=C2)
fprintf(fp,"%+*.*e%+*.*ei ",Sr,Pr,A[r][c],Si,Pi,A[r][c+C1]);
}
fprintf(fp,"\n");
}
fprintf(fp,"\n");
fclose(fp);
return(A);
}
/* ------------------------------------ */
/* ------------------------------------ */
double **fP_mZ(
double **A,
char FileName[],
char MatrixName[],
int Sr,
int Pr,
int Si,
int Pi,
int Cn
)
{
FILE * fp = fopen(FileName,"a");
int r;
int c;
int n_c;
int n_c_LAST;
int n_c_FIRST;
fprintf(fp,"%s",MatrixName);
n_c = R1;
while(n_c<A[C_SIZE][C0])
{
n_c+=Cn*C2;
n_c_FIRST = n_c-Cn*C2;
if(n_c<A[C_SIZE][C0])n_c_LAST = n_c;
else n_c_LAST = A[C_SIZE][C0];
for(r=R1; r<A[R_SIZE][C0]; r++)
{
fprintf(fp,"\n");
for (c=n_c_FIRST; c<n_c_LAST; c+=C2)
fprintf(fp,"%+*.*f,%+*.*f, ",Sr,Pr,A[r][c],Si,Pi,A[r][c+C1]);
}
fprintf(fp,"\n");
}
fprintf(fp,"\n");
fclose(fp);
return(A);
}
/* ------------------------------------ */
double **fPE_mZ(
double **A,
char FileName[],
char MatrixName[],
int Sr,
int Pr,
int Si,
int Pi,
int Cn
)
{
FILE * fp = fopen(FileName,"a");
int r;
int c;
int n_c;
int n_c_LAST;
int n_c_FIRST;
fprintf(fp,"%s",MatrixName);
n_c = R1;
while(n_c<A[C_SIZE][C0])
{
n_c+=Cn*C2;
n_c_FIRST = n_c-Cn*C2;
if(n_c<A[C_SIZE][C0])n_c_LAST = n_c;
else n_c_LAST = A[C_SIZE][C0];
for(r=R1; r<A[R_SIZE][C0]; r++)
{
fprintf(fp,"\n");
for (c=n_c_FIRST; c<n_c_LAST; c+=C2)
fprintf(fp,"%+*.*e,%+*.*e, ",Sr,Pr,A[r][c],Si,Pi,A[r][c+C1]);
}
fprintf(fp,"\n");
}
fprintf(fp,"\n");
fclose(fp);
return(A);
}
/* ------------------------------------ */
/* ------------------------------------ */
Ces fonctions permettent d'imprimer une matrice dans un fichier.
On peut contrôler la taille des colonnes, le nombre de chiffres après la virgule, le nombre de colonnes par ligne.