sharc-md / sharc

The SHARC molecular dynamics (MD) program suite is an ab initio MD software package developed to study the excited-state dynamics of molecules.
https://www.sharc-md.org
GNU General Public License v3.0
59 stars 31 forks source link

Interface with analytical Surface #110

Open prabhashmahata opened 2 months ago

prabhashmahata commented 2 months ago

Hi, I want to know how to interface analytical surface with SHARC and run the classical trajectory. I have generated my own surface using the SURFGEN code. Now I am trying to run trajectories on these previously generated surfaces using the SHRAC. Could you suggest something ?

Thanks Prabhash

maisebastian commented 2 months ago

Hi, in principle, you could write an interface according to the specifications given in the SHARC manual in https://sharc-md.org/?page_id=50#tth_sEc6.1. In this way, you could use SHARC in the traditional way, which involves communication via file I/O.

Alternatively, in principle there is pysharc, but it is more complicated to interface with that. You can have a look at https://github.com/sharc-md/sharc/blob/main/bin/pysharc_lvc.py. You would need to write a new getQMout routine and all routines that provide data to it/that are called. If you have further questions, feel free to ask.

Best, Sebastian

prabhashmahata commented 2 months ago

Hi Sebastian, I have created two directory sharc-surfgen (It contains few fortran files to read my surfgen generated surface which can provide energy, energy gradients and derivative couplings to sharc) and sharc-main( It contains inputs for sharc, QM subdirectory it contains data for my surface within interface subdirectory). Now sharc is unable to read my surface.

I can share my input if you want .

In the mean time I tried tutorial molecule to run trajectory on the fly. It works for me.

Thanks Prabhash

maisebastian commented 2 months ago

Hi Prabhash, if you want some support from me, please share your input (and maybe code). You can send the files via the SHARC support email address (see manual) if you do not want to share the files with everyone.

Best, Sebastian