SlideShare a Scribd company logo
1 of 21
Download to read offline
What is Mathematica? 
ME 443 Mathematica for Engineers
What is Mathematica? 
Mathematica is a general computer software system and language intended for mathematical and other applications.
You can use Mathematica as: 
A numerical and symbolic calculator where you type in questions, and Mathematica prints out answers. 
A visualization system for functions and data. 
A high-level programming language in which you can create programs, large and small. 
A modeling and data analysis environment. 
A way to create interactive documents that mix text, animated graphics and sound with active formulas.
Mathematical computations can be divided into three main classes: 
Numerical 
Symbolic 
Graphical 
Mathematica handles these three classes in a unified way.
The simplest way to use Mathematica is like a calculator. 
You can use Mathematica lile a traditional programming language such as Fortran or BASIC. 
A traditional system might support perhaps 30 mathematical operations, Mathematica has over 800 built in. 
In addition, while traditional systems handle only numerical computations, Mathematica also handles symbolic and graphical computations.
Here are some simple examples. Each one consists of a short "dialog" with Mathematica. 
The text on the lines labeled 
In[n] : = is what you type in; 
the lines labeled 
Out[n]= are what Mathematica prints back.
Numerical Computation 
Whereas a traditional calculator or numerical computation system handles numbers only to fixed degree of precision, Mathematica can handle numbers of any precision. 
In addition, Mathematica includes a full range of higher mathematical functions.
Mathematica can do numerical computations not only with individual numbers, but also with objects such as matrices. 
Mathematica can handle numerical data, allowing you to do statistical and other analysis, as well as performing operations such as Fourier transforms, interpolation and least-square fitting. 
Mathematica can do numerical operations on functions, such as numerical integration, numerical minimization, and linear programming.
Symbolic Computation 
One major class of calculations made possible by Mathematica's symbolic computation capabilities is those involving the manipulation of algebraic formulas. Mathematica can do many kinds of algebraic operations. 
It can 
Expand, 
Factor, 
Simplify polynomials and rational expressions, 
Find algebraic solutions to polynomial equations and systems of equations.
Mathematica can also do calculus. It can 
evaluate derivatives and integrals symbolically and find symbolic solutions to ordinary differential equations 
derive and manipulate power series approximations 
find limits. 
Standard Mathematica packages cover areas such as vector analysis and Laplace transforms.
Graphics 
Mathematica produces both 2D and 3D graphics, as well as contour and density plots. 
You can plot both functions and lists of data. 
Mathematica provides many options for controlling the details of graphics output. In three dimensions, for example, you can control 
Shading 
Color 
Lighting 
surface shininess 
and other parameters. 
Most versions of Mathematica also support animated graphics.
Plot the function x(x+1)2(x-2)3 for x between -3 and 3. 
This generates a two-dimensional plot of y=x(x+1)2(x-2)3
Mathematica incorporates a graphics language, in which you can give symbolic representations of geometrical objects using primitives such as polygons, then render the objects graphically. All graphics produced by Mathematica are in standard PostScript, and can be transferred to a wide variety of other programs.
The Mathematica Language 
In addition to having a large number of built-in functions, Mathematica also includes a full programming language, which allows you to add your own extensions to the system. 
Mathematica is a high-level programming language, in which you can write programs, both large and small. The fact that Mathematica is an interactive system means that you can run your programs as soon as you have typed them in.
Mathematica programs can make use of the symbolic aspects of Mathematica. They can create and manipulate arbitrary symbolic data structures. Mathematica programs themselves are also symbolic expressions, and can be combined and manipulated using standard Mathematica operations. 
Mathematica supports several programming styles, including: 
Procedural programming, with block structure, conditionals, iteration and recursion. 
Functional programming, with pure functions, functional operators and program-structure operations. 
Rule-based programming, with pattern matching and object orientation.
Mathematica Interfaces 
Many Mathematica systems are divided into two parts: 
the kernel, which actually performs computations, 
the front end, which handles interaction with the user. 
The kernel works the same on all computers that run Mathematica. 
The front end, on the other hand, is optimized for particular computers and graphical user interfaces.
On most computers, the front end for Mathematica supports sophisticated interactive documents called notebooks. 
Notebooks consist of 
text arranged in a hierarchical way, 
together with graphics that can be animated, 
Mathematica expressions that can be used for actual Mathematica computations. 
With notebooks, you can create pedagogical and other material that both explains and performs computations.
Suggestions about Learning Mathematica 
As with any other computer system, there are a few points that you need to get straight before you can even start using Mathematica. For example, you absolutely must know how to type your input to Mathematica. 
Once you know the basics, you can begin to get a feeling for Mathematica by typing in some examples. Always be sure that you type in exactly what appears in the examples - do not change any capitalization, bracketing, etc.
After you have tried a few examples, you should start experimenting for yourself. Change the examples slightly, and see what happens. You should look at each piece of output carefully, and try to understand why it came out as it did. 
After you have run through some simple examples, you should be ready to take the next step: learning to go through what is needed to solve a complete problem with Mathematica.
You will probably find it best to start by picking a specific problem to work on. Pick a problem that you understand well - preferably one whose solution you could easily reproduce by hand. Then go through each step in solving the problem, learning what you need to know about Mathematica to do it. Always be ready to experiment with simple cases, and understand the results you get with these, before going back to your original problem. 
When you have built up a reasonable knowledge of the features of Mathematica, you should go back and learn about the overall structure of the Mathematica system. You can do this by systematically following a Mathematica book.

More Related Content

What's hot

Visual programming lecture
Visual programming lecture Visual programming lecture
Visual programming lecture AqsaHayat3
 
Intro to Discrete Mathematics
Intro to Discrete MathematicsIntro to Discrete Mathematics
Intro to Discrete Mathematicsasad faraz
 
Matlab introduction
Matlab introductionMatlab introduction
Matlab introductionAmeen San
 
Computational Thinking
Computational ThinkingComputational Thinking
Computational Thinkingshowslidedump
 
Our presentation on algorithm design
Our presentation on algorithm designOur presentation on algorithm design
Our presentation on algorithm designNahid Hasan
 
MS-Access Tables Forms Queries Reports.ppt
MS-Access Tables Forms Queries Reports.pptMS-Access Tables Forms Queries Reports.ppt
MS-Access Tables Forms Queries Reports.ppt1520lakshyagupta
 
Intro to Python Programming Language
Intro to Python Programming LanguageIntro to Python Programming Language
Intro to Python Programming LanguageDipankar Achinta
 
Data structure lab manual
Data structure lab manualData structure lab manual
Data structure lab manualnikshaikh786
 
Topological Sort Algorithm.pptx
Topological Sort Algorithm.pptxTopological Sort Algorithm.pptx
Topological Sort Algorithm.pptxMuhammadShafi89
 
An introduction to microsoft office 2007 lecture
An introduction to microsoft office 2007 lectureAn introduction to microsoft office 2007 lecture
An introduction to microsoft office 2007 lectureSukh Sandhu
 
Sorting in python
Sorting in python Sorting in python
Sorting in python Simplilearn
 
Algorithms Lecture 1: Introduction to Algorithms
Algorithms Lecture 1: Introduction to AlgorithmsAlgorithms Lecture 1: Introduction to Algorithms
Algorithms Lecture 1: Introduction to AlgorithmsMohamed Loey
 
Introduction to Graph Theory
Introduction to Graph TheoryIntroduction to Graph Theory
Introduction to Graph TheoryYosuke Mizutani
 
Matlab Functions
Matlab FunctionsMatlab Functions
Matlab FunctionsUmer Azeem
 

What's hot (20)

Visual programming lecture
Visual programming lecture Visual programming lecture
Visual programming lecture
 
Spreadsheets
SpreadsheetsSpreadsheets
Spreadsheets
 
Intro to Discrete Mathematics
Intro to Discrete MathematicsIntro to Discrete Mathematics
Intro to Discrete Mathematics
 
Matlab introduction
Matlab introductionMatlab introduction
Matlab introduction
 
Computational Thinking
Computational ThinkingComputational Thinking
Computational Thinking
 
Our presentation on algorithm design
Our presentation on algorithm designOur presentation on algorithm design
Our presentation on algorithm design
 
Algorithm
AlgorithmAlgorithm
Algorithm
 
MS-Access Tables Forms Queries Reports.ppt
MS-Access Tables Forms Queries Reports.pptMS-Access Tables Forms Queries Reports.ppt
MS-Access Tables Forms Queries Reports.ppt
 
Intro to Python Programming Language
Intro to Python Programming LanguageIntro to Python Programming Language
Intro to Python Programming Language
 
Python final ppt
Python final pptPython final ppt
Python final ppt
 
Data structure lab manual
Data structure lab manualData structure lab manual
Data structure lab manual
 
Backtracking
BacktrackingBacktracking
Backtracking
 
Topological Sort Algorithm.pptx
Topological Sort Algorithm.pptxTopological Sort Algorithm.pptx
Topological Sort Algorithm.pptx
 
An introduction to microsoft office 2007 lecture
An introduction to microsoft office 2007 lectureAn introduction to microsoft office 2007 lecture
An introduction to microsoft office 2007 lecture
 
Learn Latex
Learn LatexLearn Latex
Learn Latex
 
Sorting in python
Sorting in python Sorting in python
Sorting in python
 
Algorithms Lecture 1: Introduction to Algorithms
Algorithms Lecture 1: Introduction to AlgorithmsAlgorithms Lecture 1: Introduction to Algorithms
Algorithms Lecture 1: Introduction to Algorithms
 
Introduction to Graph Theory
Introduction to Graph TheoryIntroduction to Graph Theory
Introduction to Graph Theory
 
Matlab Functions
Matlab FunctionsMatlab Functions
Matlab Functions
 
Training basic latex
Training basic latexTraining basic latex
Training basic latex
 

Similar to Mathematica Introduction Explains Powerful Software System

Anything but simple Mathematica
Anything but simple MathematicaAnything but simple Mathematica
Anything but simple MathematicaSergeiPronkevich
 
Technology in maths and maths in technology
Technology  in maths and maths in technologyTechnology  in maths and maths in technology
Technology in maths and maths in technologyshajunisha
 
Matlab for Electrical Engineers
Matlab for Electrical EngineersMatlab for Electrical Engineers
Matlab for Electrical EngineersManish Joshi
 
A definitive guide on math works matlab to the students
A definitive guide on math works matlab to the studentsA definitive guide on math works matlab to the students
A definitive guide on math works matlab to the studentsmatlabassignmenthelp1
 
Me 443 3 basic calculations Erdi Karaçal Mechanical Engineer University of ...
Me 443   3 basic calculations Erdi Karaçal Mechanical Engineer University of ...Me 443   3 basic calculations Erdi Karaçal Mechanical Engineer University of ...
Me 443 3 basic calculations Erdi Karaçal Mechanical Engineer University of ...Erdi Karaçal
 
Summer training in matlab
Summer training in matlabSummer training in matlab
Summer training in matlabArshit Rai
 
Data structures & problem solving unit 1 ppt
Data structures & problem solving unit 1 pptData structures & problem solving unit 1 ppt
Data structures & problem solving unit 1 pptaviban
 
MATLAB Assignment Help
MATLAB Assignment HelpMATLAB Assignment Help
MATLAB Assignment HelpEssay Corp
 
Introduction to Artificial Intelligence...pptx
Introduction to Artificial Intelligence...pptxIntroduction to Artificial Intelligence...pptx
Introduction to Artificial Intelligence...pptxMMCOE, Karvenagar, Pune
 

Similar to Mathematica Introduction Explains Powerful Software System (20)

Anything but simple Mathematica
Anything but simple MathematicaAnything but simple Mathematica
Anything but simple Mathematica
 
Technology in maths and maths in technology
Technology  in maths and maths in technologyTechnology  in maths and maths in technology
Technology in maths and maths in technology
 
Matlab for Electrical Engineers
Matlab for Electrical EngineersMatlab for Electrical Engineers
Matlab for Electrical Engineers
 
A definitive guide on math works matlab to the students
A definitive guide on math works matlab to the studentsA definitive guide on math works matlab to the students
A definitive guide on math works matlab to the students
 
Presentation1
Presentation1Presentation1
Presentation1
 
Flowcharting and Algorithm
Flowcharting and Algorithm Flowcharting and Algorithm
Flowcharting and Algorithm
 
Report math xpert
Report math xpertReport math xpert
Report math xpert
 
++Matlab 14 sesiones
++Matlab 14 sesiones++Matlab 14 sesiones
++Matlab 14 sesiones
 
Matlab demo
Matlab demoMatlab demo
Matlab demo
 
251 - Alogarithms Lects.pdf
251 - Alogarithms Lects.pdf251 - Alogarithms Lects.pdf
251 - Alogarithms Lects.pdf
 
Me 443 3 basic calculations Erdi Karaçal Mechanical Engineer University of ...
Me 443   3 basic calculations Erdi Karaçal Mechanical Engineer University of ...Me 443   3 basic calculations Erdi Karaçal Mechanical Engineer University of ...
Me 443 3 basic calculations Erdi Karaçal Mechanical Engineer University of ...
 
ML.pdf
ML.pdfML.pdf
ML.pdf
 
Summer training in matlab
Summer training in matlabSummer training in matlab
Summer training in matlab
 
Mathcad
MathcadMathcad
Mathcad
 
Data structures & problem solving unit 1 ppt
Data structures & problem solving unit 1 pptData structures & problem solving unit 1 ppt
Data structures & problem solving unit 1 ppt
 
MATLAB Assignment Help
MATLAB Assignment HelpMATLAB Assignment Help
MATLAB Assignment Help
 
Introduction to Artificial Intelligence...pptx
Introduction to Artificial Intelligence...pptxIntroduction to Artificial Intelligence...pptx
Introduction to Artificial Intelligence...pptx
 
Basic matlab for beginners
Basic matlab for beginnersBasic matlab for beginners
Basic matlab for beginners
 
All About MATLAB
All About MATLABAll About MATLAB
All About MATLAB
 
maple project.pptx
maple project.pptxmaple project.pptx
maple project.pptx
 

More from Erdi Karaçal

Ch40 design selection
Ch40 design selectionCh40 design selection
Ch40 design selectionErdi Karaçal
 
Ch39 computer aided manufacturing
Ch39 computer aided manufacturingCh39 computer aided manufacturing
Ch39 computer aided manufacturingErdi Karaçal
 
Ch33 surface roughness
Ch33 surface roughnessCh33 surface roughness
Ch33 surface roughnessErdi Karaçal
 
Ch32 brazing soldering
Ch32 brazing solderingCh32 brazing soldering
Ch32 brazing solderingErdi Karaçal
 
Ch31 solid state welding Erdi Karaçal Mechanical Engineer University of Gazia...
Ch31 solid state welding Erdi Karaçal Mechanical Engineer University of Gazia...Ch31 solid state welding Erdi Karaçal Mechanical Engineer University of Gazia...
Ch31 solid state welding Erdi Karaçal Mechanical Engineer University of Gazia...Erdi Karaçal
 
Ch30 fusion welding Erdi Karaçal Mechanical Engineer University of Gaziantep
Ch30 fusion welding Erdi Karaçal Mechanical Engineer University of GaziantepCh30 fusion welding Erdi Karaçal Mechanical Engineer University of Gaziantep
Ch30 fusion welding Erdi Karaçal Mechanical Engineer University of GaziantepErdi Karaçal
 
Ch29 microeletrical fabrication Erdi Karaçal Mechanical Engineer University o...
Ch29 microeletrical fabrication Erdi Karaçal Mechanical Engineer University o...Ch29 microeletrical fabrication Erdi Karaçal Mechanical Engineer University o...
Ch29 microeletrical fabrication Erdi Karaçal Mechanical Engineer University o...Erdi Karaçal
 
Ch28 microelectronic devices Erdi Karaçal Mechanical Engineer University of G...
Ch28 microelectronic devices Erdi Karaçal Mechanical Engineer University of G...Ch28 microelectronic devices Erdi Karaçal Mechanical Engineer University of G...
Ch28 microelectronic devices Erdi Karaçal Mechanical Engineer University of G...Erdi Karaçal
 
Ch27 advanced machining Erdi Karaçal Mechanical Engineer University of Gaziantep
Ch27 advanced machining Erdi Karaçal Mechanical Engineer University of GaziantepCh27 advanced machining Erdi Karaçal Mechanical Engineer University of Gaziantep
Ch27 advanced machining Erdi Karaçal Mechanical Engineer University of GaziantepErdi Karaçal
 
Ch26 abrassive machining Erdi Karaçal Mechanical Engineer University of Gazia...
Ch26 abrassive machining Erdi Karaçal Mechanical Engineer University of Gazia...Ch26 abrassive machining Erdi Karaçal Mechanical Engineer University of Gazia...
Ch26 abrassive machining Erdi Karaçal Mechanical Engineer University of Gazia...Erdi Karaçal
 
Ch25 machining centers Erdi Karaçal Mechanical Engineer University of Gaziantep
Ch25 machining centers Erdi Karaçal Mechanical Engineer University of GaziantepCh25 machining centers Erdi Karaçal Mechanical Engineer University of Gaziantep
Ch25 machining centers Erdi Karaçal Mechanical Engineer University of GaziantepErdi Karaçal
 
Ch24 milling Erdi Karaçal Mechanical Engineer University of Gaziantep
Ch24 milling Erdi Karaçal Mechanical Engineer University of GaziantepCh24 milling Erdi Karaçal Mechanical Engineer University of Gaziantep
Ch24 milling Erdi Karaçal Mechanical Engineer University of GaziantepErdi Karaçal
 

More from Erdi Karaçal (20)

afm of Ti6Al4V
afm of Ti6Al4V afm of Ti6Al4V
afm of Ti6Al4V
 
Met ch1
Met ch1Met ch1
Met ch1
 
Met ch0
Met ch0Met ch0
Met ch0
 
Ch40 design selection
Ch40 design selectionCh40 design selection
Ch40 design selection
 
Ch39 computer aided manufacturing
Ch39 computer aided manufacturingCh39 computer aided manufacturing
Ch39 computer aided manufacturing
 
Ch38 computer aided
Ch38 computer aidedCh38 computer aided
Ch38 computer aided
 
Ch37 automation
Ch37 automationCh37 automation
Ch37 automation
 
Ch36 quality
Ch36 qualityCh36 quality
Ch36 quality
 
Ch35 measurement
Ch35 measurementCh35 measurement
Ch35 measurement
 
Ch34 coating
Ch34 coatingCh34 coating
Ch34 coating
 
Ch33 surface roughness
Ch33 surface roughnessCh33 surface roughness
Ch33 surface roughness
 
Ch32 brazing soldering
Ch32 brazing solderingCh32 brazing soldering
Ch32 brazing soldering
 
Ch31 solid state welding Erdi Karaçal Mechanical Engineer University of Gazia...
Ch31 solid state welding Erdi Karaçal Mechanical Engineer University of Gazia...Ch31 solid state welding Erdi Karaçal Mechanical Engineer University of Gazia...
Ch31 solid state welding Erdi Karaçal Mechanical Engineer University of Gazia...
 
Ch30 fusion welding Erdi Karaçal Mechanical Engineer University of Gaziantep
Ch30 fusion welding Erdi Karaçal Mechanical Engineer University of GaziantepCh30 fusion welding Erdi Karaçal Mechanical Engineer University of Gaziantep
Ch30 fusion welding Erdi Karaçal Mechanical Engineer University of Gaziantep
 
Ch29 microeletrical fabrication Erdi Karaçal Mechanical Engineer University o...
Ch29 microeletrical fabrication Erdi Karaçal Mechanical Engineer University o...Ch29 microeletrical fabrication Erdi Karaçal Mechanical Engineer University o...
Ch29 microeletrical fabrication Erdi Karaçal Mechanical Engineer University o...
 
Ch28 microelectronic devices Erdi Karaçal Mechanical Engineer University of G...
Ch28 microelectronic devices Erdi Karaçal Mechanical Engineer University of G...Ch28 microelectronic devices Erdi Karaçal Mechanical Engineer University of G...
Ch28 microelectronic devices Erdi Karaçal Mechanical Engineer University of G...
 
Ch27 advanced machining Erdi Karaçal Mechanical Engineer University of Gaziantep
Ch27 advanced machining Erdi Karaçal Mechanical Engineer University of GaziantepCh27 advanced machining Erdi Karaçal Mechanical Engineer University of Gaziantep
Ch27 advanced machining Erdi Karaçal Mechanical Engineer University of Gaziantep
 
Ch26 abrassive machining Erdi Karaçal Mechanical Engineer University of Gazia...
Ch26 abrassive machining Erdi Karaçal Mechanical Engineer University of Gazia...Ch26 abrassive machining Erdi Karaçal Mechanical Engineer University of Gazia...
Ch26 abrassive machining Erdi Karaçal Mechanical Engineer University of Gazia...
 
Ch25 machining centers Erdi Karaçal Mechanical Engineer University of Gaziantep
Ch25 machining centers Erdi Karaçal Mechanical Engineer University of GaziantepCh25 machining centers Erdi Karaçal Mechanical Engineer University of Gaziantep
Ch25 machining centers Erdi Karaçal Mechanical Engineer University of Gaziantep
 
Ch24 milling Erdi Karaçal Mechanical Engineer University of Gaziantep
Ch24 milling Erdi Karaçal Mechanical Engineer University of GaziantepCh24 milling Erdi Karaçal Mechanical Engineer University of Gaziantep
Ch24 milling Erdi Karaçal Mechanical Engineer University of Gaziantep
 

Mathematica Introduction Explains Powerful Software System

  • 1. What is Mathematica? ME 443 Mathematica for Engineers
  • 2. What is Mathematica? Mathematica is a general computer software system and language intended for mathematical and other applications.
  • 3. You can use Mathematica as: A numerical and symbolic calculator where you type in questions, and Mathematica prints out answers. A visualization system for functions and data. A high-level programming language in which you can create programs, large and small. A modeling and data analysis environment. A way to create interactive documents that mix text, animated graphics and sound with active formulas.
  • 4. Mathematical computations can be divided into three main classes: Numerical Symbolic Graphical Mathematica handles these three classes in a unified way.
  • 5. The simplest way to use Mathematica is like a calculator. You can use Mathematica lile a traditional programming language such as Fortran or BASIC. A traditional system might support perhaps 30 mathematical operations, Mathematica has over 800 built in. In addition, while traditional systems handle only numerical computations, Mathematica also handles symbolic and graphical computations.
  • 6. Here are some simple examples. Each one consists of a short "dialog" with Mathematica. The text on the lines labeled In[n] : = is what you type in; the lines labeled Out[n]= are what Mathematica prints back.
  • 7. Numerical Computation Whereas a traditional calculator or numerical computation system handles numbers only to fixed degree of precision, Mathematica can handle numbers of any precision. In addition, Mathematica includes a full range of higher mathematical functions.
  • 8. Mathematica can do numerical computations not only with individual numbers, but also with objects such as matrices. Mathematica can handle numerical data, allowing you to do statistical and other analysis, as well as performing operations such as Fourier transforms, interpolation and least-square fitting. Mathematica can do numerical operations on functions, such as numerical integration, numerical minimization, and linear programming.
  • 9. Symbolic Computation One major class of calculations made possible by Mathematica's symbolic computation capabilities is those involving the manipulation of algebraic formulas. Mathematica can do many kinds of algebraic operations. It can Expand, Factor, Simplify polynomials and rational expressions, Find algebraic solutions to polynomial equations and systems of equations.
  • 10. Mathematica can also do calculus. It can evaluate derivatives and integrals symbolically and find symbolic solutions to ordinary differential equations derive and manipulate power series approximations find limits. Standard Mathematica packages cover areas such as vector analysis and Laplace transforms.
  • 11. Graphics Mathematica produces both 2D and 3D graphics, as well as contour and density plots. You can plot both functions and lists of data. Mathematica provides many options for controlling the details of graphics output. In three dimensions, for example, you can control Shading Color Lighting surface shininess and other parameters. Most versions of Mathematica also support animated graphics.
  • 12. Plot the function x(x+1)2(x-2)3 for x between -3 and 3. This generates a two-dimensional plot of y=x(x+1)2(x-2)3
  • 13. Mathematica incorporates a graphics language, in which you can give symbolic representations of geometrical objects using primitives such as polygons, then render the objects graphically. All graphics produced by Mathematica are in standard PostScript, and can be transferred to a wide variety of other programs.
  • 14. The Mathematica Language In addition to having a large number of built-in functions, Mathematica also includes a full programming language, which allows you to add your own extensions to the system. Mathematica is a high-level programming language, in which you can write programs, both large and small. The fact that Mathematica is an interactive system means that you can run your programs as soon as you have typed them in.
  • 15. Mathematica programs can make use of the symbolic aspects of Mathematica. They can create and manipulate arbitrary symbolic data structures. Mathematica programs themselves are also symbolic expressions, and can be combined and manipulated using standard Mathematica operations. Mathematica supports several programming styles, including: Procedural programming, with block structure, conditionals, iteration and recursion. Functional programming, with pure functions, functional operators and program-structure operations. Rule-based programming, with pattern matching and object orientation.
  • 16.
  • 17. Mathematica Interfaces Many Mathematica systems are divided into two parts: the kernel, which actually performs computations, the front end, which handles interaction with the user. The kernel works the same on all computers that run Mathematica. The front end, on the other hand, is optimized for particular computers and graphical user interfaces.
  • 18. On most computers, the front end for Mathematica supports sophisticated interactive documents called notebooks. Notebooks consist of text arranged in a hierarchical way, together with graphics that can be animated, Mathematica expressions that can be used for actual Mathematica computations. With notebooks, you can create pedagogical and other material that both explains and performs computations.
  • 19. Suggestions about Learning Mathematica As with any other computer system, there are a few points that you need to get straight before you can even start using Mathematica. For example, you absolutely must know how to type your input to Mathematica. Once you know the basics, you can begin to get a feeling for Mathematica by typing in some examples. Always be sure that you type in exactly what appears in the examples - do not change any capitalization, bracketing, etc.
  • 20. After you have tried a few examples, you should start experimenting for yourself. Change the examples slightly, and see what happens. You should look at each piece of output carefully, and try to understand why it came out as it did. After you have run through some simple examples, you should be ready to take the next step: learning to go through what is needed to solve a complete problem with Mathematica.
  • 21. You will probably find it best to start by picking a specific problem to work on. Pick a problem that you understand well - preferably one whose solution you could easily reproduce by hand. Then go through each step in solving the problem, learning what you need to know about Mathematica to do it. Always be ready to experiment with simple cases, and understand the results you get with these, before going back to your original problem. When you have built up a reasonable knowledge of the features of Mathematica, you should go back and learn about the overall structure of the Mathematica system. You can do this by systematically following a Mathematica book.