Thursday, July 24, 2014

Installing a Python 3 Scientific Computing Environment

Python is a versatile and complete scientific computing environment. With NumPy, SciPy and Matplotlib modules, it gets most of the capabilities that one finds in a barebones Matlab environment. After this, you can choose the modules appropriate to your applications. For example, Pandas adds data structures and analysis tools for data analysis. SymPy brings symbolic computing to Python. Then there are the development environments that aid exploratory computing - IPython, Spyder, IEP to name a few. And the game changer, IPython Notebook - a web notebook that combines easy documentation using Markdown and LaTex with live code, output and graphs that can be easily shared or exported to a number of formats. You couldn't ask for more.

Setting up a simple scientific computing environment in Python is also a straight forward matter. Download Python, setuptools, easy_install and pip. Then use pip to download and install NumPy, SciPy, Matplotlib, IPython, IPython-notebook, Pandas, SymPy and any other module you wish to use. You can choose either Python 2 or Python 3. However, choosing Python 2 is the preferred choice at present, perhaps because some modules may not yet be ported to Python 3. Pre-compiled 32-bit and 64-bit binary versions for Windows, for both Python 2 and Python 3, are available at http://www.lfd.uci.edu/~gohlke/pythonlibs/.

With Python gaining significant ground in scientific computing and data analysis, several Python distributions are also available. Especially notable are Anaconda by Continuum Analytics and Enthought Canopy by Enthought. They are Python 2 based, have a package manager to add new modules and update old ones. Continuum Analytics now has a distribution which it calls Miniconda that lets you setup a Python 3 scientific computing environment.

Friday, January 4, 2013

Importing Modules into a Python Program

In Python, a module introduces a new namespace and adds functions, classes and variables into your programs, enabling them to do things which they would not be able to without the capabilities imported from the module

Thursday, May 24, 2012

NumPy Array Indexing

Extracting values from and inserting values into a Python list object is intuitive and powerful

Tuesday, May 22, 2012

Direct Stiffness Method - An Overview

A brief overview of the direct stiffness method as applicable to skeletal structures

Thursday, April 12, 2012

NumPy Arrays

NumPy ndarray is a versatile n-dim array implementation and quite different compared to Scilab matrices