Skip to main content

Helper functions for symbolic math, matrix visualization, and plotting

Project description

Helper functions for symbolic math, matrix visualization, and plotting

Author: University of Stuttgart, Institute for Structural Mechanics (IBB)
License: BSD3
Version: 0.4.7
Date: Jan 14, 2025

Description

This helper module currently provides 11 specialized functions for symbolic mathematics, matrix visualization, and plotting operations. Designed for SymPy, NumPy, Matplotlib, and Plotly integration in Jupyter Notebooks and Python environments.

Helper Functions

  1. animate - Animate 2D curves from symbolic expressions or datasets
  2. combine_plots - Stack multiple Matplotlib/Plotly plots into combined figures
  3. display - Format scalars, vectors, or matrices in LaTeX for display
  4. display_eigen - Compute and display eigenvalues/eigenvectors with LaTeX formatting
  5. display_matrix - Display truncated matrices with optional numerical evaluation
  6. extend_plot - Merge multiple plots side-by-side with horizontal offsets
  7. minimize - General optimization wrapper for symbolic expressions with constraints
  8. num_int - Numerically integrate symbolic expressions over 1D domains using composite Gauss quadrature
  9. plot_2d - Plot symbolic expressions or datasets in 2D using Matplotlib
  10. plot_3d - Plot symbolic 3D surfaces using Plotly for interactive visualization
  11. plot_param_grid - Plot 2D parametric surface grids with control points
  12. symbolic_BSpline - Generate symbolic B-spline basis functions with plotting

Dependencies

  • Python 3.8+
  • numpy, sympy, matplotlib, plotly
  • IPython (for LaTeX rendering)

Quick Start

import IBB_Helper as ibb

# Display matrix
ibb.display_matrix(np.array([[1, 2], [3, 4]]), name="A")

# Show symbolic expression  
ibb.display(sp.sin(x)**2 + sp.cos(x)**2, name="Identity")

# Plot 2D curves
ibb.plot_2d([sp.sin(x), sp.cos(x)], var=(x, (-np.pi, np.pi)))

# Plot 3D surface
ibb.plot_3d(sp.sin(x*y), var=(x, (-2, 2), y, (-2, 2)))

Development Status

This is an ongoing project with regular enhancements. Updates might include:

  • New helper functions
  • Performance optimizations
  • Extended compatibility
  • Bug fixes and stability improvements

Notes

  • Optimized for education, research, and technical documentation
  • Seamless SymPy/NumPy integration
  • Enhanced LaTeX formatting for presentations

Project details


Release history Release notifications | RSS feed

Download files

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

Source Distribution

ibb_helper-0.4.8.dev28.tar.gz (20.7 kB view details)

Uploaded Source

Built Distribution

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

ibb_helper-0.4.8.dev28-py3-none-any.whl (24.6 kB view details)

Uploaded Python 3

File details

Details for the file ibb_helper-0.4.8.dev28.tar.gz.

File metadata

  • Download URL: ibb_helper-0.4.8.dev28.tar.gz
  • Upload date:
  • Size: 20.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.10

File hashes

Hashes for ibb_helper-0.4.8.dev28.tar.gz
Algorithm Hash digest
SHA256 da9311489720fa6326bceb90d4857f07b30a407b14a34938df1662cc2ba340bd
MD5 373621918df576183c5da93921deb71d
BLAKE2b-256 c338ea05873d8e6ce0145e763428c1facf10c11bee7d6c6b0faf9ba6eef59832

See more details on using hashes here.

File details

Details for the file ibb_helper-0.4.8.dev28-py3-none-any.whl.

File metadata

File hashes

Hashes for ibb_helper-0.4.8.dev28-py3-none-any.whl
Algorithm Hash digest
SHA256 d7ce9eef57ac2541f297d00ecc17e3f2895393cdadf4cf8eea5c0e70c79a1f0d
MD5 0b325fdb6a34ffaa1a7bb748bca36cdc
BLAKE2b-256 d35fb4c8b7b83ee8f47b35fbc128a88d84d027f325c2ce79d5624beb4b0aefec

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