Which program is best for me to learn?

  • Context: Maple 
  • Thread starter Thread starter richyw
  • Start date Start date
  • Tags Tags
    Maple Program
Join the discussion
Ask a follow-up here, or get your own question answered by working scientists, mathematicians and engineers — people, not an autocomplete.
Real named experts · corrections over time · the nuance an AI answer skips
4 replies · 4K views
richyw
Messages
179
Reaction score
0
Hi, I'm in my third year of a physics program, and lately I have really been struggling to figure out what program would be best for me to learn.

There are so many options out there. Octave, Scilab, Freemat, Matlab and then Maxima, Mathematica, Maple, etc.

So my understanding is that the first group I listed is quite different from the second, and it's best for someone to learn one from each category?

Right now, what's important to me most is just doing stuff like plotting graphs and solving equations. I guess mostly for my math classes. I have been using octave as like a general purpose calculator, but that's about it.

Is the second group more useful for me for what I need to do right now? The other day I was trying to check my work for differential equations. I basically had a family of ODE's and I could not figure out how to get maxima to find the solution to the ODE (I was trying to make the bifurcation diagram).

So I guess my question is "which of these two programs should I commit to learning as an undergraduate student with NO prior experience, or do I only need to learn one?"
 
Physics news on Phys.org
ok so since you want to plot stuff and may need to learn MATLAB then I suggest FREEMAT since its a MATLAB clone supporting the MATLAB core language and core functions.

Its what I used to do Comp Physics projects. It was really great at generating simple charts. Eventually though you may need to go to MATLAB but delays paying the $100 until you really need it.

For other kinds of programming there's Processing at Processing.org for java based graphics apps. Easy to use.
 
Does your program recommend one or just leave it to you?

Do you require a symbolic solution to your ODEs or is a numeric solution sufficient? Most applications should be able to generate a numeric solution (I know Matlab and Mathematica can).

Another application to consider is Mathcad; it allows you to write many problems in near standard mathematical notation and plot the solution / inspect values on the same worksheet that you program. The first image below shows a simple ODE (Van der Pol) worksheet - define, solve, plot, all live and exactly as shown; changing a parameter results in the solution being updated and the plot updated accordingly. The second image shows a logistic map bifurcation generated by iteration.

You should be able to download or otherwise obtain trial versions of Mathcad and Mathematica.

attachment.php?attachmentid=54890&stc=1&d=1358734434.jpg


attachment.php?attachmentid=54891&stc=1&d=1358734834.jpg
 

Attachments

  • phys - 13 01 21 ode solution 01.jpg
    phys - 13 01 21 ode solution 01.jpg
    23 KB · Views: 784
  • phys - 13 01 21 logistic solution 01.jpg
    phys - 13 01 21 logistic solution 01.jpg
    36.5 KB · Views: 1,021
holy smokes. That second image you posted is exactly the kind of thing I was trying to do. Is that mathcad?

Yes I am looking for a symbolic solution sometimes. I have the understanding that octave, MATLAB etc do not do this
 
richyw said:
holy smokes. That second image you posted is exactly the kind of thing I was trying to do. Is that mathcad?
Yes, it is Mathcad (Mathcad 15).

Yes I am looking for a symbolic solution sometimes. I have the understanding that octave, MATLAB etc do not do this
Matlab has a Symbolic Toolbox (it's an extra not standard), Mathcad has symbolic capabilities built-in that are good enough for many purposes, Mathematica is probably the best one for overall symbolic capability. Sage may be worth looking at (I haven't tried it, though) www.sagemath.org/

The image below is also Mathcad and took me about 2 minutes to implement. Mathcad uses ":=" to define variables/functions, "=" to numerically evaluate them and "->" (right arrow) to symbolically evaluate them. The standard numerical evaluation uses conventional IEEE floating point (in fact, it calls the processor's built-in floating point processing unit (FPU), as do standard Matlab and Excel) whereas symbolic evaluation is based on the MuPad engine and handles arbitrary size numbers (bignums). The calculus and other operators are 'drawn' by selecting them from a toolbar or using a keyboard shortcut.

https://www.physicsforums.com/attachment.php?attachmentid=54892&stc=1&d=1358738491