Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Custom units+ #26

Merged
merged 27 commits into from
May 25, 2021
Merged

Custom units+ #26

merged 27 commits into from
May 25, 2021

Conversation

kbspooner
Copy link
Collaborator

  • Adds data retrieving tools separate from the plotting tools, as well as command line scripts for these (tp.data.save).
  • Re:vampire:s handling of custom units:
    • xxx_conversions are now uneditable, and instead conversions in the tprc.yaml is used for all codes.
    • these conversions are used automatically when calculating properties with tp.calculate (this can be switched off).
    • as part of this, some calculations have been migrated to tp.calculate.
  • Adds weights for AMSET for k-point weighting and Fermi–Dirac differential.
  • Allows multiple lines to be plotted in tp.plot.frequency.cumkappa so limits can be selected intelligently.
  • Fixes interface with ipython.
  • Other minor bug fixes and performance improvements.

kbspooner and others added 27 commits February 11, 2021 15:59
New functions in `tp.data.save`:
 * `phono3py`: writes phono3py quantities to hdf5
 * `zt`: writes zt to hdf5, and max zt and max zt per temperature,
   along with dependant properties to yaml. Also prints max zt and
   dependant properties to stdout.
 * `kappa_target`: writes target kappa_l to hdf5.
 * `prompt`: prompts before overwriting input file.
This functionality is no longer in the plotting/ loading functions.
change name in setup.py to tp and change __init__.py imports so tp
now works with both python scripts and ipython.
load.amset_* now has doping argument if n and p are present
bug fixes
allows boltztrap files to be written anywhere (not just the cwd)
and to be deleted after running if desired (off by default).
improves file-handling stability
makes plotting more streamlined and allows more inteligent axis
limit setting, also incorporated into the command-line version
tp.data.load.amset_mesh can now output the ibzkpt weightings,
derivatives of the Fermi--Dirac distribution (for which there is a
function in tp.calculate) and the scattering rates weighted by the
Fermi--Dirac derivative and averaged over k-points, as it is in
the Boltzmann transport equations.
Also, a dictionary of array dimensions is now included on loading
data, for example `data['meta']['dimensions']['frequency']`
returns `['qpoint', 'band']`.
New functions in `tp.data.save`:
 * `phono3py`: writes phono3py quantities to hdf5
 * `zt`: writes zt to hdf5, and max zt and max zt per temperature,
   along with dependant properties to yaml. Also prints max zt and
   dependant properties to stdout.
 * `kappa_target`: writes target kappa_l to hdf5.
 * `prompt`: prompts before overwriting input file.
This functionality is no longer in the plotting/ loading functions.
change name in setup.py to tp and change __init__.py imports so tp
now works with both python scripts and ipython.
Ensures unit conversions from tprc.yaml are accounted for during
calculations.
Now e.g. phono3py_conversions, amset_conversions etc. are fixed,
and a single conversions dictionary is editable via the tprc.yaml,
which converts from tp defaults for all quantities.
@dandavies99 dandavies99 merged commit 4c6aa0f into develop May 25, 2021
@dandavies99 dandavies99 deleted the custom-units branch May 25, 2021 13:28
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

2 participants