Applications of Mathematica in Chemical Engineering
You are visitor 24726 to this site.
This site introduces the reader to how Mathematica can be used in chemical engineering. The Mathematica notebooks listed
below were developed by Professor Brian G. Higgins (bghiggins@ucdavis).
These notebooks were written to augment various chemical engineering classes (junior, senior and graduate) at UCDavis. The notebooks assume you
are using Mathematica version 6 or later (version 7 recommended).
Copyright and usage
These notebooks are Copyright Brian G. Higgins (2009). All rights reserved. You may copy and modify these notebooks and its
content only for internal use in your organization, provided that credit is given
to Brian G. Higgins as the original author. All other uses require the written permission of the author. In particular, these notebooks and their content cannot be bought or sold or exchanged for
profit, or incorporated into material that is bought or sold or exchanged for profit. The notebooks are provided "as is" without express or implied warranty.
Overview
The purpose of these notes is to show by example how Mathematica can be
used to perform complex calculations in the chemical engineering curriculum.
As I see it there are several benefits why I opted to use Mathematica over other software packages such as
Matlab, Mathcad, etc. But as is often the case with most software, your comfort level and reasons for using Mathematica (or not using it) may be quite different.
- You never have to use the command line feature for running programs (cf. Fortran).
With Mathematica you do everything in the Front End
(called the notebook interface). Also Mathematica notebooks are cross platform.
A notebook created on a Mac will work on Windows and all flavors of Unix without any user intervention.
Of course you must have Mathematica installed on your computer.
- Mathematica allows you to enter equations in the notebook using conventional mathematical notation.
In addition, you can create your own symbols and operators, and thus create a scientific document that uses your own notation and is "live".
- Mathematica is a fully integrated development environment with a versatile set of features
that allow you to do the full spectrum of scientific
manipulations without ever leaving the notebook environment, e.g.,
data visualization, scientific computation, symbolic manipulation, string manipulation, and word processing. With
Mathematica one can import Java classes and run them within the notebook environment.
Thus you can use Mathematica to connect to databases and if needed
access other Java functionalities.
These notes assume you have some familiarity with Mathematica. For additional information
on how to program in Mathematica, please visit my ECM6 web site
The examples described in the notebooks below range from rather trivial to very complex systems that require some Mathematica sophistication to
appreciate the programing steps involved. Nevertheless, the notebooks are written with sufficient detail
so that all the programing steps are apparent to the reader.
Links to Mathematica Notebooks and other applications using Mathematica
- Applications involving PDEs
These notebooks discuss programming tools for manipulating analytical solutions to parabolic PDEs (heat conduction type problems): Fourier series, eigenvalues/eigenvectors,
Bessel functions, plotting tools for data visualization. Similarity solutions to nonlinear PDEs are also discussed.
- Method of Weighted Residuals (New material February 2010)
These notebooks discuss programming tools for implementing the method of weighted residuals for solving ODEs and PDES: collocation methods,
collocation on finite elements, pseudo spectral method, finite element methods.
- Applications involving Nonlinear dynamics.
These notebooks discuss programming tools for studying nonlinear dynamics. Topics include
nonlinear maps, bifurcation, periodic solutions, continuation methods, finite difference methods.
- Applications involving linear algebra.
These notebooks discuss programming tools for analysis of problems dealing with linear algebra.
- Applications involving ODEs.
These notebooks discuss programming tools for obtaining series solutions to ODEs with polynomial coefficients.
ODEs involving ordinary and regular singular points are adressed. Series solution to Blasius' equation for
flow over a flat plate is also discussed. A notebook on how to manipulate complex numbers is also provided.
- Applications involving Laplace Transforms
These notebooks discuss Mathmatica programming tools for obtaining solutions to ODEs using Laplace Transforms.
Notebooks on partial fractions, discontinuous functions (delta, Unit Step, periodic)
are also provided.
- Applications involving material balances.
These notebooks discuss programming tools for the analysis of macroscopic balances. Examples are given that
involve multiple reactions.
- Applications involving separation processes.
These notebooks discuss programming tools for the design and analysis of
separation processes such as distillation, absorption, and other equilibrium stage operations. Related topics on thermodynamic equilibrium are also included.
- Applications involving Fluid Mechanics.
These notebooks discuss programming tools for analysis of problems in fluid mechanics.
- Applications involving Heat transfer.
These notebooks discuss programming tools for analysis of problems in heat transfer.
- Applications involving Mass Transfer.
These notebooks discuss programming tools for analysis of problems in mass transfer.