subroutine mvmult(m,v,r,nrd,nr,nc) implicit none real m(nrd,*),v(*),r(*) integer nrd,nr,nc integer i,j do i=1,nr r(i)=0. do j=1,nc r(i)=r(i)+m(i,j)*v(j) enddo enddo return end