You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
A top level design of the API and CLI would be useful. Could be here, could be in the main README, since it'll be needed as docs eventually anyway. Current process:
phonons_setup(): takes an atoms structure and phonopy control params (supercell, displacement) and returns a list of displaced configs
do your own calculation, store the resulting forces in a cached Calculator
phonons_process(): takes configs with stored forces, returns force constants
analysis
phonons_analyze_bands(): takes force constants, calculate bands along requested path
phonons_analyze_eigenvectors(): takes force constants, calculates eigenvectors and stores them in Atoms.arrays entries
All phonopy specific content is reconstructed as needed from actual atomic configurations and sometimes extra stuff stored in Atoms.info (e.g. the primitive cell that was used to construct the displaced supercells), so you only have to pass one data structure from one stage to the next.
There's also a routine, phonons(), that does all of these in series, with a passed-in ASE calculator, and does some saving/loading of the expensive steps (currently only force calculation).
TODO
make it possible to get forces from an arrays item rather than a cached calculator.
add controls for phono3py displacements (different supercell, atom pair cutoff, displacement)
What else?
The text was updated successfully, but these errors were encountered:
A top level design of the API and CLI would be useful. Could be here, could be in the main README, since it'll be needed as docs eventually anyway. Current process:
phonons_setup()
: takes an atoms structure and phonopy control params (supercell, displacement) and returns a list of displaced configsCalculator
phonons_process()
: takes configs with stored forces, returns force constantsphonons_analyze_bands()
: takes force constants, calculate bands along requested pathphonons_analyze_eigenvectors()
: takes force constants, calculates eigenvectors and stores them inAtoms.arrays
entriesAll
phonopy
specific content is reconstructed as needed from actual atomic configurations and sometimes extra stuff stored inAtoms.info
(e.g. the primitive cell that was used to construct the displaced supercells), so you only have to pass one data structure from one stage to the next.There's also a routine,
phonons()
, that does all of these in series, with a passed-in ASE calculator, and does some saving/loading of the expensive steps (currently only force calculation).TODO
arrays
item rather than a cached calculator.phono3py
displacements (different supercell, atom pair cutoff, displacement)What else?
The text was updated successfully, but these errors were encountered: