28       logical global,cycmpcactive
    31       character*20 solver,labmpc(*)
    32       character*132 textpart(16)
    34       integer nmethod,mei(4),ncv,mxiter,istep,istat,iperturb(2),i,
    36      &  n,key,iline,ipol,inl,ipoinp(2,*),inp(3,*),nev,ithermal,isolver,
    37      &  ipoinpc(0:*),nmpcred,kflag,ipompc(*),ikmpc(*),ilmpc(*),nmpc
    39       real*8 fei(3),pi,fmin,fmax,tol,xboun(*),fmpc(*)
    53          write(*,*) 
'*ERROR in frequencies: *FREQUENCY can only be used'    54          write(*,*) 
'  within a STEP'    60       if(ithermal.gt.1) 
then    68          solver(1:20)=
'SPOOLES             '    69       elseif(isolver.eq.2) 
then    70          solver(1:16)=
'ITERATIVESCALING'    71       elseif(isolver.eq.3) 
then    72          solver(1:17)=
'ITERATIVECHOLESKY'    73       elseif(isolver.eq.4) 
then    75       elseif(isolver.eq.5) 
then    77       elseif(isolver.eq.7) 
then    82          if(textpart(i)(1:7).eq.
'SOLVER=') 
then    83             read(textpart(i)(8:27),
'(a20)') solver
    84          elseif(textpart(i)(1:11).eq.
'STORAGE=YES') 
then    86          elseif(textpart(i)(1:9).eq.
'GLOBAL=NO') 
then    88          elseif(textpart(i)(1:15).eq.
'CYCMPC=INACTIVE') 
then    92      &        
'*WARNING in frequencies: parameter not recognized:'    94      &                 textpart(i)(1:index(textpart(i),
' ')-1)
   100       if(solver(1:7).eq.
'SPOOLES') 
then   102       elseif(solver(1:16).eq.
'ITERATIVESCALING') 
then   103          write(*,*) 
'*WARNING in frequencies: the iterative scaling'   104          write(*,*) 
'         procedure is not available for frequency'   105          write(*,*) 
'         calculations; the default solver is used'   106       elseif(solver(1:17).eq.
'ITERATIVECHOLESKY') 
then   107          write(*,*) 
'*WARNING in frequencies: the iterative scaling'   108          write(*,*) 
'         procedure is not available for frequency'   109          write(*,*) 
'         calculations; the default solver is used'   110       elseif(solver(1:3).eq.
'SGI') 
then   112       elseif(solver(1:5).eq.
'TAUCS') 
then   114       elseif(solver(1:13).eq.
'MATRIXSTORAGE') 
then   116       elseif(solver(1:7).eq.
'PARDISO') 
then   119          write(*,*) 
'*WARNING in frequencies: unknown solver;'   120          write(*,*) 
'         the default solver is used'   123       if((isolver.eq.2).or.(isolver.eq.3)) 
then   124          write(*,*) 
'*ERROR in frequencies: the default solver ',
   126          write(*,*) 
'       cannot be used for frequency calculations '   131       if(iperturb(1).gt.1) iperturb(1)=0
   134       if(isolver.ne.6) 
then   135          call getnewline(inpc,textpart,istat,n,key,iline,ipol,inl,
   136      &        ipoinp,inp,ipoinpc)
   137          if((istat.lt.0).or.(key.eq.1)) 
then   138             write(*,*) 
'*ERROR in frequencies: definition not complete'   144          read(textpart(1)(1:10),
'(i10)',iostat=istat) nev
   145          if(istat.gt.0) 
call inputerror(inpc,ipoinpc,iline,
   148             write(*,*) 
'*ERROR in frequencies: less than 1 eigenvalue re   156          if(textpart(2)(1:1).ne.
' ') 
then   157             read(textpart(2)(1:20),
'(f20.0)',iostat=istat) fmin
   158             if(istat.gt.0) 
call inputerror(inpc,ipoinpc,iline,
   161          if(textpart(3)(1:1).ne.
' ') 
then   162             read(textpart(3)(1:20),
'(f20.0)',iostat=istat) fmax
   163             if(istat.gt.0) 
call inputerror(inpc,ipoinpc,iline,
   184          if(.not.cycmpcactive) 
then   191             call isortii(ilmpc,ikmpc,nmpc,kflag)
   194                if((labmpc(i)(1:6).eq.
'CYCLIC').or.
   195      &            (labmpc(i)(1:9).eq.
'SUBCYCLIC')) cycle
   197                ipompc(nmpcred)=ipompc(i)
   198                labmpc(nmpcred)=labmpc(i)
   199                fmpc(nmpcred)=fmpc(i)
   200                ikmpc(nmpcred)=ikmpc(i)
   201                ilmpc(nmpcred)=nmpcred
   205             call isortii(ikmpc,ilmpc,nmpc,kflag)
   215       call getnewline(inpc,textpart,istat,n,key,iline,ipol,inl,
   216      &     ipoinp,inp,ipoinpc)
 
subroutine isortii(ix, iy, n, kflag)
Definition: isortii.f:6
 
subroutine getnewline(inpc, textpart, istat, n, key, iline, ipol, inl, ipoinp, inp, ipoinpc)
Definition: getnewline.f:21