Registration Guide Register for HPC Access to HPCNew User Guide How to Run Batch Jobs
Portal User Guide
About the Service Subscribe to Pay-Per-Use Service Subscribe to Condominium Service Terms and ConditionsUser Guide
High Performance Workspace Service Utility Storage ServiceResearch Data Management ServiceCentre for Computational Science & Engineering
| Need help? | ||
![]() |
||
-
How to start Mathematica?
Mathematica has two interfaces: command line interface and Graphical User Interface (GUI).
To start the command line interface, enter command
math
and to start the graphics GUI, enter command
mathematica
GUI Mathematica is supported on MobileVisLab only. Command line based Mathematica can be run on clusters Atlas4/5/6/7 as well.
How to run large and long CPU hours Mathematica jobs?
Mathematica programs that are large and need longer computing time to run can be submitted to LSF batch queue(s) to run as batch mode. To do this, firstly you need to open the notebook (*.nb) file in a Mathematica GUI, and then save the file as a plain text file (*.txt) via
File ⇒ Save As... ⇒ Choose Plain Text (*.txt) as Files of type: ⇒ Save.
When you have the text file (e.g. prog1.txt), you can submit it to be executed in a batch computing queue. If the program takes less than 4GB memory, you can submit it to run in queue "linux64" as:
# bsub -q linux64 -o stdout.o "math < prog1.txt"
If the program uses more than 4GB memory, you can submit it to run in large memory queues atlas4_large, atlas5_large, atlas6_large or atlas7_large.
# bsub -q atlas7_large -o stdout.o "math < prog1.txt"
If you code the data results printed on the screen in the notebook program, you can find the data results in the job output file as defined as "stdout.o" (you can change the filename to other names); if you code the data results saved into a file, then you shall find the result file in the folder of where prog1.txt is located.
-
How do I clear all of the variables in Mathematica?
To clear any global variables that you've created during a Mathematica session, use the following command:
ClearAll["Global`*"];
To clear all global variables and remove them, do the following command:ClearAll["Global`*"];
Remove["Global`*"];Note that neither of these commands will clear any of the packages that you have loaded; they will also not clear any Mathematica system variables, such as those variables that keep track of your command history.
If your needs are more extensive, then you will want to use the CleanSlate command. If you have Mathematica 3.0 or later, this command is already available in the CleanSlate package.
In[1]:= <<Utilities`CleanSlate`
If you load this package at the beginning of your session, you can return your session to its original state with the CleanSlate command.
In[2]:= x = 1
Out[2]= 1
In[3]:= CleanSlate[]
Out[3] = {CleanSlate`, Global`, System`}
In[4]:= x
Out[4]= xYou can add the command to your init.m file to load the CleanSlate everytime you start the kernel.
-
How do I write a function which evaluates only when the argument is a number?
Most kernel functions will return unevaluated when given undefined symbols as arguments, for example
In[1]:= Sin[x]
Out[1]= Sin[x]The standard way users write functions does not have this property.
In[2]:= f[q_] := q^2
In[3]:= f[x]
Out[3]= x2The way to get f[] to return unevaluated for non-numerical arguments is to write it in a way that is defined only for numerical arguments.
In[4]:= Clear[f]
In[5]:= f[q_?NumberQ] := q^2
In[6]:= f[x]
Out[6]= f[x]
In[7]:= f[2.718]
Out[7]= 7.38752The pattern q_?NumberQ will match one of anything, but only if it is a number. In f[x], the x does not meet this criterion, so the f[x] is just echoed as an undefined expression. This technique can be used to limit a function to just matrix arguments, integer arguments, etc, or to use the same function name with different definitions, depending on the type of argument.
-
Can Mathematica import MatLab M-files?
Mathematica cannot import MatLab .M files. However, it can import Matlab .MAT files. The Mathematica Import[ ] function, when invoked with "MAT" as the third argument, will read Matlab version 4 matrix format. This is a special binary format that is used when you invoke the save() command in MatLab. The Math Works changed over to a proprietary binary format for Matlab version 5. We do not support this format, but it is possible to invoke save() in MatLab version 5 so that it generates the older format instead. You should consult your MatLab documantation on details about how to use save().
Last Modified on 25th Oct 2013. Copyright - All Rights Reserved.
