Fixed a bug in the l1-GS smoother with OpenMP.
This commit is contained in:
parent
8531b1213c
commit
2469fbf2f4
@ -3270,7 +3270,7 @@ HYPRE_Int hypre_ParCSRComputeL1NormsThreads(hypre_ParCSRMatrix *A,
|
|||||||
}
|
}
|
||||||
|
|
||||||
#ifdef HYPRE_USING_OPENMP
|
#ifdef HYPRE_USING_OPENMP
|
||||||
#pragma omp parallel for private(i,ii,j,k,ns,ne,rest,size,diag) HYPRE_SMP_SCHEDULE
|
#pragma omp parallel for private(i,ii,j,k,ns,ne,rest,size,diag,cf_diag) HYPRE_SMP_SCHEDULE
|
||||||
#endif
|
#endif
|
||||||
for (k = 0; k < num_threads; k++)
|
for (k = 0; k < num_threads; k++)
|
||||||
{
|
{
|
||||||
@ -3350,7 +3350,7 @@ HYPRE_Int hypre_ParCSRComputeL1NormsThreads(hypre_ParCSRMatrix *A,
|
|||||||
{
|
{
|
||||||
ii = A_diag_J[j];
|
ii = A_diag_J[j];
|
||||||
if ((ii == i || ii < ns || ii >= ne) &&
|
if ((ii == i || ii < ns || ii >= ne) &&
|
||||||
(cf_diag == cf_marker_offd[A_offd_J[j]]))
|
(cf_diag == cf_marker[A_diag_J[j]]))
|
||||||
l1_norm[i] += fabs(A_diag_data[j]);
|
l1_norm[i] += fabs(A_diag_data[j]);
|
||||||
}
|
}
|
||||||
/* Add the CF l1 norm of the offd part of the ith row */
|
/* Add the CF l1 norm of the offd part of the ith row */
|
||||||
@ -3412,7 +3412,7 @@ HYPRE_Int hypre_ParCSRComputeL1NormsThreads(hypre_ParCSRMatrix *A,
|
|||||||
{
|
{
|
||||||
ii = A_diag_J[j];
|
ii = A_diag_J[j];
|
||||||
if ((ii == i || ii < ns || ii >= ne) &&
|
if ((ii == i || ii < ns || ii >= ne) &&
|
||||||
(cf_diag == cf_marker_offd[A_offd_J[j]]))
|
(cf_diag == cf_marker[A_diag_J[j]]))
|
||||||
{
|
{
|
||||||
if (ii == i)
|
if (ii == i)
|
||||||
{
|
{
|
||||||
|
|||||||
@ -513,7 +513,7 @@ hypre_BoomerAMGSetup( void *amg_vdata,
|
|||||||
* using threading */
|
* using threading */
|
||||||
for (j = 0; j < 4; j++)
|
for (j = 0; j < 4; j++)
|
||||||
{
|
{
|
||||||
if (grid_relax_type[j] ==3 || grid_relax_type[j] == 6)
|
if (grid_relax_type[j] == 3 || grid_relax_type[j] == 6 || grid_relax_type[j] == 8)
|
||||||
{
|
{
|
||||||
Ztemp = hypre_ParVectorCreate(hypre_ParCSRMatrixComm(A_array[0]),
|
Ztemp = hypre_ParVectorCreate(hypre_ParCSRMatrixComm(A_array[0]),
|
||||||
hypre_ParCSRMatrixGlobalNumRows(A_array[0]),
|
hypre_ParCSRMatrixGlobalNumRows(A_array[0]),
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user