QCElemental icon indicating copy to clipboard operation
QCElemental copied to clipboard

Solvation Specification

Open wavefunction91 opened this issue 1 year ago • 2 comments

Is your feature request related to a problem? Please describe.

QCSchema (and friends) do not currently expose the ability to (transparently) specify solvation settings. This is a highly desirable feature for the community.

Describe the solution you'd like

It would be desirable to extend the schema to include a solvent data structure to allow for IO specification of solvation settings. Where this lives is not immediately obvious to me - I could see it extending either the molecule schema (to the extent that molecule defines the physical system) or the model schema (to the extent to which one is modifying the model physics - ala method and basis). Wherever this should live, the following items should be made variable

Key Name Description Field Type
name Solvent specification (water, benzene, etc) string
model Solvent model type (PCM, LPB, COSMO-[RS]) string
epsilon Dielectric constant float

Describe alternatives you've considered

It is generally the case that one can specify solvent settings in a program-specific keyword setting, but this is not a satisfying solution for interoperability between codes nor for archiving of data.

wavefunction91 avatar Dec 02 '24 19:12 wavefunction91

On the Molecule vs. AtomicInput.specification.model choice, I think solvation falls on model. For Molecule, besides identifiers, we've been roughly keeping it limited to things having to do with the atom center coordinates.

EDIT: Also, float or string for epsilon?

loriab avatar Dec 02 '24 20:12 loriab

Also, float or string for epsilon?

Good catch

wavefunction91 avatar Dec 03 '24 00:12 wavefunction91