Skip to main content

Toolbox for building spectral methods

Project description

The SpectralToolbox is a collection of tools useful for spectral approximation methods in one or more dimensions. It include the construction of traditional orthogonal polynomials. Additionally one can construct orthogonal polynomials with respect to a selected measure.

Description

Implementation of Spectral Methods in N dimension.

Available polynomials:
  • Jacobi

  • Hermite Physicists’

  • Hermite Physicists’ Function

  • Hermite Probabilists’

  • Hermite Probabilists’ Function

  • Laguerre Polynomial

  • Laguerre Function

  • Fourier

  • ORTHPOL package (generation of recursion coefficients using [1])

Available quadrature rules (related to selected polynomials):
  • Gauss

  • Gauss-Lobatto

  • Gauss-Radau

Available quadrature rules (without polynomial selection):
  • Kronrod-Patterson on the real line

  • Kronrod-Patterson uniform

  • Clenshaw-Curtis

  • Fejer’s

Requirements

Installation

We reccommend to work in a virtual environment using virtualenv, or on the system python installation. The use of alternative virtual environment systems (such as Anaconda) is not guaranteed to be automatically supported, thus a manual installation is suggested in such case.

Make sure to have an up-to-date version of pip:

$ pip install –upgrade pip

Automatic installation

Run the command:

$ pip install –upgrade numpy $ pip install –upgrade SpectralToolbox

Manual installation (using pip)

Install the following dependencies separately:

$ pip install <package>

where <package> are the Python dependencies as listed in Requirements and X.X.X is the current revision version.

You should intall the orthpol package. This dependency is required since v. 0.2.0. The installation might require you to tweak some flags for the compiler (with gcc nothing should be needed).

$ pip install –no-binary :all: orthpol

Finally you can install the toolbox by:

$ pip install –no-binary :all: SpectralToolbox

Manual installation (from source files)

Note: This method may apply also to virtual environment systems different from virtualenv.

download and install each dependency manually with the following commands:

$ pip download <package>

$ tar xzf <package>-X.X.X.tar.gz

$ cd <package>-X.X.X

$ python setup.py install

$ cd ..

where <package> are the Python dependencies as listed in Requirements and X.X.X is the current revision version.

References

Change Log

0.1.0:
  • Implementation of Poly1D, PolyND, and additional quadrature rules

0.2.0:
  • New interface for Spectral1D.

  • All polynomials are now classes.

  • Complete integration of orthpol

0.2.7:
  • Python3 support. And fixed installation procedure.

0.2.8:
0.2.11:
  • Added function generate for the generation of polynomials from type and parameters.

0.2.27
  • Added class ConstantExtendedHermiteProbabilistsFunction, used for external projects.

0.2.38
  • Added functions from_xml_element in order to generate basis from XML structures.

0.2.39
  • Added class handling algebraic operations between polynomials (class SquaredOrthogonalPolynomial)

0.2.41
  • Added algebraic function class SquaredConstantExtendedHermitePhysicistsFunction

0.2.42
  • Added algebraic function class PositiveDefiniteSquaredConstantExtendedHermitePhysicistsFunction

0.2.45-46
  • Exact factorials in AlgebraicPolynomilas.

0.2.47
  • Memoization of coefficients

3.0.0
  • Removed dependency on orthpol_light and ported necessary code in this repo in cython

3.1.0
  • Fixed bug due to change on scipy.special.factorial2

Project details


Release history Release notifications | RSS feed

This version

3.1.0

Download files

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

Source Distribution

spectraltoolbox-3.1.0.tar.gz (720.1 kB view details)

Uploaded Source

File details

Details for the file spectraltoolbox-3.1.0.tar.gz.

File metadata

  • Download URL: spectraltoolbox-3.1.0.tar.gz
  • Upload date:
  • Size: 720.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.10.17

File hashes

Hashes for spectraltoolbox-3.1.0.tar.gz
Algorithm Hash digest
SHA256 d2f9ebb2796022938cf4b4d790d220ba4b6903b9bb24c0f05fb477b351a661f0
MD5 7614fe6fa8db3815cfcf9623ce6c3bb3
BLAKE2b-256 a881e6c17caf2f940408542d6400eb8a4f9f0d3f3c398f0351869f327d817afc

See more details on using hashes here.

Supported by

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