Which program is best for me to learn?

In summary, Octave is best for people who want to do things like plotting graphs and solving equations, while Matlab is best for people who need to do more complex math.
  • #1
richyw
180
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
  • #2
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.
 
  • #3
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: 713
  • phys - 13 01 21 logistic solution 01.jpg
    phys - 13 01 21 logistic solution 01.jpg
    36.5 KB · Views: 950
  • #4
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
 
  • #5
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
 

FAQ: Which program is best for me to learn?

1. What factors should I consider when choosing a program to learn?

When choosing a program to learn, there are a few important factors to consider. These include your personal interests and strengths, the current job market and demand for skills in a particular field, the program's curriculum and reputation, and the potential for growth and advancement in the field.

2. Should I choose a program based on salary potential?

While salary potential is an important consideration, it should not be the only factor in choosing a program. It's important to also consider your personal interests and strengths, as well as the demand for skills in a particular field. Choosing a program solely for the potential salary may not lead to long-term satisfaction and success in a career.

3. Is it better to choose a specialized program or a general one?

This ultimately depends on your career goals and interests. A specialized program may prepare you for a specific job or industry, while a general program may offer a broader range of skills and knowledge. It's important to research and consider your career goals before deciding on a specialized or general program.

4. Should I consider online or in-person programs?

The decision between online or in-person programs depends on your learning style and personal preferences. Online programs offer flexibility and convenience, while in-person programs provide face-to-face interaction and networking opportunities. It's important to research and consider the format that will best suit your needs and learning style.

5. What resources can I use to help me choose the best program?

There are many resources available to help you choose the best program for your needs. These include career counselors, online research, informational interviews with professionals in the field, and reviews and rankings of programs. It's important to use a variety of resources and gather as much information as possible before making a decision.

Similar threads

Replies
1
Views
2K
Replies
3
Views
2K
Replies
4
Views
4K
Replies
22
Views
3K
Replies
2
Views
2K
Replies
4
Views
3K
Replies
8
Views
4K
Back
Top