@@ -3718,6 +3718,28 @@ end function integrate_wrapper
37183718 type (mgis_status) :: s
37193719 s = integrate_wrapper(r, d% ptr, b% ptr)
37203720 end function integrate
3721+ ! integrate_debug
3722+ function integrate_debug (r , d , b ) result(s)
3723+ use mgis, only: mgis_status
3724+ implicit none
3725+ interface
3726+ function integrate_debug_wrapper (r , d , b ) &
3727+ bind(c,name = ' mgis_bv_integrate_debug_2' ) result(s)
3728+ use , intrinsic :: iso_c_binding, only: c_ptr, c_int
3729+ use mgis, only: mgis_status
3730+ implicit none
3731+ integer (kind= c_int), intent (out ) :: r
3732+ type (c_ptr), intent (in ),value :: d
3733+ type (c_ptr), intent (in ),value :: b
3734+ type (mgis_status) :: s
3735+ end function integrate_debug_wrapper
3736+ end interface
3737+ integer , intent (out ) :: r
3738+ type (BehaviourData), intent (in ) :: d
3739+ type (Behaviour), intent (in ) :: b
3740+ type (mgis_status) :: s
3741+ s = integrate_debug_wrapper(r, d% ptr, b% ptr)
3742+ end function integrate_debug
37213743 !
37223744 function integrate_material_data_manager (r , p , m , i , dt ) result(s)
37233745 use , intrinsic :: iso_c_binding, only: c_size_t
@@ -3748,6 +3770,35 @@ end function integrate_material_data_manager_wrapper
37483770 s = integrate_material_data_manager_wrapper(r, p% ptr, m% ptr, i, dt)
37493771 end function integrate_material_data_manager
37503772 !
3773+ function integrate_debug_material_data_manager (r , p , m , i , dt ) result(s)
3774+ use , intrinsic :: iso_c_binding, only: c_size_t
3775+ use mgis_fortran_utilities, only: convert_to_c_index
3776+ use mgis, only: ThreadPool, mgis_status, report_failure
3777+ implicit none
3778+ interface
3779+ function integrate_debug_material_data_manager_wrapper (r , p , m , i , dt ) &
3780+ bind(c,name = ' mgis_bv_integrate_debug_material_data_manager' ) &
3781+ result(s)
3782+ use , intrinsic :: iso_c_binding, only: c_ptr, c_int, c_double
3783+ use mgis, only: mgis_status
3784+ implicit none
3785+ integer (kind= c_int), intent (out ) :: r
3786+ type (c_ptr), intent (in ),value :: p
3787+ type (c_ptr), intent (in ),value :: m
3788+ integer , intent (in ),value :: i
3789+ real (kind = c_double), intent (in ),value :: dt
3790+ type (mgis_status) :: s
3791+ end function integrate_debug_material_data_manager_wrapper
3792+ end interface
3793+ integer , intent (out ) :: r
3794+ type (ThreadPool), intent (in ) :: p
3795+ type (MaterialDataManager), intent (in ) :: m
3796+ integer , intent (in ) :: i
3797+ real (kind = 8 ), intent (in ) :: dt
3798+ type (mgis_status) :: s
3799+ s = integrate_debug_material_data_manager_wrapper(r, p% ptr, m% ptr, i, dt)
3800+ end function integrate_debug_material_data_manager
3801+ !
37513802 function integrate_material_data_manager_with_options (r , p , m , i , dt ) result(s)
37523803 use , intrinsic :: iso_c_binding, only: c_size_t
37533804 use mgis_fortran_utilities, only: convert_to_c_index
@@ -3776,6 +3827,35 @@ end function integrate_material_data_manager_with_options_wrapper
37763827 type (mgis_status) :: s
37773828 s = integrate_material_data_manager_with_options_wrapper(r, p% ptr, m% ptr, i% ptr, dt)
37783829 end function integrate_material_data_manager_with_options
3830+ !
3831+ function integrate_debug_material_data_manager_with_options (r , p , m , i , dt ) result(s)
3832+ use , intrinsic :: iso_c_binding, only: c_size_t
3833+ use mgis_fortran_utilities, only: convert_to_c_index
3834+ use mgis, only: ThreadPool, mgis_status, report_failure
3835+ implicit none
3836+ interface
3837+ function integrate_debug_material_data_manager_with_options_wrapper (r , p , m , i , dt ) &
3838+ bind(c,name = ' mgis_bv_integrate_debug_material_data_manager_with_options' ) &
3839+ result(s)
3840+ use , intrinsic :: iso_c_binding, only: c_ptr, c_int, c_double
3841+ use mgis, only: mgis_status
3842+ implicit none
3843+ integer (kind= c_int), intent (out ) :: r
3844+ type (c_ptr), intent (in ),value :: p
3845+ type (c_ptr), intent (in ),value :: m
3846+ type (c_ptr), intent (in ),value :: i
3847+ real (kind = c_double), intent (in ),value :: dt
3848+ type (mgis_status) :: s
3849+ end function integrate_debug_material_data_manager_with_options_wrapper
3850+ end interface
3851+ integer , intent (out ) :: r
3852+ type (ThreadPool), intent (in ) :: p
3853+ type (MaterialDataManager), intent (in ) :: m
3854+ type (BehaviourIntegrationOptions), intent (in ) :: i
3855+ real (kind = 8 ), intent (in ) :: dt
3856+ type (mgis_status) :: s
3857+ s = integrate_debug_material_data_manager_with_options_wrapper(r, p% ptr, m% ptr, i% ptr, dt)
3858+ end function integrate_debug_material_data_manager_with_options
37793859 !
37803860 function integrate_material_data_manager_part (r , m , i , dt , ni , ne ) result(s)
37813861 use , intrinsic :: iso_c_binding, only: c_size_t
@@ -3818,4 +3898,46 @@ end function integrate_material_data_manager_part_wrapper
38183898 nec = nec + 1
38193899 s = integrate_material_data_manager_part_wrapper(r, m% ptr, i, dt, nic, nec)
38203900 end function integrate_material_data_manager_part
3901+ !
3902+ function integrate_debug_material_data_manager_part (r , m , i , dt , ni , ne ) result(s)
3903+ use , intrinsic :: iso_c_binding, only: c_size_t
3904+ use mgis_fortran_utilities, only: convert_to_c_index
3905+ use mgis, only: mgis_status, report_failure
3906+ implicit none
3907+ interface
3908+ function integrate_debug_material_data_manager_part_wrapper (r , m , i , dt , ni , ne ) &
3909+ bind(c,name = ' mgis_bv_integrate_debug_material_data_manager_part' ) &
3910+ result(s)
3911+ use , intrinsic :: iso_c_binding, only: c_ptr, c_size_t, c_int, c_double
3912+ use mgis, only: mgis_status
3913+ implicit none
3914+ integer (kind= c_int), intent (out ) :: r
3915+ type (c_ptr), intent (in ),value :: m
3916+ integer , intent (in ),value :: i
3917+ real (kind = c_double), intent (in ),value :: dt
3918+ integer (kind = c_size_t), intent (in ),value :: ni
3919+ integer (kind = c_size_t), intent (in ),value :: ne
3920+ type (mgis_status) :: s
3921+ end function integrate_debug_material_data_manager_part_wrapper
3922+ end interface
3923+ integer , intent (out ) :: r
3924+ type (MaterialDataManager), intent (in ) :: m
3925+ integer , intent (in ),value :: i
3926+ real (kind = 8 ), intent (in ) :: dt
3927+ integer :: ni
3928+ integer :: ne
3929+ type (mgis_status) :: s
3930+ integer (kind= c_size_t) :: nic
3931+ integer (kind= c_size_t) :: nec
3932+ if (.not. convert_to_c_index(nic, ni)) then
3933+ s = report_failure(" invalid index" )
3934+ return
3935+ end if
3936+ if (.not. convert_to_c_index(nec, ne)) then
3937+ s = report_failure(" invalid index" )
3938+ return
3939+ end if
3940+ nec = nec + 1
3941+ s = integrate_debug_material_data_manager_part_wrapper(r, m% ptr, i, dt, nic, nec)
3942+ end function integrate_debug_material_data_manager_part
38213943end module mgis_behaviour
0 commit comments