ddiag Function

pure function ddiag(x) result(A)

Arguments

Type IntentOptional Attributes Name
real(kind=8), intent(in) :: x(:)

Return Value real(kind=8), allocatable, (:,:)


Source Code

pure function ddiag(x) result(A)
  real(8), intent(in)  :: x(:)
  real(8), allocatable :: A(:,:)
  integer              :: i, n
  n = size(x)
  allocate(A(n,n))
  A(:,:) = 0d0
  forall(i=1:n) A(i,i) = x(i)
end function ddiag