! functions.f90 define and use functions and subroutines in module ! used by exf6a.f90 module functions ! in a seperate file public :: fun, subr ! can have some private contains function func(t) result (r) real, intent(in) :: t ! declare parameter types real :: r ! declare result type r = t + 1.0 ! last value stored in result is returned end function func subroutine subr(A) real, dimension(:), intent (in out) :: A ! declare parameter type integer :: n n = size(A) do i = 1,n A(i) = A(i) + 1.0 end do end subroutine subr end module functions