Welcome to Bond Graph Toolkit Documentation
A bond graph toolkit for Julia.
The BondGraphToolkit.jl is a Julia library designed to simplify the modeling and simulation of bond graphs systems. It offers a user-friendly syntax where engineers, researchers, and enthusiasts can express and analyze complex dynamic systems effortlessly. Built on top of the ModelingToolkit.jl ecosystem, the BondGraphToolkit.jl seamlessly integrates with existing tools, making it easy to use and customize.
Package Features
The key features of the package include:
- Intuitive and Expressive Modeling Syntax: The package provides an intuitive and expressive syntax that simplifies modeling dynamic systems with bond graphs.
- Wide Range of Bond Graph Components: It supports bond graph components and elements, including inertance, compliance, resistance, gyrators, transformers, and more.
- Simulation Capabilities with
DifferentialEquations.jlandModelingToolkit.jl: The package seamlessly integrates withDifferentialEquations.jlandModelingToolkit.jlpackages. Every bond graph component is anODESystem. - Visualize Bond Graph Systems: It offers a visualization tool that allows to generate visual representations of the bond graph created.
- Customization and Modification: Users can define their specialized bond graph components with a user-friendly API and extend the package's capabilities.
- Extensible Architecture for Integration. Integrating with other libraries and frameworks like
ModelingToolkit.jlis simple.
Use Cases
- Control systems design and analysis.
- Robotics and mechatronics applications.
- Electrical and electronic circuit simulation.
- Biomedical systems modeling.
- Chemical process simulation.
Installation
To start using the Bond Graph Toolkit, you need to have Julia installed on your system. Follow the official Julia documentation for instructions on installing Julia.
Once Julia is installed, you can add the Bond Graph Toolkit to your project by running the following command in the Julia REPL or the Julia package manager:
pkg> add BondGraphToolkit.jlFor more detailed installation instructions, including information about dependencies, please refer to the Installation.
Getting Started
We recommend checking out the Getting Started to quickly get started with Bond Graph Toolkit. It will guide you through library installation and the modeling and simulation of a simple dynamic system. It provides step-by-step instructions and code examples to help you grasp the basics of using the library.
Documentation Sections
TODO: Fix the links
- User guide: Learn how to model different types of dynamic systems and perform various analyses using MyLibrary.
- Examples: Collection of classical examples of dynamic systems in the mechanical and electrical domains and multiphysics systems.
- Library - Public: Detailed documentation of all public functions provided by the Bond Graph Toolkit.
- Library - Internals: Detailed documentation of all internal functions and types used by the Bond Graph Toolkit.