@@ -1606,7 +1606,17 @@ subroutine columns_in_partition_group(me,igroup,n_cols,cols,nonzero_rows,indices
1606
1606
num_nonzero_elements_in_col
1607
1607
if (allocated (col_indices)) deallocate (col_indices)
1608
1608
allocate (col_indices(num_nonzero_elements_in_col))
1609
- col_indices = pack (me% indices,mask= me% icol== cols(i))
1609
+ ! col_indices = pack(me%indices,mask=me%icol==cols(i))
1610
+ block
1611
+ integer :: j,n
1612
+ n = 0
1613
+ do j = 1 , size (me% icol)
1614
+ if (me% icol(j)==cols(i)) then
1615
+ n = n + 1
1616
+ col_indices(n) = j
1617
+ end if
1618
+ end do
1619
+ end block
1610
1620
if (allocated (nonzero_rows)) then
1611
1621
nonzero_rows = [nonzero_rows,me% irow(col_indices)]
1612
1622
indices = [indices,col_indices]
@@ -1652,7 +1662,10 @@ subroutine compute_indices(me)
1652
1662
integer :: i ! ! counter
1653
1663
1654
1664
allocate (me% indices(me% num_nonzero_elements))
1655
- me% indices = [(i,i= 1 ,me% num_nonzero_elements)]
1665
+ ! me%indices = [(i,i=1,me%num_nonzero_elements)]
1666
+ do i = 1 , me% num_nonzero_elements
1667
+ me% indices(i) = i
1668
+ end do
1656
1669
1657
1670
end subroutine compute_indices
1658
1671
! *******************************************************************************
@@ -2780,7 +2793,18 @@ subroutine compute_jacobian_partitioned(me,x,dx,jac)
2780
2793
num_nonzero_elements_in_col = count (me% sparsity% icol== cols(i))
2781
2794
if (allocated (col_indices)) deallocate (col_indices)
2782
2795
allocate (col_indices(num_nonzero_elements_in_col))
2783
- col_indices = pack (me% sparsity% indices,mask= me% sparsity% icol== cols(i))
2796
+ ! col_indices = pack(me%sparsity%indices,mask=me%sparsity%icol==cols(i))
2797
+ block
2798
+ integer :: j,n
2799
+ n = 0
2800
+ do j = 1 , size (me% sparsity% icol)
2801
+ if (me% sparsity% icol(j)==cols(i)) then
2802
+ n = n + 1
2803
+ col_indices(n) = j
2804
+ end if
2805
+ end do
2806
+ end block
2807
+
2784
2808
df(me% sparsity% irow(col_indices)) = df(me% sparsity% irow(col_indices)) / &
2785
2809
(me% meth(1 )% df_den_factor* dx(cols(i)))
2786
2810
end do
0 commit comments