symengine
Rust-CAS
Our great sponsors
symengine | Rust-CAS | |
---|---|---|
5 | 4 | |
1,094 | 3 | |
2.7% | - | |
7.2 | 0.0 | |
13 days ago | almost 2 years ago | |
C++ | Rust | |
GNU General Public License v3.0 or later | GNU General Public License v3.0 only |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
symengine
-
C++ library for solving EQUATIONS
SymEngine will do this: https://github.com/symengine/symengine
-
Maxima: A computer algebra system written in Common Lisp
If you need programmability or interoperability, Sympy is way nicer. If you just want an interactive symbolic calculator, Maxima is fine but sometimes quirky (has odd conventions due mainly to its age). As heisig points out, Maxima can be quite a bit faster (but I run into slow things with it too). Using Maxima via Sage is in some ways the best of both worlds.
You may also be interested in SymEngine: https://github.com/symengine/symengine
-
Help rendering LateX equation to image format
Context: I'm making a application for robotics calculations, making symbolic calculations using (symengine), and at some point I would like to be able to see the steps of these calculations, symengine has a function that returns the latex code do the elements you want. So I was trying to find a library or something of sorts to render that text into an image, I'm using Dear IMGUI in the docking branch to make a simple UI where I would like to display these equations. I know it might not even exists but I would like to give it a try. I found KLateXFormula, which depends on Qt as far as I understood, so I would like to avoid that if possible, I also studied a bit about the TeXStudio repo and found they use Qt to render previews. I also tried to understand the miktex repo searching for a function that I could use, but I barely understood the structure of the repo. I'm getting frustraded. I also found approaches where people would call latex executables to parse latex to DVI(Or something like this) but I would also like to avoid this approaches if possible.
-
Announcing Savage, a computer algebra system written in Rust
- Might there be any way to leverage the work of https://github.com/symengine/symengine ? I assume a straight-up language binding to symengine might be a completely separate project, but possibly for some specific features symengine, maybe... (It is a pity they chose c++ and not rust to implement symengine in. In the end, the main target seems python/sympy here and not c++.)
- How do you deal with the fact that all the math, physics you did in university is pretty much useless in the workplace because you don't need them and your position doesn't require you to know them?
Rust-CAS
-
Announcing Malachite, a new arbitrary-precision arithmetic library
I believe rust-decimal has float representation. If not Rust-CAS supports float with (via the Mpf struct) functions for addition/subtraction, multiplication/division, exponentiation and sqrts. I haven't officially released it (and won't for a while) so it's a mess of inefficient functions with no documentation but if you really want it it's functional. (I believe printing negative floats less than 1 is broken in that version)
-
Your one project with rust that you think is one of the best projects you have made.
A little computational math project, it's not my most popular library but it's certainly the largest and most capable. Planning on growing into a MacCaulay 2 style library. Not really meant as a production library though so much as a learning project and with a book/documentation for reference on computational math algorithms. (Like Geddes' book, but dumbed down and more applied)
-
Curated list of must know rust crates
Rust-CAS - General computational math library, has some functionality absent elsewhere. more a novelty than a highly-performant project like the others.
-
Announcing Savage, a computer algebra system written in Rust
The general concept behind it is to have a generalized algebra library over all datatypes (square matrices,GF, Quotient rings, polynomials, algebras in the future ) and even user-defined sets and algebraic structures. This isn't something that exists in Rust as far as I know (a lot of the individual functionality doesn't even exist in crates.io like hurwitz quaternions). Macaulay2 is probably the closest example. The repository is horribly out of date, but it shows some of the general functionality.
What are some alternatives?
ceres-solver - A large scale non-linear optimization library
library-loader - [Unofficial] Samacsys Library Loader for all platforms!
latex-online - Online latex compiler. You give it a link, it gives you PDF
RustBCA - A free, open-source Binary Collision Approximation (BCA) code for ion-material interactions including sputtering, implantation, and reflection
maxima-client - Maxima client
egui - egui: an easy-to-use immediate mode GUI in Rust that runs on both web and native
ExprTK - C++ Mathematical Expression Parsing And Evaluation Library https://www.partow.net/programming/exprtk/index.html
PGen-Rust - A rewrite of my first Password generator in rust.
maxima-jupyter - A Maxima kernel for Jupyter, based on CL-Jupyter (Common Lisp kernel)
aero - Aero is a new modern, experimental, UNIX-like operating system following the monolithic kernel design. Supporting modern PC features such as long mode, 5-level paging, and SMP (multicore), to name a few.
reduce-algebra - reduce-algebra: a portable general-purpose computer algebra system, automatically mirrored from https://svn.code.sf.net/p/reduce-algebra/code/. Please visit the REDUCE Homepage, https://reduce-algebra.sourceforge.io/, to report any bugs or request assistance.
resolved - A simple DNS server for home networks.