Concatenate two autodiff arrays along a specified dimension
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| type(array_ptr_type), | intent(in), | dimension(:) | :: | a | ||
| integer, | intent(in) | :: | idx1 | |||
| integer, | intent(in) | :: | idx2 | |||
| integer, | intent(in) | :: | dim |
module function concat_array_ptr(a, idx1, idx2, dim) result(c) !! Concatenate two autodiff arrays along a specified dimension implicit none ! Arguments type(array_ptr_type), dimension(:), intent(in) :: a integer, intent(in) :: idx1, idx2, dim type(array_type), pointer :: c ! Local variables integer :: i c => concat(a(1)%array(idx1, idx2), a(2)%array(idx1, idx2), dim) do i = 3, size(a), 1 c => concat(c, a(i)%array(idx1, idx2), dim) end do end function concat_array_ptr