Commit Graph

51 Commits

Author SHA1 Message Date
rowanc1 9eafec4895 Added options to the solver class that are dynamic based on your environment. If not available, they will fall back to ones that are. 2013-11-26 20:23:40 -08:00
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