Index: /issm/trunk/externalpackages/matlab/install.sh
===================================================================
--- /issm/trunk/externalpackages/matlab/install.sh	(revision 10118)
+++ /issm/trunk/externalpackages/matlab/install.sh	(revision 10119)
@@ -5,7 +5,7 @@
 
 #Select or create a new simlink
-ln -s /usr/local/pkgs/matlab-7.6/ install
+#ln -s /usr/local/pkgs/matlab-7.6/ install
 #ln -s /usr/local/matlab712/ install
 #ln -s /usr/local/pkgs/matlab-7.6/ install
 #ln -s /Applications/MATLAB_R2009a.app/ install
-#ln -s /Applications/MATLAB_R2010a.app/ install
+ln -s /Applications/MATLAB_R2010a.app/ install
Index: /issm/trunk/externalpackages/mpich2/install.sh
===================================================================
--- /issm/trunk/externalpackages/mpich2/install.sh	(revision 10118)
+++ /issm/trunk/externalpackages/mpich2/install.sh	(revision 10119)
@@ -5,7 +5,7 @@
 
 #version of mpich2
-version=1.0.2p1
+#version=1.0.2p1
 #version=1.3.1
-#version=1.4
+version=1.4
 
 #Some cleanup
Index: /issm/trunk/externalpackages/vim/addons/vimrc
===================================================================
--- /issm/trunk/externalpackages/vim/addons/vimrc	(revision 10118)
+++ /issm/trunk/externalpackages/vim/addons/vimrc	(revision 10119)
@@ -78,4 +78,5 @@
 " ----------------------------------------------------------------------
 " use 256 colors
+"set t_Co=8
 set t_Co=256
 " backgrounb color
@@ -96,6 +97,6 @@
 
 " save & "make" the current file in all modes
-map <F8> :w <Enter> :make <Enter>
-map! <F8>  <ESC> :w <Enter> :make <Enter>
+map <F8> :w <Enter> :make <Enter><Enter>
+map! <F8>  <ESC> :w <Enter> :make <Enter><Enter>
 
 "use paste P: re-indent and re-format at the same time
@@ -139,4 +140,5 @@
 "" associate *.par with matlab filetype
 au BufRead,BufNewFile *.par setfiletype matlab
+au BufRead,BufNewFile *.tpl setfiletype html
 " ----------------------------------------------------------------------}}}
 " C special{{{1
@@ -149,7 +151,7 @@
 " TEX special{{{1
 " ----------------------------------------------------------------------
-au BufRead,BufNewFile *.tex set textwidth=100     "100 caracters max (See gq command)
-au BufRead,BufNewFile *.tex set formatoptions=cqt "automatic wraping
-au BufRead,BufNewFile *.tex set wrapmargin=0      "no margin
+au BufRead,BufNewFile *.tex,*.html set textwidth=100     "100 caracters max (See gq command)
+au BufRead,BufNewFile *.tex,*.html set formatoptions=cqt "automatic wraping
+au BufRead,BufNewFile *.tex,*.html set wrapmargin=0      "no margin
 au BufRead,BufNewFile *.cls setfiletype tex
 
Index: /issm/trunk/src/py/classes/model.py
===================================================================
--- /issm/trunk/src/py/classes/model.py	(revision 10119)
+++ /issm/trunk/src/py/classes/model.py	(revision 10119)
@@ -0,0 +1,7 @@
+class model:
+	"""Python model class"""
+	x = []
+	y = []
+	elements = []
+	def __init__(self):
+		print 'new model created'
Index: /issm/trunk/src/py/modules/TriMesh/Makefile
===================================================================
--- /issm/trunk/src/py/modules/TriMesh/Makefile	(revision 10119)
+++ /issm/trunk/src/py/modules/TriMesh/Makefile	(revision 10119)
@@ -0,0 +1,7 @@
+all:
+	g++ -bundle  -bind \
+		-I$(ISSM_TIER)/externalpackages/boost/install/include \
+		-L$(ISSM_TIER)/externalpackages/boost/install/lib -lboost_python \
+		-L/usr/lib/python2.6/config/ -lpython2.6 \
+		TriMeshmodule.cpp -o TriMesh.so
+	#-I/usr/include/python2.6/ \
Index: /issm/trunk/src/py/modules/TriMesh/TriMeshmodule.cpp
===================================================================
--- /issm/trunk/src/py/modules/TriMesh/TriMeshmodule.cpp	(revision 10119)
+++ /issm/trunk/src/py/modules/TriMesh/TriMeshmodule.cpp	(revision 10119)
@@ -0,0 +1,50 @@
+#include <stdio.h>
+using namespace std; 
+
+void meshx(double* index,int n) {
+	int i,j;
+	for(int i=0;i<n;i++){
+		printf("%g\n",index[i]);
+	}
+}
+
+#include <boost/python.hpp>
+#include <boost/python/module.hpp>
+#include <boost/python/def.hpp>
+using namespace boost::python;
+
+void FetchData(double** array,int* N,boost::python::list pythonlist){/*{{{*/
+
+	/*Get list size*/
+	int n = boost::python::extract<int>(pythonlist.attr("__len__")());
+
+	/*Assign double array and populate*/
+	double* clist = new double[n];
+	for (int i=0;i<n;i++) clist[i] = extract<double>(pythonlist[i]);
+
+	/*Assign output pointers*/
+	*array = clist;
+	if(N) *N = n;
+}/*}}}*/
+
+void mesh(boost::python::list INDEX){
+	double *index=NULL;
+	int     n;
+
+	FetchData(&index,&n,INDEX);
+
+	/*Call x layer*/
+	meshx(index,n);
+
+	/*Clean up*/
+	delete index;
+}
+
+
+#include <boost/python/module.hpp>
+#include <boost/python/def.hpp>
+using namespace boost::python;
+
+BOOST_PYTHON_MODULE(TriMesh){
+	def("mesh",mesh);
+}
Index: /issm/trunk/src/py/modules/hello/Makefile
===================================================================
--- /issm/trunk/src/py/modules/hello/Makefile	(revision 10119)
+++ /issm/trunk/src/py/modules/hello/Makefile	(revision 10119)
@@ -0,0 +1,7 @@
+all:
+	g++ -bundle  -bind \
+		-I$(ISSM_TIER)/externalpackages/boost/install/include \
+		-I/usr/include/python2.6/ \
+		-L$(ISSM_TIER)/externalpackages/boost/install/lib -lboost_python \
+		-L/usr/lib/python2.6/config/ -lpython2.6 \
+		hellomodule.cpp -o hello.so
Index: /issm/trunk/src/py/modules/hello/hellomodule.cpp
===================================================================
--- /issm/trunk/src/py/modules/hello/hellomodule.cpp	(revision 10119)
+++ /issm/trunk/src/py/modules/hello/hellomodule.cpp	(revision 10119)
@@ -0,0 +1,14 @@
+#include <iostream>
+using namespace std; 
+void say_hello(const char* name) {
+	    cout << "Hello " <<  name << "!\n";
+}
+
+#include <boost/python/module.hpp>
+#include <boost/python/def.hpp>
+using namespace boost::python;
+
+BOOST_PYTHON_MODULE(hello)
+{
+	    def("say_hello", say_hello);
+}
Index: /issm/trunk/src/py/test.py
===================================================================
--- /issm/trunk/src/py/test.py	(revision 10119)
+++ /issm/trunk/src/py/test.py	(revision 10119)
@@ -0,0 +1,2 @@
+import model
+md=model.model()
Index: /issm/trunk/startup.py
===================================================================
--- /issm/trunk/startup.py	(revision 10119)
+++ /issm/trunk/startup.py	(revision 10119)
@@ -0,0 +1,26 @@
+#!/usr/bin/env python
+# STARTUP - Python startup script
+#
+#  startup.py is a script run by python at the beginning of a session, just before
+#  handing over the prompt to the user if the environment variable PYTHONSTARTUP is defined:
+#  export PYTHONSTARTUP=$ISSM_TIER/startup.py
+#  This startup script should be run by users before trying to use ISSM.
+
+import os,sys
+
+#Recover ISSM_TIER, ISSM_DIR  and USERNAME
+ISSM_TIER=os.getenv('ISSM_TIER')
+USERNAME =os.getenv('USER')
+if(ISSM_TIER==None):
+	raise NameError('"ISSM_TIER" environment variable is empty! You should define ISSM_TIER in your .cshrc or .bashrc!')
+
+#Now add all issm code paths necessary to run issm smoothly. 
+#We capture the error output, so that we can warn the user to update 
+#the variable ISSM_TIER in this file, in case it is not correctly setup. 
+
+#ISSM path
+sys.path.append(ISSM_TIER+'/src/py')
+sys.path.append(ISSM_TIER+'/src/py/classes')
+import model
+
+print "\n  To get started with ISSM, type issmdoc at the command prompt.\n\n"
