paduagroup / clandpol

Polarisable force field for ionic liquids
10 stars 17 forks source link

Simplified polarizer #14

Closed agiliopadua closed 3 years ago

agiliopadua commented 3 years ago

The polarizer script was requiring the molecule files with the sole purpose of obtaining the connectivity, in order to compute the number of bonded H and merge the polarizabilities onto heavy atoms. But that information can be obtained from the data. Counting the bonded H from the data allowed to remove a lot of code from the polarizer and makes it much simpler for the user: the only thing it does is to change the data.lmp, no need for the molecule files.

kateryna-goloviznina commented 3 years ago

I agree that reading connectivity from data files is better. In the beginning, we planned to do a module that reads structure files to get atom types and connectivity that would be used both by fftool and polarizer. But your current solution I like more.

There are two things that I would like to keep in polarizer:

kateryna-goloviznina commented 3 years ago

-d option crashes

Traceback (most recent call last):
  File "./polarizer", line 855, in <module>
    main()
  File "./polarizer", line 850, in main
    data.depolarize(drude)
  File "./polarizer", line 516, in depolarize
    if att['dflag'] != 'd':
KeyError: 'dflag'
agiliopadua commented 3 years ago

Is the ice cube still needed with the TGNPT thermostat?

agiliopadua commented 3 years ago

Having default file names for everything means the script can work without any arguments, and if the default files are not present it gives errors instead of printing the help message... I like the scripts to print help if they are run without arguments.

kateryna-goloviznina commented 3 years ago

Is the ice cube still needed with the TGNPT thermostat?

Before you asked, I even had not thought about it. I will do a test run and let you know.

kateryna-goloviznina commented 3 years ago

Having default file names for everything means the script can work without any arguments, and if the default files are not present it gives errors instead of printing the help message... I like the scripts to print help if they are run without arguments.

But can we ask for an input file name and just add '-p' to it to get the output file name? A user needs to type the name of the output file, he cannot use TAB because this file does not exist.

outfile = infile[:-4]+'-p'+infile[-4:]

kateryna-goloviznina commented 3 years ago

Having default file names for everything means the script can work without any arguments, and if the default files are not present it gives errors instead of printing the help message... I like the scripts to print help if they are run without arguments.

This is the case of scaleLJ. It can run without any argument. However, people using our scripts tend to run them as specified in the tutorial with all arguments included.

kateryna-goloviznina commented 3 years ago

Is the ice cube still needed with the TGNPT thermostat?

The test run seems to be fine. But I also want to check with rigid water later.