Skip to content

Commit

Permalink
Merge pull request #34 from Kinetica-jl/ase_extension
Browse files Browse the repository at this point in the history
Move KineticaASE.jl into main package
  • Loading branch information
joegilkes authored Oct 22, 2024
2 parents 1e56aab + bf637b7 commit 5743bb0
Show file tree
Hide file tree
Showing 35 changed files with 4,001 additions and 11 deletions.
5 changes: 4 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -2,4 +2,7 @@ deps/build.log
Manifest.toml
.vscode
.CondaPkg
docs/build
docs/build

.envrc
shell.nix
7 changes: 5 additions & 2 deletions CondaPkg.toml
Original file line number Diff line number Diff line change
Expand Up @@ -3,10 +3,13 @@ obcanonicalradicals = "0.1.1"
rdkit = ""
xtb = ""
matplotlib = ""
ase = ">=3.22.1"
ase = "<3.23"
graphviz = ""
python = ">=3.7,<3.11"
scipy = ""
scipy = "<=1.5.4"
numpy = "<2"
autode = ""
rmsd = ""

[pip.deps]
extxyz = "~=0.1.3"
6 changes: 4 additions & 2 deletions Project.toml
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
name = "Kinetica"
uuid = "3847ce11-53ec-444b-aa85-3b6606472139"
authors = ["joegilkes <[email protected]>"]
version = "0.5.12"
version = "0.6.0"

[deps]
BSON = "fbb218c0-5317-5bc6-957e-2ee96dd4b1f0"
Expand All @@ -13,6 +13,7 @@ Dates = "ade2ca70-3891-5945-98fb-dc099432e06a"
DelimitedFiles = "8bb1440f-4735-579b-a4ab-409b98df4dab"
DiffEqCallbacks = "459566f4-90b8-5000-8ac3-15dfb0a30def"
ExtXYZ = "352459e4-ddd7-4360-8937-99dcb397b478"
Glob = "c27321d9-0574-5035-807b-f59d2c89b15c"
LinearAlgebra = "37e2e46d-f89d-539d-b4ee-838fcccc9c8e"
Logging = "56ddb016-857b-54e1-b83d-db4d58db5568"
LoggingExtras = "e6f89c97-d47a-5376-807f-9c37f3926c36"
Expand Down Expand Up @@ -54,6 +55,7 @@ julia = "1.10"
[extras]
SafeTestsets = "1bc83da4-3b8d-516f-aca4-4fe02f6d838f"
Test = "8dfed614-e22c-5e08-85e1-65c5234f0b40"
Random = "9a3f8284-a2c9-5f02-9a11-845980a1fd5c"

[targets]
test = ["Test", "SafeTestsets"]
test = ["Test", "SafeTestsets", "Random"]
10 changes: 9 additions & 1 deletion docs/make.jl
Original file line number Diff line number Diff line change
Expand Up @@ -26,6 +26,7 @@ makedocs(
"CRN Representation" => "development/crn-representation.md",
"Condition Profiles" => "development/condition-profiles.md",
"Calculator Interface" => "development/calculator-interface.md",
"ASE Calculator Builders" => "development/ase-calculator-builders.md",
"Implementation Details" => "development/implementation-details.md"
],
"API" => [
Expand All @@ -36,7 +37,14 @@ makedocs(
"Analysis" => "api/kinetica/analysis.md",
"Open Babel" => "api/kinetica/openbabel.md",
"RDKit" => "api/kinetica/rdkit.md",
"Utilities" => "api/kinetica/utilities.md"
"Utilities" => "api/kinetica/utilities.md",
"ASE Interface" => [
"Kinetic Calculator" => "api/kinetica/ase_calculator/calculator.md",
"Optimisation" => "api/kinetica/ase_calculator/optimisation.md",
"Builders" => "api/kinetica/ase_calculator/builders.md",
"Utilities" => "api/kinetica/ase_calculator/utilities.md"
],
"autodE Interface" => "api/kinetica/autode.md"
],
"KineticaKPM.jl" => "api/kineticakpm.md"
]
Expand Down
9 changes: 9 additions & 0 deletions docs/src/api/kinetica/ase_calculator/builders.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
# Kinetica.jl API - ASE Interface

## ASE Calculator Builders

```@docs
EMTBuilder
NWChemDFTBuilder
FHIAimsBuilder
```
15 changes: 15 additions & 0 deletions docs/src/api/kinetica/ase_calculator/calculator.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
# [Kinetica.jl API - ASE Interface](@id api_ase_calculator)

## Kinetic Calculator

```@docs
ASENEBCalculator
```

### Rate Constant Calculation

```@docs
Kinetica.get_entropy
Kinetica.get_enthalpy
calculate_entropy_enthalpy
```
42 changes: 42 additions & 0 deletions docs/src/api/kinetica/ase_calculator/optimisation.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,42 @@
# Kinetica.jl API - ASE Interface

## Optimisation and Property Calculation

### Basic Species Properties

```@docs
Kinetica.get_mult
Kinetica.get_mult!
Kinetica.get_charge
Kinetica.get_charge!
Kinetica.get_formal_charges
Kinetica.get_formal_charges!
Kinetica.get_initial_magmoms
Kinetica.get_initial_magmoms!
Kinetica.correct_magmoms_for_mult!
Kinetica.get_hydrogen_idxs
```

### Geometry Optimisation

```@docs
Kinetica.geomopt!
Kinetica.kabsch_fit!
Kinetica.permute_hydrogens!
```

### NEB

```@docs
Kinetica.get_initial_sys_mult
Kinetica.get_rxn_mult
Kinetica.neb
Kinetica.highest_energy_frame
```

### Vibrational Analysis

```@docs
Kinetica.calc_species_vibrations!
Kinetica.calc_ts_vibrations!
```
28 changes: 28 additions & 0 deletions docs/src/api/kinetica/ase_calculator/utilities.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
# Kinetica.jl API - ASE Interface

## Utilities

### Conversion

```@docs
frame_to_atoms
atoms_to_frame
Kinetica.imaginary_ve_tol
```

### I/O

```@docs
Kinetica.save_asecalc
Kinetica.load_asecalc
Kinetica.verify_sd
Kinetica.verify_rd
Kinetica.save_optgeom
Kinetica.load_optgeom
Kinetica.save_endpoints
Kinetica.load_endpoints
Kinetica.save_tsdata
Kinetica.load_tsdata
Kinetica.save_vibdata
Kinetica.load_vibdata
```
25 changes: 25 additions & 0 deletions docs/src/api/kinetica/autode.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
# Kinetica.jl API

## autodE Interface

### Conformer Searching

```@docs
Kinetica.autode_conformer_search!
Kinetica.autode_NCI_conformer_search
```

### Species Conversion

```@docs
Kinetica.autode_to_frame
Kinetica.frame_to_autode
```

### Utilities

```@docs
Kinetica.autode_get_graph
Kinetica.autode_is_isomorphic
Kinetica.autode_frame_symmetry
```
1 change: 1 addition & 0 deletions docs/src/api/kinetica/exploration.md
Original file line number Diff line number Diff line change
Expand Up @@ -18,6 +18,7 @@ push_unique!
RxData
Base.push!(::RxData{iType, fType}, ::SpeciesData, ::Vector{Vector{String}}, ::Vector{Vector{String}}, ::Vector{Dict{String, Any}}, ::Vector{Dict{String, Any}}, ::Vector{fType}, ::Int) where {iType, fType <: AbstractFloat}
Base.splice!(::RxData, ::Vector{Int})
get_reverse_rhash
```

### CRN Initialisation
Expand Down
2 changes: 2 additions & 0 deletions docs/src/api/kinetica/solving.md
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,8 @@ Base.splice!(rd::RxData, calculator::cType, rids::Vector{Int}) where {cType <: K
PrecalculatedArrheniusCalculator
```

The [`ASENEBCalculator`](@ref) ASE-driven NEB-based calculator also implemented in Kinetica.jl is significantly more complex, and has its own API page [here](@ref api_ase_calculator).

## Solvers

```@docs
Expand Down
Binary file removed docs/src/assets/Direct_vs_iterative_schematics.png
Binary file not shown.
Loading

0 comments on commit 5743bb0

Please sign in to comment.