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.17
Date: Apr 22, 2026

Description

This helper module currently provides 13 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. animate_arrow - Animates a moving arrow along a parametric path
  3. combine_plots - Stack multiple Matplotlib/Plotly plots into combined figures
  4. display - Format scalars, vectors, or matrices in LaTeX for display
  5. display_eigen - Compute and display eigenvalues/eigenvectors with LaTeX formatting
  6. display_matrix - Display truncated matrices with optional numerical evaluation
  7. extend_plot - Merge multiple plots side-by-side with horizontal offsets
  8. minimize - General optimization wrapper for symbolic expressions with constraints
  9. newtons_method - Newton-Raphson root finding mirroring Maple's Student[Calculus1][NewtonsMethod] with value, sequence, plot, and animation output
  10. num_int - Numerically integrate symbolic expressions over 1D domains using composite Gauss quadrature
  11. plot_2d - Plot symbolic expressions or datasets in 2D using Matplotlib
  12. plot_3d - Plot symbolic 3D surfaces using Plotly for interactive visualization
  13. plot_arrow - Plot 2D vectors as arrows mirroring Maple's arrow() command, compatible with combine_plots
  14. plot_param_grid - Plot 2D parametric surface grids with control points
  15. 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)))

# Plot vectors as arrows
ibb.plot_arrow([G1, G2], colors=["blue", "blue"], labels=["$g_1$", "$g_2$"])

# Newton's method
ibb.newtons_method(x**3 - x - 2, x, 0.5, output="animation", stoppingcriterion="absolute")

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.17.tar.gz (40.3 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.17-py3-none-any.whl (47.7 kB view details)

Uploaded Python 3

File details

Details for the file ibb_helper-0.4.17.tar.gz.

File metadata

  • Download URL: ibb_helper-0.4.17.tar.gz
  • Upload date:
  • Size: 40.3 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.17.tar.gz
Algorithm Hash digest
SHA256 56d4e95eef4bf5fd1f896d293c6521566700a64c14658901c1acf6cecd4693c8
MD5 aff88f80a34650ed1b7ec2502e285aff
BLAKE2b-256 6266d010d0b4ed5a9f564b9b0dc8530248fb9fc2af7c679c22bf9d654546e1c0

See more details on using hashes here.

File details

Details for the file ibb_helper-0.4.17-py3-none-any.whl.

File metadata

  • Download URL: ibb_helper-0.4.17-py3-none-any.whl
  • Upload date:
  • Size: 47.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.10

File hashes

Hashes for ibb_helper-0.4.17-py3-none-any.whl
Algorithm Hash digest
SHA256 427d7efcebfdd6b7cce1f66dad8a500055ab015a7ee4724d4b5abbfc88a39ab5
MD5 861c54ff4fb9315301bdc682a49eea2b
BLAKE2b-256 192ac839e4d1ee15a95bceceb782f0f4c82b33f16783caf28903d3a96464d2ea

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