!........................................................................ ! description : Read input and output parameter "name" for zphot ! and extract its value if not found returns test=0 subroutine read_para(name,conf,paravc,test) implicit none INTEGER i,j,imax,imin,len_trim,test,index CHARACTER*100 name CHARACTER*256 var,var2,string CHARACTER*100 conf CHARACTER*256 paravc(50) test=0 open(1,file=conf,status='old') i=0 imax=1 do while(.true.) i = i + 1 read(1,'(a)',end=10) var do j=1,256 var2=var(j:j) if (var2(1:1).eq.' ' .or. var2(1:1).eq.char(9)) then imax=j-1 goto 5 endif enddo 5 if (var(1:imax).eq.name(1:len_trim(name))) then test=1 ! extract name to var imin=index(var,'name(1:len_trim(name))') imax=len_trim(name)+imin+1 string=var(imax:len_trim(var)) ! get the value for parameters call get_value(string,paravc,test) goto 10 endif enddo 10 close(1) return end Subroutine read_para