Moving qsort.c file from IJ_matrix_vector and parcsr_linear_solvers to

utilities directory
This commit is contained in:
lambda 1999-08-31 01:02:03 +00:00
parent de3a338fbd
commit 36123843f1
13 changed files with 47 additions and 182 deletions

View File

@ -178,6 +178,12 @@ int
hypre_GetIJMatrixParCSRMatrix( HYPRE_IJMatrix IJmatrix, Mat *reference )
#endif
#ifdef ISIS_AVAILABLE
/* IJMatrix_isis.c */
int
hypre_GetIJMatrixISISMatrix( HYPRE_IJMatrix IJmatrix, RowMatrix *reference )
#endif
/* #include "./internal_protos.h" */
#endif
@ -244,15 +250,6 @@ ent */
#endif
# define P(s) s
/* qsort.c */
void swap P((int *v , int i , int j ));
void swap2 P((int *v , double *w , int i , int j ));
void qsort0 P((int *v , int left , int right ));
void qsort1 P((int *v , double *w , int left , int right ));
#undef P
# define P(s) s
/* aux_parcsr_matrix.c */
hypre_AuxParCSRMatrix *hypre_CreateAuxParCSRMatrix P((int local_num_rows , int local_num_cols , int *sizes ));
int hypre_DestroyAuxParCSRMatrix P((hypre_AuxParCSRMatrix *matrix ));
@ -394,7 +391,6 @@ void hypre_F90_IFACE P((int hypre_setijmatrixlocalsize ));
void hypre_F90_IFACE P((int hypre_setijmatrixrowsizes ));
void hypre_F90_IFACE P((int hypre_setijmatrixdiagrowsizes ));
void hypre_F90_IFACE P((int hypre_setijmatrixoffdiagrowsize ));
void hypre_F90_IFACE P((int hypre_setijmatrixtotalsize ));
void hypre_F90_IFACE P((int hypre_queryijmatrixinsertionsem ));
void hypre_F90_IFACE P((int hypre_insertijmatrixblock ));
void hypre_F90_IFACE P((int hypre_addblocktoijmatrix ));
@ -408,7 +404,6 @@ void hypre_F90_IFACE P((int hypre_setijvectorlocalpartition ));
void hypre_F90_IFACE P((int hypre_initializeijvector ));
void hypre_F90_IFACE P((int hypre_distributeijvector ));
void hypre_F90_IFACE P((int hypre_setijvectorlocalstoragety ));
void hypre_F90_IFACE P((int hypre_setijvectorlocalsize ));
void hypre_F90_IFACE P((int hypre_zeroijveclocalcomps ));
void hypre_F90_IFACE P((int hypre_setijveclocalcomps ));
void hypre_F90_IFACE P((int hypre_setijveclocalcompsinblock ));

View File

@ -59,7 +59,6 @@ HEADERS =\
IJ_matrix.h
FILES =\
qsort.c\
aux_parcsr_matrix.c\
hypre_IJMatrix_parcsr.c\
hypre_IJVector_parcsr.c\

View File

@ -39,7 +39,6 @@ cat aux_parcsr_matrix.h >> $INTERNAL_HEADER
cat IJ_matrix.h >> $INTERNAL_HEADER
cat IJ_vector.h >> $INTERNAL_HEADER
../utilities/protos qsort.c >> $INTERNAL_HEADER
../utilities/protos aux_*.c >> $INTERNAL_HEADER
../utilities/protos hypre_IJ*.c >> $INTERNAL_HEADER
../utilities/protos IJ_*.c >> $INTERNAL_HEADER

View File

@ -178,6 +178,12 @@ int
hypre_GetIJMatrixParCSRMatrix( HYPRE_IJMatrix IJmatrix, Mat *reference )
#endif
#ifdef ISIS_AVAILABLE
/* IJMatrix_isis.c */
int
hypre_GetIJMatrixISISMatrix( HYPRE_IJMatrix IJmatrix, RowMatrix *reference )
#endif
/* #include "./internal_protos.h" */
#endif
@ -244,15 +250,6 @@ ent */
#endif
# define P(s) s
/* qsort.c */
void swap P((int *v , int i , int j ));
void swap2 P((int *v , double *w , int i , int j ));
void qsort0 P((int *v , int left , int right ));
void qsort1 P((int *v , double *w , int left , int right ));
#undef P
# define P(s) s
/* aux_parcsr_matrix.c */
hypre_AuxParCSRMatrix *hypre_CreateAuxParCSRMatrix P((int local_num_rows , int local_num_cols , int *sizes ));
int hypre_DestroyAuxParCSRMatrix P((hypre_AuxParCSRMatrix *matrix ));
@ -394,7 +391,6 @@ void hypre_F90_IFACE P((int hypre_setijmatrixlocalsize ));
void hypre_F90_IFACE P((int hypre_setijmatrixrowsizes ));
void hypre_F90_IFACE P((int hypre_setijmatrixdiagrowsizes ));
void hypre_F90_IFACE P((int hypre_setijmatrixoffdiagrowsize ));
void hypre_F90_IFACE P((int hypre_setijmatrixtotalsize ));
void hypre_F90_IFACE P((int hypre_queryijmatrixinsertionsem ));
void hypre_F90_IFACE P((int hypre_insertijmatrixblock ));
void hypre_F90_IFACE P((int hypre_addblocktoijmatrix ));
@ -408,7 +404,6 @@ void hypre_F90_IFACE P((int hypre_setijvectorlocalpartition ));
void hypre_F90_IFACE P((int hypre_initializeijvector ));
void hypre_F90_IFACE P((int hypre_distributeijvector ));
void hypre_F90_IFACE P((int hypre_setijvectorlocalstoragety ));
void hypre_F90_IFACE P((int hypre_setijvectorlocalsize ));
void hypre_F90_IFACE P((int hypre_zeroijveclocalcomps ));
void hypre_F90_IFACE P((int hypre_setijveclocalcomps ));
void hypre_F90_IFACE P((int hypre_setijveclocalcompsinblock ));

View File

@ -59,7 +59,6 @@ HEADERS =\
IJ_matrix.h
FILES =\
qsort.c\
aux_parcsr_matrix.c\
hypre_IJMatrix_parcsr.c\
hypre_IJVector_parcsr.c\

View File

@ -39,7 +39,6 @@ cat aux_parcsr_matrix.h >> $INTERNAL_HEADER
cat IJ_matrix.h >> $INTERNAL_HEADER
cat IJ_vector.h >> $INTERNAL_HEADER
../utilities/protos qsort.c >> $INTERNAL_HEADER
../utilities/protos aux_*.c >> $INTERNAL_HEADER
../utilities/protos hypre_IJ*.c >> $INTERNAL_HEADER
../utilities/protos IJ_*.c >> $INTERNAL_HEADER

View File

@ -1,78 +0,0 @@
/*--------------------------------------------------------------------------
*--------------------------------------------------------------------------*/
void swap( int *v,
int i,
int j )
{
int temp;
temp = v[i];
v[i] = v[j];
v[j] = temp;
}
/*--------------------------------------------------------------------------
*--------------------------------------------------------------------------*/
void swap2(int *v,
double *w,
int i,
int j )
{
int temp;
double temp2;
temp = v[i];
v[i] = v[j];
v[j] = temp;
temp2 = w[i];
w[i] = w[j];
w[j] = temp2;
}
/*--------------------------------------------------------------------------
*--------------------------------------------------------------------------*/
void qsort0( int *v,
int left,
int right )
{
int i, last;
if (left >= right)
return;
swap( v, left, (left+right)/2);
last = left;
for (i = left+1; i <= right; i++)
if (v[i] < v[left])
{
swap(v, ++last, i);
}
swap(v, left, last);
qsort0(v, left, last-1);
qsort0(v, last+1, right);
}
/*--------------------------------------------------------------------------
*--------------------------------------------------------------------------*/
void qsort1( int *v,
double *w,
int left,
int right )
{
int i, last;
if (left >= right)
return;
swap2( v, w, left, (left+right)/2);
last = left;
for (i = left+1; i <= right; i++)
if (v[i] < v[left])
{
swap2(v, w, ++last, i);
}
swap2(v, w, left, last);
qsort1(v, w, left, last-1);
qsort1(v, w, last+1, right);
}

View File

@ -378,39 +378,3 @@ map( int ix,
return global_index;
}
/*--------------------------------------------------------------------------
*--------------------------------------------------------------------------*/
void qsort0( int *v,
int left,
int right )
{
int i, last;
if (left >= right)
return;
swap( v, left, (left+right)/2);
last = left;
for (i = left+1; i <= right; i++)
if (v[i] < v[left])
{
swap(v, ++last, i);
}
swap(v, left, last);
qsort0(v, left, last-1);
qsort0(v, last+1, right);
}
/*--------------------------------------------------------------------------
*--------------------------------------------------------------------------*/
void swap( int *v,
int i,
int j )
{
int temp;
temp = v[i];
v[i] = v[j];
v[j] = temp;
}

View File

@ -93,7 +93,7 @@ void hypre_F90_IFACE P((int hypre_parcsrpilutsetdroptoleran ));
void hypre_F90_IFACE P((int hypre_parcsrpilutsetfacrowsize ));
/* F90_par_laplace.c */
void hypre_F90_IFACE P((int hypre_generatelaplacian ));
void hypre_F90_IFACE P((int generatelaplacian ));
/* HYPRE_parcsr_amg.c */
HYPRE_Solver HYPRE_ParAMGInitialize P((void ));
@ -185,6 +185,22 @@ int hypre_CGNRSetLogging P((void *cgnr_vdata , int logging ));
int hypre_CGNRGetNumIterations P((void *cgnr_vdata , int *num_iterations ));
int hypre_CGNRGetFinalRelativeResidualNorm P((void *cgnr_vdata , double *relative_residual_norm ));
/* driver.c */
int main P((int argc , char *argv []));
int BuildParFromFile P((int argc , char *argv [], int arg_index , HYPRE_ParCSRMatrix *A_ptr ));
int BuildParLaplacian P((int argc , char *argv [], int arg_index , HYPRE_ParCSRMatrix *A_ptr ));
int BuildParDifConv P((int argc , char *argv [], int arg_index , HYPRE_ParCSRMatrix *A_ptr ));
int BuildParFromOneFile P((int argc , char *argv [], int arg_index , HYPRE_ParCSRMatrix *A_ptr ));
int BuildRhsParFromOneFile P((int argc , char *argv [], int arg_index , HYPRE_ParCSRMatrix A , HYPRE_ParVector *b_ptr ));
int BuildParLaplacian9pt P((int argc , char *argv [], int arg_index , HYPRE_ParCSRMatrix *A_ptr ));
int BuildParLaplacian27pt P((int argc , char *argv [], int arg_index , HYPRE_ParCSRMatrix *A_ptr ));
/* driver_interp.c */
int main P((int argc , char *argv []));
/* driver_rap.c */
int main P((int argc , char *argv []));
/* gmres.c */
void *hypre_GMRESInitialize P((void ));
int hypre_GMRESFinalize P((void *gmres_vdata ));
@ -260,8 +276,6 @@ int hypre_ParAMGBuildInterp P((hypre_ParCSRMatrix *A , int *CF_marker , hypre_Pa
/* par_laplace.c */
hypre_ParCSRMatrix *GenerateLaplacian P((MPI_Comm comm , int nx , int ny , int nz , int P , int Q , int R , int p , int q , int r , double *value ));
int map P((int ix , int iy , int iz , int p , int q , int r , int P , int Q , int R , int *nx_part , int *ny_part , int *nz_part , int *global_part ));
void qsort0 P((int *v , int left , int right ));
void swap P((int *v , int i , int j ));
/* par_laplace_27pt.c */
hypre_ParCSRMatrix *GenerateLaplacian27pt P((MPI_Comm comm , int nx , int ny , int nz , int P , int Q , int R , int p , int q , int r , double *value ));

View File

@ -378,39 +378,3 @@ map( int ix,
return global_index;
}
/*--------------------------------------------------------------------------
*--------------------------------------------------------------------------*/
void qsort0( int *v,
int left,
int right )
{
int i, last;
if (left >= right)
return;
swap( v, left, (left+right)/2);
last = left;
for (i = left+1; i <= right; i++)
if (v[i] < v[left])
{
swap(v, ++last, i);
}
swap(v, left, last);
qsort0(v, left, last-1);
qsort0(v, last+1, right);
}
/*--------------------------------------------------------------------------
*--------------------------------------------------------------------------*/
void swap( int *v,
int i,
int j )
{
int temp;
temp = v[i];
v[i] = v[j];
v[j] = temp;
}

View File

@ -93,7 +93,7 @@ void hypre_F90_IFACE P((int hypre_parcsrpilutsetdroptoleran ));
void hypre_F90_IFACE P((int hypre_parcsrpilutsetfacrowsize ));
/* F90_par_laplace.c */
void hypre_F90_IFACE P((int hypre_generatelaplacian ));
void hypre_F90_IFACE P((int generatelaplacian ));
/* HYPRE_parcsr_amg.c */
HYPRE_Solver HYPRE_ParAMGInitialize P((void ));
@ -185,6 +185,22 @@ int hypre_CGNRSetLogging P((void *cgnr_vdata , int logging ));
int hypre_CGNRGetNumIterations P((void *cgnr_vdata , int *num_iterations ));
int hypre_CGNRGetFinalRelativeResidualNorm P((void *cgnr_vdata , double *relative_residual_norm ));
/* driver.c */
int main P((int argc , char *argv []));
int BuildParFromFile P((int argc , char *argv [], int arg_index , HYPRE_ParCSRMatrix *A_ptr ));
int BuildParLaplacian P((int argc , char *argv [], int arg_index , HYPRE_ParCSRMatrix *A_ptr ));
int BuildParDifConv P((int argc , char *argv [], int arg_index , HYPRE_ParCSRMatrix *A_ptr ));
int BuildParFromOneFile P((int argc , char *argv [], int arg_index , HYPRE_ParCSRMatrix *A_ptr ));
int BuildRhsParFromOneFile P((int argc , char *argv [], int arg_index , HYPRE_ParCSRMatrix A , HYPRE_ParVector *b_ptr ));
int BuildParLaplacian9pt P((int argc , char *argv [], int arg_index , HYPRE_ParCSRMatrix *A_ptr ));
int BuildParLaplacian27pt P((int argc , char *argv [], int arg_index , HYPRE_ParCSRMatrix *A_ptr ));
/* driver_interp.c */
int main P((int argc , char *argv []));
/* driver_rap.c */
int main P((int argc , char *argv []));
/* gmres.c */
void *hypre_GMRESInitialize P((void ));
int hypre_GMRESFinalize P((void *gmres_vdata ));
@ -260,8 +276,6 @@ int hypre_ParAMGBuildInterp P((hypre_ParCSRMatrix *A , int *CF_marker , hypre_Pa
/* par_laplace.c */
hypre_ParCSRMatrix *GenerateLaplacian P((MPI_Comm comm , int nx , int ny , int nz , int P , int Q , int R , int p , int q , int r , double *value ));
int map P((int ix , int iy , int iz , int p , int q , int r , int P , int Q , int R , int *nx_part , int *ny_part , int *nz_part , int *global_part ));
void qsort0 P((int *v , int left , int right ));
void swap P((int *v , int i , int j ));
/* par_laplace_27pt.c */
hypre_ParCSRMatrix *GenerateLaplacian27pt P((MPI_Comm comm , int nx , int ny , int nz , int P , int Q , int R , int p , int q , int r , double *value ));

View File

@ -73,6 +73,7 @@ UTILITIES_FILES =\
amg_linklist.c\
binsearch.c\
umalloc_local.c\
qsort.c\
random.c
UTILITIES_OBJS = ${UTILITIES_FILES:.c=.o}