Commit Graph

50 Commits

Author SHA1 Message Date
David Marchant 7ef3eb578f Merged in pyMumpsSolver (pull request #30)
Mumps backend in solver class.
2013-11-22 17:39:27 -08:00
Dave Marchant f5e3a4171d Raise an exception if name is not provided when hooking a lambda function. 2013-11-22 16:11:43 -08:00
Dave Marchant 1439052172 Multiple RHS using mumps backend. 2013-11-22 15:39:06 -08:00
Rowan Cockett aae725ff05 TimeSteppingInversion and Estimate Initial Beta based on eigenvalues comparison. 2013-11-22 13:39:26 -08:00
Rowan Cockett c41b9f12e9 Documentation updates to optimize. Updated the hook method. 2013-11-22 11:58:31 -08:00
Rowan Cockett 6216ae977e Added hook method to utils so that we can hook new methods dynamically into the classes. 2013-11-22 10:51:01 -08:00
Rowan Cockett dbaea1fda9 callHooks generalizes some of the hook calling code in Optimize and Inversion 2013-11-21 16:56:01 -08:00
Dave Marchant 623ff674ea Added pymumps direct solver backend. 2013-11-21 15:00:51 -08:00
Dave Marchant fff2375acd Moved scipy direct code to own function. 2013-11-21 14:34:32 -08:00
Rowan Cockett 82edbf7a60 Merge branch 'master' of https://bitbucket.org/rcockett/simpeg into richards
Conflicts:
	SimPEG/inverse/Optimize.py
	SimPEG/regularization/Regularization.py
2013-11-21 11:56:12 -08:00
rowanc1 f87899465d Merged in boundaryConditions (pull request #25)
Cell Gradient and Boundary Conditions
2013-11-21 10:42:43 -08:00
rowanc1 86982e86da Merged in modelBuilder (pull request #26)
Create a random model
2013-11-21 10:42:00 -08:00
Rowan Cockett 2782a6fcfb Simple profiling through decorator functions. (counting and timing of functions decorated with @count and @timeIt that have a SimPEG.utils.Counter)
e.g. output:
‘’’
Counters:
  InexactGaussNewton.doEndIteration       :        6
  InexactGaussNewton.printIter            :        7
  InexactGaussNewton.scaleSearchDirection :        6

Times:                                        mean      sum
  InexactGaussNewton.findSearchDirection  : 1.55e-02, 9.29e-02,    6x
  InexactGaussNewton.minimize             : 1.10e-01, 1.10e-01,    1x
  InexactGaussNewton.modifySearchDirection: 2.89e-04, 1.73e-03,    6x
  InexactGaussNewton.projection           : 3.69e-06, 1.11e-04,   30x
  InexactGaussNewton.stoppingCriteria     : 1.16e-04, 1.51e-03,   13x
  Inversion.dataObj                       : 6.60e-05, 8.58e-04,   13x
  Inversion.dataObj2Deriv                 : 1.03e-04, 6.20e-03,   60x
  Inversion.dataObjDeriv                  : 5.06e-05, 3.54e-04,    7x
  Inversion.evalFunction                  : 7.75e-04, 1.01e-02,   13x
  Inversion.run                           : 1.10e-01, 1.10e-01,    1x
  Regularization.modelObj                 : 3.56e-04, 4.63e-03,   13x
  Regularization.modelObj2Deriv           : 1.29e-03, 7.76e-02,   60x
  Regularization.modelObjDeriv            : 5.01e-04, 3.51e-03,    7x
‘’’
2013-11-20 21:59:53 -08:00
Rowan Cockett 3015a78c32 Create a random model based on a convolution of a kernel and a random field. works in 1D 2D and 3D and has beautiful documentation. 2013-11-20 20:05:07 -08:00
Rowan Cockett b246b629a5 Merge branch 'BFGS' of https://bitbucket.org/rcockett/simpeg into richards 2013-11-19 17:46:48 -08:00
Rowan Cockett f71a6f8f06 Merge branch 'master' of https://bitbucket.org/rcockett/simpeg into richards
Conflicts:
	SimPEG/__init__.py
2013-11-19 17:46:02 -08:00
Rowan Cockett 500844ccb5 Brought BFGS into Optimize. updated InexactGaussNewton to use BFGS as a preconditioner. 2013-11-19 17:41:51 -08:00
Rowan Cockett 4472b39d6e Iterative Solvers in SimPEG.Solver 2013-11-19 16:00:36 -08:00
Rowan Cockett b6ec17a4d3 Merge branch 'master' of https://bitbucket.org/rcockett/simpeg into boundaryConditions
Conflicts:
	SimPEG/__init__.py
2013-11-18 12:33:09 -08:00
Dave Marchant a950ba8dd1 Bug fix in emSources. Beginning to change Cyl1DMesh to be more comparable with TensorMesh/BaseMesh. 2013-11-18 10:54:54 -08:00
Dave Marchant cdf1dcf79f Reorganized. 2013-11-14 15:48:32 -08:00
Dave Marchant 72e844c87d Added a sub-module to utils to put analytics and source functions. 2013-11-14 11:53:14 -08:00
Rowan Cockett 358411792d Cleaned up averaging. Put it in an AveExtrap function. 2013-11-13 19:37:14 -08:00
Rowan Cockett 5248ac81ce Merge branch 'master' of https://bitbucket.org/rcockett/simpeg into seismicExample
Conflicts:
	docs/api_TestResults.rst
2013-11-12 13:43:06 -08:00
Rowan Cockett cea1141dcd Bug fix for documentation. 2013-11-12 12:14:58 -08:00
Rowan Cockett 130592a9e2 Bug fix to solver. and Documentation. 2013-11-12 11:34:49 -08:00
Rowan Cockett 1f13a74bb9 Merge branch 'master' of https://bitbucket.org/rcockett/simpeg into BoundConstraint
Conflicts:
	.gitignore
	SimPEG/utils/__init__.py
2013-11-12 11:24:40 -08:00
Rowan Cockett d3f38047e4 Multiple RHSs on solvers in Fortran. ~2x speed up on matlab implementation for a single RHS. for multiple RHS there are still some problems.
Someone with some knowledge of how fortran works should look at this code.

Added a setup.py script that complies things. f2py should work on most computers, because it is included in the numpy distribution.
2013-11-12 10:36:20 -08:00
Rowan Cockett ea5dc21517 Fortran Solvers. Faster than Matlab!!
Need to implement multiple RHSs.
2013-11-10 17:38:23 -08:00
Rowan Cockett 19f79b3275 updates to Inversion. Bug Fixes. 2013-11-07 17:42:24 -08:00
Rowan Cockett 0dc3b02c45 Combined stopping criteria and printers into a class, for easy reuse. 2013-11-07 16:02:22 -08:00
Rowan Cockett 54d2f302b5 Refactored and moved duplicate code to utils. 2013-11-07 15:28:03 -08:00
Rowan Cockett 1ef70ba15c Moved projectedGradient to the optimize file. Added video to IPNB. 2013-11-07 14:56:54 -08:00
Rowan Cockett 1427fe5cec Able to add movies to the python notebook. using utils.animate(fig,animate,init) 2013-11-07 12:27:59 -08:00
Rowan Cockett abca84b954 Issue #25 renamed nF and nE to nFv nEv 2013-11-06 11:16:01 -08:00
Rowan Cockett 5f75ac9d69 Issue #29 moved ave and ddx to utils. 2013-11-06 10:58:48 -08:00
Rowan Cockett 9b00617e3f Documentation updates. 2013-11-05 10:32:43 -08:00
Rowan Cockett 51a539a291 Generalized to any dimension. Tested. 2013-11-04 18:17:01 -08:00
Rowan Cockett 4784224a84 Put repetitive code in a function. 2013-11-04 16:35:11 -08:00
Rowan Cockett d063c2ccb8 Merge branch 'master' of https://bitbucket.org/rcockett/simpeg into Interpolation_TensorMesh 2013-11-04 16:26:18 -08:00
Rowan Cockett 592490844d Testing Functions for interpolation. 2013-11-04 16:05:16 -08:00
Dave Marchant 06cd641db3 Initial implementation of interpolation matrix generation for TensorMesh (3D ONLY) 2013-11-04 14:07:16 -08:00
Rowan Cockett f44a857669 Moved solver to utilities. But it is still available as SimPEG.Solver (as defined in the main __init__.py file) 2013-11-01 15:00:17 -07:00
Rowan Cockett db694dd780 moved to mesh folder. 2013-10-18 17:22:13 -07:00
Rowan Cockett 65f129e7a8 Documented utilities. 2013-10-03 15:31:08 -07:00
Rowan Cockett d8c676015e Fixes to ModelBuilder. Start of the DCProblem. 2013-10-02 15:24:51 -07:00
Rowan Cockett c0efb972a9 updated the notebook and minor bug fixes in utils 2013-08-30 22:23:14 -07:00
Rowan Cockett b66c63759d Moved modelBuilder into utils added some documentation 2013-08-30 22:17:05 -07:00
Lars Ruthotto 3e21ba86a7 fixed typo in util's __init__.py 2013-08-12 17:04:15 -07:00
Rowan Cockett b0760f577f Put utils in their own folder. Increases organization, and everything will be available under SimPEG.utils
NOTE: if you add a new function (or file), you must register it in __init__.py for it to be available under:

e.g.
...
from utils import mkvc, …
...
from MYNEWFILE import MYNEWFUNCTION
2013-08-09 17:30:57 -07:00