!Ethylene (2/2)-CASSCF AIMS deck. !This can be used as a template for other simulations by changing !User options below. The deck calculates couplings for up to three !states simultaneously coupled to the occupied state (NUMCOUP=3.0), !which should suffice for most applications. If this needs to be increased, !modify MPCALC accordingly. !User options symmetry,nosym !Do not change! occ,9,context=MCSCF closed,7,context=MCSCF wf,16,1,0 nstate=3 orient,noorient !Do not change! geomtyp=xyz !Do not change! geometry={ 6 ethylene ground-state geom C 0.0000000031 0.0000000000 0.6768496105 C -0.0000000013 0.0000000000 -0.6768496105 H -0.0000000017 0.9131426983 -1.2402810929 H -0.0000000095 0.9131426983 1.2402810929 H -0.0000000159 -0.9131426983 1.2402810929 H 0.0000000047 -0.9131426983 -1.2402810929 } basis=6-31g* !Aims variables - do not change! ! FMS-Molpro does not support parallel execution. if(NPROC_MPP.gt.1) then skipped endif if(.not.modul_aims) then skipped endif ! tighten thresholds: gthresh,twoint=1.0d-13 gthresh,energy=1.0d-7,gradient=1.0d-2 ! records used by AIMS orbrec=2101.2 cirec=2501.2 diabrec=3000.2 gradrec0=5101.1 do icoup=1,nstate-1 gradrec(icoup)=gradrec0+icoup enddo MPINIT={ !Find the initial CASSCF wavefunction if(orbital.eq.0) then hf multi pspace,10.0 wf;state,nstate maxiter,20 orbital,orbrec ciguess,cirec save,det=cirec if (status.lt.0) then text, MCSCF failed in MPINIT. text, Attempting uncoupled iterations. {multi,so pspace,10.0 wf;state,nstate orbital,orbrec ciguess,cirec save,det=cirec maxiter,50} endif if(status.lt.0) then text,ERROR: could not converge MCSCF. text,FMS should now stop STOP endif endif } MPCALC={ !Calculate Energy and Forces if (jtrj.eq.0) then show,itimestep,itrj; else show,itimestep,itrj,jtraj endif data,truncate,diabrec data,truncate,gradrec0 do icoup=1,nstate-1 data,truncate,gradrec(icoup) enddo data,copy, orbrec, diabrec {multi pspace,10.0 wf;state,nstate maxiter,20 orbital,orbrec ciguess,cirec dm,orbrec save,det=cirec diab,diabrec,save=orbrec } if (status.lt.0) then text, MCSCF failed in MPCALC. text, Attempting uncoupled iterations. {multi pspace,10.0 state,nstate orbital,orbrec ciguess,cirec dm,orbrec save,det=cirec {iterations do,uncouple,1,to,10} maxiter,30 diab,diabrec,save=orbrec } endif if(status.lt.0) then text,ERROR: could not converge MCSCF. text,FMS should now stop STOP endif do istate=1,nstate ener( istate )=energy( istate ) enddo pop;density,orbrec,state=stateind if (numcoup.eq.0.0) then {multi pspace,10.0 wf;state,nstate maxiter,20 orbital,orbrec ciguess,cirec save,det=cirec diab,diabrec,save=orbrec cpmcscf,grad,stateind,save=gradrec0; } elseif (numcoup.eq.1.0) then {multi pspace,10.0 wf;state,nstate maxiter,20 orbital,orbrec ciguess,cirec save,det=cirec diab,diabrec,save=orbrec cpmcscf,grad,stateind,save=gradrec0; cpmcscf,nacm,stateind,stateind2(1),save=gradrec(1); } elseif (numcoup.eq.2.0) then {multi pspace,10.0 wf;state,nstate maxiter,20 orbital,orbrec ciguess,cirec save,det=cirec diab,diabrec,save=orbrec cpmcscf,grad,stateind,save=gradrec0; cpmcscf,nacm,stateind,stateind2(1),save=gradrec(1); cpmcscf,nacm,stateind,stateind2(2),save=gradrec(2); } elseif (numcoup.eq.3.0) then {multi pspace,10.0 wf;state,nstate maxiter,20 orbital,orbrec ciguess,cirec save,det=cirec diab,diabrec,save=orbrec cpmcscf,grad,stateind,save=gradrec0; cpmcscf,nacm,stateind,stateind2(1),save=gradrec(1); cpmcscf,nacm,stateind,stateind2(2),save=gradrec(2); cpmcscf,nacm,stateind,stateind2(3),save=gradrec(3); } elseif (numcoup.ge.4.0) then text, Number of couplings requested: $numcoup beyond limits of input deck. text, Please modify input deck accordingly. STOP endif forces;samc,gradrec0 } MGCOUP={ forces;nacm,gradrec(ncoup) } ! writes a molden file WRITEMOLDEN={ moldenfile='$itrj.$itimestep.molf' put,molden,$moldenfile; } AIMS,dir='./aims_ethyl_CASSCF'