Comments (25)
How about a short section that mentions the capabilities of the physics package? I'm willing to write that.
I'd also like to discuss the code gen stuff and would be willing to write something about that too.
from sympy-paper.
Code generation is good. It also makes sense to emphasize the way SymPy fits into the larger Python scientific ecosystem, with the possibility to easily combine it with NumPy (lambdify, is there anything else?).
from sympy-paper.
You mean one example per item?
Yes, just one or two examples per item. That usually gives a very good idea what the feature is about. E.g. the statistics can just show a few symbolic distributions.
from sympy-paper.
And I agree that we should have at least a paragraph on numerics and mpmath, since that is a very core part of SymPy.
from sympy-paper.
It seems like a lot of these are domain subpackages. So, there should probably be a section on the architecture and extensibility of SymPy to add new subpackages. Then, we could list a few (probably the most used) as examples. Features such as basic operations and printing (and calculus?) would get there own sections
from sympy-paper.
I would still mention, at least briefly, the other things you mention, one a simple example.
from sympy-paper.
The architecture (and as part of that, extensibility) should probably be its own top level section. "Basic operations" may end up just being part of that section.
I would still mention, at least briefly, the other things you mention, one a simple example.
You mean one example per item?
from sympy-paper.
I'm all for it. The paper will end up being a lot of examples, but that's not necessarily a bad thing.
from sympy-paper.
ton of features.
And redundant ones ;-) I.e. solvers, assumptions: you have two (or three?) incompatible (for now) systems... Are you planning to explain all this mess?
Integration and limits in particular have nontrivial algorithms behind them.
btw, known to be implemented wrongly (c.f. Gruntz algorithm in the maxima). Are you sure that there are any non-trivial algorithms, not implemented already in some open CAS?
from sympy-paper.
How about if we also add some details about SymPy Live and SymPy Gamma in the paper as well? Maybe just we can describe some important features like the integration steps
etc.
from sympy-paper.
How deep are you going to describe the submodules? I can provide targeted descriptions of the parts I know well.
from sympy-paper.
And redundant ones ;-) I.e. solvers, assumptions: you have two (or three?) incompatible (for now) systems... Are you planning to explain all this mess?
This depends a bit on the intended audience. For people interested in computer algebra and mathematical software as a field, and not just using the software, it's instructive to explain why there is a mess, and how you try to solve it. Science is not just about documenting what works but also what doesn't.
from sympy-paper.
@fredrik-johansson, I'm glad to see that you admit there is something to be explained.
from sympy-paper.
@skirpichev are you interested to be an author on this publication?
from sympy-paper.
On Wed, Mar 16, 2016 at 08:08:45AM -0700, Ondřej Čertík wrote:
[1]@skirpichev are you interested to be an author on this publication?
Why do you think so? No. I'm not a sympy author.
from sympy-paper.
@skirpichev Anybody who contributed substantially to SymPy can be an author on this paper if he or she is interested. So that's why I was asking you. If you are not interested, that is fine. Thank you.
from sympy-paper.
@skirpichev given the tone of your comments and the fact that you aren't interested in actually contributing, you're clearly not here to be constructive in any way. I've therefore blocked you. I didn't include it in this repo but the sympy code of conduct applies here.
Let's please return to the original discussion of what features to include in the paper.
from sympy-paper.
Again, this depends on the audience, but it's good to try to make the paper more than a laundry list of features with examples.I think it's important to cover how SymPy uses Python classes to represent mathematical objects, and the pros and cons of this. That also goes for managing to do computer algebra with Python's limited syntax. The ideas going into assumptions are important too.
From my own perspective, I would like to have a short section on numerical evaluation, which could include just a short paragraph about mpmath, since there is no standalone mpmath paper (and I don't think I have time to write one). Obviously, mpmath is just a dependency of SymPy now, but I think it's still morally a part of SymPy to the extent that it could deserve a mention. It's worth mentioning that SymPy makes some effort to track errors, though it does so nonrigorously (just like Mathematica). The pros and cons of this can be discussed. If I were to show one feature with an example, I would say that SymPy can evaluate typical definite integrals numerically, both when no symbolic answer is found (numerical integration) and when there is a symbolic form that involves complicated special functions (e.g. Meijer G-functions). I don't want to hijack the paper for my ends in any way, so this is just an idea for a brief addition if no one objects to it.
from sympy-paper.
@fredrik-johansson I agree. This issue is supposed to just be to figure out the section that does go over the features. I was trying to figure out how to restrict it, so that it doesn't become a laundry list.
from sympy-paper.
I'll write up about the Logic module. We can mention the two variants of dpll
that we have and the heuristics implemented(variable selection, etc).
I shall be interested in writing about the Polys
. May need some help though, this is huge
from sympy-paper.
See also #6
from sympy-paper.
I would like to write about the series
module and a brief overview of series expansion strategies we have tried (focusing on speed bottlenecks). Or is it too overcrowded already?
from sympy-paper.
I can also help out with the series part. Plus, a brief introduction to how
formal power series operate in sympy.
On 31 March 2016 at 11:28, Shivam Vats [email protected] wrote:
I would like to write about the series module and a brief overview of
series expansion strategies we have tried (focusing on speed bottlenecks).—
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub
#5 (comment)
Regards
Sartaj Singh
Mathematics and Computing,
Indian Institute of Technology,
Varanasi - 221 005 INDIA
E-mail: [email protected], [email protected]
[email protected]
from sympy-paper.
Great!
from sympy-paper.
We should also mention something about the tensor module, though it's far from complete.
from sympy-paper.
Related Issues (20)
- QM section too big HOT 2
- There is no reference to the supplementary material HOT 3
- Sympy.stats description? HOT 5
- LaTeX output in REPL? HOT 1
- Anything else need to be done before submitting to PeerJ? HOT 3
- Authorship Criteria HOT 34
- Editors and reviewers HOT 14
- Peer reviews are in HOT 23
- Peer reviews checklist HOT 11
- Technical changes checklist HOT 12
- Reviewer 3 rewrite checklist HOT 5
- HAL upload HOT 3
- Some changes needed HOT 17
- Things to do better next time HOT 1
- Minor revisions HOT 5
- Article Approval HOT 30
- Accepted HOT 2
- Confirm participation in open peer review HOT 1
- Proofing PDF HOT 18
- Paper has been published HOT 2
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from sympy-paper.