musrsim/mutrack/src/READ_MAP.INC

49 lines
1.3 KiB
C++

c===============================================================================
c READ_MAP.INC
c===============================================================================
c Dieser Includefile erledigt fuer die Subroutinen 'READ_MAP_xx' das Einlesen
c der Potentialmappe und falls notwendig die Fehlerausgabe.
INCLUDE 'mutrack$sourcedirectory:COM_DIRS.INC'
INCLUDE 'mutrack$sourcedirectory:COM_LUNS.INC'
integer i,j, ihelp, iostat
c Einlesen der Potentialmappe:
open (lunRead,file=mappenName//'.MAPPE',
+ defaultfile=mappenDir,status='old',
+ form='unformatted',recl=imax+1,readonly)
c + form='unformatted',recl=imax,readonly)
do j = 0, jmax
ihelp = j*(imax+1)
read(lunREAD,iostat=iostat) (map(ihelp+i),i=0,imax)
if (iostat.NE.0) then
write(*,*)
write(*,999) i,j,iostat
write(*,*)' Potentialmappe: ',mappenName
write(*,*)' Directory : ',mappenDir
write(*,*)
STOP
endif
enddo
close(lunREAD)
999 format(7x'error reading grid point (i,j) = ('i4','i4')'/7x'iostat = 'i4)
c da die Elektrodenbereiche bei RELAX3D negativ kodiert sind, nimm die
c Absolutbetraege:
ihelp = 0
do j=0, jmax
do i=0, imax
map(ihelp) = abs(map(ihelp))
ihelp = ihelp + 1
enddo
enddo