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

A tutorial can be found here.

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.cwd = "path/to/working/directory"

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

#Sets number of cores for parallel run
SIESTAstepper.cores = 4

#Sets Anaconda environment
SIESTAstepper.conda = "envir"

#Sets the subfolder name for interrupted calculations (default is "continue")
SIESTAstepper.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")

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

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_7080175,
  author       = {Eftal Gezer},
  title        = {eftalgezer/SIESTAstepper: v1.0.0},
  month        = sep,
  year         = 2022,
  publisher    = {Zenodo},
  version      = {v1.0.0},
  doi          = {10.5281/zenodo.7080175},
  url          = {https://doi.org/10.5281/zenodo.7080175}
}

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.0.0.tar.gz (22.5 kB view details)

Uploaded Source

Built Distributions

SIESTAstepper-1.0.0-py3.10.egg (20.4 kB view details)

Uploaded Source

SIESTAstepper-1.0.0-py3-none-any.whl (21.6 kB view details)

Uploaded Python 3

File details

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

File metadata

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

File hashes

Hashes for SIESTAstepper-1.0.0.tar.gz
Algorithm Hash digest
SHA256 daaa28707a3bebed5e3e3e5381a4384c5d3cadbacdd2ee0ace88775d0f291725
MD5 5c6d77c7bf022afb3a16b61331db8e51
BLAKE2b-256 eff609354e59ca8199e1183cf270159ffc97d9e0b1b18b720af73d819ef88ce4

See more details on using hashes here.

File details

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

File metadata

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

File hashes

Hashes for SIESTAstepper-1.0.0-py3.10.egg
Algorithm Hash digest
SHA256 955b609a9e522191af1521ef84bbca5c6cc603c02e30d65a89f001dcd41d8a91
MD5 eae064bfd54940e3e0f47f5693a12d05
BLAKE2b-256 96abcc7767df1823e7f6db0f815cc909dc74adfd3a2069a4ccb3b2bf75ddbf0a

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for SIESTAstepper-1.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 dd2227bcd9c012026888a355b828c85044ff8c19d5d84ab1f88304439ff0e98c
MD5 3171886779be1bee4dac395461528806
BLAKE2b-256 2885f3e28bb4b20968d90c7f30fedfa934f524afbcebf7ead26c6e4181a11b88

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