The name of file must be different in your code. This is the reason you got the error to open an opened file.
I guess, you want to fetch the data from the file (marked as 7) and save the calucated the result to the file (marked as 8).
Here is the example code of mine to show you how to read the data from file properly
program datafetch
implicit none
real :: a(3,3)
real :: b(3,3)
real :: c(3,3)
integer :: i
integer :: j
open(unit=10,file="data.txt",status="old")
open(unit=20,file="result.txt",status="unknown")
read(10,*) ( ( a(i,j), j=1,3 ), i=1,3 )
read(10,*) ( ( b(i,j), j=1,3 ), i=1,3 )
do i=1,3
do j=1,3
c(i,j) = a(i,j) + b(i,j)
enddo
enddo
write(20,*) "result"
write(20,*) ( ( c(i,j), j=1,3 ), i=1,3 )
close(10)
close(20)
end program datafetch