Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=8), | intent(in), | dimension(:,:) | :: | data | ||
real(kind=8), | intent(in), | dimension(size(data,1)) | :: | mean |
function get_covariance(data,mean) result(covariance) real(8),dimension(:,:),intent(in) :: data real(8),dimension(size(data,1)),intent(in) :: mean real(8),dimension(size(data,1),size(data,1)) :: covariance real(8),dimension(size(data,2)) :: Xi,Xj integer :: i,j,ncol,L ncol=size(data,1) L =size(data,2) covariance=0.d0 do i=1,ncol Xi(:)=data(i,:)-mean(i) do j=1,ncol Xj(:)=data(j,:)-mean(j) covariance(i,j) = sum(Xi(:)*Xj(:))/real(L-1,8) enddo enddo end function get_covariance