Skip to main content

Python Systematic Parameter Generator

Project description

PySPG is a set of python classes aimed to those of you that must (or wish to) run programs in which some parameters change.

For example: Let’s suppose you want to run simulations in which three parameters are involved, let’s say D, k, a. These are some possible scenarios

You want to run a simulation in which D, k are kept fixed while a linearly changes between (eeeer…) 0 and 5 with a step of 0.2. It’s really easy: in the language of your choice you write a program that performs the simulation and before and after the important part of a simulation, you just add a loop on the a variable. Now you are done But after that, you want to keep fixed D. Now both k and a vary linearly between 0 and 5 with a step of 0.2. It’s easy once again: you just add an external loop on the k variable. And you’re done again. But note that you had to recompile your code without changing the important part of your code: The simulation.

After those simulations you realise that the scale relevant for the variable a is not a linear one, but logarithmic. Although the change is easy, you must recompile. And if you want to run a simulation in which the variation is on D variable? Obviously compile the whole thing again… And if the variation must be exponential??? …

Well, perhaps you do not have to recompile if you program in an interpreted language. But what you are doing is touch on, and on, and on again your source code. The probability of doing something weird increases.

The only relevant information your program returns is the measures for each parameter set. The parameter variation is something subsidiary of the main point of the program, that is performing measures. The values of the variables can be set from outside. And this is the point of PySPG.

With PySPG you can extract one layer of complexity from your compiled code. For long simulations, is obvious that the time your program takes to run is NOT in the loops of changing parameters. In this way, you can avoid the problem of writing boring code and just write a simple text file that will launch the other program for you.

PySPG generates a directory hierarchy that allows you to easily navigate your data.

Is it all?

No. Although not so well documented yet, PySPG also features a generator of plots for your simulations. It can automatically generate 2D-plots in the format of Grace, and for a future version, a 3D utility is planned. Also an automatic report generator (TeX-based) is half-done. And it is GPL’d, so you can extend it as much as you wish.

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

PySPG-5.0.3.tar.gz (66.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

PySPG-5.0.3-py3-none-any.whl (76.2 kB view details)

Uploaded Python 3

File details

Details for the file PySPG-5.0.3.tar.gz.

File metadata

  • Download URL: PySPG-5.0.3.tar.gz
  • Upload date:
  • Size: 66.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.8.13

File hashes

Hashes for PySPG-5.0.3.tar.gz
Algorithm Hash digest
SHA256 9bba9a23c142aedea2cc9a26b0778b726ff247de624f27eec1ad61fdfadeed3f
MD5 f4e485122f5be05bf96323d34af0f538
BLAKE2b-256 6553d9833f639fb0088ebfe4570cfef9d107951bd0a5587daab38b79b1404517

See more details on using hashes here.

File details

Details for the file PySPG-5.0.3-py3-none-any.whl.

File metadata

  • Download URL: PySPG-5.0.3-py3-none-any.whl
  • Upload date:
  • Size: 76.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.8.13

File hashes

Hashes for PySPG-5.0.3-py3-none-any.whl
Algorithm Hash digest
SHA256 a111b7885df34aba1614bdb72bca1cbf72341b6639814dafc8b6ca1dad951f0d
MD5 984521f2511c13fcc26b3b628c01a0aa
BLAKE2b-256 1c0ee2578ba2aee3f190cf69673f09f621f95b3a496f621346c496f8df6e6219

See more details on using hashes here.

Supported by

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