Hi, All, Just want to share information on this thread. Regarding to the segmentation fault. I have found out that gromacs call orca by write command to a buffer called buf. So for example, if the orca path is /usr/local/bin/orca and the BASENAME(prefix of the *.tpr file) is longlonglonglonglonglong then gromacs will write /usr/local/bin/orca longlonglonglonglonglong.inp >> longlonglonglonglonglong.out to a buffer called buf. By default, this buffer has character length of 100(roughly line ~ 410) char buf[100] and it turns out that my orca_path plus the BASENAME is a really long string, definitely exceeding 100. It seems that this is causing the problem since after I increased the buf length to 1000, the optimization at least runs and gradient has been read. More will be updated if I find anything else.
Xiaohu Hi, All, > I'm trying to see if anybody has experience of using the interface of > gromacs and ORCA(since it's free). I know that the following link gave > information on how > http://wwwuser.gwdg.de/~ggroenh/qmmm.html#code<http://wwwuser.gwdg.de/%7Eggroenh/qmmm.html#code> > But.....But, the gromacs in the above link is quite old(3.2). I > download the latest 4.5.3 and followed the instructions in the above link > and I was trying to optimize an simple cluster(no pbc) where part of it are > treated using QM. here is the example mdp file > > ========================================================================================================================= > title = cpeptide > integrator = steep ;integrator includes energy minimization > algorithms > dt = 0.002 ; ps ! > nsteps = 10000 > nstlist = 1 > ns_type = simple > rlist = 3.0 > rcoulomb = 3.0 > coulombtype = cut-off > vdwtype = cut-off > rvdw = 3.0 > pbc = no > periodic_molecules = no > constraints = none > energygrps = qm_part mm_part > ; QM/MM calculation stuff > QMMM = yes > QMMM-grps = qm_part > QMmethod = rhf > QMbasis = 3-21G > QMMMscheme = oniom > QMcharge = 0 > QMmult = 1 > ; > ; Energy minimizing stuff > ; > emtol = 60 ; minimization thresold (kj/mol.nm-1) 1 > hartree/bohr= 49614.75241 kj/mol.nm-1 1 kj/mol.nm-1=2.01553e-5 > hartree/bohr > emstep = 0.01 ; minimization step in nm > > ========================================================================================================================= > I set up the BASENAME and ORCA_PATH as told in the instruction. > first of all, the normal electronic embedding just simply gave segmentation > fault error right after the it prints information on number of steps of > optimization. > > So I switch to ONIOM, this time, at least, orca is called and energy and > gradient are both generated. However, when it comes to read the energy and > gradient, it always crashes when tried to read gradient, this is at *line > 346* source code src/mdlib/qm_orca.c > ============================================ > sscanf(buf,"%lf\n", &QMgrad[k][XX]); > ============================================ > a segmentation fault error is printed. If I replace the &QMgrad[k][XX] by > an > temporary variable temp > sscanf(buf,"%lf\n", &temp); > temp gets the correct value and if I use, > QMgrad[k][XX]=temp > and tries to print QMgrad[k][XX], a bus error will be printed. > I did some research online, seems that usually this implies an memory bug > in > the code which is the most difficult bug one can ever encounter. > So has anyone successfully used gromacs and orca to do QMMM? > Generally, would anyone recommend using gromacs to do QMMM? > > Cheers, > Xiaohu > -------------- next part -------------- > An HTML attachment was scrubbed... > URL: > http://lists.gromacs.org/pipermail/gmx-users/attachments/20110125/16819c97/attachment-0001.html > >
-- gmx-users mailing list gmx-users@gromacs.org http://lists.gromacs.org/mailman/listinfo/gmx-users Please search the archive at http://www.gromacs.org/Support/Mailing_Lists/Search before posting! Please don't post (un)subscribe requests to the list. Use the www interface or send it to gmx-users-requ...@gromacs.org. Can't post? Read http://www.gromacs.org/Support/Mailing_Lists