Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/criogenox/e-symbolic-railway-dynamics-formulation

C++ application capable of formulating symbolically and numerically computing the dynamics of railroad systems. It also adds aiding facilities for writing documentation and reports.
https://github.com/criogenox/e-symbolic-railway-dynamics-formulation

dynamical-analysis dynamical-systems latex-style railway symbolic-expressions

Last synced: about 2 months ago
JSON representation

C++ application capable of formulating symbolically and numerically computing the dynamics of railroad systems. It also adds aiding facilities for writing documentation and reports.

Awesome Lists containing this project

README

        

[![LinkedIn][linkedin-shield]][linkedin-url]



Logo

Railway applications 《 E 》



EriGeM: Bridging Formulas with Motion


## About the project




> The global goal: develop a tool to aid the process of complex mechanical systems' simulation, mainly focused on railway vehicles and especially, on articulated modular railcar models. It also enhances the ease of writing documentation, reports, and academic papers, where lengthy equations or complex mathematical expressions need to be used.



:muscle: don't let anyone get you down :muscle:

`Personal note:` figure uses Spanish language, cos I like that way. Thanks.

## Built With


Logo
Logo
Logo

## Current Status


The initial phase of the project has been developed, which involves the functionality to `translate standard mathematical expressions`, used generally in dynamical formulations, into `LaTeX formatting`. The given developed tool will enable users to focus on analysis and interpretation, rather than formatting the result, by providing a seamless way to convert equations into a clear and visually appealing, and efficiently document their insights.

`Currently features:`

- Support for derivatives, super/subscripts, special characters, and several operators. Detailed documentation for these features can be found in [here][eqsreadme-url].


## Conversion example

- **Raw input (from [GiNaC][ginac-url] expression):**


4*C2*b*d_theta1-3*C153*d_phi1+7*a5^3*C3*d_phi1+C12*d_psi1-M1*axy^2*d2_theta1+a^2*C3*d_psi1+s*F10+c^2*am*C3*d_theta1-4*M2*b*d2_xi1-4*C*d_phi1+16*C7*d_psi1=0



- **LaTeX library output:**







(back to top)

## Work in progress




**`Direct conversion from GiNaC formulae`**

> The previous mentioned library [eqs2latex][eqssrc-url] takes as input the result of the processed expressions originated from the formulation of dynamical equations systems, represented in symbolic form using GiNaC C++ library.

- `Pursued objective:` generate a semi-automatic coded process to formulate the mechanical systems' equations of motion set, using modern C++


## Planned Features




**`Numerical resolution of the formulated system (and other add-ons):`**

> Additionally, the upcoming aim to implement numerical solving capabilities for systems of equations using the Boost or Eigen C++ libraries, enabling users to fully set a practical analysis of dynamical systems.


## Roadmap

- [x] Initial eqs2latex release
- [ ] Symbolic systems' factory implementation
- [ ] Numerical add-ons deployment

(back to top)

## License

Distributed under the MIT License. See [LICENSE.txt][license-url] for more information.

[linkedin-shield]: https://user-images.githubusercontent.com/53323058/230575198-fa1acbf4-8f82-4d8e-b245-3979276bc240.png
[linkedin-url]: https://www.linkedin.com/in/criogenox/
[eqsreadme-url]: https://github.com/criogenox/E-Symbolic-Railway-Dynamics-Formulation/tree/master/eqs2latex
[eqssrc-url]: https://github.com/criogenox/E-Symbolic-Railway-Dynamics-Formulation/tree/master/eqs2latex/src
[ginac-url]: https://www.ginac.de/
[license-url]: https://github.com/criogenox/E-Symbolic-Railway-Dynamics-Formulation/tree/master?tab=MIT-1-ov-file