Computer Algebra System: Physics Self-Study Suggestions

In summary: Julia is also relatively new and I have doubts about its stability. I've used it and I've had issues with e.g. code I wrote a few years ago no longer working because the version got upgraded in the intervening years and they changed things in a way that broke backward compatibility. I had similar problems a few years ago because the versions of Julia I had installed on my home and work computers at the time were different. I like what Julia is trying to do but this is the main reason I don't recommend it, especially for beginners, at least for now.Thanks for the recommendations! Do you know of a Computer Algebra System that is more stable and beginner-friendly?I am stuying physics by
  • #1
Fernando Rios
96
10
I am stuying physics by myself and I would like to get a Computer Algebra System. Does anybody has any suggestions?
 
Physics news on Phys.org
  • #2
How about Freemat or Octave or Julia. These can do vector and matrix operations quite well and all are free, free free free.

How about the anaconda distribution of python with numpy scipy sympy matplotlib and pandas great for numerical work like machine learning.

Mathematica can do symbolic math and so can python with sympy. I am not sure about how well julia works with symbolic math though.
 
  • Like
Likes scottdave
  • #3
I like Mathematica for paid CAS and SageMath for free.
 
  • Like
Likes jedishrfu
  • #4
Thank you for your responses. How good is the CAS included in my TI-89 Titanium calculator?
 
  • #5
I have never used it, but I can’t imagine that it could be very good given the hardware limitations.
 
  • #8
Thanks all of you for your answers. Dale, do you know how can I learn to use FreeMat?
 
  • #9
I think you probably meant to ask @jedishrfu instead of me. I have never used it. I generally just read the documentation for other software.
 
  • #10
Dale said:
I think you probably meant to ask @jedishrfu instead of me. I have never used it. I generally just read the documentation for other software.
Dale, you are right. I actually tried to install SageMath into my computer, but my computer prevented me from doing it. So then I tried to install FreeMat. Do you know why my computer doesn't let me install SageMath?
 
  • #11
No, I don’t. I was able to install it on my home computer but not my work computer. I assumed that it was due to some security configuration on my work computer. My IT people are a little overbearing.
 
  • #12
Dale said:
No, I don’t. I was able to install it on my home computer but not my work computer. I assumed that it was due to some security configuration on my work computer. My IT people are a little overbearing.
Do you suggest me to learn Mathematica in order to learn more advanced physics?
 
  • #13
If you can buy it, then it is an awesome tool. I have used it since 1996, and it greatly aided my physics learning.
 
  • Like
Likes jedishrfu
  • #14
jedishrfu said:
How about Freemat or Octave or Julia. These can do vector and matrix operations quite well and all are free, free free free.

How about the anaconda distribution of python with numpy scipy sympy matplotlib and pandas great for numerical work like machine learning.

Mathematica can do symbolic math and so can python with sympy. I am not sure about how well julia works with symbolic math though.
Do you have any idea of how to learn FreeMat? When I click on "Online Manual", the program closes.
 
  • #16
Try typing help and the function you want help on in the commands panel.

If not then one of the manuals above may help.
 
  • #17
Fernando Rios said:
Do you have any idea of how to learn FreeMat? When I click on "Online Manual", the program closes.

As @Dale said it may be some internet configuration. Perhaps your os is protecting you from whatever site or file that freemat is trying to access.
 
  • #18
Fernando Rios said:
Do you suggest me to learn Mathematica in order to learn more advanced physics?

Mathematica won't teach you advanced physics, it is a tool to do calculations.
 
  • Like
Likes CalcNerd and jedishrfu
  • #19
Dr Transport said:
Mathematica won't teach you advanced physics, it is a tool to do calculations.
Ok, I understand that. Do physics majors learn it to perform physics calculations?
 
  • #20
Fernando Rios said:
I am stuying physics by myself and I would like to get a Computer Algebra System. Does anybody has any suggestions?

You can try Maxima, if you want to try a free one.
jedishrfu said:
How about Freemat or Octave or Julia.

These aren't computer algebra systems.

Julia is also relatively new and I have doubts about its stability. I've used it and I've had issues with e.g. code I wrote a few years ago no longer working because the version got upgraded in the intervening years and they changed things in a way that broke backward compatibility. I had similar problems a few years ago because the versions of Julia I had installed on my home and work computers at the time were different. I like what Julia is trying to do but this is the main reason I don't recommend it, especially for beginners, at least for now. Julia passed version 1.0 recently though so maybe this will change in the future.
 
  • #21
Fernando Rios said:
Ok, I understand that. Do physics majors learn it to perform physics calculations?
They do, but it is a steep learning curve. I do not know it and I am a fairly successful theoretical physicist. I'm not an advocate of using computer algebra systems as an undergraduutel because I am an advocate of repetition is the best learning tool, unless it is directly needed for a specific class.
 
  • #22
Ok, so do you suggest to first focus on the physics and then try CAS later on?
 
  • #23
Fernando Rios said:
Ok, so do you suggest to first focus on the physics and then try CAS later on?
yes
 
  • Like
Likes CalcNerd
  • #24
wle said:
You can try Maxima, if you want to try a free one.

These aren't computer algebra systems.

Julia is also relatively new and I have doubts about its stability. I've used it and I've had issues with e.g. code I wrote a few years ago no longer working because the version got upgraded in the intervening years and they changed things in a way that broke backward compatibility. I had similar problems a few years ago because the versions of Julia I had installed on my home and work computers at the time were different. I like what Julia is trying to do but this is the main reason I don't recommend it, especially for beginners, at least for now. Julia passed version 1.0 recently though so maybe this will change in the future.

To be fair though that was when Julia was in prerelease mode ie before v1.0 and they said things would change as it evolves. Scalia was always the more problematic one as things would change between point releases causing to tighten up their code some more.
 
  • #25
You’re looking at it all wrong. You learn physics by doing physics problems. The Cas system is completely optional but if you have it you can get your results faster if you know how to use the CAS system effectively. CAS is more like lab equipment that something that will magically teach you physics that you don’t already know.
 
  • #26
Dr Transport said:
They do, but it is a steep learning curve. I do not know it and I am a fairly successful theoretical physicist. I'm not an advocate of using computer algebra systems as an undergraduutel because I am an advocate of repetition is the best learning tool, unless it is directly needed for a specific class.
I disagree with both of these. The learning curve is not that steep, particularly not for Mathematica which has been developed with a very consistent interface. SageMath is a bit of a hodgepodge so it does have a steeper learning curve.

I also disagree that the premise that “repetition is the best learning tool” implies that you should avoid CAS tools in learning physics. In physics, most of the actual physics is in setting up the problem. A CAS system does not automate that. The actual solution of the problem is less physics and more math. A CAS system allows you to automate that part and focus more on understanding the physics in setting up the problem right. Not only could you do more repetition of the physics with CAS, but you could also do more challenging problems
 

1. What is a Computer Algebra System (CAS)?

A Computer Algebra System is a software package that allows for symbolic mathematical computations. It can manipulate mathematical expressions and equations, perform algebraic operations, and solve equations.

2. How can a CAS be used in physics self-study?

A CAS can be used in physics self-study to help with complex calculations and problem-solving. It can also assist in visualizing and understanding mathematical concepts and equations.

3. Are there any recommended CAS specifically for physics self-study?

There are many CAS available, but some popular ones for physics self-study include Mathematica, Maple, and Wolfram Alpha.

4. Can a CAS replace traditional study methods in physics?

No, a CAS should not be used as a replacement for traditional study methods. It can be a helpful tool, but it is important to also practice solving problems by hand and understanding the underlying concepts in physics.

5. Is it necessary to have prior programming knowledge to use a CAS?

No, most CAS have user-friendly interfaces and do not require programming knowledge. However, having some basic programming knowledge can be helpful in utilizing more advanced features of a CAS.

Similar threads

  • Science and Math Textbooks
Replies
14
Views
3K
  • STEM Academic Advising
Replies
11
Views
1K
Replies
12
Views
2K
  • Science and Math Textbooks
Replies
1
Views
741
  • STEM Career Guidance
Replies
11
Views
594
  • STEM Academic Advising
Replies
5
Views
677
  • STEM Academic Advising
Replies
9
Views
1K
  • Beyond the Standard Models
Replies
3
Views
1K
  • STEM Academic Advising
Replies
3
Views
794
  • Science and Math Textbooks
Replies
3
Views
1K
Back
Top