| 1 | civl show -showProgram -userIncludePath=.:../AMG2013:../AMG2013/IJ_mv:../AMG2013/krylov:../AMG2013/parcsr_ls:../AMG2013/parcsr_mv:../AMG2013/seq_mv:../AMG2013/sstruct_mv:../AMG2013/struct_mv:../AMG2013/test:../AMG2013/utilities: -DHYPRE_SEQUENTIAL -DHYPRE_USING_OPENMP main.c ../AMG2013/parcsr_ls/par_relax_more.c hypre_memory.c
|
|---|
| 2 | CIVL v1.7.2+ of 2016-10-05 -- http://vsl.cis.udel.edu/civl
|
|---|
| 3 | Found independent OpenMP for Node[-1, 0, par_relax_more.c:634.1-0 "pragma omp parallel for private ... \n"]
|
|---|
| 4 | writeVars : []
|
|---|
| 5 | readVars : [Entity[kind=VARIABLE, name=mult, linkage=NONE, type=8, definition=-1]]
|
|---|
| 6 | writeArrays : [Node[-1, 25936, par_relax_more.c:639.12-20 "u_data[j]"]]
|
|---|
| 7 | readArrays : [Node[-1, 25940, par_relax_more.c:639.31-39 "r_data[j]"], Node[-1, 25944, par_relax_more.c:639.43-51 "v_data[j]"]]
|
|---|
| 8 | Checking Array Refs for:
|
|---|
| 9 | Node[-1, 25962, par_relax_more.c:649.9-14 "u_data"][Node[-1, 25963, par_relax_more.c:649.16 "i"]]
|
|---|
| 10 | Node[-1, 25968, par_relax_more.c:649.33-38 "u_data"][Node[-1, 25969, par_relax_more.c:649.40 "i"]]
|
|---|
| 11 | with bounding conditions:[Node[-1, 44715, par_relax_more.c:645.1-0 "pragma omp parallel for private ... \n"], Node[-1, 25959, par_relax_more.c:647.19-30 "i < num_rows"]]
|
|---|
| 12 | Found independent OpenMP for Node[-1, 0, par_relax_more.c:645.1-0 "pragma omp parallel for private ... \n"]
|
|---|
| 13 | writeVars : []
|
|---|
| 14 | readVars : []
|
|---|
| 15 | writeArrays : [Node[-1, 25964, par_relax_more.c:649.9-17 "u_data[i]"]]
|
|---|
| 16 | readArrays : [Node[-1, 25967, par_relax_more.c:649.21-29 "orig_u[i]"], Node[-1, 25970, par_relax_more.c:649.33-41 "u_data[i]"]]
|
|---|
| 17 | Checking Array Refs for:
|
|---|
| 18 | Node[-1, 26058, par_relax_more.c:683.9-15 "ds_data"][Node[-1, 26059, par_relax_more.c:683.17 "j"]]
|
|---|
| 19 | Node[-1, 26072, par_relax_more.c:685.21-27 "ds_data"][Node[-1, 26073, par_relax_more.c:685.29 "j"]]
|
|---|
| 20 | with bounding conditions:[Node[-1, 44719, par_relax_more.c:678.1-0 "pragma omp parallel for private ... \n"], Node[-1, 26047, par_relax_more.c:680.18-29 "j < num_rows"]]
|
|---|
| 21 | Found independent OpenMP for Node[-1, 0, par_relax_more.c:678.1-0 "pragma omp parallel for private ... \n"]
|
|---|
| 22 | writeVars : []
|
|---|
| 23 | readVars : [Entity[kind=FUNCTION, name=sqrt, linkage=EXTERNAL, type=201, definition=-1]]
|
|---|
| 24 | writeArrays : [Node[-1, 26071, par_relax_more.c:685.9-17 "r_data[j]"], Node[-1, 26060, par_relax_more.c:683.9-18 "ds_data[j]"]]
|
|---|
| 25 | readArrays : [Node[-1, 26077, par_relax_more.c:685.34-42 "f_data[j]"], Node[-1, 26055, par_relax_more.c:682.16-39 "A_diag_data[A_diag_i[j]]"], Node[-1, 26074, par_relax_more.c:685.21-30 "ds_data[j]"]]
|
|---|
| 26 | Found independent OpenMP for Node[-1, 0, par_relax_more.c:690.1-0 "pragma omp parallel for private ... \n"]
|
|---|
| 27 | writeVars : []
|
|---|
| 28 | readVars : []
|
|---|
| 29 | writeArrays : [Node[-1, 26104, par_relax_more.c:694.9-17 "r_data[j]"]]
|
|---|
| 30 | readArrays : [Node[-1, 26107, par_relax_more.c:694.22-31 "ds_data[j]"], Node[-1, 26110, par_relax_more.c:694.35-45 "tmp_data[j]"]]
|
|---|
| 31 | Checking Array Refs for:
|
|---|
| 32 | Node[-1, 26134, par_relax_more.c:707.9-14 "u_data"][Node[-1, 26135, par_relax_more.c:707.16 "j"]]
|
|---|
| 33 | Node[-1, 26129, par_relax_more.c:705.21-26 "u_data"][Node[-1, 26130, par_relax_more.c:705.28 "j"]]
|
|---|
| 34 | with bounding conditions:[Node[-1, 44727, par_relax_more.c:701.1-0 "pragma omp parallel for private ... \n"], Node[-1, 26123, par_relax_more.c:703.19-30 "j < num_rows"]]
|
|---|
| 35 | Found independent OpenMP for Node[-1, 0, par_relax_more.c:701.1-0 "pragma omp parallel for private ... \n"]
|
|---|
| 36 | writeVars : []
|
|---|
| 37 | readVars : []
|
|---|
| 38 | writeArrays : [Node[-1, 26128, par_relax_more.c:705.9-17 "orig_u[j]"], Node[-1, 26136, par_relax_more.c:707.9-17 "u_data[j]"]]
|
|---|
| 39 | readArrays : [Node[-1, 26139, par_relax_more.c:707.21-29 "r_data[j]"], Node[-1, 26131, par_relax_more.c:705.21-29 "u_data[j]"], Node[-1, 26142, par_relax_more.c:707.33-50 "coefs[cheby_order]"]]
|
|---|
| 40 | Found independent OpenMP for Node[-1, 0, par_relax_more.c:715.1-0 "pragma omp parallel for private ... \n"]
|
|---|
| 41 | writeVars : []
|
|---|
| 42 | readVars : []
|
|---|
| 43 | writeArrays : [Node[-1, 26168, par_relax_more.c:719.12-22 "tmp_data[j]"]]
|
|---|
| 44 | readArrays : [Node[-1, 26171, par_relax_more.c:719.28-37 "ds_data[j]"], Node[-1, 26174, par_relax_more.c:719.41-49 "u_data[j]"]]
|
|---|
| 45 | Found independent OpenMP for Node[-1, 0, par_relax_more.c:727.1-0 "pragma omp parallel for private ... \n"]
|
|---|
| 46 | writeVars : []
|
|---|
| 47 | readVars : [Entity[kind=VARIABLE, name=mult, linkage=NONE, type=8, definition=-1]]
|
|---|
| 48 | writeArrays : [Node[-1, 26217, par_relax_more.c:732.12-20 "u_data[j]"]]
|
|---|
| 49 | readArrays : [Node[-1, 26211, par_relax_more.c:731.32-40 "v_data[j]"], Node[-1, 26208, par_relax_more.c:731.20-29 "ds_data[j]"], Node[-1, 26221, par_relax_more.c:732.31-39 "r_data[j]"]]
|
|---|
| 50 | Checking Array Refs for:
|
|---|
| 51 | Node[-1, 26241, par_relax_more.c:746.9-14 "u_data"][Node[-1, 26242, par_relax_more.c:746.16 "j"]]
|
|---|
| 52 | Node[-1, 26250, par_relax_more.c:746.44-49 "u_data"][Node[-1, 26251, par_relax_more.c:746.51 "j"]]
|
|---|
| 53 | with bounding conditions:[Node[-1, 44739, par_relax_more.c:742.1-0 "pragma omp parallel for private ... \n"], Node[-1, 26238, par_relax_more.c:744.19-30 "j < num_rows"]]
|
|---|
| 54 | Found independent OpenMP for Node[-1, 0, par_relax_more.c:742.1-0 "pragma omp parallel for private ... \n"]
|
|---|
| 55 | writeVars : []
|
|---|
| 56 | readVars : []
|
|---|
| 57 | writeArrays : [Node[-1, 26243, par_relax_more.c:746.9-17 "u_data[j]"]]
|
|---|
| 58 | readArrays : [Node[-1, 26249, par_relax_more.c:746.33-42 "ds_data[j]"], Node[-1, 26246, par_relax_more.c:746.21-29 "orig_u[j]"], Node[-1, 26252, par_relax_more.c:746.44-52 "u_data[j]"]]
|
|---|
| 59 | Checking Array Refs for:
|
|---|
| 60 | Node[-1, 24824, par_relax_more.c:260.13-18 "p_data"][Node[-1, 24825, par_relax_more.c:260.20 "j"]]
|
|---|
| 61 | Node[-1, 24831, par_relax_more.c:260.42-47 "p_data"][Node[-1, 24832, par_relax_more.c:260.49 "j"]]
|
|---|
| 62 | with bounding conditions:[Node[-1, 44743, par_relax_more.c:256.1-0 "pragma omp parallel for private ... \n"], Node[-1, 24821, par_relax_more.c:258.20-33 "j < local_size"]]
|
|---|
| 63 | Found independent OpenMP for Node[-1, 0, par_relax_more.c:256.1-0 "pragma omp parallel for private ... \n"]
|
|---|
| 64 | writeVars : []
|
|---|
| 65 | readVars : [Entity[kind=VARIABLE, name=beta, linkage=NONE, type=8, definition=-1]]
|
|---|
| 66 | writeArrays : [Node[-1, 24826, par_relax_more.c:260.13-21 "p_data[j]"]]
|
|---|
| 67 | readArrays : [Node[-1, 24833, par_relax_more.c:260.42-50 "p_data[j]"], Node[-1, 24829, par_relax_more.c:260.25-33 "s_data[j]"]]
|
|---|
| 68 | Found independent OpenMP for Node[-1, 0, hypre_smp_forloop.h:21.1-22.0 "pragma omp parallel for private ... \n" included from par_relax_more.c:1980]
|
|---|
| 69 | writeVars : []
|
|---|
| 70 | readVars : []
|
|---|
| 71 | writeArrays : [Node[-1, 29577, par_relax_more.c:1982.7-17 "tmp_data[i]"]]
|
|---|
| 72 | readArrays : [Node[-1, 29580, par_relax_more.c:1982.21-29 "u_data[i]"]]
|
|---|
| 73 | Found independent OpenMP for Node[-1, 0, hypre_smp_forloop.h:21.1-22.0 "pragma omp parallel for private ... \n" included from par_relax_more.c:1984]
|
|---|
| 74 | writeVars : []
|
|---|
| 75 | readVars : [Entity[kind=VARIABLE, name=zero, linkage=NONE, type=8, definition=-1], Entity[kind=VARIABLE, name=n, linkage=NONE, type=0, definition=-1], Entity[kind=VARIABLE, name=num_threads, linkage=NONE, type=0, definition=-1]]
|
|---|
| 76 | writeArrays : [Node[-1, 29761, par_relax_more.c:2024.15-23 "u_data[i]"], Node[-1, 29879, par_relax_more.c:2052.15-23 "u_data[i]"]]
|
|---|
| 77 | readArrays : [Node[-1, 29765, par_relax_more.c:2024.34-44 "l1_norms[i]"], Node[-1, 29862, par_relax_more.c:2049.23-34 "A_offd_j[jj]"], Node[-1, 29793, par_relax_more.c:2036.21-29 "f_data[i]"], Node[-1, 29799, par_relax_more.c:2037.25-35 "A_diag_i[i]"], Node[-1, 29855, par_relax_more.c:2047.43-55 "A_offd_i[i+1]"], Node[-1, 29737, par_relax_more.c:2019.43-55 "A_offd_i[i+1]"], Node[-1, 29681, par_relax_more.c:2009.25-35 "A_diag_i[i]"], Node[-1, 29812, par_relax_more.c:2039.23-34 "A_diag_j[jj]"], Node[-1, 29787, par_relax_more.c:2034.17-40 "A_diag_data[A_diag_i[i]]"], Node[-1, 29849, par_relax_more.c:2047.25-35 "A_offd_i[i]"], Node[-1, 29669, par_relax_more.c:2006.17-40 "A_diag_data[A_diag_i[i]]"], Node[-1, 29744, par_relax_more.c:2021.23-34 "A_offd_j[jj]"], Node[-1, 29805, par_relax_more.c:2037.43-55 "A_diag_i[i+1]"], Node[-1, 29731, par_relax_more.c:2019.25-35 "A_offd_i[i]"], Node[-1, 29883, par_relax_more.c:2052.34-44 "l1_norms[i]"], Node[-1, 29694, par_relax_more.c:2011.23-34 "A_diag_j[jj]"], Node[-1, 29687, par_relax_more.c:2009.43-55 "A_diag_i[i+1]"], Node[-1, 29675, par_relax_more.c:2008.21-29 "f_data[i]"]]
|
|---|
| 78 | Found independent OpenMP for Node[-1, 0, hypre_smp_forloop.h:21.1-22.0 "pragma omp parallel for private ... \n" included from par_relax_more.c:2064]
|
|---|
| 79 | writeVars : []
|
|---|
| 80 | readVars : []
|
|---|
| 81 | writeArrays : [Node[-1, 29919, par_relax_more.c:2067.2-12 "tmp_data[i]"]]
|
|---|
| 82 | readArrays : [Node[-1, 29922, par_relax_more.c:2067.16-24 "u_data[i]"]]
|
|---|
| 83 | Checking Array Refs for:
|
|---|
| 84 | Node[-1, 30276, par_relax_more.c:2145.15-20 "u_data"][Node[-1, 30277, par_relax_more.c:2145.22 "i"]]
|
|---|
| 85 | Node[-1, 30078, par_relax_more.c:2104.68-73 "u_data"][Node[-1, 30079, par_relax_more.c:2104.75-76 "ii"]]
|
|---|
| 86 | with bounding conditions:[Node[-1, 44759, hypre_smp_forloop.h:21.1-22.0 "pragma omp parallel for private ... \n" included from par_relax_more.c:2070], Node[-1, 29942, par_relax_more.c:2071.18-32 "j < num_threads"]]
|
|---|
| 87 | Found dependent OpenMP for Node[-1, 0, hypre_smp_forloop.h:21.1-22.0 "pragma omp parallel for private ... \n" included from par_relax_more.c:2070]
|
|---|
| 88 | writeVars : [Entity[kind=VARIABLE, name=res2, linkage=NONE, type=8, definition=-1]]
|
|---|
| 89 | readVars : [Entity[kind=VARIABLE, name=res2, linkage=NONE, type=8, definition=-1], Entity[kind=VARIABLE, name=zero, linkage=NONE, type=8, definition=-1], Entity[kind=VARIABLE, name=c2, linkage=NONE, type=8, definition=-1], Entity[kind=VARIABLE, name=n, linkage=NONE, type=0, definition=-1], Entity[kind=VARIABLE, name=num_threads, linkage=NONE, type=0, definition=-1], Entity[kind=VARIABLE, name=c1, linkage=NONE, type=8, definition=-1]]
|
|---|
| 90 | writeArrays : [Node[-1, 30278, par_relax_more.c:2145.15-23 "u_data[i]"], Node[-1, 30026, par_relax_more.c:2096.15-27 "Vtemp_data[i]"], Node[-1, 30133, par_relax_more.c:2114.15-23 "u_data[i]"]]
|
|---|
| 91 | readArrays : [Node[-1, 30080, par_relax_more.c:2104.68-77 "u_data[ii]"], Node[-1, 30174, par_relax_more.c:2127.21-29 "f_data[i]"], Node[-1, 30035, par_relax_more.c:2097.25-35 "A_diag_i[i]"], Node[-1, 30048, par_relax_more.c:2099.23-34 "A_diag_j[jj]"], Node[-1, 30103, par_relax_more.c:2109.25-35 "A_offd_i[i]"], Node[-1, 30029, par_relax_more.c:2096.31-39 "u_data[i]"], Node[-1, 30225, par_relax_more.c:2135.68-77 "u_data[ii]"], Node[-1, 30261, par_relax_more.c:2142.23-34 "A_offd_j[jj]"], Node[-1, 30077, par_relax_more.c:2104.51-64 "Vtemp_data[ii]"], Node[-1, 30254, par_relax_more.c:2140.43-55 "A_offd_i[i+1]"], Node[-1, 30041, par_relax_more.c:2097.43-55 "A_diag_i[i+1]"], Node[-1, 30021, par_relax_more.c:2095.21-29 "f_data[i]"], Node[-1, 30074, par_relax_more.c:2104.32-46 "A_diag_data[jj]"], Node[-1, 30012, par_relax_more.c:2092.17-40 "A_diag_data[A_diag_i[i]]"], Node[-1, 30116, par_relax_more.c:2111.23-34 "A_offd_j[jj]"], Node[-1, 30186, par_relax_more.c:2128.43-55 "A_diag_i[i+1]"], Node[-1, 30219, par_relax_more.c:2135.32-46 "A_diag_data[jj]"], Node[-1, 30222, par_relax_more.c:2135.51-64 "Vtemp_data[ii]"], Node[-1, 30165, par_relax_more.c:2124.17-40 "A_diag_data[A_diag_i[i]]"], Node[-1, 30193, par_relax_more.c:2130.23-34 "A_diag_j[jj]"], Node[-1, 30288, par_relax_more.c:2145.49-59 "l1_norms[i]"], Node[-1, 30180, par_relax_more.c:2128.25-35 "A_diag_i[i]"], Node[-1, 30143, par_relax_more.c:2114.49-59 "l1_norms[i]"], Node[-1, 30109, par_relax_more.c:2109.43-55 "A_offd_i[i+1]"], Node[-1, 30248, par_relax_more.c:2140.25-35 "A_offd_i[i]"]]
|
|---|
| 92 | Found independent OpenMP for Node[-1, 0, hypre_smp_forloop.h:21.1-22.0 "pragma omp parallel for private ... \n" included from par_relax_more.c:2478]
|
|---|
| 93 | writeVars : []
|
|---|
| 94 | readVars : []
|
|---|
| 95 | writeArrays : [Node[-1, 31372, par_relax_more.c:2481.7-19 "Vtemp_data[i]"]]
|
|---|
| 96 | readArrays : [Node[-1, 31375, par_relax_more.c:2481.23-31 "u_data[i]"]]
|
|---|
| 97 | Found independent OpenMP for Node[-1, 0, hypre_smp_forloop.h:21.1-22.0 "pragma omp parallel for private ... \n" included from par_relax_more.c:2497]
|
|---|
| 98 | writeVars : []
|
|---|
| 99 | readVars : [Entity[kind=VARIABLE, name=zero, linkage=NONE, type=8, definition=-1], Entity[kind=VARIABLE, name=relax_weight, linkage=NONE, type=8, definition=-1]]
|
|---|
| 100 | writeArrays : [Node[-1, 31492, par_relax_more.c:2517.13-21 "u_data[i]"]]
|
|---|
| 101 | readArrays : [Node[-1, 31431, par_relax_more.c:2507.23-33 "A_diag_i[i]"], Node[-1, 31475, par_relax_more.c:2514.21-32 "A_offd_j[jj]"], Node[-1, 31462, par_relax_more.c:2512.23-33 "A_offd_i[i]"], Node[-1, 31437, par_relax_more.c:2507.41-53 "A_diag_i[i+1]"], Node[-1, 31425, par_relax_more.c:2506.19-27 "f_data[i]"], Node[-1, 31419, par_relax_more.c:2504.14-37 "A_diag_data[A_diag_i[i]]"], Node[-1, 31444, par_relax_more.c:2509.21-32 "A_diag_j[jj]"], Node[-1, 31498, par_relax_more.c:2517.45-55 "l1_norms[i]"], Node[-1, 31468, par_relax_more.c:2512.41-53 "A_offd_i[i+1]"]]
|
|---|
| 102 | Found independent OpenMP for Node[-1, 0, hypre_smp_forloop.h:21.1-22.0 "pragma omp parallel for private ... \n" included from par_relax_more.c:2528]
|
|---|
| 103 | writeVars : []
|
|---|
| 104 | readVars : [Entity[kind=VARIABLE, name=zero, linkage=NONE, type=8, definition=-1], Entity[kind=VARIABLE, name=relax_points, linkage=NONE, type=0, definition=-1], Entity[kind=VARIABLE, name=relax_weight, linkage=NONE, type=8, definition=-1]]
|
|---|
| 105 | writeArrays : [Node[-1, 31603, par_relax_more.c:2551.13-21 "u_data[i]"]]
|
|---|
| 106 | readArrays : [Node[-1, 31536, par_relax_more.c:2540.19-27 "f_data[i]"], Node[-1, 31555, par_relax_more.c:2543.21-32 "A_diag_j[jj]"], Node[-1, 31542, par_relax_more.c:2541.23-33 "A_diag_i[i]"], Node[-1, 31579, par_relax_more.c:2546.41-53 "A_offd_i[i+1]"], Node[-1, 31586, par_relax_more.c:2548.21-32 "A_offd_j[jj]"], Node[-1, 31529, par_relax_more.c:2538.17-40 "A_diag_data[A_diag_i[i]]"], Node[-1, 31609, par_relax_more.c:2551.47-57 "l1_norms[i]"], Node[-1, 31548, par_relax_more.c:2541.41-53 "A_diag_i[i+1]"], Node[-1, 31522, par_relax_more.c:2537.14-25 "cf_marker[i]"], Node[-1, 31573, par_relax_more.c:2546.23-33 "A_offd_i[i]"]]
|
|---|
| 107 | Checking Array Refs for:
|
|---|
| 108 | Node[-1, 25187, par_relax_more.c:410.6-7 "dk"][Node[-1, 25188, par_relax_more.c:410.9 "i"]]
|
|---|
| 109 | Node[-1, 25200, par_relax_more.c:411.19-20 "dk"][Node[-1, 25201, par_relax_more.c:411.22 "i"]]
|
|---|
| 110 | with bounding conditions:[Node[-1, 44773, par_relax_more.c:403.1-0 "pragma omp parallel for private ... \n"], Node[-1, 25170, par_relax_more.c:405.15-26 "i < num_rows"]]
|
|---|
| 111 | Found independent OpenMP for Node[-1, 0, par_relax_more.c:403.1-0 "pragma omp parallel for private ... \n"]
|
|---|
| 112 | writeVars : []
|
|---|
| 113 | readVars : [Entity[kind=VARIABLE, name=temp1, linkage=NONE, type=8, definition=-1]]
|
|---|
| 114 | writeArrays : [Node[-1, 25189, par_relax_more.c:410.6-10 "dk[i]"], Node[-1, 25199, par_relax_more.c:411.6-14 "u_data[i]"]]
|
|---|
| 115 | readArrays : [Node[-1, 25178, par_relax_more.c:407.13-36 "A_diag_data[A_diag_i[i]]"], Node[-1, 25202, par_relax_more.c:411.19-23 "dk[i]"], Node[-1, 25193, par_relax_more.c:410.20-28 "v_data[i]"]]
|
|---|
| 116 | Checking Array Refs for:
|
|---|
| 117 | Node[-1, 25277, par_relax_more.c:433.9-10 "dk"][Node[-1, 25278, par_relax_more.c:433.12 "i"]]
|
|---|
| 118 | Node[-1, 25281, par_relax_more.c:433.23-24 "dk"][Node[-1, 25282, par_relax_more.c:433.26 "i"]]
|
|---|
| 119 | with bounding conditions:[Node[-1, 44777, par_relax_more.c:426.1-0 "pragma omp parallel for private ... \n"], Node[-1, 25260, par_relax_more.c:428.18-29 "i < num_rows"]]
|
|---|
| 120 | Checking Array Refs for:
|
|---|
| 121 | Node[-1, 25277, par_relax_more.c:433.9-10 "dk"][Node[-1, 25278, par_relax_more.c:433.12 "i"]]
|
|---|
| 122 | Node[-1, 25296, par_relax_more.c:434.22-23 "dk"][Node[-1, 25297, par_relax_more.c:434.25 "i"]]
|
|---|
| 123 | with bounding conditions:[Node[-1, 44777, par_relax_more.c:426.1-0 "pragma omp parallel for private ... \n"], Node[-1, 25260, par_relax_more.c:428.18-29 "i < num_rows"]]
|
|---|
| 124 | Found independent OpenMP for Node[-1, 0, par_relax_more.c:426.1-0 "pragma omp parallel for private ... \n"]
|
|---|
| 125 | writeVars : []
|
|---|
| 126 | readVars : [Entity[kind=VARIABLE, name=temp2, linkage=NONE, type=8, definition=-1], Entity[kind=VARIABLE, name=temp1, linkage=NONE, type=8, definition=-1]]
|
|---|
| 127 | writeArrays : [Node[-1, 25295, par_relax_more.c:434.9-17 "u_data[i]"], Node[-1, 25279, par_relax_more.c:433.9-13 "dk[i]"]]
|
|---|
| 128 | readArrays : [Node[-1, 25268, par_relax_more.c:430.16-39 "A_diag_data[A_diag_i[i]]"], Node[-1, 25283, par_relax_more.c:433.23-27 "dk[i]"], Node[-1, 25288, par_relax_more.c:433.37-45 "v_data[i]"], Node[-1, 25298, par_relax_more.c:434.22-26 "dk[i]"]]
|
|---|
| 129 | Checking Array Refs for:
|
|---|
| 130 | Node[-1, 29218, par_relax_more.c:1854.12-18 "l1_norm"][Node[-1, 29219, par_relax_more.c:1854.20 "i"]]
|
|---|
| 131 | Node[-1, 29183, par_relax_more.c:1846.16-22 "l1_norm"][Node[-1, 29184, par_relax_more.c:1846.24 "i"]]
|
|---|
| 132 | with bounding conditions:[Node[-1, 44781, hypre_smp_forloop.h:21.1-22.0 "pragma omp parallel for private ... \n" included from par_relax_more.c:1685], Node[-1, 28449, par_relax_more.c:1686.18-32 "k < num_threads"]]
|
|---|
| 133 | Checking Array Refs for:
|
|---|
| 134 | Node[-1, 29218, par_relax_more.c:1854.12-18 "l1_norm"][Node[-1, 29219, par_relax_more.c:1854.20 "i"]]
|
|---|
| 135 | Node[-1, 29238, par_relax_more.c:1857.18-24 "l1_norm"][Node[-1, 29239, par_relax_more.c:1857.26 "i"]]
|
|---|
| 136 | with bounding conditions:[Node[-1, 44781, hypre_smp_forloop.h:21.1-22.0 "pragma omp parallel for private ... \n" included from par_relax_more.c:1685], Node[-1, 28449, par_relax_more.c:1686.18-32 "k < num_threads"]]
|
|---|
| 137 | Checking Array Refs for:
|
|---|
| 138 | Node[-1, 29218, par_relax_more.c:1854.12-18 "l1_norm"][Node[-1, 29219, par_relax_more.c:1854.20 "i"]]
|
|---|
| 139 | Node[-1, 29221, par_relax_more.c:1854.26-32 "l1_norm"][Node[-1, 29222, par_relax_more.c:1854.34 "i"]]
|
|---|
| 140 | with bounding conditions:[Node[-1, 44781, hypre_smp_forloop.h:21.1-22.0 "pragma omp parallel for private ... \n" included from par_relax_more.c:1685], Node[-1, 28449, par_relax_more.c:1686.18-32 "k < num_threads"]]
|
|---|
| 141 | Checking Array Refs for:
|
|---|
| 142 | Node[-1, 28517, par_relax_more.c:1704.12-18 "l1_norm"][Node[-1, 28518, par_relax_more.c:1704.20 "i"]]
|
|---|
| 143 | Node[-1, 29183, par_relax_more.c:1846.16-22 "l1_norm"][Node[-1, 29184, par_relax_more.c:1846.24 "i"]]
|
|---|
| 144 | with bounding conditions:[Node[-1, 44781, hypre_smp_forloop.h:21.1-22.0 "pragma omp parallel for private ... \n" included from par_relax_more.c:1685], Node[-1, 28449, par_relax_more.c:1686.18-32 "k < num_threads"]]
|
|---|
| 145 | Checking Array Refs for:
|
|---|
| 146 | Node[-1, 28517, par_relax_more.c:1704.12-18 "l1_norm"][Node[-1, 28518, par_relax_more.c:1704.20 "i"]]
|
|---|
| 147 | Node[-1, 29238, par_relax_more.c:1857.18-24 "l1_norm"][Node[-1, 29239, par_relax_more.c:1857.26 "i"]]
|
|---|
| 148 | with bounding conditions:[Node[-1, 44781, hypre_smp_forloop.h:21.1-22.0 "pragma omp parallel for private ... \n" included from par_relax_more.c:1685], Node[-1, 28449, par_relax_more.c:1686.18-32 "k < num_threads"]]
|
|---|
| 149 | Checking Array Refs for:
|
|---|
| 150 | Node[-1, 28517, par_relax_more.c:1704.12-18 "l1_norm"][Node[-1, 28518, par_relax_more.c:1704.20 "i"]]
|
|---|
| 151 | Node[-1, 29221, par_relax_more.c:1854.26-32 "l1_norm"][Node[-1, 29222, par_relax_more.c:1854.34 "i"]]
|
|---|
| 152 | with bounding conditions:[Node[-1, 44781, hypre_smp_forloop.h:21.1-22.0 "pragma omp parallel for private ... \n" included from par_relax_more.c:1685], Node[-1, 28449, par_relax_more.c:1686.18-32 "k < num_threads"]]
|
|---|
| 153 | Checking Array Refs for:
|
|---|
| 154 | Node[-1, 28869, par_relax_more.c:1780.12-18 "l1_norm"][Node[-1, 28870, par_relax_more.c:1780.20 "i"]]
|
|---|
| 155 | Node[-1, 29183, par_relax_more.c:1846.16-22 "l1_norm"][Node[-1, 29184, par_relax_more.c:1846.24 "i"]]
|
|---|
| 156 | with bounding conditions:[Node[-1, 44781, hypre_smp_forloop.h:21.1-22.0 "pragma omp parallel for private ... \n" included from par_relax_more.c:1685], Node[-1, 28449, par_relax_more.c:1686.18-32 "k < num_threads"]]
|
|---|
| 157 | Checking Array Refs for:
|
|---|
| 158 | Node[-1, 28869, par_relax_more.c:1780.12-18 "l1_norm"][Node[-1, 28870, par_relax_more.c:1780.20 "i"]]
|
|---|
| 159 | Node[-1, 29238, par_relax_more.c:1857.18-24 "l1_norm"][Node[-1, 29239, par_relax_more.c:1857.26 "i"]]
|
|---|
| 160 | with bounding conditions:[Node[-1, 44781, hypre_smp_forloop.h:21.1-22.0 "pragma omp parallel for private ... \n" included from par_relax_more.c:1685], Node[-1, 28449, par_relax_more.c:1686.18-32 "k < num_threads"]]
|
|---|
| 161 | Checking Array Refs for:
|
|---|
| 162 | Node[-1, 28869, par_relax_more.c:1780.12-18 "l1_norm"][Node[-1, 28870, par_relax_more.c:1780.20 "i"]]
|
|---|
| 163 | Node[-1, 29221, par_relax_more.c:1854.26-32 "l1_norm"][Node[-1, 29222, par_relax_more.c:1854.34 "i"]]
|
|---|
| 164 | with bounding conditions:[Node[-1, 44781, hypre_smp_forloop.h:21.1-22.0 "pragma omp parallel for private ... \n" included from par_relax_more.c:1685], Node[-1, 28449, par_relax_more.c:1686.18-32 "k < num_threads"]]
|
|---|
| 165 | Checking Array Refs for:
|
|---|
| 166 | Node[-1, 28608, par_relax_more.c:1723.21-27 "l1_norm"][Node[-1, 28609, par_relax_more.c:1723.29 "i"]]
|
|---|
| 167 | Node[-1, 29183, par_relax_more.c:1846.16-22 "l1_norm"][Node[-1, 29184, par_relax_more.c:1846.24 "i"]]
|
|---|
| 168 | with bounding conditions:[Node[-1, 44781, hypre_smp_forloop.h:21.1-22.0 "pragma omp parallel for private ... \n" included from par_relax_more.c:1685], Node[-1, 28449, par_relax_more.c:1686.18-32 "k < num_threads"]]
|
|---|
| 169 | Checking Array Refs for:
|
|---|
| 170 | Node[-1, 28608, par_relax_more.c:1723.21-27 "l1_norm"][Node[-1, 28609, par_relax_more.c:1723.29 "i"]]
|
|---|
| 171 | Node[-1, 29238, par_relax_more.c:1857.18-24 "l1_norm"][Node[-1, 29239, par_relax_more.c:1857.26 "i"]]
|
|---|
| 172 | with bounding conditions:[Node[-1, 44781, hypre_smp_forloop.h:21.1-22.0 "pragma omp parallel for private ... \n" included from par_relax_more.c:1685], Node[-1, 28449, par_relax_more.c:1686.18-32 "k < num_threads"]]
|
|---|
| 173 | Checking Array Refs for:
|
|---|
| 174 | Node[-1, 28608, par_relax_more.c:1723.21-27 "l1_norm"][Node[-1, 28609, par_relax_more.c:1723.29 "i"]]
|
|---|
| 175 | Node[-1, 29221, par_relax_more.c:1854.26-32 "l1_norm"][Node[-1, 29222, par_relax_more.c:1854.34 "i"]]
|
|---|
| 176 | with bounding conditions:[Node[-1, 44781, hypre_smp_forloop.h:21.1-22.0 "pragma omp parallel for private ... \n" included from par_relax_more.c:1685], Node[-1, 28449, par_relax_more.c:1686.18-32 "k < num_threads"]]
|
|---|
| 177 | Checking Array Refs for:
|
|---|
| 178 | Node[-1, 28643, par_relax_more.c:1729.24-30 "l1_norm"][Node[-1, 28644, par_relax_more.c:1729.32 "i"]]
|
|---|
| 179 | Node[-1, 29183, par_relax_more.c:1846.16-22 "l1_norm"][Node[-1, 29184, par_relax_more.c:1846.24 "i"]]
|
|---|
| 180 | with bounding conditions:[Node[-1, 44781, hypre_smp_forloop.h:21.1-22.0 "pragma omp parallel for private ... \n" included from par_relax_more.c:1685], Node[-1, 28449, par_relax_more.c:1686.18-32 "k < num_threads"]]
|
|---|
| 181 | Checking Array Refs for:
|
|---|
| 182 | Node[-1, 28643, par_relax_more.c:1729.24-30 "l1_norm"][Node[-1, 28644, par_relax_more.c:1729.32 "i"]]
|
|---|
| 183 | Node[-1, 29238, par_relax_more.c:1857.18-24 "l1_norm"][Node[-1, 29239, par_relax_more.c:1857.26 "i"]]
|
|---|
| 184 | with bounding conditions:[Node[-1, 44781, hypre_smp_forloop.h:21.1-22.0 "pragma omp parallel for private ... \n" included from par_relax_more.c:1685], Node[-1, 28449, par_relax_more.c:1686.18-32 "k < num_threads"]]
|
|---|
| 185 | Checking Array Refs for:
|
|---|
| 186 | Node[-1, 28643, par_relax_more.c:1729.24-30 "l1_norm"][Node[-1, 28644, par_relax_more.c:1729.32 "i"]]
|
|---|
| 187 | Node[-1, 29221, par_relax_more.c:1854.26-32 "l1_norm"][Node[-1, 29222, par_relax_more.c:1854.34 "i"]]
|
|---|
| 188 | with bounding conditions:[Node[-1, 44781, hypre_smp_forloop.h:21.1-22.0 "pragma omp parallel for private ... \n" included from par_relax_more.c:1685], Node[-1, 28449, par_relax_more.c:1686.18-32 "k < num_threads"]]
|
|---|
| 189 | Checking Array Refs for:
|
|---|
| 190 | Node[-1, 28941, par_relax_more.c:1792.12-18 "l1_norm"][Node[-1, 28942, par_relax_more.c:1792.20 "i"]]
|
|---|
| 191 | Node[-1, 29183, par_relax_more.c:1846.16-22 "l1_norm"][Node[-1, 29184, par_relax_more.c:1846.24 "i"]]
|
|---|
| 192 | with bounding conditions:[Node[-1, 44781, hypre_smp_forloop.h:21.1-22.0 "pragma omp parallel for private ... \n" included from par_relax_more.c:1685], Node[-1, 28449, par_relax_more.c:1686.18-32 "k < num_threads"]]
|
|---|
| 193 | Checking Array Refs for:
|
|---|
| 194 | Node[-1, 28941, par_relax_more.c:1792.12-18 "l1_norm"][Node[-1, 28942, par_relax_more.c:1792.20 "i"]]
|
|---|
| 195 | Node[-1, 29238, par_relax_more.c:1857.18-24 "l1_norm"][Node[-1, 29239, par_relax_more.c:1857.26 "i"]]
|
|---|
| 196 | with bounding conditions:[Node[-1, 44781, hypre_smp_forloop.h:21.1-22.0 "pragma omp parallel for private ... \n" included from par_relax_more.c:1685], Node[-1, 28449, par_relax_more.c:1686.18-32 "k < num_threads"]]
|
|---|
| 197 | Checking Array Refs for:
|
|---|
| 198 | Node[-1, 28941, par_relax_more.c:1792.12-18 "l1_norm"][Node[-1, 28942, par_relax_more.c:1792.20 "i"]]
|
|---|
| 199 | Node[-1, 29221, par_relax_more.c:1854.26-32 "l1_norm"][Node[-1, 29222, par_relax_more.c:1854.34 "i"]]
|
|---|
| 200 | with bounding conditions:[Node[-1, 44781, hypre_smp_forloop.h:21.1-22.0 "pragma omp parallel for private ... \n" included from par_relax_more.c:1685], Node[-1, 28449, par_relax_more.c:1686.18-32 "k < num_threads"]]
|
|---|
| 201 | Checking Array Refs for:
|
|---|
| 202 | Node[-1, 28566, par_relax_more.c:1714.21-27 "l1_norm"][Node[-1, 28567, par_relax_more.c:1714.29 "i"]]
|
|---|
| 203 | Node[-1, 29183, par_relax_more.c:1846.16-22 "l1_norm"][Node[-1, 29184, par_relax_more.c:1846.24 "i"]]
|
|---|
| 204 | with bounding conditions:[Node[-1, 44781, hypre_smp_forloop.h:21.1-22.0 "pragma omp parallel for private ... \n" included from par_relax_more.c:1685], Node[-1, 28449, par_relax_more.c:1686.18-32 "k < num_threads"]]
|
|---|
| 205 | Checking Array Refs for:
|
|---|
| 206 | Node[-1, 28566, par_relax_more.c:1714.21-27 "l1_norm"][Node[-1, 28567, par_relax_more.c:1714.29 "i"]]
|
|---|
| 207 | Node[-1, 29238, par_relax_more.c:1857.18-24 "l1_norm"][Node[-1, 29239, par_relax_more.c:1857.26 "i"]]
|
|---|
| 208 | with bounding conditions:[Node[-1, 44781, hypre_smp_forloop.h:21.1-22.0 "pragma omp parallel for private ... \n" included from par_relax_more.c:1685], Node[-1, 28449, par_relax_more.c:1686.18-32 "k < num_threads"]]
|
|---|
| 209 | Checking Array Refs for:
|
|---|
| 210 | Node[-1, 28566, par_relax_more.c:1714.21-27 "l1_norm"][Node[-1, 28567, par_relax_more.c:1714.29 "i"]]
|
|---|
| 211 | Node[-1, 29221, par_relax_more.c:1854.26-32 "l1_norm"][Node[-1, 29222, par_relax_more.c:1854.34 "i"]]
|
|---|
| 212 | with bounding conditions:[Node[-1, 44781, hypre_smp_forloop.h:21.1-22.0 "pragma omp parallel for private ... \n" included from par_relax_more.c:1685], Node[-1, 28449, par_relax_more.c:1686.18-32 "k < num_threads"]]
|
|---|
| 213 | Checking Array Refs for:
|
|---|
| 214 | Node[-1, 29038, par_relax_more.c:1814.21-27 "l1_norm"][Node[-1, 29039, par_relax_more.c:1814.29 "i"]]
|
|---|
| 215 | Node[-1, 29183, par_relax_more.c:1846.16-22 "l1_norm"][Node[-1, 29184, par_relax_more.c:1846.24 "i"]]
|
|---|
| 216 | with bounding conditions:[Node[-1, 44781, hypre_smp_forloop.h:21.1-22.0 "pragma omp parallel for private ... \n" included from par_relax_more.c:1685], Node[-1, 28449, par_relax_more.c:1686.18-32 "k < num_threads"]]
|
|---|
| 217 | Checking Array Refs for:
|
|---|
| 218 | Node[-1, 29038, par_relax_more.c:1814.21-27 "l1_norm"][Node[-1, 29039, par_relax_more.c:1814.29 "i"]]
|
|---|
| 219 | Node[-1, 29238, par_relax_more.c:1857.18-24 "l1_norm"][Node[-1, 29239, par_relax_more.c:1857.26 "i"]]
|
|---|
| 220 | with bounding conditions:[Node[-1, 44781, hypre_smp_forloop.h:21.1-22.0 "pragma omp parallel for private ... \n" included from par_relax_more.c:1685], Node[-1, 28449, par_relax_more.c:1686.18-32 "k < num_threads"]]
|
|---|
| 221 | Checking Array Refs for:
|
|---|
| 222 | Node[-1, 29038, par_relax_more.c:1814.21-27 "l1_norm"][Node[-1, 29039, par_relax_more.c:1814.29 "i"]]
|
|---|
| 223 | Node[-1, 29221, par_relax_more.c:1854.26-32 "l1_norm"][Node[-1, 29222, par_relax_more.c:1854.34 "i"]]
|
|---|
| 224 | with bounding conditions:[Node[-1, 44781, hypre_smp_forloop.h:21.1-22.0 "pragma omp parallel for private ... \n" included from par_relax_more.c:1685], Node[-1, 28449, par_relax_more.c:1686.18-32 "k < num_threads"]]
|
|---|
| 225 | Checking Array Refs for:
|
|---|
| 226 | Node[-1, 29006, par_relax_more.c:1807.24-30 "l1_norm"][Node[-1, 29007, par_relax_more.c:1807.32 "i"]]
|
|---|
| 227 | Node[-1, 29183, par_relax_more.c:1846.16-22 "l1_norm"][Node[-1, 29184, par_relax_more.c:1846.24 "i"]]
|
|---|
| 228 | with bounding conditions:[Node[-1, 44781, hypre_smp_forloop.h:21.1-22.0 "pragma omp parallel for private ... \n" included from par_relax_more.c:1685], Node[-1, 28449, par_relax_more.c:1686.18-32 "k < num_threads"]]
|
|---|
| 229 | Checking Array Refs for:
|
|---|
| 230 | Node[-1, 29006, par_relax_more.c:1807.24-30 "l1_norm"][Node[-1, 29007, par_relax_more.c:1807.32 "i"]]
|
|---|
| 231 | Node[-1, 29238, par_relax_more.c:1857.18-24 "l1_norm"][Node[-1, 29239, par_relax_more.c:1857.26 "i"]]
|
|---|
| 232 | with bounding conditions:[Node[-1, 44781, hypre_smp_forloop.h:21.1-22.0 "pragma omp parallel for private ... \n" included from par_relax_more.c:1685], Node[-1, 28449, par_relax_more.c:1686.18-32 "k < num_threads"]]
|
|---|
| 233 | Checking Array Refs for:
|
|---|
| 234 | Node[-1, 29006, par_relax_more.c:1807.24-30 "l1_norm"][Node[-1, 29007, par_relax_more.c:1807.32 "i"]]
|
|---|
| 235 | Node[-1, 29221, par_relax_more.c:1854.26-32 "l1_norm"][Node[-1, 29222, par_relax_more.c:1854.34 "i"]]
|
|---|
| 236 | with bounding conditions:[Node[-1, 44781, hypre_smp_forloop.h:21.1-22.0 "pragma omp parallel for private ... \n" included from par_relax_more.c:1685], Node[-1, 28449, par_relax_more.c:1686.18-32 "k < num_threads"]]
|
|---|
| 237 | Checking Array Refs for:
|
|---|
| 238 | Node[-1, 28713, par_relax_more.c:1746.21-27 "l1_norm"][Node[-1, 28714, par_relax_more.c:1746.29 "i"]]
|
|---|
| 239 | Node[-1, 29183, par_relax_more.c:1846.16-22 "l1_norm"][Node[-1, 29184, par_relax_more.c:1846.24 "i"]]
|
|---|
| 240 | with bounding conditions:[Node[-1, 44781, hypre_smp_forloop.h:21.1-22.0 "pragma omp parallel for private ... \n" included from par_relax_more.c:1685], Node[-1, 28449, par_relax_more.c:1686.18-32 "k < num_threads"]]
|
|---|
| 241 | Checking Array Refs for:
|
|---|
| 242 | Node[-1, 28713, par_relax_more.c:1746.21-27 "l1_norm"][Node[-1, 28714, par_relax_more.c:1746.29 "i"]]
|
|---|
| 243 | Node[-1, 29238, par_relax_more.c:1857.18-24 "l1_norm"][Node[-1, 29239, par_relax_more.c:1857.26 "i"]]
|
|---|
| 244 | with bounding conditions:[Node[-1, 44781, hypre_smp_forloop.h:21.1-22.0 "pragma omp parallel for private ... \n" included from par_relax_more.c:1685], Node[-1, 28449, par_relax_more.c:1686.18-32 "k < num_threads"]]
|
|---|
| 245 | Checking Array Refs for:
|
|---|
| 246 | Node[-1, 28713, par_relax_more.c:1746.21-27 "l1_norm"][Node[-1, 28714, par_relax_more.c:1746.29 "i"]]
|
|---|
| 247 | Node[-1, 29221, par_relax_more.c:1854.26-32 "l1_norm"][Node[-1, 29222, par_relax_more.c:1854.34 "i"]]
|
|---|
| 248 | with bounding conditions:[Node[-1, 44781, hypre_smp_forloop.h:21.1-22.0 "pragma omp parallel for private ... \n" included from par_relax_more.c:1685], Node[-1, 28449, par_relax_more.c:1686.18-32 "k < num_threads"]]
|
|---|
| 249 | Checking Array Refs for:
|
|---|
| 250 | Node[-1, 29164, par_relax_more.c:1841.24-30 "l1_norm"][Node[-1, 29165, par_relax_more.c:1841.32 "i"]]
|
|---|
| 251 | Node[-1, 29183, par_relax_more.c:1846.16-22 "l1_norm"][Node[-1, 29184, par_relax_more.c:1846.24 "i"]]
|
|---|
| 252 | with bounding conditions:[Node[-1, 44781, hypre_smp_forloop.h:21.1-22.0 "pragma omp parallel for private ... \n" included from par_relax_more.c:1685], Node[-1, 28449, par_relax_more.c:1686.18-32 "k < num_threads"]]
|
|---|
| 253 | Checking Array Refs for:
|
|---|
| 254 | Node[-1, 29164, par_relax_more.c:1841.24-30 "l1_norm"][Node[-1, 29165, par_relax_more.c:1841.32 "i"]]
|
|---|
| 255 | Node[-1, 29238, par_relax_more.c:1857.18-24 "l1_norm"][Node[-1, 29239, par_relax_more.c:1857.26 "i"]]
|
|---|
| 256 | with bounding conditions:[Node[-1, 44781, hypre_smp_forloop.h:21.1-22.0 "pragma omp parallel for private ... \n" included from par_relax_more.c:1685], Node[-1, 28449, par_relax_more.c:1686.18-32 "k < num_threads"]]
|
|---|
| 257 | Checking Array Refs for:
|
|---|
| 258 | Node[-1, 29164, par_relax_more.c:1841.24-30 "l1_norm"][Node[-1, 29165, par_relax_more.c:1841.32 "i"]]
|
|---|
| 259 | Node[-1, 29221, par_relax_more.c:1854.26-32 "l1_norm"][Node[-1, 29222, par_relax_more.c:1854.34 "i"]]
|
|---|
| 260 | with bounding conditions:[Node[-1, 44781, hypre_smp_forloop.h:21.1-22.0 "pragma omp parallel for private ... \n" included from par_relax_more.c:1685], Node[-1, 28449, par_relax_more.c:1686.18-32 "k < num_threads"]]
|
|---|
| 261 | Checking Array Refs for:
|
|---|
| 262 | Node[-1, 28674, par_relax_more.c:1738.12-18 "l1_norm"][Node[-1, 28675, par_relax_more.c:1738.20 "i"]]
|
|---|
| 263 | Node[-1, 29183, par_relax_more.c:1846.16-22 "l1_norm"][Node[-1, 29184, par_relax_more.c:1846.24 "i"]]
|
|---|
| 264 | with bounding conditions:[Node[-1, 44781, hypre_smp_forloop.h:21.1-22.0 "pragma omp parallel for private ... \n" included from par_relax_more.c:1685], Node[-1, 28449, par_relax_more.c:1686.18-32 "k < num_threads"]]
|
|---|
| 265 | Checking Array Refs for:
|
|---|
| 266 | Node[-1, 28674, par_relax_more.c:1738.12-18 "l1_norm"][Node[-1, 28675, par_relax_more.c:1738.20 "i"]]
|
|---|
| 267 | Node[-1, 29238, par_relax_more.c:1857.18-24 "l1_norm"][Node[-1, 29239, par_relax_more.c:1857.26 "i"]]
|
|---|
| 268 | with bounding conditions:[Node[-1, 44781, hypre_smp_forloop.h:21.1-22.0 "pragma omp parallel for private ... \n" included from par_relax_more.c:1685], Node[-1, 28449, par_relax_more.c:1686.18-32 "k < num_threads"]]
|
|---|
| 269 | Checking Array Refs for:
|
|---|
| 270 | Node[-1, 28674, par_relax_more.c:1738.12-18 "l1_norm"][Node[-1, 28675, par_relax_more.c:1738.20 "i"]]
|
|---|
| 271 | Node[-1, 29221, par_relax_more.c:1854.26-32 "l1_norm"][Node[-1, 29222, par_relax_more.c:1854.34 "i"]]
|
|---|
| 272 | with bounding conditions:[Node[-1, 44781, hypre_smp_forloop.h:21.1-22.0 "pragma omp parallel for private ... \n" included from par_relax_more.c:1685], Node[-1, 28449, par_relax_more.c:1686.18-32 "k < num_threads"]]
|
|---|
| 273 | Checking Array Refs for:
|
|---|
| 274 | Node[-1, 29190, par_relax_more.c:1847.15-21 "l1_norm"][Node[-1, 29191, par_relax_more.c:1847.23 "i"]]
|
|---|
| 275 | Node[-1, 29183, par_relax_more.c:1846.16-22 "l1_norm"][Node[-1, 29184, par_relax_more.c:1846.24 "i"]]
|
|---|
| 276 | with bounding conditions:[Node[-1, 44781, hypre_smp_forloop.h:21.1-22.0 "pragma omp parallel for private ... \n" included from par_relax_more.c:1685], Node[-1, 28449, par_relax_more.c:1686.18-32 "k < num_threads"]]
|
|---|
| 277 | Checking Array Refs for:
|
|---|
| 278 | Node[-1, 29190, par_relax_more.c:1847.15-21 "l1_norm"][Node[-1, 29191, par_relax_more.c:1847.23 "i"]]
|
|---|
| 279 | Node[-1, 29238, par_relax_more.c:1857.18-24 "l1_norm"][Node[-1, 29239, par_relax_more.c:1857.26 "i"]]
|
|---|
| 280 | with bounding conditions:[Node[-1, 44781, hypre_smp_forloop.h:21.1-22.0 "pragma omp parallel for private ... \n" included from par_relax_more.c:1685], Node[-1, 28449, par_relax_more.c:1686.18-32 "k < num_threads"]]
|
|---|
| 281 | Checking Array Refs for:
|
|---|
| 282 | Node[-1, 29190, par_relax_more.c:1847.15-21 "l1_norm"][Node[-1, 29191, par_relax_more.c:1847.23 "i"]]
|
|---|
| 283 | Node[-1, 29221, par_relax_more.c:1854.26-32 "l1_norm"][Node[-1, 29222, par_relax_more.c:1854.34 "i"]]
|
|---|
| 284 | with bounding conditions:[Node[-1, 44781, hypre_smp_forloop.h:21.1-22.0 "pragma omp parallel for private ... \n" included from par_relax_more.c:1685], Node[-1, 28449, par_relax_more.c:1686.18-32 "k < num_threads"]]
|
|---|
| 285 | Checking Array Refs for:
|
|---|
| 286 | Node[-1, 28539, par_relax_more.c:1709.18-24 "l1_norm"][Node[-1, 28540, par_relax_more.c:1709.26 "i"]]
|
|---|
| 287 | Node[-1, 29183, par_relax_more.c:1846.16-22 "l1_norm"][Node[-1, 29184, par_relax_more.c:1846.24 "i"]]
|
|---|
| 288 | with bounding conditions:[Node[-1, 44781, hypre_smp_forloop.h:21.1-22.0 "pragma omp parallel for private ... \n" included from par_relax_more.c:1685], Node[-1, 28449, par_relax_more.c:1686.18-32 "k < num_threads"]]
|
|---|
| 289 | Checking Array Refs for:
|
|---|
| 290 | Node[-1, 28539, par_relax_more.c:1709.18-24 "l1_norm"][Node[-1, 28540, par_relax_more.c:1709.26 "i"]]
|
|---|
| 291 | Node[-1, 29238, par_relax_more.c:1857.18-24 "l1_norm"][Node[-1, 29239, par_relax_more.c:1857.26 "i"]]
|
|---|
| 292 | with bounding conditions:[Node[-1, 44781, hypre_smp_forloop.h:21.1-22.0 "pragma omp parallel for private ... \n" included from par_relax_more.c:1685], Node[-1, 28449, par_relax_more.c:1686.18-32 "k < num_threads"]]
|
|---|
| 293 | Checking Array Refs for:
|
|---|
| 294 | Node[-1, 28539, par_relax_more.c:1709.18-24 "l1_norm"][Node[-1, 28540, par_relax_more.c:1709.26 "i"]]
|
|---|
| 295 | Node[-1, 29221, par_relax_more.c:1854.26-32 "l1_norm"][Node[-1, 29222, par_relax_more.c:1854.34 "i"]]
|
|---|
| 296 | with bounding conditions:[Node[-1, 44781, hypre_smp_forloop.h:21.1-22.0 "pragma omp parallel for private ... \n" included from par_relax_more.c:1685], Node[-1, 28449, par_relax_more.c:1686.18-32 "k < num_threads"]]
|
|---|
| 297 | Checking Array Refs for:
|
|---|
| 298 | Node[-1, 28993, par_relax_more.c:1804.24-30 "l1_norm"][Node[-1, 28994, par_relax_more.c:1804.32 "i"]]
|
|---|
| 299 | Node[-1, 29183, par_relax_more.c:1846.16-22 "l1_norm"][Node[-1, 29184, par_relax_more.c:1846.24 "i"]]
|
|---|
| 300 | with bounding conditions:[Node[-1, 44781, hypre_smp_forloop.h:21.1-22.0 "pragma omp parallel for private ... \n" included from par_relax_more.c:1685], Node[-1, 28449, par_relax_more.c:1686.18-32 "k < num_threads"]]
|
|---|
| 301 | Checking Array Refs for:
|
|---|
| 302 | Node[-1, 28993, par_relax_more.c:1804.24-30 "l1_norm"][Node[-1, 28994, par_relax_more.c:1804.32 "i"]]
|
|---|
| 303 | Node[-1, 29238, par_relax_more.c:1857.18-24 "l1_norm"][Node[-1, 29239, par_relax_more.c:1857.26 "i"]]
|
|---|
| 304 | with bounding conditions:[Node[-1, 44781, hypre_smp_forloop.h:21.1-22.0 "pragma omp parallel for private ... \n" included from par_relax_more.c:1685], Node[-1, 28449, par_relax_more.c:1686.18-32 "k < num_threads"]]
|
|---|
| 305 | Checking Array Refs for:
|
|---|
| 306 | Node[-1, 28993, par_relax_more.c:1804.24-30 "l1_norm"][Node[-1, 28994, par_relax_more.c:1804.32 "i"]]
|
|---|
| 307 | Node[-1, 29221, par_relax_more.c:1854.26-32 "l1_norm"][Node[-1, 29222, par_relax_more.c:1854.34 "i"]]
|
|---|
| 308 | with bounding conditions:[Node[-1, 44781, hypre_smp_forloop.h:21.1-22.0 "pragma omp parallel for private ... \n" included from par_relax_more.c:1685], Node[-1, 28449, par_relax_more.c:1686.18-32 "k < num_threads"]]
|
|---|
| 309 | Checking Array Refs for:
|
|---|
| 310 | Node[-1, 28742, par_relax_more.c:1752.21-27 "l1_norm"][Node[-1, 28743, par_relax_more.c:1752.29 "i"]]
|
|---|
| 311 | Node[-1, 29183, par_relax_more.c:1846.16-22 "l1_norm"][Node[-1, 29184, par_relax_more.c:1846.24 "i"]]
|
|---|
| 312 | with bounding conditions:[Node[-1, 44781, hypre_smp_forloop.h:21.1-22.0 "pragma omp parallel for private ... \n" included from par_relax_more.c:1685], Node[-1, 28449, par_relax_more.c:1686.18-32 "k < num_threads"]]
|
|---|
| 313 | Checking Array Refs for:
|
|---|
| 314 | Node[-1, 28742, par_relax_more.c:1752.21-27 "l1_norm"][Node[-1, 28743, par_relax_more.c:1752.29 "i"]]
|
|---|
| 315 | Node[-1, 29238, par_relax_more.c:1857.18-24 "l1_norm"][Node[-1, 29239, par_relax_more.c:1857.26 "i"]]
|
|---|
| 316 | with bounding conditions:[Node[-1, 44781, hypre_smp_forloop.h:21.1-22.0 "pragma omp parallel for private ... \n" included from par_relax_more.c:1685], Node[-1, 28449, par_relax_more.c:1686.18-32 "k < num_threads"]]
|
|---|
| 317 | Checking Array Refs for:
|
|---|
| 318 | Node[-1, 28742, par_relax_more.c:1752.21-27 "l1_norm"][Node[-1, 28743, par_relax_more.c:1752.29 "i"]]
|
|---|
| 319 | Node[-1, 29221, par_relax_more.c:1854.26-32 "l1_norm"][Node[-1, 29222, par_relax_more.c:1854.34 "i"]]
|
|---|
| 320 | with bounding conditions:[Node[-1, 44781, hypre_smp_forloop.h:21.1-22.0 "pragma omp parallel for private ... \n" included from par_relax_more.c:1685], Node[-1, 28449, par_relax_more.c:1686.18-32 "k < num_threads"]]
|
|---|
| 321 | Checking Array Refs for:
|
|---|
| 322 | Node[-1, 28914, par_relax_more.c:1785.18-24 "l1_norm"][Node[-1, 28915, par_relax_more.c:1785.26 "i"]]
|
|---|
| 323 | Node[-1, 29183, par_relax_more.c:1846.16-22 "l1_norm"][Node[-1, 29184, par_relax_more.c:1846.24 "i"]]
|
|---|
| 324 | with bounding conditions:[Node[-1, 44781, hypre_smp_forloop.h:21.1-22.0 "pragma omp parallel for private ... \n" included from par_relax_more.c:1685], Node[-1, 28449, par_relax_more.c:1686.18-32 "k < num_threads"]]
|
|---|
| 325 | Checking Array Refs for:
|
|---|
| 326 | Node[-1, 28914, par_relax_more.c:1785.18-24 "l1_norm"][Node[-1, 28915, par_relax_more.c:1785.26 "i"]]
|
|---|
| 327 | Node[-1, 29238, par_relax_more.c:1857.18-24 "l1_norm"][Node[-1, 29239, par_relax_more.c:1857.26 "i"]]
|
|---|
| 328 | with bounding conditions:[Node[-1, 44781, hypre_smp_forloop.h:21.1-22.0 "pragma omp parallel for private ... \n" included from par_relax_more.c:1685], Node[-1, 28449, par_relax_more.c:1686.18-32 "k < num_threads"]]
|
|---|
| 329 | Checking Array Refs for:
|
|---|
| 330 | Node[-1, 28914, par_relax_more.c:1785.18-24 "l1_norm"][Node[-1, 28915, par_relax_more.c:1785.26 "i"]]
|
|---|
| 331 | Node[-1, 29221, par_relax_more.c:1854.26-32 "l1_norm"][Node[-1, 29222, par_relax_more.c:1854.34 "i"]]
|
|---|
| 332 | with bounding conditions:[Node[-1, 44781, hypre_smp_forloop.h:21.1-22.0 "pragma omp parallel for private ... \n" included from par_relax_more.c:1685], Node[-1, 28449, par_relax_more.c:1686.18-32 "k < num_threads"]]
|
|---|
| 333 | Checking Array Refs for:
|
|---|
| 334 | Node[-1, 28802, par_relax_more.c:1764.21-27 "l1_norm"][Node[-1, 28803, par_relax_more.c:1764.29 "i"]]
|
|---|
| 335 | Node[-1, 29183, par_relax_more.c:1846.16-22 "l1_norm"][Node[-1, 29184, par_relax_more.c:1846.24 "i"]]
|
|---|
| 336 | with bounding conditions:[Node[-1, 44781, hypre_smp_forloop.h:21.1-22.0 "pragma omp parallel for private ... \n" included from par_relax_more.c:1685], Node[-1, 28449, par_relax_more.c:1686.18-32 "k < num_threads"]]
|
|---|
| 337 | Checking Array Refs for:
|
|---|
| 338 | Node[-1, 28802, par_relax_more.c:1764.21-27 "l1_norm"][Node[-1, 28803, par_relax_more.c:1764.29 "i"]]
|
|---|
| 339 | Node[-1, 29238, par_relax_more.c:1857.18-24 "l1_norm"][Node[-1, 29239, par_relax_more.c:1857.26 "i"]]
|
|---|
| 340 | with bounding conditions:[Node[-1, 44781, hypre_smp_forloop.h:21.1-22.0 "pragma omp parallel for private ... \n" included from par_relax_more.c:1685], Node[-1, 28449, par_relax_more.c:1686.18-32 "k < num_threads"]]
|
|---|
| 341 | Checking Array Refs for:
|
|---|
| 342 | Node[-1, 28802, par_relax_more.c:1764.21-27 "l1_norm"][Node[-1, 28803, par_relax_more.c:1764.29 "i"]]
|
|---|
| 343 | Node[-1, 29221, par_relax_more.c:1854.26-32 "l1_norm"][Node[-1, 29222, par_relax_more.c:1854.34 "i"]]
|
|---|
| 344 | with bounding conditions:[Node[-1, 44781, hypre_smp_forloop.h:21.1-22.0 "pragma omp parallel for private ... \n" included from par_relax_more.c:1685], Node[-1, 28449, par_relax_more.c:1686.18-32 "k < num_threads"]]
|
|---|
| 345 | Checking Array Refs for:
|
|---|
| 346 | Node[-1, 28838, par_relax_more.c:1771.24-30 "l1_norm"][Node[-1, 28839, par_relax_more.c:1771.32 "i"]]
|
|---|
| 347 | Node[-1, 29183, par_relax_more.c:1846.16-22 "l1_norm"][Node[-1, 29184, par_relax_more.c:1846.24 "i"]]
|
|---|
| 348 | with bounding conditions:[Node[-1, 44781, hypre_smp_forloop.h:21.1-22.0 "pragma omp parallel for private ... \n" included from par_relax_more.c:1685], Node[-1, 28449, par_relax_more.c:1686.18-32 "k < num_threads"]]
|
|---|
| 349 | Checking Array Refs for:
|
|---|
| 350 | Node[-1, 28838, par_relax_more.c:1771.24-30 "l1_norm"][Node[-1, 28839, par_relax_more.c:1771.32 "i"]]
|
|---|
| 351 | Node[-1, 29238, par_relax_more.c:1857.18-24 "l1_norm"][Node[-1, 29239, par_relax_more.c:1857.26 "i"]]
|
|---|
| 352 | with bounding conditions:[Node[-1, 44781, hypre_smp_forloop.h:21.1-22.0 "pragma omp parallel for private ... \n" included from par_relax_more.c:1685], Node[-1, 28449, par_relax_more.c:1686.18-32 "k < num_threads"]]
|
|---|
| 353 | Checking Array Refs for:
|
|---|
| 354 | Node[-1, 28838, par_relax_more.c:1771.24-30 "l1_norm"][Node[-1, 28839, par_relax_more.c:1771.32 "i"]]
|
|---|
| 355 | Node[-1, 29221, par_relax_more.c:1854.26-32 "l1_norm"][Node[-1, 29222, par_relax_more.c:1854.34 "i"]]
|
|---|
| 356 | with bounding conditions:[Node[-1, 44781, hypre_smp_forloop.h:21.1-22.0 "pragma omp parallel for private ... \n" included from par_relax_more.c:1685], Node[-1, 28449, par_relax_more.c:1686.18-32 "k < num_threads"]]
|
|---|
| 357 | Checking Array Refs for:
|
|---|
| 358 | Node[-1, 28887, par_relax_more.c:1782.15-21 "l1_norm"][Node[-1, 28888, par_relax_more.c:1782.23 "i"]]
|
|---|
| 359 | Node[-1, 29183, par_relax_more.c:1846.16-22 "l1_norm"][Node[-1, 29184, par_relax_more.c:1846.24 "i"]]
|
|---|
| 360 | with bounding conditions:[Node[-1, 44781, hypre_smp_forloop.h:21.1-22.0 "pragma omp parallel for private ... \n" included from par_relax_more.c:1685], Node[-1, 28449, par_relax_more.c:1686.18-32 "k < num_threads"]]
|
|---|
| 361 | Checking Array Refs for:
|
|---|
| 362 | Node[-1, 28887, par_relax_more.c:1782.15-21 "l1_norm"][Node[-1, 28888, par_relax_more.c:1782.23 "i"]]
|
|---|
| 363 | Node[-1, 29238, par_relax_more.c:1857.18-24 "l1_norm"][Node[-1, 29239, par_relax_more.c:1857.26 "i"]]
|
|---|
| 364 | with bounding conditions:[Node[-1, 44781, hypre_smp_forloop.h:21.1-22.0 "pragma omp parallel for private ... \n" included from par_relax_more.c:1685], Node[-1, 28449, par_relax_more.c:1686.18-32 "k < num_threads"]]
|
|---|
| 365 | Checking Array Refs for:
|
|---|
| 366 | Node[-1, 28887, par_relax_more.c:1782.15-21 "l1_norm"][Node[-1, 28888, par_relax_more.c:1782.23 "i"]]
|
|---|
| 367 | Node[-1, 29221, par_relax_more.c:1854.26-32 "l1_norm"][Node[-1, 29222, par_relax_more.c:1854.34 "i"]]
|
|---|
| 368 | with bounding conditions:[Node[-1, 44781, hypre_smp_forloop.h:21.1-22.0 "pragma omp parallel for private ... \n" included from par_relax_more.c:1685], Node[-1, 28449, par_relax_more.c:1686.18-32 "k < num_threads"]]
|
|---|
| 369 | Checking Array Refs for:
|
|---|
| 370 | Node[-1, 29112, par_relax_more.c:1830.24-30 "l1_norm"][Node[-1, 29113, par_relax_more.c:1830.32 "i"]]
|
|---|
| 371 | Node[-1, 29183, par_relax_more.c:1846.16-22 "l1_norm"][Node[-1, 29184, par_relax_more.c:1846.24 "i"]]
|
|---|
| 372 | with bounding conditions:[Node[-1, 44781, hypre_smp_forloop.h:21.1-22.0 "pragma omp parallel for private ... \n" included from par_relax_more.c:1685], Node[-1, 28449, par_relax_more.c:1686.18-32 "k < num_threads"]]
|
|---|
| 373 | Checking Array Refs for:
|
|---|
| 374 | Node[-1, 29112, par_relax_more.c:1830.24-30 "l1_norm"][Node[-1, 29113, par_relax_more.c:1830.32 "i"]]
|
|---|
| 375 | Node[-1, 29238, par_relax_more.c:1857.18-24 "l1_norm"][Node[-1, 29239, par_relax_more.c:1857.26 "i"]]
|
|---|
| 376 | with bounding conditions:[Node[-1, 44781, hypre_smp_forloop.h:21.1-22.0 "pragma omp parallel for private ... \n" included from par_relax_more.c:1685], Node[-1, 28449, par_relax_more.c:1686.18-32 "k < num_threads"]]
|
|---|
| 377 | Checking Array Refs for:
|
|---|
| 378 | Node[-1, 29112, par_relax_more.c:1830.24-30 "l1_norm"][Node[-1, 29113, par_relax_more.c:1830.32 "i"]]
|
|---|
| 379 | Node[-1, 29221, par_relax_more.c:1854.26-32 "l1_norm"][Node[-1, 29222, par_relax_more.c:1854.34 "i"]]
|
|---|
| 380 | with bounding conditions:[Node[-1, 44781, hypre_smp_forloop.h:21.1-22.0 "pragma omp parallel for private ... \n" included from par_relax_more.c:1685], Node[-1, 28449, par_relax_more.c:1686.18-32 "k < num_threads"]]
|
|---|
| 381 | Checking Array Refs for:
|
|---|
| 382 | Node[-1, 29125, par_relax_more.c:1833.24-30 "l1_norm"][Node[-1, 29126, par_relax_more.c:1833.32 "i"]]
|
|---|
| 383 | Node[-1, 29183, par_relax_more.c:1846.16-22 "l1_norm"][Node[-1, 29184, par_relax_more.c:1846.24 "i"]]
|
|---|
| 384 | with bounding conditions:[Node[-1, 44781, hypre_smp_forloop.h:21.1-22.0 "pragma omp parallel for private ... \n" included from par_relax_more.c:1685], Node[-1, 28449, par_relax_more.c:1686.18-32 "k < num_threads"]]
|
|---|
| 385 | Checking Array Refs for:
|
|---|
| 386 | Node[-1, 29125, par_relax_more.c:1833.24-30 "l1_norm"][Node[-1, 29126, par_relax_more.c:1833.32 "i"]]
|
|---|
| 387 | Node[-1, 29238, par_relax_more.c:1857.18-24 "l1_norm"][Node[-1, 29239, par_relax_more.c:1857.26 "i"]]
|
|---|
| 388 | with bounding conditions:[Node[-1, 44781, hypre_smp_forloop.h:21.1-22.0 "pragma omp parallel for private ... \n" included from par_relax_more.c:1685], Node[-1, 28449, par_relax_more.c:1686.18-32 "k < num_threads"]]
|
|---|
| 389 | Checking Array Refs for:
|
|---|
| 390 | Node[-1, 29125, par_relax_more.c:1833.24-30 "l1_norm"][Node[-1, 29126, par_relax_more.c:1833.32 "i"]]
|
|---|
| 391 | Node[-1, 29221, par_relax_more.c:1854.26-32 "l1_norm"][Node[-1, 29222, par_relax_more.c:1854.34 "i"]]
|
|---|
| 392 | with bounding conditions:[Node[-1, 44781, hypre_smp_forloop.h:21.1-22.0 "pragma omp parallel for private ... \n" included from par_relax_more.c:1685], Node[-1, 28449, par_relax_more.c:1686.18-32 "k < num_threads"]]
|
|---|
| 393 | Found independent OpenMP for Node[-1, 0, hypre_smp_forloop.h:21.1-22.0 "pragma omp parallel for private ... \n" included from par_relax_more.c:1685]
|
|---|
| 394 | writeVars : []
|
|---|
| 395 | readVars : [Entity[kind=VARIABLE, name=cf_marker, linkage=NONE, type=132, definition=-1], Entity[kind=VARIABLE, name=num_threads, linkage=NONE, type=0, definition=-1], Entity[kind=VARIABLE, name=option, linkage=NONE, type=0, definition=-1], Entity[kind=FUNCTION, name=fabs, linkage=EXTERNAL, type=201, definition=-1], Entity[kind=VARIABLE, name=num_rows, linkage=NONE, type=0, definition=-1], Entity[kind=VARIABLE, name=num_cols_offd, linkage=NONE, type=0, definition=-1]]
|
|---|
| 396 | writeArrays : [Node[-1, 29220, par_relax_more.c:1854.12-21 "l1_norm[i]"], Node[-1, 28519, par_relax_more.c:1704.12-21 "l1_norm[i]"], Node[-1, 28871, par_relax_more.c:1780.12-21 "l1_norm[i]"], Node[-1, 28610, par_relax_more.c:1723.21-30 "l1_norm[i]"], Node[-1, 28645, par_relax_more.c:1729.24-33 "l1_norm[i]"], Node[-1, 28943, par_relax_more.c:1792.12-21 "l1_norm[i]"], Node[-1, 28568, par_relax_more.c:1714.21-30 "l1_norm[i]"], Node[-1, 29040, par_relax_more.c:1814.21-30 "l1_norm[i]"], Node[-1, 29008, par_relax_more.c:1807.24-33 "l1_norm[i]"], Node[-1, 28715, par_relax_more.c:1746.21-30 "l1_norm[i]"], Node[-1, 29166, par_relax_more.c:1841.24-33 "l1_norm[i]"], Node[-1, 28676, par_relax_more.c:1738.12-21 "l1_norm[i]"], Node[-1, 29192, par_relax_more.c:1847.15-24 "l1_norm[i]"], Node[-1, 28541, par_relax_more.c:1709.18-27 "l1_norm[i]"], Node[-1, 28995, par_relax_more.c:1804.24-33 "l1_norm[i]"], Node[-1, 28744, par_relax_more.c:1752.21-30 "l1_norm[i]"], Node[-1, 28916, par_relax_more.c:1785.18-27 "l1_norm[i]"], Node[-1, 28804, par_relax_more.c:1764.21-30 "l1_norm[i]"], Node[-1, 28840, par_relax_more.c:1771.24-33 "l1_norm[i]"], Node[-1, 28889, par_relax_more.c:1782.15-24 "l1_norm[i]"], Node[-1, 29114, par_relax_more.c:1830.24-33 "l1_norm[i]"], Node[-1, 29127, par_relax_more.c:1833.24-33 "l1_norm[i]"]]
|
|---|
| 397 | readArrays : [Node[-1, 28732, par_relax_more.c:1751.27-37 "A_offd_I[i]"], Node[-1, 28535, par_relax_more.c:1708.41-53 "A_diag_I[i+1]"], Node[-1, 28761, par_relax_more.c:1757.25-36 "cf_marker[i]"], Node[-1, 28808, par_relax_more.c:1764.40-53 "A_diag_data[j]"], Node[-1, 29170, par_relax_more.c:1841.47-60 "A_offd_data[j]"], Node[-1, 28614, par_relax_more.c:1723.40-53 "A_diag_data[j]"], Node[-1, 29118, par_relax_more.c:1830.43-56 "A_diag_data[j]"], Node[-1, 29153, par_relax_more.c:1839.44-56 "A_offd_I[i+1]"], Node[-1, 28767, par_relax_more.c:1759.24-34 "A_diag_I[i]"], Node[-1, 28883, par_relax_more.c:1781.38-50 "A_diag_I[i+1]"], Node[-1, 28836, par_relax_more.c:1770.36-62 "cf_marker_offd[A_offd_J[j]]"], Node[-1, 28919, par_relax_more.c:1785.32-45 "A_offd_data[j]"], Node[-1, 28562, par_relax_more.c:1713.44-56 "A_offd_I[i+1]"], Node[-1, 28773, par_relax_more.c:1759.41-53 "A_diag_I[i+1]"], Node[-1, 29034, par_relax_more.c:1813.44-56 "A_offd_I[i+1]"], Node[-1, 29185, par_relax_more.c:1846.16-25 "l1_norm[i]"], Node[-1, 28922, par_relax_more.c:1785.49-62 "A_offd_data[j]"], Node[-1, 29064, par_relax_more.c:1821.24-34 "A_diag_I[i]"], Node[-1, 28821, par_relax_more.c:1769.27-37 "A_offd_I[i]"], Node[-1, 28572, par_relax_more.c:1714.40-53 "A_offd_data[j]"], Node[-1, 28827, par_relax_more.c:1769.44-56 "A_offd_I[i+1]"], Node[-1, 28632, par_relax_more.c:1727.44-56 "A_offd_I[i+1]"], Node[-1, 28999, par_relax_more.c:1804.43-56 "A_diag_data[j]"], Node[-1, 28719, par_relax_more.c:1746.40-53 "A_diag_data[j]"], Node[-1, 28892, par_relax_more.c:1782.29-42 "A_diag_data[j]"], Node[-1, 28597, par_relax_more.c:1721.41-53 "A_diag_I[i+1]"], Node[-1, 29012, par_relax_more.c:1807.47-60 "A_diag_data[j]"], Node[-1, 29240, par_relax_more.c:1857.18-27 "l1_norm[i]"], Node[-1, 28799, par_relax_more.c:1763.34-55 "cf_marker[A_diag_J[j]]"], Node[-1, 28545, par_relax_more.c:1709.37-50 "A_diag_data[j]"], Node[-1, 29077, par_relax_more.c:1823.23-33 "A_diag_J[j]"], Node[-1, 28649, par_relax_more.c:1729.43-56 "A_offd_data[j]"], Node[-1, 28591, par_relax_more.c:1721.24-34 "A_diag_I[i]"], Node[-1, 28738, par_relax_more.c:1751.44-56 "A_offd_I[i+1]"], Node[-1, 29131, par_relax_more.c:1833.47-60 "A_diag_data[j]"], Node[-1, 28895, par_relax_more.c:1782.46-59 "A_diag_data[j]"], Node[-1, 29216, par_relax_more.c:1853.13-36 "A_diag_data[A_diag_I[i]]"], Node[-1, 28844, par_relax_more.c:1771.43-56 "A_offd_data[j]"], Node[-1, 28904, par_relax_more.c:1784.24-34 "A_offd_I[i]"], Node[-1, 29070, par_relax_more.c:1821.41-53 "A_diag_I[i+1]"], Node[-1, 29106, par_relax_more.c:1829.36-49 "A_diag_data[j]"], Node[-1, 28606, par_relax_more.c:1722.33-54 "cf_marker[A_diag_J[j]]"], Node[-1, 28910, par_relax_more.c:1784.41-53 "A_offd_I[i+1]"], Node[-1, 28529, par_relax_more.c:1708.24-34 "A_diag_I[i]"], Node[-1, 29223, par_relax_more.c:1854.26-35 "l1_norm[i]"], Node[-1, 28780, par_relax_more.c:1761.23-33 "A_diag_J[j]"], Node[-1, 28966, par_relax_more.c:1798.23-33 "A_diag_J[j]"], Node[-1, 29058, par_relax_more.c:1819.25-36 "cf_marker[i]"], Node[-1, 28585, par_relax_more.c:1719.25-36 "cf_marker[i]"], Node[-1, 29096, par_relax_more.c:1825.34-55 "cf_marker[A_diag_J[j]]"], Node[-1, 28641, par_relax_more.c:1728.36-62 "cf_marker_offd[A_offd_J[j]]"], Node[-1, 28699, par_relax_more.c:1744.23-33 "A_diag_J[j]"], Node[-1, 28987, par_relax_more.c:1803.36-49 "A_diag_data[j]"], Node[-1, 29162, par_relax_more.c:1840.36-62 "cf_marker_offd[A_offd_J[j]]"], Node[-1, 29147, par_relax_more.c:1839.27-37 "A_offd_I[i]"], Node[-1, 28556, par_relax_more.c:1713.27-37 "A_offd_I[i]"], Node[-1, 28626, par_relax_more.c:1727.27-37 "A_offd_I[i]"], Node[-1, 28877, par_relax_more.c:1781.21-31 "A_diag_I[i]"], Node[-1, 28959, par_relax_more.c:1796.41-53 "A_diag_I[i+1]"], Node[-1, 29028, par_relax_more.c:1813.27-37 "A_offd_I[i]"], Node[-1, 28692, par_relax_more.c:1742.41-53 "A_diag_I[i+1]"], Node[-1, 28953, par_relax_more.c:1796.24-34 "A_diag_I[i]"], Node[-1, 29044, par_relax_more.c:1814.44-57 "A_offd_data[j]"], Node[-1, 28686, par_relax_more.c:1742.24-34 "A_diag_I[i]"], Node[-1, 28748, par_relax_more.c:1752.40-53 "A_offd_data[j]"]]
|
|---|
| 398 | Found independent OpenMP for Node[-1, 0, hypre_smp_forloop.h:21.1-22.0 "pragma omp parallel for private ... \n" included from par_relax_more.c:2267]
|
|---|
| 399 | writeVars : []
|
|---|
| 400 | readVars : []
|
|---|
| 401 | writeArrays : [Node[-1, 30632, par_relax_more.c:2269.7-17 "tmp_data[i]"]]
|
|---|
| 402 | readArrays : [Node[-1, 30635, par_relax_more.c:2269.21-29 "u_data[i]"]]
|
|---|
| 403 | Found independent OpenMP for Node[-1, 0, hypre_smp_forloop.h:21.1-22.0 "pragma omp parallel for private ... \n" included from par_relax_more.c:2271]
|
|---|
| 404 | writeVars : []
|
|---|
| 405 | readVars : [Entity[kind=VARIABLE, name=num_threads, linkage=NONE, type=0, definition=-1], Entity[kind=VARIABLE, name=zero, linkage=NONE, type=8, definition=-1], Entity[kind=VARIABLE, name=n, linkage=NONE, type=0, definition=-1]]
|
|---|
| 406 | writeArrays : [Node[-1, 30816, par_relax_more.c:2311.15-23 "u_data[i]"]]
|
|---|
| 407 | readArrays : [Node[-1, 30792, par_relax_more.c:2306.43-55 "A_offd_i[i+1]"], Node[-1, 30799, par_relax_more.c:2308.23-34 "A_offd_j[jj]"], Node[-1, 30736, par_relax_more.c:2296.25-35 "A_diag_i[i]"], Node[-1, 30820, par_relax_more.c:2311.34-44 "l1_norms[i]"], Node[-1, 30786, par_relax_more.c:2306.25-35 "A_offd_i[i]"], Node[-1, 30730, par_relax_more.c:2295.21-29 "f_data[i]"], Node[-1, 30749, par_relax_more.c:2298.23-34 "A_diag_j[jj]"], Node[-1, 30724, par_relax_more.c:2293.17-40 "A_diag_data[A_diag_i[i]]"], Node[-1, 30742, par_relax_more.c:2296.43-55 "A_diag_i[i+1]"]]
|
|---|
| 408 | Found independent OpenMP for Node[-1, 0, hypre_smp_forloop.h:21.1-22.0 "pragma omp parallel for private ... \n" included from par_relax_more.c:2323]
|
|---|
| 409 | writeVars : []
|
|---|
| 410 | readVars : []
|
|---|
| 411 | writeArrays : [Node[-1, 30856, par_relax_more.c:2326.2-12 "tmp_data[i]"]]
|
|---|
| 412 | readArrays : [Node[-1, 30859, par_relax_more.c:2326.16-24 "u_data[i]"]]
|
|---|
| 413 | Checking Array Refs for:
|
|---|
| 414 | Node[-1, 31068, par_relax_more.c:2373.15-20 "u_data"][Node[-1, 31069, par_relax_more.c:2373.22 "i"]]
|
|---|
| 415 | Node[-1, 31015, par_relax_more.c:2363.68-73 "u_data"][Node[-1, 31016, par_relax_more.c:2363.75-76 "ii"]]
|
|---|
| 416 | with bounding conditions:[Node[-1, 44797, hypre_smp_forloop.h:21.1-22.0 "pragma omp parallel for private ... \n" included from par_relax_more.c:2329], Node[-1, 30879, par_relax_more.c:2330.18-32 "j < num_threads"]]
|
|---|
| 417 | Found dependent OpenMP for Node[-1, 0, hypre_smp_forloop.h:21.1-22.0 "pragma omp parallel for private ... \n" included from par_relax_more.c:2329]
|
|---|
| 418 | writeVars : [Entity[kind=VARIABLE, name=res2, linkage=NONE, type=8, definition=-1]]
|
|---|
| 419 | readVars : [Entity[kind=VARIABLE, name=num_threads, linkage=NONE, type=0, definition=-1], Entity[kind=VARIABLE, name=res2, linkage=NONE, type=8, definition=-1], Entity[kind=VARIABLE, name=zero, linkage=NONE, type=8, definition=-1], Entity[kind=VARIABLE, name=n, linkage=NONE, type=0, definition=-1], Entity[kind=VARIABLE, name=c2, linkage=NONE, type=8, definition=-1], Entity[kind=VARIABLE, name=c1, linkage=NONE, type=8, definition=-1]]
|
|---|
| 420 | writeArrays : [Node[-1, 31070, par_relax_more.c:2373.15-23 "u_data[i]"], Node[-1, 30963, par_relax_more.c:2355.15-27 "Vtemp_data[i]"]]
|
|---|
| 421 | readArrays : [Node[-1, 31040, par_relax_more.c:2368.25-35 "A_offd_i[i]"], Node[-1, 30972, par_relax_more.c:2356.25-35 "A_diag_i[i]"], Node[-1, 30985, par_relax_more.c:2358.23-34 "A_diag_j[jj]"], Node[-1, 31046, par_relax_more.c:2368.43-55 "A_offd_i[i+1]"], Node[-1, 30978, par_relax_more.c:2356.43-55 "A_diag_i[i+1]"], Node[-1, 30949, par_relax_more.c:2351.17-40 "A_diag_data[A_diag_i[i]]"], Node[-1, 31011, par_relax_more.c:2363.32-46 "A_diag_data[jj]"], Node[-1, 31080, par_relax_more.c:2373.49-59 "l1_norms[i]"], Node[-1, 31014, par_relax_more.c:2363.51-64 "Vtemp_data[ii]"], Node[-1, 30958, par_relax_more.c:2354.21-29 "f_data[i]"], Node[-1, 31053, par_relax_more.c:2370.23-34 "A_offd_j[jj]"], Node[-1, 31017, par_relax_more.c:2363.68-77 "u_data[ii]"], Node[-1, 30966, par_relax_more.c:2355.31-39 "u_data[i]"]]
|
|---|
| 422 | //======================= int_div.cvl ======================
|
|---|
| 423 | $system[civlc] void $assert(_Bool expr, ...);
|
|---|
| 424 | //======================== civlc.cvh =======================
|
|---|
| 425 | typedef unsigned long size_t;
|
|---|
| 426 | $system[civlc] void $assume(_Bool expr);
|
|---|
| 427 | $system[civlc] double $pow(double base, double exp);
|
|---|
| 428 | //========================= stdio.h ========================
|
|---|
| 429 | $system[stdio] int printf(char* restrict format, ...);
|
|---|
| 430 | //======================== stdlib.h ========================
|
|---|
| 431 | void* calloc(size_t nmemb, size_t size);
|
|---|
| 432 | //========================= math.h =========================
|
|---|
| 433 | double fabs(double x);
|
|---|
| 434 | double sqrt(double x);
|
|---|
| 435 | //======================= utilities.h ======================
|
|---|
| 436 | typedef int hypre_MPI_Comm;
|
|---|
| 437 | typedef int hypre_MPI_Datatype;
|
|---|
| 438 | int hypre_OutOfMemory(int size);
|
|---|
| 439 | char* hypre_CAlloc(int count, int elt_size);
|
|---|
| 440 | extern int hypre__global_error;
|
|---|
| 441 | void hypre_error_handler(char* filename, int line, int ierr);
|
|---|
| 442 | //======================== seq_mv.h ========================
|
|---|
| 443 | typedef struct $anon_struct_12{
|
|---|
| 444 | double* data;
|
|---|
| 445 | int* i;
|
|---|
| 446 | int* j;
|
|---|
| 447 | int num_rows;
|
|---|
| 448 | int num_cols;
|
|---|
| 449 | int num_nonzeros;
|
|---|
| 450 | int* rownnz;
|
|---|
| 451 | int num_rownnz;
|
|---|
| 452 | int owns_data;
|
|---|
| 453 | double* expand_data;
|
|---|
| 454 | } hypre_CSRMatrix;
|
|---|
| 455 | typedef struct $anon_struct_14{
|
|---|
| 456 | double* data;
|
|---|
| 457 | int size;
|
|---|
| 458 | int owns_data;
|
|---|
| 459 | int num_vectors;
|
|---|
| 460 | int multivec_storage_method;
|
|---|
| 461 | int vecstride;
|
|---|
| 462 | int idxstride;
|
|---|
| 463 | } hypre_Vector;
|
|---|
| 464 | //======================= parcsr_mv.h ======================
|
|---|
| 465 | typedef struct $anon_struct_15{
|
|---|
| 466 | hypre_MPI_Comm comm;
|
|---|
| 467 | int num_sends;
|
|---|
| 468 | int* send_procs;
|
|---|
| 469 | int* send_map_starts;
|
|---|
| 470 | int* send_map_elmts;
|
|---|
| 471 | int num_recvs;
|
|---|
| 472 | int* recv_procs;
|
|---|
| 473 | int* recv_vec_starts;
|
|---|
| 474 | hypre_MPI_Datatype* send_mpi_types;
|
|---|
| 475 | hypre_MPI_Datatype* recv_mpi_types;
|
|---|
| 476 | } hypre_ParCSRCommPkg;
|
|---|
| 477 | typedef struct $anon_struct_17{
|
|---|
| 478 | int length;
|
|---|
| 479 | int row_start;
|
|---|
| 480 | int row_end;
|
|---|
| 481 | int storage_length;
|
|---|
| 482 | int* proc_list;
|
|---|
| 483 | int* row_start_list;
|
|---|
| 484 | int* row_end_list;
|
|---|
| 485 | int* sort_index;
|
|---|
| 486 | } hypre_IJAssumedPart;
|
|---|
| 487 | typedef struct $anon_struct_19{
|
|---|
| 488 | hypre_MPI_Comm comm;
|
|---|
| 489 | int global_size;
|
|---|
| 490 | int first_index;
|
|---|
| 491 | int last_index;
|
|---|
| 492 | int* partitioning;
|
|---|
| 493 | hypre_Vector* local_vector;
|
|---|
| 494 | int owns_data;
|
|---|
| 495 | int owns_partitioning;
|
|---|
| 496 | hypre_IJAssumedPart* assumed_partition;
|
|---|
| 497 | } hypre_ParVector;
|
|---|
| 498 | typedef struct $anon_struct_20{
|
|---|
| 499 | hypre_MPI_Comm comm;
|
|---|
| 500 | int global_num_rows;
|
|---|
| 501 | int global_num_cols;
|
|---|
| 502 | int first_row_index;
|
|---|
| 503 | int first_col_diag;
|
|---|
| 504 | int last_row_index;
|
|---|
| 505 | int last_col_diag;
|
|---|
| 506 | hypre_CSRMatrix* diag;
|
|---|
| 507 | hypre_CSRMatrix* offd;
|
|---|
| 508 | int* col_map_offd;
|
|---|
| 509 | int* row_starts;
|
|---|
| 510 | int* col_starts;
|
|---|
| 511 | hypre_ParCSRCommPkg* comm_pkg;
|
|---|
| 512 | hypre_ParCSRCommPkg* comm_pkgT;
|
|---|
| 513 | int owns_data;
|
|---|
| 514 | int owns_row_starts;
|
|---|
| 515 | int owns_col_starts;
|
|---|
| 516 | int num_nonzeros;
|
|---|
| 517 | double d_num_nonzeros;
|
|---|
| 518 | int* rowindices;
|
|---|
| 519 | double* rowvalues;
|
|---|
| 520 | int getrowactive;
|
|---|
| 521 | hypre_IJAssumedPart* assumed_partition;
|
|---|
| 522 | } hypre_ParCSRMatrix;
|
|---|
| 523 | int hypre_ParCSRMatrixMatvec(double alpha, hypre_ParCSRMatrix* A, hypre_ParVector* x, double beta, hypre_ParVector* y);
|
|---|
| 524 | hypre_ParVector* hypre_ParVectorCreate(hypre_MPI_Comm comm, int global_size, int* partitioning);
|
|---|
| 525 | int hypre_ParVectorDestroy(hypre_ParVector* vector);
|
|---|
| 526 | int hypre_ParVectorInitialize(hypre_ParVector* vector);
|
|---|
| 527 | int hypre_ParVectorSetPartitioningOwner(hypre_ParVector* vector, int owns_partitioning);
|
|---|
| 528 | int hypre_ParVectorSetConstantValues(hypre_ParVector* v, double value);
|
|---|
| 529 | int hypre_ParVectorSetRandomValues(hypre_ParVector* v, int seed);
|
|---|
| 530 | int hypre_ParVectorCopy(hypre_ParVector* x, hypre_ParVector* y);
|
|---|
| 531 | int hypre_ParVectorAxpy(double alpha, hypre_ParVector* x, hypre_ParVector* y);
|
|---|
| 532 | double hypre_ParVectorInnerProd(hypre_ParVector* x, hypre_ParVector* y);
|
|---|
| 533 | //======================= parcsr_ls.h ======================
|
|---|
| 534 | int hypre_ParCSRMaxEigEstimateCG(hypre_ParCSRMatrix* A, int scale, int max_iter, double* max_eig, double* min_eig);
|
|---|
| 535 | //==================== OpenMPTransformer ===================
|
|---|
| 536 | $input int _omp_thread_max;
|
|---|
| 537 | //========================= main.c =========================
|
|---|
| 538 | int main() {
|
|---|
| 539 | hypre_ParCSRMatrix A;
|
|---|
| 540 | int scale = 0;
|
|---|
| 541 | int max_iter = 0;
|
|---|
| 542 | double max_eig = 0;
|
|---|
| 543 | double min_eig = 0;
|
|---|
| 544 | int r1 = hypre_ParCSRMaxEigEstimateCG(&(A), scale, max_iter, &(max_eig), &(min_eig));
|
|---|
| 545 | }
|
|---|
| 546 | //==================== par_relax_more.c ====================
|
|---|
| 547 | int hypre_LINPACKcgtql1(int*, double*, double*, int*);
|
|---|
| 548 | int hypre_ParCSRMaxEigEstimateCG(hypre_ParCSRMatrix* A, int scale, int max_iter, double* max_eig, double* min_eig) {
|
|---|
| 549 | int i;
|
|---|
| 550 | int j;
|
|---|
| 551 | int err;
|
|---|
| 552 | hypre_ParVector* p;
|
|---|
| 553 | hypre_ParVector* s;
|
|---|
| 554 | hypre_ParVector* r;
|
|---|
| 555 | hypre_ParVector* ds;
|
|---|
| 556 | hypre_ParVector* u;
|
|---|
| 557 | double* tridiag;
|
|---|
| 558 | double* trioffd;
|
|---|
| 559 | double lambda_max;
|
|---|
| 560 | double max_row_sum;
|
|---|
| 561 | double beta;
|
|---|
| 562 | double gamma = 0.0;
|
|---|
| 563 | double alpha;
|
|---|
| 564 | double sdotp;
|
|---|
| 565 | double gamma_old;
|
|---|
| 566 | double alphainv;
|
|---|
| 567 | double diag;
|
|---|
| 568 | double lambda_min;
|
|---|
| 569 | double* s_data;
|
|---|
| 570 | double* p_data;
|
|---|
| 571 | double* ds_data;
|
|---|
| 572 | double* u_data;
|
|---|
| 573 | int local_size = ((A)->diag)->num_rows;
|
|---|
| 574 | hypre_CSRMatrix* A_diag = (A)->diag;
|
|---|
| 575 | double* A_diag_data = (A_diag)->data;
|
|---|
| 576 | int* A_diag_i = (A_diag)->i;
|
|---|
| 577 | int size = (A)->global_num_rows;
|
|---|
| 578 | if (size < (int)max_iter)
|
|---|
| 579 | max_iter = (int)size;
|
|---|
| 580 | r = hypre_ParVectorCreate((A)->comm, (A)->global_num_rows, (A)->row_starts);
|
|---|
| 581 | hypre_ParVectorInitialize(r);
|
|---|
| 582 | hypre_ParVectorSetPartitioningOwner(r, 0);
|
|---|
| 583 | p = hypre_ParVectorCreate((A)->comm, (A)->global_num_rows, (A)->row_starts);
|
|---|
| 584 | hypre_ParVectorInitialize(p);
|
|---|
| 585 | hypre_ParVectorSetPartitioningOwner(p, 0);
|
|---|
| 586 | s = hypre_ParVectorCreate((A)->comm, (A)->global_num_rows, (A)->row_starts);
|
|---|
| 587 | hypre_ParVectorInitialize(s);
|
|---|
| 588 | hypre_ParVectorSetPartitioningOwner(s, 0);
|
|---|
| 589 | ds = hypre_ParVectorCreate((A)->comm, (A)->global_num_rows, (A)->row_starts);
|
|---|
| 590 | hypre_ParVectorInitialize(ds);
|
|---|
| 591 | hypre_ParVectorSetPartitioningOwner(ds, 0);
|
|---|
| 592 | u = hypre_ParVectorCreate((A)->comm, (A)->global_num_rows, (A)->row_starts);
|
|---|
| 593 | hypre_ParVectorInitialize(u);
|
|---|
| 594 | hypre_ParVectorSetPartitioningOwner(u, 0);
|
|---|
| 595 | s_data = ((s)->local_vector)->data;
|
|---|
| 596 | p_data = ((p)->local_vector)->data;
|
|---|
| 597 | ds_data = ((ds)->local_vector)->data;
|
|---|
| 598 | u_data = ((u)->local_vector)->data;
|
|---|
| 599 | char* $sef$1 = hypre_CAlloc((unsigned)(max_iter + 1), (unsigned)(sizeof(double)));
|
|---|
| 600 | tridiag = (double*)$sef$1;
|
|---|
| 601 | char* $sef$2 = hypre_CAlloc((unsigned)(max_iter + 1), (unsigned)(sizeof(double)));
|
|---|
| 602 | trioffd = (double*)$sef$2;
|
|---|
| 603 | for (i = 0; i < (max_iter + 1); i = i + 1) {
|
|---|
| 604 | tridiag[i] = 0;
|
|---|
| 605 | trioffd[i] = 0;
|
|---|
| 606 | }
|
|---|
| 607 | hypre_ParVectorSetRandomValues(r, 1);
|
|---|
| 608 | if (scale) {
|
|---|
| 609 | for (i = 0; i < local_size; i = i + 1) {
|
|---|
| 610 | diag = A_diag_data[A_diag_i[i]];
|
|---|
| 611 | double $sef$3 = sqrt(diag);
|
|---|
| 612 | ds_data[i] = 1 / $sef$3;
|
|---|
| 613 | }
|
|---|
| 614 | }
|
|---|
| 615 | else {
|
|---|
| 616 | hypre_ParVectorSetConstantValues(ds, 1.0);
|
|---|
| 617 | }
|
|---|
| 618 | gamma = hypre_ParVectorInnerProd(r, p);
|
|---|
| 619 | beta = 1.0;
|
|---|
| 620 | max_row_sum = 0.0;
|
|---|
| 621 | i = 0;
|
|---|
| 622 | while (i < max_iter) {
|
|---|
| 623 | hypre_ParVectorCopy(r, s);
|
|---|
| 624 | gamma_old = gamma;
|
|---|
| 625 | gamma = hypre_ParVectorInnerProd(r, s);
|
|---|
| 626 | if (i == 0) {
|
|---|
| 627 | beta = 1.0;
|
|---|
| 628 | hypre_ParVectorCopy(s, p);
|
|---|
| 629 | }
|
|---|
| 630 | else {
|
|---|
| 631 | beta = gamma / gamma_old;
|
|---|
| 632 | for (j = 0; j < local_size; j = j + 1) {
|
|---|
| 633 | p_data[j] = (s_data[j]) + (beta * (p_data[j]));
|
|---|
| 634 | }
|
|---|
| 635 | }
|
|---|
| 636 | if (scale) {
|
|---|
| 637 | for (j = 0; j < local_size; j = j + 1) {
|
|---|
| 638 | u_data[j] = (ds_data[j]) * (p_data[j]);
|
|---|
| 639 | }
|
|---|
| 640 | hypre_ParCSRMatrixMatvec(1.0, A, u, 0.0, s);
|
|---|
| 641 | for (j = 0; j < local_size; j = j + 1) {
|
|---|
| 642 | s_data[j] = (ds_data[j]) * (s_data[j]);
|
|---|
| 643 | }
|
|---|
| 644 | }
|
|---|
| 645 | else {
|
|---|
| 646 | hypre_ParCSRMatrixMatvec(1.0, A, p, 0.0, s);
|
|---|
| 647 | }
|
|---|
| 648 | sdotp = hypre_ParVectorInnerProd(s, p);
|
|---|
| 649 | alpha = gamma / sdotp;
|
|---|
| 650 | alphainv = 1.0 / alpha;
|
|---|
| 651 | tridiag[i + 1] = alphainv;
|
|---|
| 652 | tridiag[i] = (tridiag[i]) * beta;
|
|---|
| 653 | tridiag[i] = (tridiag[i]) + alphainv;
|
|---|
| 654 | trioffd[i + 1] = alphainv;
|
|---|
| 655 | double $sef$4 = sqrt(beta);
|
|---|
| 656 | trioffd[i] = (trioffd[i]) * $sef$4;
|
|---|
| 657 | hypre_ParVectorAxpy(-alpha, s, r);
|
|---|
| 658 | i = i + 1;
|
|---|
| 659 | }
|
|---|
| 660 | hypre_LINPACKcgtql1(&(i), tridiag, trioffd, &(err));
|
|---|
| 661 | lambda_max = tridiag[i - 1];
|
|---|
| 662 | lambda_min = tridiag[0];
|
|---|
| 663 | hypre_ParVectorDestroy(r);
|
|---|
| 664 | hypre_ParVectorDestroy(s);
|
|---|
| 665 | hypre_ParVectorDestroy(p);
|
|---|
| 666 | hypre_ParVectorDestroy(ds);
|
|---|
| 667 | hypre_ParVectorDestroy(u);
|
|---|
| 668 | *max_eig = lambda_max;
|
|---|
| 669 | *min_eig = lambda_min;
|
|---|
| 670 | return hypre__global_error;
|
|---|
| 671 | }
|
|---|
| 672 | double hypre_LINPACKcgpthy(double*, double*);
|
|---|
| 673 | int hypre_LINPACKcgtql1(int* n, double* d, double* e, int* ierr) {
|
|---|
| 674 | int i__1;
|
|---|
| 675 | int i__2;
|
|---|
| 676 | double d__1;
|
|---|
| 677 | double d__2;
|
|---|
| 678 | double c_b10 = 1.0;
|
|---|
| 679 | double c;
|
|---|
| 680 | double f;
|
|---|
| 681 | double g;
|
|---|
| 682 | double h;
|
|---|
| 683 | int i;
|
|---|
| 684 | int j;
|
|---|
| 685 | int l;
|
|---|
| 686 | int m;
|
|---|
| 687 | double p;
|
|---|
| 688 | double r;
|
|---|
| 689 | double s;
|
|---|
| 690 | double c2;
|
|---|
| 691 | double c3 = 0.0;
|
|---|
| 692 | int l1;
|
|---|
| 693 | int l2;
|
|---|
| 694 | double s2 = 0.0;
|
|---|
| 695 | int ii;
|
|---|
| 696 | double dl1;
|
|---|
| 697 | double el1;
|
|---|
| 698 | int mml;
|
|---|
| 699 | double tst1;
|
|---|
| 700 | double tst2;
|
|---|
| 701 | double ds;
|
|---|
| 702 | e = e - 1;
|
|---|
| 703 | d = d - 1;
|
|---|
| 704 | *ierr = 0;
|
|---|
| 705 | if ((*n) == 1) {
|
|---|
| 706 | goto L1001;
|
|---|
| 707 | }
|
|---|
| 708 | i__1 = *n;
|
|---|
| 709 | for (i = 2; i <= i__1; i = i + 1) {
|
|---|
| 710 | e[i - 1] = e[i];
|
|---|
| 711 | }
|
|---|
| 712 | f = 0.;
|
|---|
| 713 | tst1 = 0.;
|
|---|
| 714 | e[*n] = 0.;
|
|---|
| 715 | i__1 = *n;
|
|---|
| 716 | for (l = 1; l <= i__1; l = l + 1) {
|
|---|
| 717 | j = 0;
|
|---|
| 718 | d__1 = d[l];
|
|---|
| 719 | double $sef$25 = fabs(d__1);
|
|---|
| 720 | d__2 = e[l];
|
|---|
| 721 | double $sef$26 = fabs(d__2);
|
|---|
| 722 | h = $sef$25 + $sef$26;
|
|---|
| 723 | if (tst1 < h) {
|
|---|
| 724 | tst1 = h;
|
|---|
| 725 | }
|
|---|
| 726 | i__2 = *n;
|
|---|
| 727 | for (m = l; m <= i__2; m = m + 1) {
|
|---|
| 728 | d__1 = e[m];
|
|---|
| 729 | double $sef$27 = fabs(d__1);
|
|---|
| 730 | tst2 = tst1 + $sef$27;
|
|---|
| 731 | if (tst2 == tst1) {
|
|---|
| 732 | goto L120;
|
|---|
| 733 | }
|
|---|
| 734 | }
|
|---|
| 735 | L120:
|
|---|
| 736 | if (m == l) {
|
|---|
| 737 | goto L210;
|
|---|
| 738 | }
|
|---|
| 739 | L130:
|
|---|
| 740 | if (j == 30) {
|
|---|
| 741 | goto L1000;
|
|---|
| 742 | }
|
|---|
| 743 | j = j + 1;
|
|---|
| 744 | l1 = l + 1;
|
|---|
| 745 | l2 = l1 + 1;
|
|---|
| 746 | g = d[l];
|
|---|
| 747 | p = ((d[l1]) - g) / ((e[l]) * 2.);
|
|---|
| 748 | r = hypre_LINPACKcgpthy(&(p), &(c_b10));
|
|---|
| 749 | ds = 1.0;
|
|---|
| 750 | if (p < 0.0)
|
|---|
| 751 | ds = -1.0;
|
|---|
| 752 | d[l] = (e[l]) / (p + (ds * r));
|
|---|
| 753 | d[l1] = (e[l]) * (p + (ds * r));
|
|---|
| 754 | dl1 = d[l1];
|
|---|
| 755 | h = g - (d[l]);
|
|---|
| 756 | if (l2 > (*n)) {
|
|---|
| 757 | goto L145;
|
|---|
| 758 | }
|
|---|
| 759 | i__2 = *n;
|
|---|
| 760 | for (i = l2; i <= i__2; i = i + 1) {
|
|---|
| 761 | d[i] = (d[i]) - h;
|
|---|
| 762 | }
|
|---|
| 763 | L145:
|
|---|
| 764 | f = f + h;
|
|---|
| 765 | p = d[m];
|
|---|
| 766 | c = 1.;
|
|---|
| 767 | c2 = c;
|
|---|
| 768 | el1 = e[l1];
|
|---|
| 769 | s = 0.;
|
|---|
| 770 | mml = m - l;
|
|---|
| 771 | i__2 = mml;
|
|---|
| 772 | for (ii = 1; ii <= i__2; ii = ii + 1) {
|
|---|
| 773 | c3 = c2;
|
|---|
| 774 | c2 = c;
|
|---|
| 775 | s2 = s;
|
|---|
| 776 | i = m - ii;
|
|---|
| 777 | g = c * (e[i]);
|
|---|
| 778 | h = c * p;
|
|---|
| 779 | r = hypre_LINPACKcgpthy(&(p), &(e[i]));
|
|---|
| 780 | e[i + 1] = s * r;
|
|---|
| 781 | s = (e[i]) / r;
|
|---|
| 782 | c = p / r;
|
|---|
| 783 | p = (c * (d[i])) - (s * g);
|
|---|
| 784 | d[i + 1] = h + (s * ((c * g) + (s * (d[i]))));
|
|---|
| 785 | }
|
|---|
| 786 | p = (((((-s) * s2) * c3) * el1) * (e[l])) / dl1;
|
|---|
| 787 | e[l] = s * p;
|
|---|
| 788 | d[l] = c * p;
|
|---|
| 789 | d__1 = e[l];
|
|---|
| 790 | double $sef$28 = fabs(d__1);
|
|---|
| 791 | tst2 = tst1 + $sef$28;
|
|---|
| 792 | if (tst2 > tst1) {
|
|---|
| 793 | goto L130;
|
|---|
| 794 | }
|
|---|
| 795 | L210:
|
|---|
| 796 | p = (d[l]) + f;
|
|---|
| 797 | if (l == 1) {
|
|---|
| 798 | goto L250;
|
|---|
| 799 | }
|
|---|
| 800 | i__2 = l;
|
|---|
| 801 | for (ii = 2; ii <= i__2; ii = ii + 1) {
|
|---|
| 802 | i = (l + 2) - ii;
|
|---|
| 803 | if (p >= (d[i - 1])) {
|
|---|
| 804 | goto L270;
|
|---|
| 805 | }
|
|---|
| 806 | d[i] = d[i - 1];
|
|---|
| 807 | }
|
|---|
| 808 | L250:
|
|---|
| 809 | i = 1;
|
|---|
| 810 | L270:
|
|---|
| 811 | d[i] = p;
|
|---|
| 812 | }
|
|---|
| 813 | goto L1001;
|
|---|
| 814 | L1000:
|
|---|
| 815 | *ierr = l;
|
|---|
| 816 | L1001:
|
|---|
| 817 | return 0;
|
|---|
| 818 | }
|
|---|
| 819 | double hypre_LINPACKcgpthy(double* a, double* b) {
|
|---|
| 820 | double ret_val;
|
|---|
| 821 | double d__1;
|
|---|
| 822 | double d__2;
|
|---|
| 823 | double d__3;
|
|---|
| 824 | double p;
|
|---|
| 825 | double r;
|
|---|
| 826 | double s;
|
|---|
| 827 | double t;
|
|---|
| 828 | double u;
|
|---|
| 829 | d__1 = fabs(*a);
|
|---|
| 830 | d__2 = fabs(*b);
|
|---|
| 831 | p = d__1 < d__2 ? d__2 : d__1;
|
|---|
| 832 | if (!p) {
|
|---|
| 833 | goto L20;
|
|---|
| 834 | }
|
|---|
| 835 | d__2 = fabs(*a);
|
|---|
| 836 | d__3 = fabs(*b);
|
|---|
| 837 | d__1 = (d__2 < d__3 ? d__2 : d__3) / p;
|
|---|
| 838 | r = d__1 * d__1;
|
|---|
| 839 | L10:
|
|---|
| 840 | t = r + 4.;
|
|---|
| 841 | if (t == 4.) {
|
|---|
| 842 | goto L20;
|
|---|
| 843 | }
|
|---|
| 844 | s = r / t;
|
|---|
| 845 | u = (s * 2.) + 1.;
|
|---|
| 846 | p = u * p;
|
|---|
| 847 | d__1 = s / u;
|
|---|
| 848 | r = (d__1 * d__1) * r;
|
|---|
| 849 | goto L10;
|
|---|
| 850 | L20:
|
|---|
| 851 | ret_val = p;
|
|---|
| 852 | return ret_val;
|
|---|
| 853 | }
|
|---|
| 854 | //===================== hypre_memory.c =====================
|
|---|
| 855 | int hypre_OutOfMemory(int size) {
|
|---|
| 856 | printf("Out of memory trying to allocate %d bytes\n", size);
|
|---|
| 857 | hypre_error_handler(0, 0, 2);
|
|---|
| 858 | return 0;
|
|---|
| 859 | }
|
|---|
| 860 | char* hypre_CAlloc(int count, int elt_size) {
|
|---|
| 861 | char* ptr;
|
|---|
| 862 | int size = count * elt_size;
|
|---|
| 863 | if (size > 0) {
|
|---|
| 864 | ptr = calloc(count, elt_size);
|
|---|
| 865 | if (ptr == (void*)0) {
|
|---|
| 866 | hypre_OutOfMemory(size);
|
|---|
| 867 | }
|
|---|
| 868 | }
|
|---|
| 869 | else {
|
|---|
| 870 | ptr = (void*)0;
|
|---|
| 871 | }
|
|---|
| 872 | return ptr;
|
|---|
| 873 | }
|
|---|
| 874 | //======================== math.cvl ========================
|
|---|
| 875 | double fabs(double x) {
|
|---|
| 876 | $abstract double FABS(double x);
|
|---|
| 877 | double result = FABS(x);
|
|---|
| 878 | $assume(((x >= 0) => (result == x)) && ((x < 0) => (result == (-x))));
|
|---|
| 879 | return result;
|
|---|
| 880 | }
|
|---|
| 881 | double sqrt(double x) {
|
|---|
| 882 | $assert(x >= 0, "Argument x should be greater than 0.");
|
|---|
| 883 | double $sef$75 = $pow(x, 0.5);
|
|---|
| 884 | return $sef$75;
|
|---|
| 885 | }
|
|---|