29 character*132 textpart(16)
31 integer nmethod,mei(4),istep,istat,n,key,ncv,mxiter,
32 & nforc,nload,ithermal,iprestr,i,nk,iperturb(2),iline,ipol,inl,
33 & ipoinp(2,*),inp(3,*),nev,isolver,nbody,ipoinpc(0:*)
35 real*8 fei(3),t0(*),t1(*),tol
38 write(*,*)
'*ERROR in buckles: *BUCKLE can only be used' 39 write(*,*)
' within a STEP' 45 if(ithermal.gt.1)
then 54 elseif(isolver.eq.2)
then 55 solver(1:16)=
'ITERATIVESCALING' 56 elseif(isolver.eq.3)
then 57 solver(1:17)=
'ITERATIVECHOLESKY' 58 elseif(isolver.eq.4)
then 60 elseif(isolver.eq.5)
then 62 elseif(isolver.eq.7)
then 67 if(textpart(i)(1:7).eq.
'SOLVER=')
then 68 read(textpart(i)(8:27),
'(a20)') solver
71 &
'*WARNING in buckles: parameter not recognized:' 73 & textpart(i)(1:index(textpart(i),
' ')-1)
79 if(solver(1:7).eq.
'SPOOLES')
then 81 elseif(solver(1:16).eq.
'ITERATIVESCALING')
then 82 write(*,*)
'*WARNING in frequencies: the iterative scaling' 83 write(*,*)
' procedure is not available for buckling' 84 write(*,*)
' calculations; the default solver is used' 85 elseif(solver(1:17).eq.
'ITERATIVECHOLESKY')
then 86 write(*,*)
'*WARNING in frequencies: the iterative scaling' 87 write(*,*)
' procedure is not available for buckling' 88 write(*,*)
' calculations; the default solver is used' 89 elseif(solver(1:3).eq.
'SGI')
then 91 elseif(solver(1:5).eq.
'TAUCS')
then 93 elseif(solver(1:7).eq.
'PARDISO')
then 96 write(*,*)
'*WARNING in buckles: unknown solver;' 97 write(*,*)
' the default solver is used' 100 if((isolver.eq.2).or.(isolver.eq.3))
then 101 write(*,*)
'*ERROR in buckles: the default solver ',
103 write(*,*)
' cannot be used for buckling calculations ' 108 if(iperturb(1).gt.1) iperturb(1)=0
111 call getnewline(inpc,textpart,istat,n,key,iline,ipol,inl,
112 & ipoinp,inp,ipoinpc)
113 if((istat.lt.0).or.(key.eq.1))
then 114 write(*,*)
'*ERROR in buckles: definition not complete' 120 read(textpart(1)(1:10),
'(i10)',iostat=istat) nev
121 if(istat.gt.0)
call inputerror(inpc,ipoinpc,iline,
124 write(*,*)
'*ERROR in buckles: less than 1 eigenvalue re 128 read(textpart(2)(1:20),
'(f20.0)',iostat=istat) tol
129 if(istat.gt.0)
call inputerror(inpc,ipoinpc,iline,
134 read(textpart(3)(1:10),
'(i10)',iostat=istat) ncv
135 if(istat.gt.0)
call inputerror(inpc,ipoinpc,iline,
141 read(textpart(4)(1:10),
'(i10)',iostat=istat) mxiter
142 if(istat.gt.0)
call inputerror(inpc,ipoinpc,iline,
154 if(ithermal.eq.1)
then 165 call getnewline(inpc,textpart,istat,n,key,iline,ipol,inl,
166 & ipoinp,inp,ipoinpc)
subroutine getnewline(inpc, textpart, istat, n, key, iline, ipol, inl, ipoinp, inp, ipoinpc)
Definition: getnewline.f:21