There exists no problem with fortran. My brain was not open because u(i) gets beyond its bounds.
> Sent: Thursday, May 06, 2021 at 11:09 AM > From: "Christopher Dimech" <dim...@gmx.com> > To: "Eric S Fraga" <e.fr...@ucl.ac.uk> > Cc: "Org Mode List" <emacs-orgmode@gnu.org> > Subject: ob-fortran behaviour > > Fortran is behaving in a weird way > > #+BEGIN_SRC fortran > program matrx_vectr_mult > implicit none > > integer :: m, n, i, j, k > real :: a(5,3), u(3), v(5), rsum > > m = 5; n = 3 > a = 0.0; u = 0.0; v = 0.0 > > k = 0 > do j = 1, n > do i = 1, m > k = i + j > a(i,j) = real(k) > u(i) = real(3*i) > end do > end do > > do i = 1, m > rsum = 0.0 > do j = 1, n > rsum = (a(i,j) * u(j)) + rsum > end do > v(i) = rsum > end do > > write (*,*) "a * *", " * ", "u", " * ", "v" > write (*,*) a(1,:), "*", u(1), "*", v(1) > write (*,*) a(2,:), "*", u(2), "*", v(2) > write (*,*) a(3,:), "*", u(3), "*", v(3) > write (*,*) a(4,:), "* * *", v(4) > write (*,*) a(5,:), "* * *", v(5) > > print *, "---" > write (*,*) a > > end program > #+END_SRC > > #+RESULTS: > | a | * | * | * | u | * | v | | | | | | > | | | > | 12.0 | 3.0 | 4.0 | * | 3.0 | * | 90.0 | | | | | | > | | | > | 15.0 | 4.0 | 5.0 | * | 6.0 | * | 114.0 | | | | | | > | | | > | 4.0 | 5.0 | 6.0 | * | 9.0 | * | 96.0 | | | | | | > | | | > | 5.0 | 6.0 | 7.0 | * | * | * | 114.0 | | | | | | > | | | > | 6.0 | 7.0 | 8.0 | * | * | * | 132.0 | | | | | | > | | | > | --- | | | | | | | | | | | | > | | | > | 12.0 | 15.0 | 4.0 | 5.0 | 6.0 | 3.0 | 4.0 | 5.0 | 6.0 | 7.0 | 4.0 | 5.0 | > 6.0 | 7.0 | 8.0 | > > > --------------------- > Christopher Dimech > General Administrator - Naiad Informatics - GNU Project (Geocomputation) > - Geophysical Simulation > - Geological Subsurface Mapping > - Disaster Preparedness and Mitigation > - Natural Resource Exploration and Production > - Free Software Advocacy > >