dasumsub.f (1333B)
1 !> 2 ! @license Apache-2.0 3 ! 4 ! Copyright (c) 2018 The Stdlib Authors. 5 ! 6 ! Licensed under the Apache License, Version 2.0 (the "License"); 7 ! you may not use this file except in compliance with the License. 8 ! You may obtain a copy of the License at 9 ! 10 ! http://www.apache.org/licenses/LICENSE-2.0 11 ! 12 ! Unless required by applicable law or agreed to in writing, software 13 ! distributed under the License is distributed on an "AS IS" BASIS, 14 ! WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 15 ! See the License for the specific language governing permissions and 16 ! limitations under the License. 17 !< 18 19 !> Wraps `dasum` as a subroutine. 20 ! 21 ! @param {integer} N - number of values to sum 22 ! @param {Array<double>} dx - input array 23 ! @param {integer} stride - stride length 24 ! @param {double} sum - output variable reference 25 !< 26 subroutine dasumsub( N, dx, stride, sum ) 27 implicit none 28 ! .. 29 ! External functions: 30 interface 31 double precision function dasum( N, dx, stride ) 32 double precision :: dx(*) 33 integer :: stride, N 34 end function dasum 35 end interface 36 ! .. 37 ! Scalar arguments: 38 integer :: stride, N 39 double precision :: sum 40 ! .. 41 ! Array arguments: 42 double precision :: dx(*) 43 ! .. 44 ! Compute the sum of absolute values: 45 sum = dasum( N, dx, stride ) 46 return 47 end subroutine dasumsub