Skip to content

Commit

Permalink
Bump version: 0.4.7 → 0.5.0
Browse files Browse the repository at this point in the history
  • Loading branch information
mfherbst committed Mar 20, 2022
1 parent 2659473 commit 8196584
Show file tree
Hide file tree
Showing 2 changed files with 2 additions and 2 deletions.
2 changes: 1 addition & 1 deletion .bumpversion.cfg
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
[bumpversion]
current_version = 0.4.7
current_version = 0.5.0
commit = True
tag = False

Expand Down
2 changes: 1 addition & 1 deletion Project.toml
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
name = "DFTK"
uuid = "acf6eb54-70d9-11e9-0013-234b7a5f5337"
authors = ["Michael F. Herbst <[email protected]>", "Antoine Levitt <[email protected]>"]
version = "0.4.7"
version = "0.5.0"

[deps]
AbstractFFTs = "621f4979-c628-5d54-868e-fcf4e3e8185c"
Expand Down

2 comments on commit 8196584

@mfherbst
Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@JuliaRegistrator register

Release notes:

Note that this release increases the minor version and contains a number of breaking changes:

  • The atoms field in the Model data structure, which used to contain pairs mapping from an element to a list of associated positions, is now split up into a plain atoms vector (containing a flat and repeated list of all elements) and a positions vector (containing the list of respective positions). I.e. whereas before one would have, for example:

        Ga = ElementCoulomb(:Ga)
        As = ElementCoulomb(:As)
        atoms = [Ga => [[0.1, 0.2, 0.3], [0.4, 0.5, 0.6], ], As => [[0.7, 0.8, 0.9], ], ]

    we now have

        Ga = ElementCoulomb(:Ga)
        As = ElementCoulomb(:As)
        atoms     = [Ga, Ga, As]
        positions = [[0.1, 0.2, 0.3], [0.4, 0.5, 0.6], [0.7, 0.8, 0.9], ]

    This change is carried forward to all interfaces of DFTK. This means that all Model constructors as well as the model_atomic, model_DFT, model_LDA, model_PBE, model_SCAN functions change interface. E.g. constructing an LDA model for this fictitious gallium arsenide system could now be done as such:

        Ga = ElementCoulomb(:Ga)
        As = ElementCoulomb(:As)
        atoms     = [Ga, Ga, As]
        positions = [[0.1, 0.2, 0.3], [0.4, 0.5, 0.6], [0.7, 0.8, 0.9], ]
    
        lattice = 5.6 * I(3)
        model = model_LDA(lattice, atoms, positions)

    All examples and tests have been updated and can be used to draw examples for the new interface. For convenience and to simplify amending downstream code the old model_LDA etc. function have not been completely removed for now, but only marked as deprecated. However, removal will occur at the next patch release. (Refactor atoms field in Model #626)

  • The compute_forces and compute_forces_cart functions now also return arrays of Vec3 (Static vector of 3 dimensions). These vectors are the forces on a particular atom in the same order as the model.positions and model.atoms arrays. (Refactor atoms field in Model #626)

  • The Model(lattice; atoms, positions, kwargs...) constructor has been dropped in favour of Model(lattice, atoms, positions; kwargs...), i.e. atoms and positions are now positional arguments. This was done to make the constructor resemble more the structure of the model_LDA, model_PBE, etc. functions. (Make atoms and positions positional arguments of the Model #629).

  • The default LDA model constructed by model_LDA is now [:lda_x, :lda_c_pw] instead of [:lda_xc_teter93]. To return to the old behaviour replace model_LDA(lattice, atoms, positions; kwargs...)
    by model_DFT(lattice, atoms, positions, :lda_xc_teter93; kwargs...). (Make atoms and positions positional arguments of the Model #629)

  • The default kshift in the PlaneWaveBasis constructor is now always (0, 0, 0). It used to be 1/2 in one direction in case the kgrid was even in this direction. Manually specifying the desired kshift returns the old behaviour. (Change default kshift to zero #630)

  • The load_psp(element; kwargs...) function is discontinued and has been removed. Instead use a combination of list_psp(element; kwargs...) with load_psp(identifier) or the attach_psp(system::AbstractSystem) function. (Integrate with AtomsBase #558)

  • The deprecated compute_stresses(scfres) function has now been removed in favour of compute_stresses_cart(scfres). (Remove deprecated features #628)

  • The deprecated PowerNonlinearity(C, α) constructor has now been removed in favour of LocalNonlinearity(ρ -> C * ρ^α). (Remove deprecated features #628)

@JuliaRegistrator
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Registration pull request created: JuliaRegistries/General/56960

After the above pull request is merged, it is recommended that a tag is created on this repository for the registered package version.

This will be done automatically if the Julia TagBot GitHub Action is installed, or can be done manually through the github interface, or via:

git tag -a v0.5.0 -m "<description of version>" 8196584844141db7db3124c1ad1873be6774db88
git push origin v0.5.0

Please sign in to comment.