Open Source Math Software For Education? 605
Rui Carmo writes "Now here's something you don't get asked every day, but which a friend happens to need for her kids: If you had to suggest Open-Source software for mathematics - somewhere from high-school to freshman level, and not merely for 'pure' mathematics, but also applicable to physics and statistics (the kids are considering going into Applied Maths and Engineering), what would you point people toward, assuming they have access to both Linux and Windows? I know this is a niche thing and that there is nothing out there that even comes close to Wolfram's excellent Mathematica (which I used on my old NeXTCube), but surely something along the lines of (or simpler than) Calculation Center exists?" The Knoppix-based Quantian might be a good place to start; what math software do you recommend?
Octave? (Score:5, Informative)
Re:Octave? (Score:5, Informative)
Re:Octave? (Score:4, Interesting)
Every time a discussion of math packages comes up, Octave is always mentioned right away, but Euler [sourceforge.net] gets ignored. I'm curious why people seem to prefer Octave over Euler so much that Euler is virtually unknown.
Re:Octave? (Score:3, Informative)
Re:Octave? (Score:4, Informative)
http://www.octave.org/
I've used Matlab extensively and can tell you that Octave and Matlab aren't perfectly compatible. However, a student who learns Octave can switch to Matlab without any effort whatsoever.
Re:Octave? (Score:5, Funny)
Octave [octave.org]
That, my friend, is a link.
Re:Octave? (Score:5, Funny)
Re:Octave? (Score:4, Funny)
this: http://images.google.com/images?q=this%20is%20a%2
Re:Octave? (Score:5, Funny)
http://www.hugeurl.com/?ODg1M2YwMDM0NzNjMDgyNmJlM
Re:Octave? (Score:3, Funny)
For statisticians... (Score:5, Interesting)
R Project [r-project.org]
Re:Octave? (Score:2, Informative)
Re:Octave? (Score:5, Informative)
The guy's looking for a symbolic mathematics package. Why don't you recommend Excel for him why you're at it? Heavens.
Symbolic maths toolbox? (Score:3, Informative)
There might not be such a great difference in functionality between Mathematic/Maple and Matlab, if you have the symbolic math toolbox (although the UI is totally different
Of course, I don't think Octave has a symbolic math toolbox or equivalent at present
Re:Symbolic maths toolbox? (Score:3, Insightful)
Symbolic math - Maxima (Score:3, Informative)
Use Maxima. It does symbolic math very well. And if you're over in Linux, you can use Maxima as a plugin for TeXmacs for really pretty mathematical documents.
I always site Octave and Maxima when people ask about math software. One for numeric and one for symbolic.
Re:Look again (Score:4, Funny)
mvdw: Have you considered a Toyota Camry?
Anonymous Coward: Oh, geez, does anyone know the difference between an off road vehicle and a sedan?
cameldrv: High-end off road vehicles have become more sedan-like lately.
Rui Carmo: WTF?
Re:Octave? (Score:5, Insightful)
That being said, the best software for math is no software at all. Paper and pencil, that's it. Over at my college, all engineers are required to go through four semesters of math (2 calc, diff eq. and linear algebra), and no calculators or tech tools are allowed for either course. And yes, we did need to plot slope fields, draw 3d representations of functions, etc... It's more important to know the concept of doing a problem than crunching numbers. The only time I use MATLAB is when I'm working on my design project-- I do the design, I setup the equations, MATLAB crunches the numbers for me.
Remember, number crunching != real math. Theory is the most important thing to learn.
Re:Octave? (Score:5, Insightful)
How do you know you're better off for it? Maybe, if calculators had been allowed, you'd've been able to get to deeper concepts faster. Maybe you'd have been able to play with function and form and plots, and discovered chaos.
'Course, maybe not. But it seems to me that a blanket statement like yours is essentially unsupportable, and generally counterproductive. There's room for pen-and-paper, or even just brain work, but IMHO, there's room for integrators and plotters.
Put another way: When I took math in grade school, I had a teacher who also didn't believe in "high tech" -- like the pencil. We did everything in ink. Her theory was, if it was in ink, you couldn't correct a mistake -- so you wouldn't make any. It was an insane educational theory, of course, and bore no relation to what actually occured.
Re:Octave? (Score:3, Interesting)
R (GNU S) (Score:5, Informative)
Re:R (GNU S) (Score:3, Informative)
I've used it since graduate school and in my two subsequent professional research jobs. Currently I use it for running statistical simulations in parallel across our 45 node cluster.
Re:R (GNU S) (Score:4, Informative)
I was going to suggest R.
To the person who claims it is a poor choice for High Schoolers, I disagree, especially if statistics is of interest. It forces you to actually THINK about what you are doing with your models instead of being able to run, willy nilly, any old analysis on any old data (vis-a-vis SPSS).
It is also good because it is VERY robust in its data import capabilities (excel, spss, etc), and is very strong at doing correct analyses.
There are some caveats:
Need to program
Need to be willing to really learn
Poor documentation
Memory intensive for large datasets.
This last item needs some explanation: R, unlike other statistical packages, loads the entire data set into memory, and performs all analyses there, instead of accessing the disk more frequently. This results in large datasets taking some serious memory, especially once you start working on complex analyses. If you plan to be using 5,000+ observations (which isn't all that uncommon in some fields), you should plan on having a fairly beefy computer.
The upside is that it can provide much more information than spss could ever hope for. Now, if someone would just finish the plugin for kalc or gnumeric that would allow direct access, that would be awesome.
(For R afficianados who aren't aware, check out ESS-Emacs Speaks Statistics--it's great for unix coders, but unnecessary for win32 stats folks).
For 3D fun (Score:3, Interesting)
I agree here. Many people are posting that these mathematical sorts of programs aren't for high schoolers. While it is true that such programs shouldn't be used as a crutch for passing math class, it is also important to teach students programming, in particular mathematical programming. For this R would be good.
Poor documentat
Maxima (Score:3, Informative)
Re:Maxima (Score:3, Informative)
It is much closer to mathematica than matlab. I don't know how it compares to mathcad.
Hey it is free so at least give it a try.
Re:Maxima (Score:5, Informative)
It is being actively developed [sourceforge.net]. While William Schelter was maintaining it (for 19 lonely years), development was very slow indeed. I gather that most of the work was done by him, and some of his graduate students. Since his death in 2001, a number of other people have come on board, and there is a lot of catching up to do.
Some documentation [sourceforge.net]has been rewritten, a great many bugs have been squashed, the package has been ported to several Lisps (yes, it does matter to users), there has been at least one new Emacs mode written for it, it can be used with Texmacs, and so on. Some of the people who are working on it are big names in their spheres, like Richard Fateman [berkeley.edu], who worked on the original Macsyma.
Version 5.9.1 was released in September '04, and the next big step will be the GREAT SOURCE DOWNCASING. Maxima is so old that most of it is written in all caps. There is a lot to do to bring it into the 21st century, and most of what's being done right now is behind-the-scenes stuff.
As you say, it's decent software now. It's fully usable, with a useful GUI for Windows (developed on Schelter's watch, as I recall). It is probably better for memory intensive work than Maple or Mathematica; that's what initially got me started using it.
Re:Maxima (Score:3, Interesting)
Is there GPL software comparable to MathCAD? Due to the pioneering work of Martin King (http://www.quarter-wave.com/ [quarter-wave.com]) the latter has become popular among DIY builders for modeling transmission lines speakers. Most though can't justify the ~$1000 for hobby software and use MathCAD's crippled demo, Explorer 8.
Re:Maxima history (Score:3, Interesting)
Re:Maxima (Score:2, Informative)
Re:Maxima (Score:4, Interesting)
GraphCalc is good (Score:5, Informative)
Math Software? (Score:5, Insightful)
The whole technology upgrade the schools have been getting doesn't seem to be making learning more efficient. It seems like a big waste of money.
If a kid doesn't spend time studying his books, why would he start studying his software?
Re:Math Software? (Score:3, Insightful)
Actually, Mathematica is completely inappropriate for high school math courses. It is very complex, insanely powerful, and just way too much for simple stuff like plotting approximations of integrals or whatever. For high school math, there is nothing more fruitful than just working it out by hand. Plotting even a few points is sufficient to show a concept. Are students and teachers so damn insecure that they feel they need 3-D 24-bit color plots of d
Re:Math Software? (Score:4, Interesting)
I think a problem might be that you associate highschool math with trig. Using Mathematica in a self-based course of instruction they can move as fast as is natural for them. Why not let the kids move past dull rote mechanical skills and learning by doing something useful?
Is there really any reason why (the undergrad intro) QM can't be taught in HS using visualization and moderate Linear Algebra skills? I mean, if they can get as far as DiffEq? Isn't it more the *style* of instruction (chalk vs. powerpoint), and what we have them do for homework that holds them back more than the concepts?
Re:Math Software? (Score:3, Interesting)
Re:Math Software? (Score:3, Interesting)
Re:Math Software? (Score:3, Informative)
So was I. I even got a 5 on the AP test (like it ever mattered). Mathcad was a drag. Mathematica would have been hell. We spent so much time dicking around with the computers, we could probably have covered half a chapter in that time! Computers add so much complexity that they are really only a benefit for very large problems, like CFD over an airplane wing. High school students really don't need a computer
gnuplot (Score:3, Insightful)
They can explore lots of stuff just with gnuplot.
bc is also pretty good - simple to learn and use.
Who needs all the flashy stuff?
Stephan
Why software? (Score:5, Insightful)
Re:Why software? (Score:3, Insightful)
Plus, there are other cool things you can do. Long equations can be simnplefied, you don't have to write so much, and you can concentrate in the mathematics, instead of in the often tedious mechanics.
Re:Why software? (Score:4, Insightful)
Fractals are merely a novelty at a high school level. What can students struggling with pre-calc do with fractals other than gawk at pretty pictures? To appreciate them beyond "hey, it's glittery...oooh, color cycling....drool" takes a motivation and interest not present in most students.
Re:Why software? (Score:5, Insightful)
In the worst way. "Hey, those fractals look pretty cool, I think I'll sign up for this advanced fractals course." --semester begins-- "Holy flying fluke, Batman, where did these equations come from?!?" --drops class, ends with less motivation than before--
Re:Why software? (Score:2)
Re:Why software? (Score:2)
Re:Why software? (Score:3, Interesting)
But I think progress education of younger generations if we allow them to use new technology. Introducing math to kids in middle school allows them to become more familiar with the technology. Like, my dad can do math perfectly with pen and pencil but can use a computer or graph on a calculator. That shows the difference in generations.
Yeah, but blackboards are BORING (Score:2)
I mean, you can dictate/write a bunch of equations to some bored kids throwing paper planes at each other, or....
You could do some interactive presentation where a kid can ask you: "and what happens if you do this and that?" and he gets the answer plotted in color and 3D, right away (Given, that you KNOW how to use the math program, of course)
I remember my image processing classes at college. I loved to write my own filters using MATLAB and see how the resulting
Re:Why software? (Score:3, Insightful)
I know this. I'm a public high school graduate who is now in Computer Science and feels as if his Math background is lacking, to say the least.
Yet, I got a 5 on AP Calculus exam, got As in my Calc class, but don't remember a damn thing from Calculus. Why? I mastered the fucking calculator.
Armed with a graphing calculator (TI-89 preferred)
python (Score:2, Informative)
bc (Score:4, Funny)
dc (Score:3, Funny)
For a high school freshman . . . (Score:5, Insightful)
Come back when they're in college and ask again.
KFG
Re:For a high school freshman . . . (Score:2, Insightful)
Word to that. When I was in school, we couldn't even use calculators. I could calculate the cube root of large numbers to several significant digits with paper and pencil.
Re:For a high school freshman . . . (Score:3, Informative)
It can be done by someone who can do arithmetic---and knows how. I don't know how, but I know Newton's method of root solving, so I can come up with a way quickly.
To find the cube root of c (which I'll call x), we need to solve x^3 - c = 0. We can do this by coming up with a guess t[0] and recursively saying that t[n+1] = t[n] - (x^3-c)/
wetware (Score:2)
agreed
First you need to program the wetware (mind), then you can use the software to examine the side effects of the principles and formulas you learned. I think that the latter used to be known as applied math.
"In theory, there's no difference between theory and practice. In practice, however...."
Re:For a high school freshman . . . (Score:3, Interesting)
Software is useful. As a freshman in trig, I was learning calculus on my own, and Mathematica helped. There was one derivative in particular which I couldn't figure out; after using Mathematica to find the answer, the method whereby you reach that answer came to me a few days later -- it was much more obvious from the answer than from the question. There have been countless discussions between my friend and I as to how Mathematica arrived at a certain solution.
You try doing large integrals with pencil-
Re:For a high school freshman . . . (Score:2, Interesting)
Learning is MUCH more complicated than simply absorbing the ability to do certain well defined tasks. There are abilities gained when working hard math problems that are far more important than the math problems themselves, at least in the case of difficult integrals.
Having done '
Re:For a high school freshman . . . (Score:3, Interesting)
If you're learning calculus on your own, you're going to expect things to be different. For people who have the luxury of a class where they learn calculus, I think you'll find your argument doesn't hold. Certainly I recall that in second and third year calc, when asked to compute a derivative or an integral we would usually be given the answer. That way the lecturer could ask a more complex problem that tested more techniques and still expect the right percentage of stud
Maxima and Axiom (Score:2, Interesting)
Paper? (Score:2, Interesting)
Really, why do you need software to teach kids math, engineers where trained with out the aid of computer software for years.
Re:Paper? (Score:2)
No it isn't. Nothing brings out the ADD more than a computer that can draw a graph in a few seconds plus a few easily-set parameters. The kids will waste the whole afternoon either screwing with meaningless variations or figuring out how to surf for game cheats once they get bored. Also, couple the ADD with cheap-ass Windows computers that have driver issues and a clueless teacher, and you have bonefide anti-progress.
This may spark your interest (Score:2, Interesting)
Genius Math Tool [jirka.org]
Scilab (Score:2, Interesting)
Math.com? (Score:4, Interesting)
I'd love a math tutor style of program that would fluidly walk you through from basic math all the way to calc and trig, automatically adjusting to your rate of learning based on little exercises.
Second Octave and R (Score:2)
One major problem that could arise is whether or not your instructor will allow you to hand in homework in either language. Some professors at the school would only allow you to hand in h
Re:Second Octave and R (Score:3, Interesting)
Best open source math software = ... (Score:2, Funny)
You want Maxima (Score:5, Interesting)
It's the closest thing I know of to an OSS Mathematica. It is to Mathematica what The Gimp is to Photoshop. Namely, it's a fair way behind the front runner but still very usable.
OT: Learn the math, then use the tools (Score:5, Insightful)
If possible, students should learn the principles behind the math before they are allowed to use fancy tools like calculators and computers.
My high school teacher made us learn logarithms and trigonometry using a pencil, graph paper, and tables, THEN we got to use a calculator. As for calculus, we did all our graphs by hand, sub-$200 graphing calculators weren't available back then.
I hope you get some good answers in this thread.
Re:OT: Learn the math, then use the tools (Score:2)
If you want to teach people to calculate without necessarily understanding, you can do it either way. But if you want them to see what it really means, then *show* them. Use graphics. Use animated vector fields and potential fields. Will it help them calculate a cube root swiftly by hand? No. Will it help them get through Ja
No Math Software (Score:2)
Without doubt, I am certain that my getting an RPN calculator (replacing a non-RPN calculator) whil
Re:No Math Software (Score:2)
Re:No Math Software (Score:3, Interesting)
There is no reason students shouldn't have a basic scientific for say, things like calculating pe^(rt), but graphing calculators are unnecessary. They cause students to learn how to do a sequence of operations for finding the answer to a question which they'll get on next week's test, not how the problem actually gets solved. If the kids are bein
I don't get it... (Score:2, Insightful)
If you have to use software... (Score:2)
...why not take advantage of the numerous and generous educational discounts available to teachers and students? That way you get manuals and support, and the instructor doesn't have to waste time on configuration, installation, or troubleshooting. Why does it have to be open source? Is she (your friend) worried about bad math being put in or is she going to extend the software in some way?
a good question deserves a good answer. (Score:3, Interesting)
P.S. I think they're looking for new leadership to continue to project. Please help if you can.
I know a lot of people are saying paper first (Score:2)
If they learn what the software is actually doing first, then they will appreciate it that much more, but even more importantly, they will be able to do stuff wher
Re:I know a lot of people are saying paper first (Score:2)
Re:I know a lot of people are saying paper first (Score:2)
Amen!
Can't tell if you were serious or sarcastic, but if you were serious, you were right.
R Project (Score:2)
Don't depend on software early on (Score:2)
I second the suggestions for pencil, paper, learning, and critical thinking. Whenever I started using software to do math, I pretty much always wasted hours tweaking parameters without doing much real work. Why do a proper optimization analysis, when it is so easy to change to numbers and re-run the program?
Using computers early on in math encourages laziness, unless the student really does have a firm grasp of the math and can use the computer for real discovery. Such firm understanding is rare among s
boobies! (SFW) (Score:2, Offtopic)
I've always loved this quote (Score:5, Insightful)
Just wondering
Have you checked out the pricing on math products (Score:4, Interesting)
My main issue with this pricing structure is that a hobbyist like myself simply can't justify the expense. And that's very unfortunate.
Re:I've always loved this quote (Score:5, Insightful)
Re:I've always loved this quote (Score:3, Interesting)
That would be the part where they make it impossible for anybody else to develop the thing any further, so that it suits their needs when the original developer has no interest in them. There's a reason why proprietary software sucks.
What are they trying to do? (Score:2)
The only time I even needed that was for signal analysis plotting holes and doing edge detection on images and so on, so it was hardly a frequent occurance. Everything else (structures, electonics and so on) was solvable on paper with a casio graphic calculator (not for the graphing but for the ability to store 50+ variables, saving a lot of re-entry).
The exceptions to this are of course applications like CFD but u
statistics software (Score:2)
If you have data of any type and want to easily prepare graphical summaries, R is good for that. For beginning students in statistics, it can look up critical values for all the distributions so you don't have to use the blasted tables. It also has functions for everything you'll see in an intro class (regression, A
Maxima (Score:2)
Having said that, if the kid wants to do math, don't let him near a computer. If he needs a computer or a calculator or anything but some paper and a pencil, it's not math.
The voice of reason in the wilderness.... (Score:2)
Ok, I'll bite.
I don't recommend anything - at that level, you should be reading books.
No software out there can replicate or replace the skills and discipline you need to do math.
Reducing the workload by leaning on a crutch will only hurt you in the end. [The exception, of course, is Gnuplot: if you can figger out Gnuplot, you probably understand things well enough to treat it as the tool it is and not a crutch.]
R -- some more background (Score:2)
how to really learn and improve yourself (Score:2)
If you mean software that will help someone solve mathematical problems, then if you understand how to program then really any programming language will do. An interpreted language with lots of high-level libraries (like Python with NumPy and SciPy) is my personal preference. Also, one nice resource is this online integral doer [integrals.com]. Especially good for quick and easy cheating on calculus homework!
If you don't underst
Maxima (Score:3, Interesting)
Oh, and it's GPL, and it works on Windows, Linux, and Mac OS X (via Fink).
BTW, you probably know this, but if you can afford Mathematica or a Math'ca-based product, or at least a student license, it's going to be a lot better and more powerful than any OSS math product today. Math'ca is really an excellent product. Unfortunately, the price matches its quality.
Mathematica, of course (Score:3, Insightful)
Pari-gp, Lisp and interfaces (Score:4, Interesting)
Lisp is also prominently absent but I agree with what Chaitin [auckland.ac.nz] says about it being the natural computer language for mathematically minded computer users. Actually I'm surprised it isn't more popular with other software developers - it seems to me to make any kind of programming easier and more pleasurable.
People who've mentioned Maxima also haven't said anything much about graphical (non-plotting) interfaces to it. I like imaxima in emacs and also TeXmacs - which will act as a graphical front end to many other mathematical programs.
Haskell (Score:3, Interesting)
Re:Haskell (Score:3, Interesting)
Maxima is your best bet (Score:4, Interesting)
Quantian article (Score:5, Informative)
Perl Data Language (Score:3, Interesting)
If you're already teaching your kids perl (for some strange reason), pdl adds vector numeric features and access to all sorts of numeric libraries.
It's good for number crunching and data display.