Skip to content

Releases: diffpy/pyobjcryst

2024.2

12 Sep 17:45
Compare
Choose a tag to compare

Version 2024.2

Changes

  • DiffractionDataSingleCrystal: add SetHklIobs, SetIobs, SetSigma, GetSigma,
    GetChi2, FitScaleFactorForRw and FitScaleFactorForR
    (#42)
  • Add a single crystal data notebook example
  • Online documentation notebooks now include the plots
    (https://pyobjcryst.readthedocs.io/en/latest/examples)

Fixes

  • From libobjcryst: update the ScatteringComponentList when a Scatterer is removed
    from a Crystal (#41)

2024.1.1

07 Feb 07:33
Compare
Choose a tag to compare

Version 2024.1.1

Changes

  • Add python access to MolZAtom, for Molecule.AsZMatrix()

Release 2.2.6

14 Mar 11:18
Compare
Choose a tag to compare

Changes

  • Support for windows and python>=3.8
  • Added a zoom limit for 3D crystal views

Fixes

  • Correct error preventing pyobjcryst import for windows and python>=3.8
    (#33)
  • Fix for matplotlib >=3.7.0 when removing hkl labels

2.2.5

07 Dec 19:44
Compare
Choose a tag to compare

Version 2.2.5

Changes

  • Raise an exception if alpha, beta or gamma are not within ]0;pi[ when
    changing lattice angles
  • Add UnitCell.ChangeSpaceGroup()

Fixes

  • Avoid duplication of plots when using ipympl (aka %matplotlib widget)
  • Correct powder pattern tests to avoid warnings

Deprecated

  • loadCrystal - use create_crystal_from_cif() instead

2.2.4

05 Nov 20:59
Compare
Choose a tag to compare

Version 2.2.4

Changes

  • the list of HKL reflections will now be automatically be re-generated
    for a PowderPatternDiffraction when the Crystal's spacegroup changes,
    or the lattice parameters are modified by more than 0.5%

Fixes

  • Fixed the powder pattern indexing test

Version 2.2.3

Added

  • Support for windows install (works with python 3.7, and
    also -only with pypy- 3.8 and 3.9)
  • Native support for Apple arm64 (M1, M2) processors
  • Fourier maps calculation
  • Add gDiffractionDataSingleCrystalRegistry to globals

Release 2.2.2

27 Aug 09:29
Compare
Choose a tag to compare
  • Add correct wrapping for C++-instantiated objects available through global registries, e.g. when loading an XML file. The objects are decorated with the python functions when accessed through the global registries GetObj()
  • Moved global object registries to pyobjcryst.globals
  • Fix powder pattern plot issues (NaN and update of hkl text with recent matplotlib versions)
  • Fix access to some polyhedra types
  • Update documentation

Release 2.2.1

20 Dec 23:11
569b7db
Compare
Choose a tag to compare
  • Adds the ability to perform QPA from a powder pattern when the crystalline phases are known, with an example notebook from the 1999 round Robin
  • Solves an issue where updating the Crystal widget would append a js output for each update
  • A few changes to setup.py to specify optional modules (but setup.py is not used anyway so this is mostly for documentation)
  • Add python 3.8 as supported (should work in 3.9 as well but needs testing)
  • There was a change in the previous version where the str() of a molecule used to return the XML output, but this has changed. A RefinableObj.xml() convenience function has been added
  • Added a PbSO4 notebook example with joint X+N optimisation
  • Solves an issue where using XMLInput() on a Crystal could lead to a crash if the structure was not empty and the scattering powers where added manually (not by importing a Molecule). DeleteRefParInDestructor is now correctly taken into account there, also with a hook to re-use existing scattering power when possible to avoid (minimise) memory leaks.
  • Solves an issue with the import of urllib.request.urlopen
  • When adding an Atom or a Molecule to a Crystal, an exception will now be raised if the used ScatteringPower are not already added to the Crystal (this could lead to a crash). Check this is OK for Diffpy-CMI
  • Update doc:
    • add references specific to the recent changes (powder pattern, crystal 3D view, global optimisation,...) including me a contact.
    • update some info about installing from source
    • replace m2r by m2r2 for sphinx as m2r seems abandoned
    • added the example notebooks in the sphinx documentation (requires nbsphinx and nbsphinx-link). The javascript 3D crystal views are even preserved.

Release 2.2.0

22 Jun 20:01
2527fad
Compare
Choose a tag to compare

Notable differences from version 2.1.0.

  • Add access to Radiation class & functions to change RadiationType, wavelength in PowderPattern and ScatteringData (and hence DiffractionDataSingleCrystal) classes.

  • Fix the custodian_ward when creating a PowderPatternDiffraction: PowderPatternDiffraction must persist while PowderPattern exists, and Crystal must persist while PowderPatternDiffraction exists.

  • Add 3D Crystal viewer pyobjcryst.crystal.Crystal.widget_3d.

Release 2.1.0

11 Mar 18:40
v2.1.0
Compare
Choose a tag to compare

See CHANGELOG.md for detailed release notes.

Release is also available at https://pypi.python.org/pypi.

Release 2.0.2

08 May 21:46
v2.0.2
Compare
Choose a tag to compare

Changes since v2.0.1

  • Bump up MACOSX_DEPLOYMENT_TARGET to 10.7 for conda.
  • Add debug.py script for debugging unit tests.
  • Use automated test discovery instead of test list.
  • Update to NumPy C-API 1.7.
  • Move all sources to "src" sub-directory.
  • Open CIF files in binary mode (required for Python 3).
  • Update package to be both Python 3 and Python 2 compatible.
  • Remove outdated use of diffpy.structure.

Release is also available at https://pypi.python.org/pypi.