maggma
maggma copied to clipboard
Bump idna from 3.6 to 3.7 in /requirements
Bumps idna from 3.6 to 3.7.
Release notes
Sourced from idna's releases.
v3.7
What's Changed
- Fix issue where specially crafted inputs to encode() could take exceptionally long amount of time to process. [CVE-2024-3651]
Thanks to Guido Vranken for reporting the issue.
Full Changelog: https://github.com/kjd/idna/compare/v3.6...v3.7
Changelog
Sourced from idna's changelog.
3.7 (2024-04-11) ++++++++++++++++
- Fix issue where specially crafted inputs to encode() could take exceptionally long amount of time to process. [CVE-2024-3651]
Thanks to Guido Vranken for reporting the issue.
Commits
1d365e1
Release v3.7c1b3154
Merge pull request #172 from kjd/optimize-contextj0394ec7
Merge branch 'master' into optimize-contextjcd58a23
Merge pull request #152 from elliotwutingfeng/dev5beb28b
More efficient resolution of joiner contexts1b12148
Update ossf/scorecard-action to v2.3.1d516b87
Update Github actions/checkout to v4c095c75
Merge branch 'master' into dev60a0a4c
Fix typo in GitHub Actions workflow key5918a0e
Merge branch 'master' into dev- Additional commits viewable in compare view
Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase
.
Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR:
-
@dependabot rebase
will rebase this PR -
@dependabot recreate
will recreate this PR, overwriting any edits that have been made to it -
@dependabot merge
will merge this PR after your CI passes on it -
@dependabot squash and merge
will squash and merge this PR after your CI passes on it -
@dependabot cancel merge
will cancel a previously requested merge and block automerging -
@dependabot reopen
will reopen this PR if it is closed -
@dependabot close
will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually -
@dependabot show <dependency name> ignore conditions
will show all of the ignore conditions of the specified dependency -
@dependabot ignore this major version
will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself) -
@dependabot ignore this minor version
will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself) -
@dependabot ignore this dependency
will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself) You can disable automated security fix PRs for this repo from the Security Alerts page.
Hi, @sgbaird I think will have to define a grid and a set of inequalities to create a mask for that grid then apply the mask and get the integrated charge.
I'm actually interested in this or similar functionality too. I'm wondering what a convenience method might look like:
def get_density_orientated_by_plane(self, hkl: Tuple[float, float, float]) -> np.ndarray:
"""
Converts charge density to conventional setting, rotates charge density to
align with chosen plane defined by its Miller indices, and returns a 3D
array that can be sliced and integrated as necessary.
"""
...
def get_density_through_sites(self, sites: Tuple[PeriodicSite, ...]) -> np.ndarray:
"""
Same as above, but calculates plane automatically based on provided sites.
Perhaps could return the slice (eg 2D array) automatically?
"""
I'm looking at this StackOverflow answer, does this seem reasonable?
Does pyrho
already allow arbitrary rotations @jmmshn? I guess it could be done with the right supercell matrix?
Does
pyrho
already allow arbitrary rotations @jmmshn? I guess it could be done with the right supercell matrix?
Correct.
I'm looking at this StackOverflow answer, does this seem reasonable?
I think it will be easier to get the reorientation information and boundaries in the transformed cell (without any consideration for the numpy volumetric data) then just use the internal machinery we already have for the interpolation.
I should probably mention that I implemented something similar in Mathematica using some nice analytical and numerical integration functions for 3D objects. See https://github.com/sgbaird/LatticePlane and https://doi.org/10.1107/S1600576722001492. I had explored doing this in Python with some geometry packages (scikit-geom or something like that), but had some trouble.
Cool, so this looks like you had an analytic form for your density so calculating it for a set of points directly is going to be much more accurate.
@jmmshn thanks! For the LatticePlane study, I approximated atoms as hard spheres, points, or isotropic Gaussian distributions based on CIF input data. While I mentioned applicability to DFT data, I never used DFT data directly. If I were to use LatticePlane, I'd consider doing a 3D (e.g. spline) interpolation of the points prior to numerical integration across the plane. Interpolation probably isn't necessary if densities are probeable at arbitrary locations without expensive, additional calculations.
On a separate note, @mkhorton what got you interested in density integration within a bounded plane?