Skip to main content

SIESTAstepper runs SIESTA step by step, designed for constrained calculations.

Project description

SIESTAstepper

PyPI version PyPI pyversions PyPI download month PyPI download week PyPI download day GitHub all releases GitHub contributors CodeFactor PyPI license DOI

SIESTAstepper runs SIESTA step by step, designed for constrained calculations.

Installation

Use the package manager pip to install SIESTAstepper.

pip install SIESTAstepper

Tutorial

Usage

All SIESTA working directories must be named as i1, i2, i3 ... and so on.

In code

Simple usage

SIESTAstepper.run("graphene")

Advance usage

import SIESTAstepper

#Sets the path of the working directory
SIESTAstepper.update_cwd("path/to/working/directory")

#Sets the name of SIESTA log files (default is "log")
SIESTAstepper.update_log("log")

#Sets number of cores for parallel run
SIESTAstepper.update_cores(4)

#Sets Anaconda environment
SIESTAstepper.update_conda("envir")

#Sets the subfolder name for interrupted calculations (default is "continue")
SIESTAstepper.update_cont("continue")

#Sets the filenames to copy
SIESTAstepper.contfiles.extend(["file1", "file2"])

# Runs SIESTA step by step
SIESTAstepper.run("graphene")

# Converts last geometry of an ANI to FDF by using the previous FDF and ANI files
SIESTAstepper.ani_to_fdf("path/to/ANI", "path/to/FDF", "path/to/newFDF")

# Converts XYZ to FDF by using the previous FDF and XYZ files
SIESTAstepper.xyz_to_fdf("path/to/XYZ", "path/to/FDF", "path/to/newFDF")

#Merges ANI files
SIESTAstepper.merge_ani(label = "graphene")

#Merges ANI files by setting a path
SIESTAstepper.merge_ani(label = "graphene", path = "path/to/i*/ANI/files")

# Runs SIESTA for a given step
SIESTAstepper.run_next("1", "graphene")

#Runs SIESTA for a given step without continuing to next step
SIESTAstepper.single_run("1", "graphene")

#Continues to an interrupted calculation without continuing to next step
SIESTAstepper.single_run_interrupted("1", "graphene")

#Continues to an interrupted calculation
SIESTAstepper.run_interrupted("1", "graphene")

#Creates folders named i1, i2, i3, i4, i5, ...
SIESTAstepper.make_directories(5)

#Copies files from i1 to i2
SIESTAstepper.copy_files(["psf", "fdf", "XV", "DM"], "graphene", "path/to/i1", "path/to/i2")

# Plots and returns energies from log files
SIESTAstepper.analysis()

# Returns energies from log files without plotting
SIESTAstepper.analysis(plot_ = False)

# Plots and returns energies from log files by setting a path
SIESTAstepper.analysis(path = "path/to/i*/log/files")

# Calculates the energy differences between minima and maxima
SIESTAstepper.energy_diff()

# Calculates the energy differences between minima and maxima by setting a path
SIESTAstepper.energy_diff(path = "path/to/i*/log/files")

In terminal

Simple usage

python -m SIESTAstepper run log graphene

Advance usage

python -m SIESTAstepper run log graphene

python -m SIESTAstepper run log graphene contfiles=file1,file2

python -m SIESTAstepper run log graphene mpirun=4

python -m SIESTAstepper run log graphene conda=envir

python -m SIESTAstepper run_next log 1 graphene

python -m SIESTAstepper run_next log 1 graphene contfiles=file1,file2

python -m SIESTAstepper run_next log 1 graphene mpirun=4

python -m SIESTAstepper run_next log 1 graphene conda=envir

python -m SIESTAstepper single_run log 1 graphene

python -m SIESTAstepper single_run log 1 graphene mpirun=4

python -m SIESTAstepper single_run log 1 graphene conda=envir

python -m SIESTAstepper run_interrupted log 1 graphene cont=continue

python -m SIESTAstepper run_interrupted log 1 graphene cont=continue contfiles=file1,file2

python -m SIESTAstepper run_interrupted log 1 graphene mpirun=4 cont=continue

python -m SIESTAstepper run_interrupted log 1 graphene conda=envir cont=continue

python -m SIESTAstepper single_run_interrupted log 1 graphene cont=continue

python -m SIESTAstepper single_run_interrupted log 1 graphene mpirun=4 cont=continue

python -m SIESTAstepper single_run_interrupted log 1 graphene conda=envir cont=continue

python -m SIESTAstepper make_directories 5

python -m SIESTAstepper copy_files graphene path/to/i1 path/to/i2 psf fdf XV DM

python -m SIESTAstepper copy_files graphene path/to/i1 path/to/i2 psf fdf XV DM

python -m SIESTAstepper ani_to_fdf path/to/ANI path/to/FDF path/to/newFDF

python -m SIESTAstepper xyz_to_fdf path/to/XYZ path/to/FDF path/to/newFDF

python -m SIESTAstepper merge_ani graphene

python -m SIESTAstepper merge_ani graphene cont=continue

python -m SIESTAstepper merge_ani graphene path=path/to/i*/ANI/files

python -m SIESTAstepper analysis log

python -m SIESTAstepper analysis log cont=continue

python -m SIESTAstepper analysis log noplot

python -m SIESTAstepper analysis log path=path/to/i*/log/files

python -m SIESTAstepper energy_diff log

python -m SIESTAstepper energy_diff log cont=continue

python -m SIESTAstepper energy_diff log path=path/to/i*/log/files

Contributing

Pull requests are welcome. For major changes, please open an issue first to discuss what you would like to change.

Please make sure to update tests as appropriate.

Citation

If you are using SIESTAstepper, please citate relevant version. You can find the relevant citation here.

@software{eftal_gezer_2022_7083118,
  author       = {Eftal Gezer},
  title        = {eftalgezer/SIESTAstepper: v1.1.0},
  month        = sep,
  year         = 2022,
  publisher    = {Zenodo},
  version      = {v1.1.0},
  doi          = {10.5281/zenodo.7083118},
  url          = {https://doi.org/10.5281/zenodo.7083118}
}

License

GNU General Public License v3.0

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

SIESTAstepper-1.1.0.tar.gz (23.1 kB view details)

Uploaded Source

Built Distributions

SIESTAstepper-1.1.0-py3.10.egg (22.9 kB view details)

Uploaded Source

SIESTAstepper-1.1.0-py3-none-any.whl (22.1 kB view details)

Uploaded Python 3

File details

Details for the file SIESTAstepper-1.1.0.tar.gz.

File metadata

  • Download URL: SIESTAstepper-1.1.0.tar.gz
  • Upload date:
  • Size: 23.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.10.6

File hashes

Hashes for SIESTAstepper-1.1.0.tar.gz
Algorithm Hash digest
SHA256 9f6485fd0d53a7a495a0616ddf4f78c3337836e473f965729d80050797ea4aee
MD5 779789c08a73a715b176fd2b540cba07
BLAKE2b-256 ebac42e435486098b0bbbc11e2ea13910597aba250df344c891eb5b9eac0fd9d

See more details on using hashes here.

File details

Details for the file SIESTAstepper-1.1.0-py3.10.egg.

File metadata

  • Download URL: SIESTAstepper-1.1.0-py3.10.egg
  • Upload date:
  • Size: 22.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.10.6

File hashes

Hashes for SIESTAstepper-1.1.0-py3.10.egg
Algorithm Hash digest
SHA256 09f40bffc67eafc5bbc6fb771c725b5b46a16c0d551290e09ea3c6ab2c28de25
MD5 94422a6a2e9d61afe2747b8d48b1f712
BLAKE2b-256 1c4a5877ce7b7e15c2c0c382aacb8b434108212290f89e4ddc2bd73ab2fb6902

See more details on using hashes here.

File details

Details for the file SIESTAstepper-1.1.0-py3-none-any.whl.

File metadata

File hashes

Hashes for SIESTAstepper-1.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 9bbf03a9b08347df44e65313aaea15ea7488a5818398697cc9f6f4cbe39f9c33
MD5 5bbd62eee32e08409fe10d7b50fdb696
BLAKE2b-256 1d939dfb6b88570d4024082758d19f9c8b7a1fb9e9d340275f2512cfd8441403

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page