Zoltan is added as thirdParty package

This commit is contained in:
Hamidreza
2025-05-15 21:58:43 +03:30
parent 83a6e4baa1
commit d7479cf1bd
3392 changed files with 318142 additions and 1 deletions

View File

@ -0,0 +1,212 @@
function Zf90_Set_Num_Edges_Multi_Fn0s(zz,fn_ptr)
integer(Zoltan_INT) :: Zf90_Set_Num_Edges_Multi_Fn0s
type(Zoltan_Struct) , intent(in) :: zz
interface
subroutine fn_ptr(dummy, num_gid_entries, num_lid_entries, num_obj, &
global_id, local_id, num_edges, ierr)
use zoltan_types
integer(Zoltan_INT), intent(in) :: dummy(*)
integer(Zoltan_INT), intent(in) :: num_gid_entries, num_lid_entries
integer(Zoltan_INT), intent(in) :: num_obj
integer(Zoltan_INT), intent(in) :: global_id(*), local_id(*)
integer(Zoltan_INT), intent(out) :: num_edges(*)
integer(Zoltan_INT), intent(out) :: ierr
end subroutine fn_ptr
end interface
integer(Zoltan_INT), dimension(Zoltan_PTR_LENGTH) :: zz_addr
integer(Zoltan_INT) :: nbytes, i
nbytes = Zoltan_PTR_LENGTH
do i=1,nbytes
zz_addr(i) = ichar(zz%addr%addr(i:i))
end do
Zf90_Set_Num_Edges_Multi_Fn0s = Zfw_Set_Fn0s(zz_addr,nbytes,ZOLTAN_NUM_EDGES_MULTI_FN_TYPE%choice,fn_ptr)
end function Zf90_Set_Num_Edges_Multi_Fn0s
function Zf90_Set_Num_Edges_Multi_Fn1s(zz,fn_ptr,data)
integer(Zoltan_INT) :: Zf90_Set_Num_Edges_Multi_Fn1s
type(Zoltan_Struct) , intent(in) :: zz
interface
subroutine fn_ptr(data, num_gid_entries, num_lid_entries, num_obj, &
global_id, local_id, num_edges, ierr)
use zoltan_types
integer(Zoltan_INT) , intent(in) :: data(*)
integer(Zoltan_INT), intent(in) :: num_gid_entries, num_lid_entries
integer(Zoltan_INT), intent(in) :: num_obj
integer(Zoltan_INT), intent(in) :: global_id(*), local_id(*)
integer(Zoltan_INT), intent(out) :: num_edges(*)
integer(Zoltan_INT), intent(out) :: ierr
end subroutine fn_ptr
end interface
integer(Zoltan_INT) , intent(in) :: data(*)
integer(Zoltan_INT), dimension(Zoltan_PTR_LENGTH) :: zz_addr
integer(Zoltan_INT) :: nbytes, i
nbytes = Zoltan_PTR_LENGTH
do i=1,nbytes
zz_addr(i) = ichar(zz%addr%addr(i:i))
end do
Zf90_Set_Num_Edges_Multi_Fn1s = Zfw_Set_Fn1s(zz_addr,nbytes,ZOLTAN_NUM_EDGES_MULTI_FN_TYPE%choice,fn_ptr,data)
end function Zf90_Set_Num_Edges_Multi_Fn1s
function Zf90_Set_Num_Edges_Multi_Fn2s(zz,fn_ptr,data)
integer(Zoltan_INT) :: Zf90_Set_Num_Edges_Multi_Fn2s
type(Zoltan_Struct) , intent(in) :: zz
interface
subroutine fn_ptr(data, num_gid_entries, num_lid_entries, num_obj, &
global_id, local_id, num_edges, ierr)
use zoltan_types
real(Zoltan_FLOAT) , intent(in) :: data(*)
integer(Zoltan_INT), intent(in) :: num_gid_entries, num_lid_entries
integer(Zoltan_INT), intent(in) :: num_obj
integer(Zoltan_INT), intent(in) :: global_id(*), local_id(*)
integer(Zoltan_INT), intent(out) :: num_edges(*)
integer(Zoltan_INT), intent(out) :: ierr
end subroutine fn_ptr
end interface
real(Zoltan_FLOAT) , intent(in) :: data(*)
integer(Zoltan_INT), dimension(Zoltan_PTR_LENGTH) :: zz_addr
integer(Zoltan_INT) :: nbytes, i
nbytes = Zoltan_PTR_LENGTH
do i=1,nbytes
zz_addr(i) = ichar(zz%addr%addr(i:i))
end do
Zf90_Set_Num_Edges_Multi_Fn2s = Zfw_Set_Fn2s(zz_addr,nbytes,ZOLTAN_NUM_EDGES_MULTI_FN_TYPE%choice,fn_ptr,data)
end function Zf90_Set_Num_Edges_Multi_Fn2s
function Zf90_Set_Num_Edges_Multi_Fn3s(zz,fn_ptr,data)
integer(Zoltan_INT) :: Zf90_Set_Num_Edges_Multi_Fn3s
type(Zoltan_Struct) , intent(in) :: zz
interface
subroutine fn_ptr(data, num_gid_entries, num_lid_entries, num_obj, &
global_id, local_id, num_edges, ierr)
use zoltan_types
real(Zoltan_DOUBLE) , intent(in) :: data(*)
integer(Zoltan_INT), intent(in) :: num_gid_entries, num_lid_entries
integer(Zoltan_INT), intent(in) :: num_obj
integer(Zoltan_INT), intent(in) :: global_id(*), local_id(*)
integer(Zoltan_INT), intent(out) :: num_edges(*)
integer(Zoltan_INT), intent(out) :: ierr
end subroutine fn_ptr
end interface
real(Zoltan_DOUBLE) , intent(in) :: data(*)
integer(Zoltan_INT), dimension(Zoltan_PTR_LENGTH) :: zz_addr
integer(Zoltan_INT) :: nbytes, i
nbytes = Zoltan_PTR_LENGTH
do i=1,nbytes
zz_addr(i) = ichar(zz%addr%addr(i:i))
end do
Zf90_Set_Num_Edges_Multi_Fn3s = Zfw_Set_Fn3s(zz_addr,nbytes,ZOLTAN_NUM_EDGES_MULTI_FN_TYPE%choice,fn_ptr,data)
end function Zf90_Set_Num_Edges_Multi_Fn3s
function Zf90_Set_Num_Edges_Multi_Fn4s(zz,fn_ptr,data)
integer(Zoltan_INT) :: Zf90_Set_Num_Edges_Multi_Fn4s
type(Zoltan_Struct) , intent(in) :: zz
interface
subroutine fn_ptr(data, num_gid_entries, num_lid_entries, num_obj, &
global_id, local_id, num_edges, ierr)
use zoltan_types
use zoltan_user_data
type(Zoltan_User_Data_1) , intent(in) :: data
integer(Zoltan_INT), intent(in) :: num_gid_entries, num_lid_entries
integer(Zoltan_INT), intent(in) :: num_obj
integer(Zoltan_INT), intent(in) :: global_id(*), local_id(*)
integer(Zoltan_INT), intent(out) :: num_edges(*)
integer(Zoltan_INT), intent(out) :: ierr
end subroutine fn_ptr
end interface
type(Zoltan_User_Data_1) , intent(in) :: data
integer(Zoltan_INT), dimension(Zoltan_PTR_LENGTH) :: zz_addr
integer(Zoltan_INT) :: nbytes, i
nbytes = Zoltan_PTR_LENGTH
do i=1,nbytes
zz_addr(i) = ichar(zz%addr%addr(i:i))
end do
Zf90_Set_Num_Edges_Multi_Fn4s = Zfw_Set_Fn4s(zz_addr,nbytes,ZOLTAN_NUM_EDGES_MULTI_FN_TYPE%choice,fn_ptr,data)
end function Zf90_Set_Num_Edges_Multi_Fn4s
function Zf90_Set_Num_Edges_Multi_Fn5s(zz,fn_ptr,data)
integer(Zoltan_INT) :: Zf90_Set_Num_Edges_Multi_Fn5s
type(Zoltan_Struct) , intent(in) :: zz
interface
subroutine fn_ptr(data, num_gid_entries, num_lid_entries, num_obj, &
global_id, local_id, num_edges, ierr)
use zoltan_types
use zoltan_user_data
type(Zoltan_User_Data_2) , intent(in) :: data
integer(Zoltan_INT), intent(in) :: num_gid_entries, num_lid_entries
integer(Zoltan_INT), intent(in) :: num_obj
integer(Zoltan_INT), intent(in) :: global_id(*), local_id(*)
integer(Zoltan_INT), intent(out) :: num_edges(*)
integer(Zoltan_INT), intent(out) :: ierr
end subroutine fn_ptr
end interface
type(Zoltan_User_Data_2) , intent(in) :: data
integer(Zoltan_INT), dimension(Zoltan_PTR_LENGTH) :: zz_addr
integer(Zoltan_INT) :: nbytes, i
nbytes = Zoltan_PTR_LENGTH
do i=1,nbytes
zz_addr(i) = ichar(zz%addr%addr(i:i))
end do
Zf90_Set_Num_Edges_Multi_Fn5s = Zfw_Set_Fn5s(zz_addr,nbytes,ZOLTAN_NUM_EDGES_MULTI_FN_TYPE%choice,fn_ptr,data)
end function Zf90_Set_Num_Edges_Multi_Fn5s
function Zf90_Set_Num_Edges_Multi_Fn6s(zz,fn_ptr,data)
integer(Zoltan_INT) :: Zf90_Set_Num_Edges_Multi_Fn6s
type(Zoltan_Struct) , intent(in) :: zz
interface
subroutine fn_ptr(data, num_gid_entries, num_lid_entries, num_obj, &
global_id, local_id, num_edges, ierr)
use zoltan_types
use zoltan_user_data
type(Zoltan_User_Data_3) , intent(in) :: data
integer(Zoltan_INT), intent(in) :: num_gid_entries, num_lid_entries
integer(Zoltan_INT), intent(in) :: num_obj
integer(Zoltan_INT), intent(in) :: global_id(*), local_id(*)
integer(Zoltan_INT), intent(out) :: num_edges(*)
integer(Zoltan_INT), intent(out) :: ierr
end subroutine fn_ptr
end interface
type(Zoltan_User_Data_3) , intent(in) :: data
integer(Zoltan_INT), dimension(Zoltan_PTR_LENGTH) :: zz_addr
integer(Zoltan_INT) :: nbytes, i
nbytes = Zoltan_PTR_LENGTH
do i=1,nbytes
zz_addr(i) = ichar(zz%addr%addr(i:i))
end do
Zf90_Set_Num_Edges_Multi_Fn6s = Zfw_Set_Fn6s(zz_addr,nbytes,ZOLTAN_NUM_EDGES_MULTI_FN_TYPE%choice,fn_ptr,data)
end function Zf90_Set_Num_Edges_Multi_Fn6s
function Zf90_Set_Num_Edges_Multi_Fn7s(zz,fn_ptr,data)
integer(Zoltan_INT) :: Zf90_Set_Num_Edges_Multi_Fn7s
type(Zoltan_Struct) , intent(in) :: zz
interface
subroutine fn_ptr(data, num_gid_entries, num_lid_entries, num_obj, &
global_id, local_id, num_edges, ierr)
use zoltan_types
use zoltan_user_data
type(Zoltan_User_Data_4) , intent(in) :: data
integer(Zoltan_INT), intent(in) :: num_gid_entries, num_lid_entries
integer(Zoltan_INT), intent(in) :: num_obj
integer(Zoltan_INT), intent(in) :: global_id(*), local_id(*)
integer(Zoltan_INT), intent(out) :: num_edges(*)
integer(Zoltan_INT), intent(out) :: ierr
end subroutine fn_ptr
end interface
type(Zoltan_User_Data_4) , intent(in) :: data
integer(Zoltan_INT), dimension(Zoltan_PTR_LENGTH) :: zz_addr
integer(Zoltan_INT) :: nbytes, i
nbytes = Zoltan_PTR_LENGTH
do i=1,nbytes
zz_addr(i) = ichar(zz%addr%addr(i:i))
end do
Zf90_Set_Num_Edges_Multi_Fn7s = Zfw_Set_Fn7s(zz_addr,nbytes,ZOLTAN_NUM_EDGES_MULTI_FN_TYPE%choice,fn_ptr,data)
end function Zf90_Set_Num_Edges_Multi_Fn7s