diff --git a/.travis.yaml b/.travis.yaml deleted file mode 100644 index 8a4f7cda..00000000 --- a/.travis.yaml +++ /dev/null @@ -1,7 +0,0 @@ -language: python -python: - - "2.7" -# command to install dependencies -install: "pip install -r requirements.txt" -# command to run tests -script: nosetests diff --git a/.travis.yml b/.travis.yml new file mode 100644 index 00000000..1918d175 --- /dev/null +++ b/.travis.yml @@ -0,0 +1,12 @@ +language: python +python: + - "2.7" +virtualenv: + system_site_packages: true +before_install: + - sudo apt-get install -qq python-numpy python-scipy python-matplotlib + - python SimPEG/setup.py +# command to install dependencies +install: "pip install -r requirements.txt --use-mirrors" +# command to run tests +script: nosetests -v diff --git a/README.md b/README.md new file mode 100644 index 00000000..172cf62b --- /dev/null +++ b/README.md @@ -0,0 +1,7 @@ +simpeg +====== + +Simulation and Parameter Estimation in Geophysics - A python package for simulation and gradient based parameter estimation in the context of geophysical applications. + + +[![Build Status](https://travis-ci.org/simpeg/simpeg.png)](https://travis-ci.org/simpeg/simpeg) diff --git a/SimPEG/forward/Problem.py b/SimPEG/forward/Problem.py index 54c623ee..99747f7d 100644 --- a/SimPEG/forward/Problem.py +++ b/SimPEG/forward/Problem.py @@ -224,7 +224,7 @@ class Problem(object): The modelTransform changes the model into the physical property. The modelTransformDeriv provides the derivative of the modelTransform. """ - return sp.eye(m.size) + return sp.identity(m.size) def createSyntheticData(self, m, std=0.05, u=None): """ diff --git a/SimPEG/utils/Solver.py b/SimPEG/utils/Solver.py index 5861c146..c5151837 100644 --- a/SimPEG/utils/Solver.py +++ b/SimPEG/utils/Solver.py @@ -4,23 +4,19 @@ import scipy.sparse.linalg as linalg from SimPEG.utils import mkvc, sdiag import warnings -DEFAULTS = {'direct':'scipy', 'iter':'scipy', 'forward':'fortran', 'backward':'fortran', 'diagonal':'python'} +DEFAULTS = {'direct':'scipy', 'iter':'scipy', 'triangular':'fortran', 'diagonal':'python'} +OPTIONS = {'direct':['scipy'], 'iter':['scipy'], 'triangular':['python'], 'diagonal':['python']} try: import TriSolve + OPTIONS['triangular'].append('fortran') except Exception, e: - try: - import os - # Note: this may not work from SublimeText, if that is the case, just run the command in your shell. - os.system('f2py -c TriSolve.f -m TriSolve') - import TriSolve - except Exception, e: - print 'Warning: Python backend is being used for solver. Run setup.py from the command line.' - DEFAULTS['forward'] = 'python' - DEFAULTS['backward'] = 'python' + print 'Warning: Python backend is being used for solver. Run setup.py from the command line.' + DEFAULTS['triangular'] = 'python' try: import mumps + OPTIONS['direct'].append('mumps') except Exception, e: print 'Warning: mumps solver not available.' @@ -183,7 +179,7 @@ class Solver(object): :param bool factorize: if you want to factorize and store factors :rtype: numpy.ndarray :return: x - """ + """ if factorize and self.dsolve is None: self.mctx = mumps.DMumpsContext() self.mctx.set_icntl(14, 60) @@ -214,7 +210,7 @@ class Solver(object): X[:,i] = self.dsolve(b[:,i]) else: X[:,i] = mumps.spsolve(self.A,b[:,i]) - + return X def solveIter(self, b, backend=None, M=None, iterSolver='CG', tol=1e-6, maxIter=50): @@ -242,7 +238,10 @@ class Solver(object): :rtype: numpy.ndarray :return: x """ - if backend is None: backend = DEFAULTS['backward'] + if backend is None: backend = DEFAULTS['triangular'] + if backend not in OPTIONS['triangular']: + print 'Warning: %s-backend not being used, %s-default will be used instead.'%(backend,DEFAULTS['triangular']) + backend = DEFAULTS['triangular'] if type(self.A) is not sp.csr.csr_matrix: self.A = sp.csr_matrix(self.A) vals = self.A.data @@ -273,7 +272,10 @@ class Solver(object): :rtype: numpy.ndarray :return: x """ - if backend is None: backend = DEFAULTS['forward'] + if backend is None: backend = DEFAULTS['triangular'] + if backend not in OPTIONS['triangular']: + print 'Warning: %s-backend not being used, %s-default will be used instead.'%(backend,DEFAULTS['triangular']) + backend = DEFAULTS['triangular'] if type(self.A) is not sp.csr.csr_matrix: from scipy.sparse import csr_matrix self.A = csr_matrix(self.A) diff --git a/docs/api_TestResults.rst b/docs/api_TestResults.rst index fed77e4c..843788fb 100644 --- a/docs/api_TestResults.rst +++ b/docs/api_TestResults.rst @@ -186,8 +186,8 @@ Test Results -->
-

Start Time: 2013-11-21 11:59:36

-

Duration: 0:00:32.074343

+

Start Time: 2013-11-26 20:46:38

+

Duration: 0:00:31.569170

Status: Pass 124

SimPEG Test Report was automatically generated.

@@ -357,27 +357,7 @@ Test Results
test_adjoint
- - - - - pass - - - - - + pass @@ -395,19 +375,18 @@ Test Results
             
-    pt3.2: Setting bfgsH0 to the inverse of the modelObj2Deriv.
-    ==================== checkDerivative ====================
+    pt3.2: ==================== checkDerivative ====================
     iter	h		|J0-Jt|		|J0+h*dJ'*dx-Jt|	Order
     ---------------------------------------------------------
-    0	1.00e-01	6.680e+01		6.164e+01		nan
-    1	1.00e-02	1.154e+00		6.381e-01		1.985
-    2	1.00e-03	5.798e-02		6.401e-03		1.999
-    3	1.00e-04	5.222e-03		6.403e-05		2.000
-    4	1.00e-05	5.164e-04		6.403e-07		2.000
-    5	1.00e-06	5.159e-05		6.403e-09		2.000
-    6	1.00e-07	5.158e-06		6.377e-11		2.002
+    0	1.00e-01	6.123e+01		4.217e+01		nan
+    1	1.00e-02	2.340e+00		4.332e-01		1.988
+    2	1.00e-03	1.950e-01		4.344e-03		1.999
+    3	1.00e-04	1.911e-02		4.345e-05		2.000
+    4	1.00e-05	1.907e-03		4.345e-07		2.000
+    5	1.00e-06	1.906e-04		4.345e-09		2.000
+    6	1.00e-07	1.906e-05		5.251e-11		1.918
     ========================= PASS! =========================
-    You get a gold star!
+    You deserve a pat on the back!
     
     
     
@@ -433,19 +412,18 @@ Test Results
             
             
             
-    pt3.3: Setting bfgsH0 to the inverse of the modelObj2Deriv.
-    ==================== checkDerivative ====================
+    pt3.3: ==================== checkDerivative ====================
     iter	h		|J0-Jt|		|J0+h*dJ'*dx-Jt|	Order
     ---------------------------------------------------------
-    0	1.00e-01	1.203e-01		1.785e-02		nan
-    1	1.00e-02	1.175e-02		1.805e-04		1.995
-    2	1.00e-03	1.173e-03		1.805e-06		2.000
-    3	1.00e-04	1.173e-04		1.805e-08		2.000
-    4	1.00e-05	1.173e-05		1.805e-10		2.000
-    5	1.00e-06	1.173e-06		1.805e-12		2.000
-    6	1.00e-07	1.173e-07		1.915e-14		1.975
+    0	1.00e-01	1.108e-01		1.042e-02		nan
+    1	1.00e-02	1.085e-02		1.072e-04		1.988
+    2	1.00e-03	1.083e-03		1.074e-06		1.999
+    3	1.00e-04	1.083e-04		1.074e-08		2.000
+    4	1.00e-05	1.083e-05		1.074e-10		2.000
+    5	1.00e-06	1.083e-06		1.076e-12		1.999
+    6	1.00e-07	1.083e-07		1.136e-14		1.976
     ========================= PASS! =========================
-    The test be workin!
+    And then everyone was happy.
     
     
     
@@ -471,19 +449,18 @@ Test Results
             
             
             
-    pt3.4: Setting bfgsH0 to the inverse of the modelObj2Deriv.
-    ==================== checkDerivative ====================
+    pt3.4: ==================== checkDerivative ====================
     iter	h		|J0-Jt|		|J0+h*dJ'*dx-Jt|	Order
     ---------------------------------------------------------
-    0	1.00e-01	6.895e+00		6.894e+00		nan
-    1	1.00e-02	6.903e-02		6.894e-02		2.000
-    2	1.00e-03	6.982e-04		6.894e-04		2.000
-    3	1.00e-04	7.769e-06		6.894e-06		2.000
-    4	1.00e-05	1.564e-07		6.894e-08		2.000
-    5	1.00e-06	9.431e-09		6.894e-10		2.000
-    6	1.00e-07	8.810e-10		6.895e-12		2.000
+    0	1.00e-01	6.962e+00		7.992e+00		nan
+    1	1.00e-02	2.310e-02		7.992e-02		2.000
+    2	1.00e-03	9.502e-03		7.992e-04		2.000
+    3	1.00e-04	1.022e-03		7.992e-06		2.000
+    4	1.00e-05	1.029e-04		7.992e-08		2.000
+    5	1.00e-06	1.030e-05		7.992e-10		2.000
+    6	1.00e-07	1.030e-06		7.992e-12		2.000
     ========================= PASS! =========================
-    Go Test Go!
+    And then everyone was happy.
     
     
     
@@ -522,15 +499,15 @@ Test Results
     ==================== checkDerivative ====================
     iter	h		|J0-Jt|		|J0+h*dJ'*dx-Jt|	Order
     ---------------------------------------------------------
-    0	1.00e-01	1.936e-01		7.633e-17		nan
-    1	1.00e-02	1.936e-02		7.268e-17		0.021
-    2	1.00e-03	1.936e-03		6.545e-17		0.046
-    3	1.00e-04	1.936e-04		8.778e-17		-0.127
-    4	1.00e-05	1.936e-05		6.714e-17		0.116
-    5	1.00e-06	1.936e-06		5.514e-17		0.086
-    6	1.00e-07	1.936e-07		8.359e-17		-0.181
+    0	1.00e-01	2.299e-01		5.992e-17		nan
+    1	1.00e-02	2.299e-02		3.925e-17		0.184
+    2	1.00e-03	2.299e-03		6.480e-17		-0.218
+    3	1.00e-04	2.299e-04		2.411e-17		0.429
+    4	1.00e-05	2.299e-05		6.966e-17		-0.461
+    5	1.00e-06	2.299e-06		5.826e-17		0.078
+    6	1.00e-07	2.299e-07		5.474e-17		0.027
     ========================= PASS! =========================
-    The test be workin!
+    Go Test Go!
     
     
     
@@ -559,15 +536,15 @@ Test Results
     pt4.2: ==================== checkDerivative ====================
     iter	h		|J0-Jt|		|J0+h*dJ'*dx-Jt|	Order
     ---------------------------------------------------------
-    0	1.00e-01	3.925e-01		6.586e-02		nan
-    1	1.00e-02	4.517e-02		6.586e-04		2.000
-    2	1.00e-03	4.577e-03		6.586e-06		2.000
-    3	1.00e-04	4.582e-04		6.586e-08		2.000
-    4	1.00e-05	4.583e-05		6.586e-10		2.000
-    5	1.00e-06	4.583e-06		6.587e-12		2.000
-    6	1.00e-07	4.583e-07		6.827e-14		1.984
+    0	1.00e-01	6.927e-02		1.838e-02		nan
+    1	1.00e-02	5.273e-03		1.838e-04		2.000
+    2	1.00e-03	5.107e-04		1.838e-06		2.000
+    3	1.00e-04	5.091e-05		1.838e-08		2.000
+    4	1.00e-05	5.089e-06		1.838e-10		2.000
+    5	1.00e-06	5.089e-07		1.832e-12		2.001
+    6	1.00e-07	5.089e-08		1.693e-14		2.034
     ========================= PASS! =========================
-    Not just a pretty face Rowan
+    And then everyone was happy.
     
     
     
@@ -607,22 +584,22 @@ Test Results
     _____________________________________________
        h  |    error    | e(i-1)/e(i) |  order
     ~~~~~~|~~~~~~~~~~~~~|~~~~~~~~~~~~~|~~~~~~~~~~
-       8  |  2.91e-01   |
-      16  |  6.70e-02   |   4.3512    |  2.1214
-      32  |  1.48e-02   |   4.5346    |  2.1810
+       8  |  2.22e-01   |
+      16  |  6.04e-02   |   3.6770    |  1.8785
+      32  |  1.39e-02   |   4.3413    |  2.1181
     ---------------------------------------------
-    Not just a pretty face Rowan
+    Testing is important.
     
     
     randomTensorMesh:  Interpolation 1D: CC
     _____________________________________________
        h  |    error    | e(i-1)/e(i) |  order
     ~~~~~~|~~~~~~~~~~~~~|~~~~~~~~~~~~~|~~~~~~~~~~
-       8  |  4.81e-01   |
-      16  |  9.23e-02   |   5.2190    |  1.9811
-      32  |  1.61e-02   |   5.7473    |  3.1176
+       8  |  1.99e-01   |
+      16  |  4.34e-02   |   4.5859    |  1.9375
+      32  |  2.17e-02   |   2.0012    |  0.9694
     ---------------------------------------------
-    You get a gold star!
+    Yay passed!
     
     
     
@@ -653,22 +630,22 @@ Test Results
     _____________________________________________
        h  |    error    | e(i-1)/e(i) |  order
     ~~~~~~|~~~~~~~~~~~~~|~~~~~~~~~~~~~|~~~~~~~~~~
-       8  |  2.46e-01   |
-      16  |  6.96e-02   |   3.5355    |  1.8219
-      32  |  1.88e-02   |   3.6930    |  1.8848
+       8  |  2.55e-01   |
+      16  |  6.06e-02   |   4.2017    |  2.0710
+      32  |  1.59e-02   |   3.8063    |  1.9284
     ---------------------------------------------
-    Awesome, Rowan, just awesome.
+    You get a gold star!
     
     
     randomTensorMesh:  Interpolation 1D: N
     _____________________________________________
        h  |    error    | e(i-1)/e(i) |  order
     ~~~~~~|~~~~~~~~~~~~~|~~~~~~~~~~~~~|~~~~~~~~~~
-       8  |  6.95e-01   |
-      16  |  1.12e-01   |   6.2065    |  2.7830
-      32  |  4.60e-02   |   2.4348    |  2.0359
+       8  |  4.04e-01   |
+      16  |  9.67e-02   |   4.1780    |  1.7722
+      32  |  2.04e-02   |   4.7457    |  2.3955
     ---------------------------------------------
-    The test be workin!
+    Testing is important.
     
     
     
@@ -708,24 +685,24 @@ Test Results
     _____________________________________________
        h  |    error    | e(i-1)/e(i) |  order
     ~~~~~~|~~~~~~~~~~~~~|~~~~~~~~~~~~~|~~~~~~~~~~
-       8  |  7.59e-02   |
-      16  |  1.90e-02   |   3.9894    |  1.9962
-      32  |  4.72e-03   |   4.0321    |  2.0115
-      64  |  1.20e-03   |   3.9485    |  1.9813
+       8  |  6.15e-02   |
+      16  |  1.77e-02   |   3.4675    |  1.7939
+      32  |  4.42e-03   |   4.0109    |  2.0039
+      64  |  1.08e-03   |   4.0815    |  2.0291
     ---------------------------------------------
-    Happy little convergence test!
+    Well done Rowan!
     
     
     randomTensorMesh:  Interpolation 2D: CC
     _____________________________________________
        h  |    error    | e(i-1)/e(i) |  order
     ~~~~~~|~~~~~~~~~~~~~|~~~~~~~~~~~~~|~~~~~~~~~~
-       8  |  1.52e-01   |
-      16  |  2.90e-02   |   5.2472    |  1.9020
-      32  |  9.09e-03   |   3.1868    |  1.4098
-      64  |  2.68e-03   |   3.3935    |  2.1529
+       8  |  3.77e-01   |
+      16  |  3.21e-02   |   11.7173    |  2.5590
+      32  |  1.30e-02   |   2.4745    |  1.2528
+      64  |  3.01e-03   |   4.3182    |  2.3739
     ---------------------------------------------
-    Well done Rowan!
+    You get a gold star!
     
     
     
@@ -756,24 +733,24 @@ Test Results
     _____________________________________________
        h  |    error    | e(i-1)/e(i) |  order
     ~~~~~~|~~~~~~~~~~~~~|~~~~~~~~~~~~~|~~~~~~~~~~
-       8  |  6.57e-02   |
-      16  |  1.88e-02   |   3.4893    |  1.8030
-      32  |  4.79e-03   |   3.9343    |  1.9761
-      64  |  1.17e-03   |   4.1029    |  2.0366
+       8  |  7.04e-02   |
+      16  |  1.86e-02   |   3.7909    |  1.9226
+      32  |  4.49e-03   |   4.1339    |  2.0475
+      64  |  1.16e-03   |   3.8626    |  1.9496
     ---------------------------------------------
-    Go Test Go!
+    Happy little convergence test!
     
     
     randomTensorMesh:  Interpolation 2D: Ex
     _____________________________________________
        h  |    error    | e(i-1)/e(i) |  order
     ~~~~~~|~~~~~~~~~~~~~|~~~~~~~~~~~~~|~~~~~~~~~~
-       8  |  1.16e-01   |
-      16  |  3.68e-02   |   3.1394    |  1.5218
-      32  |  8.77e-03   |   4.1974    |  3.1728
-      64  |  3.14e-03   |   2.7963    |  1.7619
+       8  |  1.72e-01   |
+      16  |  7.86e-02   |   2.1870    |  1.3588
+      32  |  1.19e-02   |   6.6042    |  2.1516
+      64  |  4.57e-03   |   2.6028    |  1.6091
     ---------------------------------------------
-    Testing is important.
+    And then everyone was happy.
     
     
     
@@ -805,23 +782,23 @@ Test Results
        h  |    error    | e(i-1)/e(i) |  order
     ~~~~~~|~~~~~~~~~~~~~|~~~~~~~~~~~~~|~~~~~~~~~~
        8  |  7.04e-02   |
-      16  |  1.88e-02   |   3.7494    |  1.9067
-      32  |  4.55e-03   |   4.1251    |  2.0444
-      64  |  1.16e-03   |   3.9315    |  1.9751
+      16  |  1.88e-02   |   3.7436    |  1.9044
+      32  |  4.61e-03   |   4.0809    |  2.0289
+      64  |  1.09e-03   |   4.2291    |  2.0803
     ---------------------------------------------
-    You get a gold star!
+    Well done Rowan!
     
     
     randomTensorMesh:  Interpolation 2D: Ey
     _____________________________________________
        h  |    error    | e(i-1)/e(i) |  order
     ~~~~~~|~~~~~~~~~~~~~|~~~~~~~~~~~~~|~~~~~~~~~~
-       8  |  1.99e-01   |
-      16  |  8.02e-02   |   2.4773    |  4.5721
-      32  |  1.30e-02   |   6.1949    |  1.7850
-      64  |  3.95e-03   |   3.2812    |  1.9890
+       8  |  1.37e-01   |
+      16  |  3.07e-02   |   4.4669    |  2.6314
+      32  |  1.09e-02   |   2.8091    |  1.6504
+      64  |  3.36e-03   |   3.2469    |  1.7585
     ---------------------------------------------
-    Once upon a time, a happy little test passed.
+    Happy little convergence test!
     
     
     
@@ -852,10 +829,10 @@ Test Results
     _____________________________________________
        h  |    error    | e(i-1)/e(i) |  order
     ~~~~~~|~~~~~~~~~~~~~|~~~~~~~~~~~~~|~~~~~~~~~~
-       8  |  7.59e-02   |
-      16  |  1.90e-02   |   3.9894    |  1.9962
-      32  |  4.72e-03   |   4.0321    |  2.0115
-      64  |  1.20e-03   |   3.9485    |  1.9813
+       8  |  6.15e-02   |
+      16  |  1.77e-02   |   3.4675    |  1.7939
+      32  |  4.42e-03   |   4.0109    |  2.0039
+      64  |  1.08e-03   |   4.0815    |  2.0291
     ---------------------------------------------
     Yay passed!
     
@@ -864,12 +841,12 @@ Test Results
     _____________________________________________
        h  |    error    | e(i-1)/e(i) |  order
     ~~~~~~|~~~~~~~~~~~~~|~~~~~~~~~~~~~|~~~~~~~~~~
-       8  |  5.31e-02   |
-      16  |  4.42e-02   |   1.2007    |  0.2070
-      32  |  1.05e-02   |   4.2086    |  2.5806
-      64  |  1.80e-03   |   5.8391    |  2.4462
+       8  |  1.10e-01   |
+      16  |  3.14e-02   |   3.5021    |  1.5452
+      32  |  1.11e-02   |   2.8257    |  1.9669
+      64  |  2.05e-03   |   5.4116    |  2.0147
     ---------------------------------------------
-    The test be workin!
+    You get a gold star!
     
     
     
@@ -900,24 +877,24 @@ Test Results
     _____________________________________________
        h  |    error    | e(i-1)/e(i) |  order
     ~~~~~~|~~~~~~~~~~~~~|~~~~~~~~~~~~~|~~~~~~~~~~
-       8  |  7.61e-02   |
-      16  |  1.92e-02   |   3.9697    |  1.9890
-      32  |  4.76e-03   |   4.0235    |  2.0084
-      64  |  1.15e-03   |   4.1348    |  2.0478
+       8  |  6.73e-02   |
+      16  |  1.77e-02   |   3.7972    |  1.9249
+      32  |  4.67e-03   |   3.7987    |  1.9255
+      64  |  1.15e-03   |   4.0512    |  2.0183
     ---------------------------------------------
-    Not just a pretty face Rowan
+    Go Test Go!
     
     
     randomTensorMesh:  Interpolation 2D: Fy
     _____________________________________________
        h  |    error    | e(i-1)/e(i) |  order
     ~~~~~~|~~~~~~~~~~~~~|~~~~~~~~~~~~~|~~~~~~~~~~
-       8  |  1.37e-01   |
-      16  |  3.12e-02   |   4.3873    |  2.7317
-      32  |  7.83e-03   |   3.9895    |  2.3562
-      64  |  2.26e-03   |   3.4691    |  1.3948
+       8  |  8.66e-02   |
+      16  |  2.34e-02   |   3.7007    |  2.6699
+      32  |  6.57e-03   |   3.5614    |  1.7521
+      64  |  4.31e-03   |   1.5232    |  0.6221
     ---------------------------------------------
-    Happy little convergence test!
+    Once upon a time, a happy little test passed.
     
     
     
@@ -948,24 +925,24 @@ Test Results
     _____________________________________________
        h  |    error    | e(i-1)/e(i) |  order
     ~~~~~~|~~~~~~~~~~~~~|~~~~~~~~~~~~~|~~~~~~~~~~
-       8  |  6.57e-02   |
-      16  |  1.88e-02   |   3.4893    |  1.8030
-      32  |  4.79e-03   |   3.9343    |  1.9761
-      64  |  1.17e-03   |   4.1029    |  2.0366
+       8  |  7.04e-02   |
+      16  |  1.86e-02   |   3.7909    |  1.9226
+      32  |  4.49e-03   |   4.1339    |  2.0475
+      64  |  1.16e-03   |   3.8626    |  1.9496
     ---------------------------------------------
-    Well done Rowan!
+    Happy little convergence test!
     
     
     randomTensorMesh:  Interpolation 2D: N
     _____________________________________________
        h  |    error    | e(i-1)/e(i) |  order
     ~~~~~~|~~~~~~~~~~~~~|~~~~~~~~~~~~~|~~~~~~~~~~
-       8  |  2.16e-01   |
-      16  |  3.36e-02   |   6.4220    |  1.9825
-      32  |  2.07e-02   |   1.6177    |  1.1560
-      64  |  3.05e-03   |   6.8009    |  2.5482
+       8  |  2.65e-01   |
+      16  |  4.05e-02   |   6.5527    |  2.8057
+      32  |  1.12e-02   |   3.6030    |  2.0581
+      64  |  4.96e-03   |   2.2627    |  1.0683
     ---------------------------------------------
-    The test be workin!
+    You deserve a pat on the back!
     
     
     
@@ -1005,24 +982,24 @@ Test Results
     _____________________________________________
        h  |    error    | e(i-1)/e(i) |  order
     ~~~~~~|~~~~~~~~~~~~~|~~~~~~~~~~~~~|~~~~~~~~~~
-       8  |  7.38e-02   |
-      16  |  1.70e-02   |   4.3363    |  2.1165
-      32  |  4.67e-03   |   3.6472    |  1.8668
-      64  |  1.12e-03   |   4.1563    |  2.0553
+       8  |  7.61e-02   |
+      16  |  1.92e-02   |   3.9636    |  1.9868
+      32  |  4.80e-03   |   3.9985    |  1.9995
+      64  |  1.19e-03   |   4.0304    |  2.0109
     ---------------------------------------------
-    Well done Rowan!
+    Testing is important.
     
     
     randomTensorMesh:  Interpolation CC
     _____________________________________________
        h  |    error    | e(i-1)/e(i) |  order
     ~~~~~~|~~~~~~~~~~~~~|~~~~~~~~~~~~~|~~~~~~~~~~
-       8  |  2.39e-01   |
-      16  |  2.83e-02   |   8.4410    |  3.3650
-      32  |  8.35e-03   |   3.3902    |  1.4106
-      64  |  2.59e-03   |   3.2260    |  1.7120
+       8  |  1.76e-01   |
+      16  |  4.63e-02   |   3.7874    |  2.0006
+      32  |  7.92e-03   |   5.8492    |  2.2787
+      64  |  2.92e-03   |   2.7168    |  1.6066
     ---------------------------------------------
-    You are awesome.
+    You get a gold star!
     
     
     
@@ -1053,24 +1030,24 @@ Test Results
     _____________________________________________
        h  |    error    | e(i-1)/e(i) |  order
     ~~~~~~|~~~~~~~~~~~~~|~~~~~~~~~~~~~|~~~~~~~~~~
-       8  |  6.97e-02   |
-      16  |  1.88e-02   |   3.7094    |  1.8912
-      32  |  4.68e-03   |   4.0208    |  2.0075
-      64  |  1.17e-03   |   3.9957    |  1.9985
+       8  |  6.98e-02   |
+      16  |  1.86e-02   |   3.7568    |  1.9095
+      32  |  4.61e-03   |   4.0352    |  2.0126
+      64  |  1.19e-03   |   3.8699    |  1.9523
     ---------------------------------------------
-    You deserve a pat on the back!
+    Go Test Go!
     
     
     randomTensorMesh:  Interpolation Ex
     _____________________________________________
        h  |    error    | e(i-1)/e(i) |  order
     ~~~~~~|~~~~~~~~~~~~~|~~~~~~~~~~~~~|~~~~~~~~~~
-       8  |  2.13e-01   |
-      16  |  5.12e-02   |   4.1677    |  1.3954
-      32  |  1.99e-02   |   2.5661    |  1.5524
-      64  |  3.48e-03   |   5.7313    |  2.1382
+       8  |  2.46e-01   |
+      16  |  5.02e-02   |   4.9049    |  1.8891
+      32  |  1.30e-02   |   3.8611    |  2.0663
+      64  |  3.43e-03   |   3.7901    |  1.9457
     ---------------------------------------------
-    You get a gold star!
+    Well done Rowan!
     
     
     
@@ -1101,22 +1078,22 @@ Test Results
     _____________________________________________
        h  |    error    | e(i-1)/e(i) |  order
     ~~~~~~|~~~~~~~~~~~~~|~~~~~~~~~~~~~|~~~~~~~~~~
-       8  |  7.04e-02   |
-      16  |  1.86e-02   |   3.7826    |  1.9194
-      32  |  4.79e-03   |   3.8833    |  1.9573
-      64  |  1.17e-03   |   4.1003    |  2.0357
+       8  |  7.02e-02   |
+      16  |  1.87e-02   |   3.7422    |  1.9039
+      32  |  4.60e-03   |   4.0794    |  2.0284
+      64  |  1.20e-03   |   3.8376    |  1.9402
     ---------------------------------------------
-    That was easy!
+    Well done Rowan!
     
     
     randomTensorMesh:  Interpolation Ey
     _____________________________________________
        h  |    error    | e(i-1)/e(i) |  order
     ~~~~~~|~~~~~~~~~~~~~|~~~~~~~~~~~~~|~~~~~~~~~~
-       8  |  2.43e-01   |
-      16  |  5.66e-02   |   4.2904    |  1.4531
-      32  |  1.55e-02   |   3.6614    |  2.1536
-      64  |  3.27e-03   |   4.7300    |  2.2808
+       8  |  1.51e-01   |
+      16  |  2.97e-02   |   5.0669    |  2.7612
+      32  |  1.64e-02   |   1.8093    |  0.9160
+      64  |  3.30e-03   |   4.9817    |  1.8113
     ---------------------------------------------
     That was easy!
     
@@ -1149,24 +1126,24 @@ Test Results
     _____________________________________________
        h  |    error    | e(i-1)/e(i) |  order
     ~~~~~~|~~~~~~~~~~~~~|~~~~~~~~~~~~~|~~~~~~~~~~
-       8  |  6.98e-02   |
-      16  |  1.81e-02   |   3.8612    |  1.9491
-      32  |  4.70e-03   |   3.8479    |  1.9441
-      64  |  1.20e-03   |   3.9268    |  1.9733
+       8  |  7.03e-02   |
+      16  |  1.88e-02   |   3.7405    |  1.9032
+      32  |  4.73e-03   |   3.9691    |  1.9888
+      64  |  1.17e-03   |   4.0367    |  2.0132
     ---------------------------------------------
-    And then everyone was happy.
+    You are awesome.
     
     
     randomTensorMesh:  Interpolation Ez
     _____________________________________________
        h  |    error    | e(i-1)/e(i) |  order
     ~~~~~~|~~~~~~~~~~~~~|~~~~~~~~~~~~~|~~~~~~~~~~
-       8  |  9.77e-02   |
-      16  |  4.93e-02   |   1.9820    |  2.0322
-      32  |  1.34e-02   |   3.6656    |  1.4108
-      64  |  4.90e-03   |   2.7436    |  1.4520
+       8  |  1.51e-01   |
+      16  |  5.20e-02   |   2.8987    |  1.0786
+      32  |  2.12e-02   |   2.4545    |  1.3995
+      64  |  3.78e-03   |   5.5957    |  2.0698
     ---------------------------------------------
-    Yay passed!
+    The test be workin!
     
     
     
@@ -1197,24 +1174,24 @@ Test Results
     _____________________________________________
        h  |    error    | e(i-1)/e(i) |  order
     ~~~~~~|~~~~~~~~~~~~~|~~~~~~~~~~~~~|~~~~~~~~~~
-       8  |  7.38e-02   |
-      16  |  1.70e-02   |   4.3363    |  2.1165
-      32  |  4.67e-03   |   3.6472    |  1.8668
-      64  |  1.12e-03   |   4.1563    |  2.0553
+       8  |  7.61e-02   |
+      16  |  1.92e-02   |   3.9636    |  1.9868
+      32  |  4.80e-03   |   3.9985    |  1.9995
+      64  |  1.19e-03   |   4.0304    |  2.0109
     ---------------------------------------------
-    Yay passed!
+    Once upon a time, a happy little test passed.
     
     
     randomTensorMesh:  Interpolation Fx
     _____________________________________________
        h  |    error    | e(i-1)/e(i) |  order
     ~~~~~~|~~~~~~~~~~~~~|~~~~~~~~~~~~~|~~~~~~~~~~
-       8  |  1.51e-01   |
-      16  |  2.31e-02   |   6.5343    |  3.0196
-      32  |  1.32e-02   |   1.7456    |  0.8096
-      64  |  2.24e-03   |   5.8991    |  2.1039
+       8  |  1.09e-01   |
+      16  |  3.21e-02   |   3.4014    |  2.2719
+      32  |  7.71e-03   |   4.1635    |  2.2751
+      64  |  2.44e-03   |   3.1572    |  1.4639
     ---------------------------------------------
-    Go Test Go!
+    Happy little convergence test!
     
     
     
@@ -1245,24 +1222,24 @@ Test Results
     _____________________________________________
        h  |    error    | e(i-1)/e(i) |  order
     ~~~~~~|~~~~~~~~~~~~~|~~~~~~~~~~~~~|~~~~~~~~~~
-       8  |  7.61e-02   |
-      16  |  1.92e-02   |   3.9630    |  1.9866
-      32  |  4.81e-03   |   3.9962    |  1.9986
-      64  |  1.20e-03   |   4.0135    |  2.0049
+       8  |  7.60e-02   |
+      16  |  1.90e-02   |   3.9876    |  1.9955
+      32  |  4.65e-03   |   4.0980    |  2.0349
+      64  |  1.14e-03   |   4.0834    |  2.0298
     ---------------------------------------------
-    Well done Rowan!
+    Testing is important.
     
     
     randomTensorMesh:  Interpolation Fy
     _____________________________________________
        h  |    error    | e(i-1)/e(i) |  order
     ~~~~~~|~~~~~~~~~~~~~|~~~~~~~~~~~~~|~~~~~~~~~~
-       8  |  1.80e-01   |
-      16  |  4.05e-02   |   4.4477    |  1.4993
-      32  |  1.59e-02   |   2.5460    |  1.1426
-      64  |  2.54e-03   |   6.2522    |  2.3141
+       8  |  1.72e-01   |
+      16  |  4.54e-02   |   3.7960    |  1.0476
+      32  |  1.05e-02   |   4.3190    |  2.8779
+      64  |  4.48e-03   |   2.3456    |  1.3543
     ---------------------------------------------
-    Not just a pretty face Rowan
+    Go Test Go!
     
     
     
@@ -1293,24 +1270,24 @@ Test Results
     _____________________________________________
        h  |    error    | e(i-1)/e(i) |  order
     ~~~~~~|~~~~~~~~~~~~~|~~~~~~~~~~~~~|~~~~~~~~~~
-       8  |  7.51e-02   |
-      16  |  1.82e-02   |   4.1301    |  2.0462
-      32  |  4.16e-03   |   4.3667    |  2.1266
-      64  |  1.13e-03   |   3.6758    |  1.8781
+       8  |  7.61e-02   |
+      16  |  1.92e-02   |   3.9711    |  1.9895
+      32  |  4.75e-03   |   4.0291    |  2.0105
+      64  |  1.14e-03   |   4.1592    |  2.0563
     ---------------------------------------------
-    And then everyone was happy.
+    Well done Rowan!
     
     
     randomTensorMesh:  Interpolation Fz
     _____________________________________________
        h  |    error    | e(i-1)/e(i) |  order
     ~~~~~~|~~~~~~~~~~~~~|~~~~~~~~~~~~~|~~~~~~~~~~
-       8  |  1.32e-01   |
-      16  |  5.78e-02   |   2.2902    |  1.6547
-      32  |  9.69e-03   |   5.9708    |  2.9133
-      64  |  4.41e-03   |   2.1983    |  1.1867
+       8  |  1.31e-01   |
+      16  |  2.02e-02   |   6.4764    |  2.6521
+      32  |  9.14e-03   |   2.2089    |  0.9149
+      64  |  2.48e-03   |   3.6911    |  1.9016
     ---------------------------------------------
-    Well done Rowan!
+    Go Test Go!
     
     
     
@@ -1341,24 +1318,24 @@ Test Results
     _____________________________________________
        h  |    error    | e(i-1)/e(i) |  order
     ~~~~~~|~~~~~~~~~~~~~|~~~~~~~~~~~~~|~~~~~~~~~~
-       8  |  6.97e-02   |
-      16  |  1.88e-02   |   3.7094    |  1.8912
-      32  |  4.68e-03   |   4.0208    |  2.0075
-      64  |  1.17e-03   |   3.9957    |  1.9985
+       8  |  6.98e-02   |
+      16  |  1.86e-02   |   3.7568    |  1.9095
+      32  |  4.61e-03   |   4.0352    |  2.0126
+      64  |  1.19e-03   |   3.8699    |  1.9523
     ---------------------------------------------
-    Yay passed!
+    You get a gold star!
     
     
     randomTensorMesh:  Interpolation N
     _____________________________________________
        h  |    error    | e(i-1)/e(i) |  order
     ~~~~~~|~~~~~~~~~~~~~|~~~~~~~~~~~~~|~~~~~~~~~~
-       8  |  7.50e-02   |
-      16  |  7.65e-02   |   0.9805    |  -0.0299
-      32  |  1.75e-02   |   4.3794    |  2.0088
-      64  |  4.46e-03   |   3.9163    |  1.9951
+       8  |  1.29e-01   |
+      16  |  7.05e-02   |   1.8331    |  1.0270
+      32  |  1.19e-02   |   5.9063    |  2.3058
+      64  |  3.27e-03   |   3.6506    |  1.7122
     ---------------------------------------------
-    And then everyone was happy.
+    You are awesome.
     
     
     
@@ -1450,7 +1427,7 @@ Test Results
       16  |  2.42e-03   |
       32  |  6.06e-04   |   4.0001    |  2.0000
     ---------------------------------------------
-    Testing is important.
+    Not just a pretty face Rowan
     
     
     uniformLOM:  Edge Inner Product - Isotropic
@@ -1460,7 +1437,7 @@ Test Results
       16  |  2.42e-03   |
       32  |  6.06e-04   |   4.0001    |  2.0000
     ---------------------------------------------
-    Once upon a time, a happy little test passed.
+    You deserve a pat on the back!
     
     
     rotateLOM:  Edge Inner Product - Isotropic
@@ -1470,7 +1447,7 @@ Test Results
       16  |  2.81e-03   |
       32  |  7.11e-04   |   3.9432    |  1.9794
     ---------------------------------------------
-    Not just a pretty face Rowan
+    The test be workin!
     
     
     
@@ -1504,7 +1481,7 @@ Test Results
       16  |  6.29e-04   |
       32  |  1.57e-04   |   3.9978    |  1.9992
     ---------------------------------------------
-    And then everyone was happy.
+    Well done Rowan!
     
     
     uniformLOM:  Face Inner Product - Isotropic
@@ -1514,7 +1491,7 @@ Test Results
       16  |  6.29e-04   |
       32  |  1.57e-04   |   3.9978    |  1.9992
     ---------------------------------------------
-    Not just a pretty face Rowan
+    Yay passed!
     
     
     rotateLOM:  Face Inner Product - Isotropic
@@ -1524,7 +1501,7 @@ Test Results
       16  |  3.08e-04   |
       32  |  7.07e-05   |   4.3564    |  2.1231
     ---------------------------------------------
-    Well done Rowan!
+    Testing is important.
     
     
     
@@ -1558,7 +1535,7 @@ Test Results
       16  |  6.99e-03   |
       32  |  1.75e-03   |   3.9996    |  1.9998
     ---------------------------------------------
-    And then everyone was happy.
+    Once upon a time, a happy little test passed.
     
     
     uniformLOM:  Edge Inner Product - Anisotropic
@@ -1568,7 +1545,7 @@ Test Results
       16  |  6.99e-03   |
       32  |  1.75e-03   |   3.9996    |  1.9998
     ---------------------------------------------
-    Go Test Go!
+    Awesome, Rowan, just awesome.
     
     
     rotateLOM:  Edge Inner Product - Anisotropic
@@ -1578,7 +1555,7 @@ Test Results
       16  |  7.70e-03   |
       32  |  1.94e-03   |   3.9622    |  1.9863
     ---------------------------------------------
-    Go Test Go!
+    And then everyone was happy.
     
     
     
@@ -1612,7 +1589,7 @@ Test Results
       16  |  2.68e-03   |
       32  |  6.69e-04   |   3.9982    |  1.9993
     ---------------------------------------------
-    You deserve a pat on the back!
+    The test be workin!
     
     
     uniformLOM:  Face Inner Product - Anisotropic
@@ -1622,7 +1599,7 @@ Test Results
       16  |  2.68e-03   |
       32  |  6.69e-04   |   3.9982    |  1.9993
     ---------------------------------------------
-    You are awesome.
+    Go Test Go!
     
     
     rotateLOM:  Face Inner Product - Anisotropic
@@ -1632,7 +1609,7 @@ Test Results
       16  |  2.15e-03   |
       32  |  5.25e-04   |   4.0845    |  2.0302
     ---------------------------------------------
-    The test be workin!
+    Happy little convergence test!
     
     
     
@@ -1666,7 +1643,7 @@ Test Results
       16  |  6.79e-03   |
       32  |  1.70e-03   |   3.9996    |  1.9998
     ---------------------------------------------
-    Not just a pretty face Rowan
+    That was easy!
     
     
     uniformLOM:  Edge Inner Product - Full Tensor
@@ -1676,7 +1653,7 @@ Test Results
       16  |  6.79e-03   |
       32  |  1.70e-03   |   3.9996    |  1.9998
     ---------------------------------------------
-    Go Test Go!
+    Happy little convergence test!
     
     
     rotateLOM:  Edge Inner Product - Full Tensor
@@ -1686,7 +1663,7 @@ Test Results
       16  |  7.49e-03   |
       32  |  1.89e-03   |   3.9617    |  1.9861
     ---------------------------------------------
-    Not just a pretty face Rowan
+    Yay passed!
     
     
     
@@ -1720,7 +1697,7 @@ Test Results
       16  |  3.10e-03   |
       32  |  7.74e-04   |   3.9981    |  1.9993
     ---------------------------------------------
-    You are awesome.
+    The test be workin!
     
     
     uniformLOM:  Face Inner Product - Full Tensor
@@ -1730,7 +1707,7 @@ Test Results
       16  |  3.10e-03   |
       32  |  7.74e-04   |   3.9981    |  1.9993
     ---------------------------------------------
-    You are awesome.
+    Yay passed!
     
     
     rotateLOM:  Face Inner Product - Full Tensor
@@ -1740,7 +1717,7 @@ Test Results
       16  |  2.54e-03   |
       32  |  6.23e-04   |   4.0741    |  2.0265
     ---------------------------------------------
-    Testing is important.
+    You deserve a pat on the back!
     
     
     
@@ -1787,7 +1764,7 @@ Test Results
       64  |  2.18e-02   |   4.0001    |  2.0000
      128  |  5.46e-03   |   4.0000    |  2.0000
     ---------------------------------------------
-    Happy little convergence test!
+    The test be workin!
     
     
     uniformLOM:  2D Edge Inner Product - Isotropic
@@ -1801,7 +1778,7 @@ Test Results
       64  |  2.18e-02   |   4.0001    |  2.0000
      128  |  5.46e-03   |   4.0000    |  2.0000
     ---------------------------------------------
-    You deserve a pat on the back!
+    You get a gold star!
     
     
     rotateLOM:  2D Edge Inner Product - Isotropic
@@ -1815,7 +1792,7 @@ Test Results
       64  |  2.00e-02   |   4.0155    |  2.0056
      128  |  5.00e-03   |   4.0038    |  2.0014
     ---------------------------------------------
-    Go Test Go!
+    Well done Rowan!
     
     
     
@@ -1853,7 +1830,7 @@ Test Results
       64  |  2.53e-02   |   4.0000    |  2.0000
      128  |  6.32e-03   |   4.0000    |  2.0000
     ---------------------------------------------
-    You get a gold star!
+    Yay passed!
     
     
     uniformLOM:  2D Face Inner Product - Isotropic
@@ -1867,7 +1844,7 @@ Test Results
       64  |  2.53e-02   |   4.0000    |  2.0000
      128  |  6.32e-03   |   4.0000    |  2.0000
     ---------------------------------------------
-    Yay passed!
+    You deserve a pat on the back!
     
     
     rotateLOM:  2D Face Inner Product - Isotropic
@@ -1881,7 +1858,7 @@ Test Results
       64  |  2.30e-02   |   4.0132    |  2.0048
      128  |  5.74e-03   |   4.0009    |  2.0003
     ---------------------------------------------
-    Well done Rowan!
+    You get a gold star!
     
     
     
@@ -1919,7 +1896,7 @@ Test Results
       64  |  1.30e-01   |   4.0000    |  2.0000
      128  |  3.24e-02   |   4.0000    |  2.0000
     ---------------------------------------------
-    And then everyone was happy.
+    Yay passed!
     
     
     uniformLOM:  2D Face Inner Product - Anisotropic
@@ -1933,7 +1910,7 @@ Test Results
       64  |  1.30e-01   |   4.0000    |  2.0000
      128  |  3.24e-02   |   4.0000    |  2.0000
     ---------------------------------------------
-    Awesome, Rowan, just awesome.
+    Once upon a time, a happy little test passed.
     
     
     rotateLOM:  2D Face Inner Product - Anisotropic
@@ -1947,7 +1924,7 @@ Test Results
       64  |  1.28e-01   |   4.0007    |  2.0003
      128  |  3.19e-02   |   3.9975    |  1.9991
     ---------------------------------------------
-    You are awesome.
+    Well done Rowan!
     
     
     
@@ -1985,7 +1962,7 @@ Test Results
       64  |  3.66e-02   |   4.0000    |  2.0000
      128  |  9.14e-03   |   4.0000    |  2.0000
     ---------------------------------------------
-    You get a gold star!
+    The test be workin!
     
     
     uniformLOM:  2D Edge Inner Product - Anisotropic
@@ -1999,7 +1976,7 @@ Test Results
       64  |  3.66e-02   |   4.0000    |  2.0000
      128  |  9.14e-03   |   4.0000    |  2.0000
     ---------------------------------------------
-    Awesome, Rowan, just awesome.
+    The test be workin!
     
     
     rotateLOM:  2D Edge Inner Product - Anisotropic
@@ -2013,7 +1990,7 @@ Test Results
       64  |  2.23e-02   |   4.0739    |  2.0264
      128  |  5.54e-03   |   4.0255    |  2.0092
     ---------------------------------------------
-    Well done Rowan!
+    Go Test Go!
     
     
     
@@ -2051,7 +2028,7 @@ Test Results
       64  |  1.52e-01   |   4.0000    |  2.0000
      128  |  3.80e-02   |   4.0000    |  2.0000
     ---------------------------------------------
-    And then everyone was happy.
+    You are awesome.
     
     
     uniformLOM:  2D Face Inner Product - Full Tensor
@@ -2065,7 +2042,7 @@ Test Results
       64  |  1.52e-01   |   4.0000    |  2.0000
      128  |  3.80e-02   |   4.0000    |  2.0000
     ---------------------------------------------
-    Go Test Go!
+    You get a gold star!
     
     
     rotateLOM:  2D Face Inner Product - Full Tensor
@@ -2079,7 +2056,7 @@ Test Results
       64  |  1.45e-01   |   4.0074    |  2.0027
      128  |  3.62e-02   |   3.9984    |  1.9994
     ---------------------------------------------
-    Once upon a time, a happy little test passed.
+    Testing is important.
     
     
     
@@ -2131,7 +2108,7 @@ Test Results
       64  |  3.78e-03   |   4.0001    |  2.0000
      128  |  9.46e-04   |   4.0000    |  2.0000
     ---------------------------------------------
-    You get a gold star!
+    That was easy!
     
     
     rotateLOM:  2D Edge Inner Product - Full Tensor
@@ -2145,7 +2122,7 @@ Test Results
       64  |  1.98e-02   |   3.8708    |  1.9526
      128  |  5.03e-03   |   3.9418    |  1.9789
     ---------------------------------------------
-    Testing is important.
+    Go Test Go!
     
     
     
@@ -2202,7 +2179,7 @@ Test Results
       16  |  3.12e-02   |   1.9990    |  0.9993
       32  |  1.56e-02   |   1.9998    |  0.9998
     ---------------------------------------------
-    And then everyone was happy.
+    The test be workin!
     
     
     rotateLOM:  Averaging 2D: CC2F
@@ -2214,7 +2191,7 @@ Test Results
       16  |  3.81e-02   |   1.8958    |  0.9228
       32  |  1.95e-02   |   1.9507    |  0.9640
     ---------------------------------------------
-    Go Test Go!
+    Testing is important.
     
     
     
@@ -2250,7 +2227,7 @@ Test Results
       16  |  4.45e-04   |   3.9561    |  1.9841
       32  |  1.12e-04   |   3.9799    |  1.9927
     ---------------------------------------------
-    That was easy!
+    Once upon a time, a happy little test passed.
     
     
     uniformLOM:  Averaging 2D: E2CC
@@ -2262,7 +2239,7 @@ Test Results
       16  |  4.45e-04   |   3.9561    |  1.9841
       32  |  1.12e-04   |   3.9799    |  1.9927
     ---------------------------------------------
-    And then everyone was happy.
+    Yay passed!
     
     
     rotateLOM:  Averaging 2D: E2CC
@@ -2274,7 +2251,7 @@ Test Results
       16  |  4.66e-04   |   3.8970    |  1.9624
       32  |  1.18e-04   |   3.9552    |  1.9837
     ---------------------------------------------
-    That was easy!
+    You deserve a pat on the back!
     
     
     
@@ -2310,7 +2287,7 @@ Test Results
       16  |  4.45e-04   |   3.9561    |  1.9841
       32  |  1.12e-04   |   3.9799    |  1.9927
     ---------------------------------------------
-    You are awesome.
+    Well done Rowan!
     
     
     uniformLOM:  Averaging 2D: F2CC
@@ -2322,7 +2299,7 @@ Test Results
       16  |  4.45e-04   |   3.9561    |  1.9841
       32  |  1.12e-04   |   3.9799    |  1.9927
     ---------------------------------------------
-    Go Test Go!
+    That was easy!
     
     
     rotateLOM:  Averaging 2D: F2CC
@@ -2334,7 +2311,7 @@ Test Results
       16  |  4.66e-04   |   3.8970    |  1.9624
       32  |  1.18e-04   |   3.9552    |  1.9837
     ---------------------------------------------
-    Happy little convergence test!
+    You deserve a pat on the back!
     
     
     
@@ -2370,7 +2347,7 @@ Test Results
       16  |  8.90e-04   |   3.9561    |  1.9841
       32  |  2.24e-04   |   3.9799    |  1.9927
     ---------------------------------------------
-    That was easy!
+    Not just a pretty face Rowan
     
     
     uniformLOM:  Averaging 2D: N2CC
@@ -2382,7 +2359,7 @@ Test Results
       16  |  8.90e-04   |   3.9561    |  1.9841
       32  |  2.24e-04   |   3.9799    |  1.9927
     ---------------------------------------------
-    Happy little convergence test!
+    Testing is important.
     
     
     rotateLOM:  Averaging 2D: N2CC
@@ -2430,7 +2407,7 @@ Test Results
       16  |  4.88e-04   |   3.9932    |  1.9975
       32  |  1.22e-04   |   3.9983    |  1.9994
     ---------------------------------------------
-    Once upon a time, a happy little test passed.
+    Happy little convergence test!
     
     
     uniformLOM:  Averaging 2D: N2E
@@ -2442,7 +2419,7 @@ Test Results
       16  |  4.88e-04   |   3.9932    |  1.9975
       32  |  1.22e-04   |   3.9983    |  1.9994
     ---------------------------------------------
-    Happy little convergence test!
+    And then everyone was happy.
     
     
     rotateLOM:  Averaging 2D: N2E
@@ -2454,7 +2431,7 @@ Test Results
       16  |  7.34e-04   |   3.7229    |  1.8964
       32  |  1.86e-04   |   3.9505    |  1.9820
     ---------------------------------------------
-    And then everyone was happy.
+    Go Test Go!
     
     
     
@@ -2490,7 +2467,7 @@ Test Results
       16  |  4.88e-04   |   3.9932    |  1.9975
       32  |  1.22e-04   |   3.9983    |  1.9994
     ---------------------------------------------
-    Well done Rowan!
+    You deserve a pat on the back!
     
     
     uniformLOM:  Averaging 2D: N2F
@@ -2502,7 +2479,7 @@ Test Results
       16  |  4.88e-04   |   3.9932    |  1.9975
       32  |  1.22e-04   |   3.9983    |  1.9994
     ---------------------------------------------
-    Not just a pretty face Rowan
+    The test be workin!
     
     
     rotateLOM:  Averaging 2D: N2F
@@ -2514,7 +2491,7 @@ Test Results
       16  |  7.34e-04   |   3.7229    |  1.8964
       32  |  1.86e-04   |   3.9505    |  1.9820
     ---------------------------------------------
-    Once upon a time, a happy little test passed.
+    Well done Rowan!
     
     
     
@@ -2559,7 +2536,7 @@ Test Results
       16  |  8.36e-02   |   1.9692    |  0.9776
       32  |  4.21e-02   |   1.9845    |  0.9888
     ---------------------------------------------
-    Yay passed!
+    Well done Rowan!
     
     
     uniformLOM:  Averaging 3D: CC2F
@@ -2571,7 +2548,7 @@ Test Results
       16  |  8.36e-02   |   1.9692    |  0.9776
       32  |  4.21e-02   |   1.9845    |  0.9888
     ---------------------------------------------
-    Well done Rowan!
+    Testing is important.
     
     
     rotateLOM:  Averaging 3D: CC2F
@@ -2583,7 +2560,7 @@ Test Results
       16  |  9.95e-02   |   1.9268    |  0.9462
       32  |  4.98e-02   |   1.9972    |  0.9980
     ---------------------------------------------
-    You get a gold star!
+    You are awesome.
     
     
     
@@ -2619,7 +2596,7 @@ Test Results
       16  |  6.63e-04   |   3.7311    |  1.8996
       32  |  1.71e-04   |   3.8674    |  1.9514
     ---------------------------------------------
-    Once upon a time, a happy little test passed.
+    Go Test Go!
     
     
     uniformLOM:  Averaging 3D: E2CC
@@ -2631,7 +2608,7 @@ Test Results
       16  |  6.63e-04   |   3.7311    |  1.8996
       32  |  1.71e-04   |   3.8674    |  1.9514
     ---------------------------------------------
-    Testing is important.
+    You get a gold star!
     
     
     rotateLOM:  Averaging 3D: E2CC
@@ -2643,7 +2620,7 @@ Test Results
       16  |  7.77e-04   |   3.2852    |  1.7160
       32  |  2.08e-04   |   3.7415    |  1.9036
     ---------------------------------------------
-    You are awesome.
+    You get a gold star!
     
     
     
@@ -2679,7 +2656,7 @@ Test Results
       16  |  3.32e-04   |   3.7311    |  1.8996
       32  |  8.57e-05   |   3.8674    |  1.9514
     ---------------------------------------------
-    Yay passed!
+    You are awesome.
     
     
     uniformLOM:  Averaging 3D: F2CC
@@ -2691,7 +2668,7 @@ Test Results
       16  |  3.32e-04   |   3.7311    |  1.8996
       32  |  8.57e-05   |   3.8674    |  1.9514
     ---------------------------------------------
-    Go Test Go!
+    And then everyone was happy.
     
     
     rotateLOM:  Averaging 3D: F2CC
@@ -2703,7 +2680,7 @@ Test Results
       16  |  3.88e-04   |   3.2842    |  1.7155
       32  |  1.04e-04   |   3.7417    |  1.9037
     ---------------------------------------------
-    That was easy!
+    Awesome, Rowan, just awesome.
     
     
     
@@ -2739,7 +2716,7 @@ Test Results
       16  |  9.95e-04   |   3.7311    |  1.8996
       32  |  2.57e-04   |   3.8674    |  1.9514
     ---------------------------------------------
-    Well done Rowan!
+    You get a gold star!
     
     
     uniformLOM:  Averaging 3D: N2CC
@@ -2751,7 +2728,7 @@ Test Results
       16  |  9.95e-04   |   3.7311    |  1.8996
       32  |  2.57e-04   |   3.8674    |  1.9514
     ---------------------------------------------
-    The test be workin!
+    Go Test Go!
     
     
     rotateLOM:  Averaging 3D: N2CC
@@ -2763,7 +2740,7 @@ Test Results
       16  |  1.17e-03   |   3.2862    |  1.7164
       32  |  3.11e-04   |   3.7413    |  1.9036
     ---------------------------------------------
-    Awesome, Rowan, just awesome.
+    And then everyone was happy.
     
     
     
@@ -2799,7 +2776,7 @@ Test Results
       16  |  1.29e-03   |   3.8779    |  1.9553
       32  |  3.27e-04   |   3.9382    |  1.9775
     ---------------------------------------------
-    Yay passed!
+    You deserve a pat on the back!
     
     
     uniformLOM:  Averaging 3D: N2E
@@ -2811,7 +2788,7 @@ Test Results
       16  |  1.29e-03   |   3.8779    |  1.9553
       32  |  3.27e-04   |   3.9382    |  1.9775
     ---------------------------------------------
-    Yay passed!
+    And then everyone was happy.
     
     
     rotateLOM:  Averaging 3D: N2E
@@ -2871,7 +2848,7 @@ Test Results
       16  |  1.27e-03   |   3.8285    |  1.9368
       32  |  3.25e-04   |   3.9144    |  1.9688
     ---------------------------------------------
-    Awesome, Rowan, just awesome.
+    Go Test Go!
     
     
     rotateLOM:  Averaging 3D: N2F
@@ -2883,7 +2860,7 @@ Test Results
       16  |  1.49e-03   |   3.6148    |  1.8539
       32  |  3.92e-04   |   3.7997    |  1.9259
     ---------------------------------------------
-    Yay passed!
+    Well done Rowan!
     
     
     
@@ -2928,7 +2905,7 @@ Test Results
       32  |  3.08e-01   |   1.9952    |  0.9965
       64  |  1.54e-01   |   1.9988    |  0.9991
     ---------------------------------------------
-    The test be workin!
+    Awesome, Rowan, just awesome.
     
     
     
@@ -2973,7 +2950,7 @@ Test Results
       32  |  1.00e-02   |   3.9364    |  1.9769
       64  |  2.52e-03   |   3.9841    |  1.9943
     ---------------------------------------------
-    And then everyone was happy.
+    Once upon a time, a happy little test passed.
     
     
     
@@ -3018,7 +2995,7 @@ Test Results
       32  |  1.00e-02   |   3.9364    |  1.9769
       64  |  2.52e-03   |   3.9841    |  1.9943
     ---------------------------------------------
-    You get a gold star!
+    Happy little convergence test!
     
     
     
@@ -3062,7 +3039,7 @@ Test Results
       16  |  3.88e-02   |   3.5288    |  1.8192
       32  |  9.99e-03   |   3.8795    |  1.9559
     ---------------------------------------------
-    Well done Rowan!
+    The test be workin!
     
     
     
@@ -3106,7 +3083,7 @@ Test Results
       16  |  3.88e-02   |   3.5288    |  1.8192
       32  |  9.99e-03   |   3.8795    |  1.9559
     ---------------------------------------------
-    Awesome, Rowan, just awesome.
+    Go Test Go!
     
     
     
@@ -3151,7 +3128,7 @@ Test Results
       16  |  3.95e-02   |   3.7462    |  1.9054
       32  |  1.00e-02   |   3.9364    |  1.9769
     ---------------------------------------------
-    Once upon a time, a happy little test passed.
+    Testing is important.
     
     
     uniformLOM:  Curl
@@ -3163,7 +3140,7 @@ Test Results
       16  |  3.95e-02   |   3.7462    |  1.9054
       32  |  1.00e-02   |   3.9364    |  1.9769
     ---------------------------------------------
-    The test be workin!
+    And then everyone was happy.
     
     
     rotateLOM:  Curl
@@ -3175,7 +3152,7 @@ Test Results
       16  |  1.70e-02   |   5.2040    |  2.3796
       32  |  3.77e-03   |   4.5126    |  2.1740
     ---------------------------------------------
-    Awesome, Rowan, just awesome.
+    Once upon a time, a happy little test passed.
     
     
     
@@ -3220,7 +3197,7 @@ Test Results
       32  |  2.01e-02   |   3.9364    |  1.9769
       64  |  5.04e-03   |   3.9841    |  1.9943
     ---------------------------------------------
-    You deserve a pat on the back!
+    Testing is important.
     
     
     uniformLOM:  Face Divergence 2D
@@ -3232,7 +3209,7 @@ Test Results
       32  |  2.01e-02   |   3.9364    |  1.9769
       64  |  5.04e-03   |   3.9841    |  1.9943
     ---------------------------------------------
-    Well done Rowan!
+    And then everyone was happy.
     
     
     rotateLOM:  Face Divergence 2D
@@ -3244,7 +3221,7 @@ Test Results
       32  |  2.01e-02   |   3.9364    |  1.9769
       64  |  5.57e-03   |   3.6062    |  1.8505
     ---------------------------------------------
-    Go Test Go!
+    Once upon a time, a happy little test passed.
     
     
     
@@ -3288,7 +3265,7 @@ Test Results
       16  |  1.19e-01   |   3.7462    |  1.9054
       32  |  3.01e-02   |   3.9364    |  1.9769
     ---------------------------------------------
-    Yay passed!
+    The test be workin!
     
     
     uniformLOM:  Face Divergence 3D
@@ -3299,7 +3276,7 @@ Test Results
       16  |  1.19e-01   |   3.7462    |  1.9054
       32  |  3.01e-02   |   3.9364    |  1.9769
     ---------------------------------------------
-    You are awesome.
+    And then everyone was happy.
     
     
     rotateLOM:  Face Divergence 3D
@@ -3310,7 +3287,7 @@ Test Results
       16  |  9.53e-04   |   9.5374    |  3.2536
       32  |  2.75e-04   |   3.4594    |  1.7905
     ---------------------------------------------
-    You are awesome.
+    Testing is important.
     
     
     
@@ -3355,7 +3332,7 @@ Test Results
       16  |  1.34e-04   |   3.9116    |  1.9678
       32  |  3.39e-05   |   3.9578    |  1.9847
     ---------------------------------------------
-    That was easy!
+    You deserve a pat on the back!
     
     
     uniformLOM:  Nodal Gradient
@@ -3367,7 +3344,7 @@ Test Results
       16  |  1.34e-04   |   3.9116    |  1.9678
       32  |  3.39e-05   |   3.9578    |  1.9847
     ---------------------------------------------
-    Not just a pretty face Rowan
+    You get a gold star!
     
     
     rotateLOM:  Nodal Gradient
@@ -3379,7 +3356,7 @@ Test Results
       16  |  1.80e-04   |   3.6283    |  1.8593
       32  |  4.66e-05   |   3.8703    |  1.9525
     ---------------------------------------------
-    You are awesome.
+    You deserve a pat on the back!
     
     
     
@@ -3424,7 +3401,7 @@ Test Results
       16  |  1.34e-04   |   3.9116    |  1.9678
       32  |  3.39e-05   |   3.9578    |  1.9847
     ---------------------------------------------
-    You are awesome.
+    Not just a pretty face Rowan
     
     
     uniformLOM:  Nodal Gradient 2D
@@ -3436,7 +3413,7 @@ Test Results
       16  |  1.34e-04   |   3.9116    |  1.9678
       32  |  3.39e-05   |   3.9578    |  1.9847
     ---------------------------------------------
-    You are awesome.
+    The test be workin!
     
     
     rotateLOM:  Nodal Gradient 2D
@@ -3448,7 +3425,7 @@ Test Results
       16  |  1.80e-04   |   3.6343    |  1.8617
       32  |  4.64e-05   |   3.8804    |  1.9562
     ---------------------------------------------
-    You deserve a pat on the back!
+    You are awesome.
     
     
     
@@ -3788,7 +3765,7 @@ Test Results
       20  |  7.96e-03   |   1.5342    |  1.9182
       24  |  5.59e-03   |   1.4258    |  1.9458
     ---------------------------------------------
-    That was easy!
+    You deserve a pat on the back!
     
     
     
@@ -3823,7 +3800,7 @@ Test Results
       20  |  9.35e-01   |   1.5271    |  1.8974
       24  |  6.58e-01   |   1.4223    |  1.9320
     ---------------------------------------------
-    Once upon a time, a happy little test passed.
+    Awesome, Rowan, just awesome.
     
     
     
@@ -3861,17 +3838,17 @@ Test Results
     pt27.1: ==================== checkDerivative ====================
     iter	h		|J0-Jt|		|J0+h*dJ'*dx-Jt|	Order
     ---------------------------------------------------------
-    0	1.00e-01	1.813e-01		3.602e-01		nan
-    1	1.00e-02	1.792e-02		3.581e-02		1.003
-    2	1.00e-03	1.789e-03		3.578e-03		1.000
-    3	1.00e-04	1.789e-04		3.578e-04		1.000
-    4	1.00e-05	1.789e-05		3.578e-05		1.000
-    5	1.00e-06	1.789e-06		3.578e-06		1.000
-    6	1.00e-07	1.789e-07		3.578e-07		1.000
+    0	1.00e-01	1.623e-01		3.292e-01		nan
+    1	1.00e-02	1.665e-02		3.335e-02		0.994
+    2	1.00e-03	1.669e-03		3.338e-03		1.000
+    3	1.00e-04	1.669e-04		3.339e-04		1.000
+    4	1.00e-05	1.669e-05		3.339e-05		1.000
+    5	1.00e-06	1.669e-06		3.339e-06		1.000
+    6	1.00e-07	1.669e-07		3.339e-07		1.000
     *********************************************************
     <<<<<<<<<<<<<<<<<<<<<<<<< FAIL! >>>>>>>>>>>>>>>>>>>>>>>>>
     *********************************************************
-    Thankfully, persistence is a great substitute for talent.
+    You had so much promise Rowan, oh well...
     
     
     
@@ -3900,13 +3877,13 @@ Test Results
     pt27.2: ==================== checkDerivative ====================
     iter	h		|J0-Jt|		|J0+h*dJ'*dx-Jt|	Order
     ---------------------------------------------------------
-    0	1.00e-01	2.507e-01		1.960e-02		nan
-    1	1.00e-02	2.577e-02		1.872e-04		2.020
-    2	1.00e-03	2.584e-03		1.863e-06		2.002
-    3	1.00e-04	2.584e-04		1.862e-08		2.000
-    4	1.00e-05	2.584e-05		1.862e-10		2.000
-    5	1.00e-06	2.584e-06		1.862e-12		2.000
-    6	1.00e-07	2.584e-07		1.859e-14		2.001
+    0	1.00e-01	1.738e-01		2.373e-02		nan
+    1	1.00e-02	1.802e-02		2.362e-04		2.002
+    2	1.00e-03	1.809e-03		2.360e-06		2.000
+    3	1.00e-04	1.810e-04		2.360e-08		2.000
+    4	1.00e-05	1.810e-05		2.360e-10		2.000
+    5	1.00e-06	1.810e-06		2.360e-12		2.000
+    6	1.00e-07	1.810e-07		2.359e-14		2.000
     ========================= PASS! =========================
     The test be workin!
     
@@ -3937,15 +3914,15 @@ Test Results
     pt27.3: ==================== checkDerivative ====================
     iter	h		|J0-Jt|		|J0+h*dJ'*dx-Jt|	Order
     ---------------------------------------------------------
-    0	1.00e-01	6.038e-02		4.490e-04		nan
-    1	1.00e-02	6.069e-03		4.327e-06		2.016
-    2	1.00e-03	6.072e-04		4.311e-08		2.002
-    3	1.00e-04	6.072e-05		4.310e-10		2.000
-    4	1.00e-05	6.072e-06		4.309e-12		2.000
-    5	1.00e-06	6.072e-07		4.307e-14		2.000
-    6	1.00e-07	6.072e-08		4.903e-16		1.944
+    0	1.00e-01	1.209e-01		1.275e-02		nan
+    1	1.00e-02	1.222e-02		1.274e-04		2.000
+    2	1.00e-03	1.224e-03		1.273e-06		2.000
+    3	1.00e-04	1.224e-04		1.273e-08		2.000
+    4	1.00e-05	1.224e-05		1.273e-10		2.000
+    5	1.00e-06	1.224e-06		1.273e-12		2.000
+    6	1.00e-07	1.224e-07		1.271e-14		2.001
     ========================= PASS! =========================
-    Not just a pretty face Rowan
+    You deserve a pat on the back!
     
     
     
diff --git a/docs/index.rst b/docs/index.rst
index 792f3be9..b008e963 100644
--- a/docs/index.rst
+++ b/docs/index.rst
@@ -51,6 +51,21 @@ Testing SimPEG
    api_Tests
    api_TestResults
 
+Build Results
+=============
+
+* Master Branch
+.. image:: https://travis-ci.org/simpeg/simpeg.png?branch=master
+   :target: https://travis-ci.org/simpeg/simpeg
+   :alt: Master Branch
+   :align: center
+
+* Develop Branch
+.. image:: https://travis-ci.org/simpeg/simpeg.png?branch=develop
+   :target: https://travis-ci.org/simpeg/simpeg
+   :alt: Develop Branch
+   :align: center
+
 
 Utility Codes
 =============
diff --git a/docs/requirements.txt b/docs/requirements.txt
deleted file mode 100644
index 27ba63e9..00000000
--- a/docs/requirements.txt
+++ /dev/null
@@ -1,3 +0,0 @@
-numpy
-scipy
-ipython
diff --git a/requirements.txt b/requirements.txt
index 45fa35b8..6b7df820 100644
--- a/requirements.txt
+++ b/requirements.txt
@@ -1,3 +1,4 @@
 numpy
-pypubsub
+scipy
 ipython
+matplotlib