! description : Return integer value from on-line option ! or from config file subroutine geti_option(name,config,nopt,option,test) implicit none INTEGER i,n,iargc,k,lnblnk,test,test0,nopt,option(50) CHARACTER*256 var,argv CHARACTER*100 config,name,name2 CHARACTER*256 paravc(50) ! Option from config file test0 = 0 name2=name(2:lnblnk(name)) call read_para(name2,config,paravc,test0) ! Option from command line test=0 n= iargc() do i = 1, n call getarg(i,argv) var=argv if (var(1:lnblnk(var)) .eq. name(1:lnblnk(name))) then k = i + 1 call getarg(k,argv) var=argv call get_value(var,paravc,test) if (test.ne.nopt) call err_option(name,3) endif enddo if (test .eq. 0) test=test0 do i = 1, 50 if (i.le.test) then read(paravc(i),'(i10)') option(i) else option(i)=0 endif enddo return end Subroutine geti_option