shiftedFlatTensorProduct Module Function

pure module function shiftedFlatTensorProduct(array1, array2, shiftArray, power) result(res)

Takes 2 arrays and produces a flattened tensor product, such that array1's dimension is the inner dimension. If present, shift array should conform to array2 and will be added to array1 as the product is taken The shifted array1 is then optionally raised to a power.

Arguments

Type IntentOptional Attributes Name
real(kind=rk), intent(in), dimension(:) :: array1
real(kind=rk), intent(in), dimension(:) :: array2
real(kind=rk), intent(in), optional, dimension(:) :: shiftArray
real(kind=rk), intent(in), optional :: power

Return Value real(kind=rk), dimension(:), allocatable