mirror of
https://github.com/wassname/simpeg.git
synced 2026-07-04 09:54:16 +08:00
Add a scale flag in MT1Danalytic to scale the solution to be 1 at the top.
This commit is contained in:
+207
@@ -73,3 +73,210 @@ notebooks/scipy2015/027-Inversion_NoStoppingregMesh_smoothFalse.npy
|
||||
notebooks/scipy2015/028-Inversion_NoStoppingregMesh_smoothFalse.npy
|
||||
notebooks/scipy2015/029-Inversion_NoStoppingregMesh_smoothFalse.npy
|
||||
notebooks/scipy2015/030-Inversion_NoStoppingregMesh_smoothFalse.npy
|
||||
notebooks/001-InversionModel-2015-11-05-10-20.npy
|
||||
notebooks/001-InversionModel-2015-11-05-13-19.npy
|
||||
notebooks/001-InversionModel-2015-11-05-14-57.npy
|
||||
notebooks/001-InversionModel-2015-11-10-16-51.npy
|
||||
notebooks/001-InversionModel-2015-11-10-19-15.npy
|
||||
notebooks/001-InversionModel-2015-11-13-10-29.npy
|
||||
notebooks/002-InversionModel-2015-11-05-10-20.npy
|
||||
notebooks/002-InversionModel-2015-11-05-13-19.npy
|
||||
notebooks/002-InversionModel-2015-11-05-14-57.npy
|
||||
notebooks/002-InversionModel-2015-11-10-16-51.npy
|
||||
notebooks/002-InversionModel-2015-11-10-19-15.npy
|
||||
notebooks/002-InversionModel-2015-11-13-10-29.npy
|
||||
notebooks/003-InversionModel-2015-11-05-10-20.npy
|
||||
notebooks/0??-InversionModel-2015-11-05-13-19.npy
|
||||
notebooks/006-InversionModel-2015-11-05-14-57.npy
|
||||
notebooks/003-InversionModel-2015-11-05-14-57.npy
|
||||
notebooks/003-InversionModel-2015-11-10-16-51.npy
|
||||
notebooks/003-InversionModel-2015-11-10-19-15.npy
|
||||
notebooks/003-InversionModel-2015-11-13-10-29.npy
|
||||
notebooks/004-InversionModel-2015-11-05-10-20.npy
|
||||
notebooks/004-InversionModel-2015-11-05-14-57.npy
|
||||
notebooks/004-InversionModel-2015-11-10-16-51.npy
|
||||
notebooks/004-InversionModel-2015-11-10-19-15.npy
|
||||
notebooks/004-InversionModel-2015-11-13-10-29.npy
|
||||
notebooks/005-InversionModel-2015-11-05-10-20.npy
|
||||
notebooks/005-InversionModel-2015-11-05-14-57.npy
|
||||
notebooks/005-InversionModel-2015-11-10-16-51.npy
|
||||
notebooks/005-InversionModel-2015-11-10-19-15.npy
|
||||
notebooks/005-InversionModel-2015-11-13-10-29.npy
|
||||
notebooks/006-InversionModel-2015-11-05-10-20.npy
|
||||
notebooks/006-InversionModel-2015-11-10-16-51.npy
|
||||
notebooks/006-InversionModel-2015-11-10-19-15.npy
|
||||
notebooks/006-InversionModel-2015-11-13-10-29.npy
|
||||
notebooks/007-InversionModel-2015-11-05-10-20.npy
|
||||
notebooks/007-InversionModel-2015-11-05-14-57.npy
|
||||
notebooks/007-InversionModel-2015-11-10-16-51.npy
|
||||
notebooks/007-InversionModel-2015-11-10-19-15.npy
|
||||
notebooks/007-InversionModel-2015-11-13-10-29.npy
|
||||
notebooks/008-InversionModel-2015-11-05-10-20.npy
|
||||
notebooks/008-InversionModel-2015-11-05-14-57.npy
|
||||
notebooks/008-InversionModel-2015-11-10-16-51.npy
|
||||
notebooks/008-InversionModel-2015-11-10-19-15.npy
|
||||
notebooks/008-InversionModel-2015-11-13-10-29.npy
|
||||
notebooks/009-InversionModel-2015-11-05-10-20.npy
|
||||
notebooks/009-InversionModel-2015-11-05-14-57.npy
|
||||
notebooks/009-InversionModel-2015-11-10-16-51.npy
|
||||
notebooks/009-InversionModel-2015-11-10-19-15.npy
|
||||
notebooks/009-InversionModel-2015-11-13-10-29.npy
|
||||
notebooks/010-InversionModel-2015-11-05-10-20.npy
|
||||
notebooks/010-InversionModel-2015-11-05-14-57.npy
|
||||
notebooks/010-InversionModel-2015-11-10-16-51.npy
|
||||
notebooks/010-InversionModel-2015-11-10-19-15.npy
|
||||
notebooks/010-InversionModel-2015-11-13-10-29.npy
|
||||
notebooks/011-InversionModel-2015-11-05-14-57.npy
|
||||
notebooks/011-InversionModel-2015-11-10-16-51.npy
|
||||
notebooks/011-InversionModel-2015-11-10-19-15.npy
|
||||
notebooks/011-InversionModel-2015-11-13-10-29.npy
|
||||
notebooks/012-InversionModel-2015-11-05-14-57.npy
|
||||
notebooks/012-InversionModel-2015-11-10-16-51.npy
|
||||
notebooks/012-InversionModel-2015-11-10-19-15.npy
|
||||
notebooks/012-InversionModel-2015-11-13-10-29.npy
|
||||
notebooks/013-InversionModel-2015-11-05-14-57.npy
|
||||
notebooks/013-InversionModel-2015-11-10-16-51.npy
|
||||
notebooks/013-InversionModel-2015-11-10-19-15.npy
|
||||
notebooks/013-InversionModel-2015-11-13-10-29.npy
|
||||
notebooks/014-InversionModel-2015-11-05-14-57.npy
|
||||
notebooks/014-InversionModel-2015-11-10-16-51.npy
|
||||
notebooks/014-InversionModel-2015-11-10-19-15.npy
|
||||
notebooks/014-InversionModel-2015-11-13-10-29.npy
|
||||
notebooks/015-InversionModel-2015-11-05-14-57.npy
|
||||
notebooks/015-InversionModel-2015-11-10-16-51.npy
|
||||
notebooks/015-InversionModel-2015-11-10-19-15.npy
|
||||
notebooks/015-InversionModel-2015-11-13-10-29.npy
|
||||
notebooks/016-InversionModel-2015-11-05-14-57.npy
|
||||
notebooks/016-InversionModel-2015-11-10-16-51.npy
|
||||
notebooks/016-InversionModel-2015-11-10-19-15.npy
|
||||
notebooks/016-InversionModel-2015-11-13-10-29.npy
|
||||
notebooks/017-InversionModel-2015-11-05-14-57.npy
|
||||
notebooks/017-InversionModel-2015-11-10-16-51.npy
|
||||
notebooks/017-InversionModel-2015-11-10-19-15.npy
|
||||
notebooks/017-InversionModel-2015-11-13-10-29.npy
|
||||
notebooks/018-InversionModel-2015-11-05-14-57.npy
|
||||
notebooks/018-InversionModel-2015-11-10-16-51.npy
|
||||
notebooks/018-InversionModel-2015-11-10-19-15.npy
|
||||
notebooks/019-InversionModel-2015-11-05-14-57.npy
|
||||
notebooks/019-InversionModel-2015-11-10-16-51.npy
|
||||
notebooks/019-InversionModel-2015-11-10-19-15.npy
|
||||
notebooks/020-InversionModel-2015-11-05-14-57.npy
|
||||
notebooks/020-InversionModel-2015-11-10-16-51.npy
|
||||
notebooks/020-InversionModel-2015-11-10-19-15.npy
|
||||
notebooks/021-InversionModel-2015-11-05-14-57.npy
|
||||
notebooks/021-InversionModel-2015-11-10-16-51.npy
|
||||
notebooks/021-InversionModel-2015-11-10-19-15.npy
|
||||
notebooks/022-InversionModel-2015-11-05-14-57.npy
|
||||
notebooks/022-InversionModel-2015-11-10-16-51.npy
|
||||
notebooks/022-InversionModel-2015-11-10-19-15.npy
|
||||
notebooks/023-InversionModel-2015-11-05-14-57.npy
|
||||
notebooks/023-InversionModel-2015-11-10-16-51.npy
|
||||
notebooks/023-InversionModel-2015-11-10-19-15.npy
|
||||
notebooks/024-InversionModel-2015-11-05-14-57.npy
|
||||
notebooks/024-InversionModel-2015-11-10-16-51.npy
|
||||
notebooks/024-InversionModel-2015-11-10-19-15.npy
|
||||
notebooks/025-InversionModel-2015-11-05-14-57.npy
|
||||
notebooks/025-InversionModel-2015-11-10-16-51.npy
|
||||
notebooks/025-InversionModel-2015-11-10-19-15.npy
|
||||
notebooks/026-InversionModel-2015-11-05-14-57.npy
|
||||
notebooks/026-InversionModel-2015-11-10-16-51.npy
|
||||
notebooks/026-InversionModel-2015-11-10-19-15.npy
|
||||
notebooks/027-InversionModel-2015-11-05-14-57.npy
|
||||
notebooks/027-InversionModel-2015-11-10-16-51.npy
|
||||
notebooks/027-InversionModel-2015-11-10-19-15.npy
|
||||
notebooks/028-InversionModel-2015-11-05-14-57.npy
|
||||
notebooks/028-InversionModel-2015-11-10-16-51.npy
|
||||
notebooks/028-InversionModel-2015-11-10-19-15.npy
|
||||
notebooks/029-InversionModel-2015-11-05-14-57.npy
|
||||
notebooks/029-InversionModel-2015-11-10-16-51.npy
|
||||
notebooks/029-InversionModel-2015-11-10-19-15.npy
|
||||
notebooks/030-InversionModel-2015-11-05-14-57.npy
|
||||
notebooks/030-InversionModel-2015-11-10-16-51.npy
|
||||
notebooks/030-InversionModel-2015-11-10-19-15.npy
|
||||
notebooks/InversionModel-2015-11-05-10-20_001.vtr
|
||||
notebooks/InversionModel-2015-11-05-10-20_002.vtr
|
||||
notebooks/InversionModel-2015-11-05-10-20_003.vtr
|
||||
notebooks/InversionModel-2015-11-05-10-20_004.vtr
|
||||
notebooks/InversionModel-2015-11-05-10-20_005.vtr
|
||||
notebooks/InversionModel-2015-11-05-10-20_006.vtr
|
||||
notebooks/InversionModel-2015-11-05-10-20_007.vtr
|
||||
notebooks/InversionModel-2015-11-05-10-20_008.vtr
|
||||
notebooks/InversionModel-2015-11-05-10-20_009.vtr
|
||||
notebooks/InversionModel-2015-11-05-10-20_010.vtr
|
||||
notebooks/InversionModel-2015-11-05-13-19_001.vtr
|
||||
notebooks/InversionModel-2015-11-05-13-19_002.vtr
|
||||
notebooks/InversionModel-2015-11-05-13-19_003.vtr
|
||||
notebooks/InversionModel-2015-11-05-13-19_004.vtr
|
||||
notebooks/InversionModel-2015-11-05-13-19_005.vtr
|
||||
notebooks/InversionModel-2015-11-05-13-19_006.vtr
|
||||
notebooks/InversionModel-2015-11-05-13-19_007.vtr
|
||||
notebooks/InversionModel-2015-11-05-13-19_008.vtr
|
||||
notebooks/InversionModel-2015-11-05-13-19_009.vtr
|
||||
notebooks/InversionModel-2015-11-05-13-19_010.vtr
|
||||
notebooks/InversionModel-2015-11-05-13-19_011.vtr
|
||||
notebooks/InversionModel-2015-11-05-13-19_012.vtr
|
||||
notebooks/InversionModel-2015-11-05-14-57_001.vtr
|
||||
notebooks/InversionModel-2015-11-05-14-57_002.vtr
|
||||
notebooks/InversionModel-2015-11-05-14-57_003.vtr
|
||||
notebooks/InversionModel-2015-11-05-14-57_004.vtr
|
||||
notebooks/InversionModel-2015-11-05-14-57_005.vtr
|
||||
notebooks/InversionModel-2015-11-05-14-57_006.vtr
|
||||
notebooks/InversionModel-2015-11-05-14-57_007.vtr
|
||||
notebooks/InversionModel-2015-11-05-14-57_008.vtr
|
||||
notebooks/InversionModel-2015-11-05-14-57_009.vtr
|
||||
notebooks/InversionModel-2015-11-05-14-57_010.vtr
|
||||
notebooks/InversionModel-2015-11-05-14-57_011.vtr
|
||||
notebooks/InversionModel-2015-11-05-14-57_012.vtr
|
||||
notebooks/InversionModel-2015-11-05-14-57_013.vtr
|
||||
notebooks/InversionModel-2015-11-05-14-57_014.vtr
|
||||
notebooks/InversionModel-2015-11-05-14-57_015.vtr
|
||||
notebooks/InversionModel-2015-11-05-14-57_016.vtr
|
||||
notebooks/InversionModel-2015-11-05-14-57_017.vtr
|
||||
notebooks/InversionModel-2015-11-05-14-57_018.vtr
|
||||
notebooks/InversionModel-2015-11-05-14-57_019.vtr
|
||||
notebooks/InversionModel-2015-11-05-14-57_020.vtr
|
||||
notebooks/InversionModel-2015-11-05-14-57_021.vtr
|
||||
notebooks/InversionModel-2015-11-05-14-57_022.vtr
|
||||
notebooks/InversionModel-2015-11-05-14-57_023.vtr
|
||||
notebooks/InversionModel-2015-11-05-14-57_024.vtr
|
||||
notebooks/InversionModel-2015-11-05-14-57_025.vtr
|
||||
notebooks/InversionModel-2015-11-05-14-57_026.vtr
|
||||
notebooks/InversionModel-2015-11-05-14-57_027.vtr
|
||||
notebooks/InversionModel-2015-11-05-14-57_028.vtr
|
||||
notebooks/InversionModel-2015-11-05-14-57_029.vtr
|
||||
notebooks/InversionModel-2015-11-05-14-57_030.vtr
|
||||
notebooks/InversionModel-2015-11-10-16-51_001.vtr
|
||||
notebooks/InversionModel-2015-11-10-16-51_002.vtr
|
||||
notebooks/InversionModel-2015-11-10-16-51_003.vtr
|
||||
notebooks/InversionModel-2015-11-10-16-51_004.vtr
|
||||
notebooks/InversionModel-2015-11-10-16-51_005.vtr
|
||||
notebooks/InversionModel-2015-11-10-16-51_006.vtr
|
||||
notebooks/InversionModel-2015-11-10-16-51_007.vtr
|
||||
notebooks/InversionModel-2015-11-10-16-51_008.vtr
|
||||
notebooks/InversionModel-2015-11-10-16-51_009.vtr
|
||||
notebooks/InversionModel-2015-11-10-16-51_010.vtr
|
||||
notebooks/InversionModel-2015-11-10-16-51_011.vtr
|
||||
notebooks/InversionModel-2015-11-10-16-51_012.vtr
|
||||
notebooks/InversionModel-2015-11-10-16-51_013.vtr
|
||||
notebooks/InversionModel-2015-11-10-16-51_014.vtr
|
||||
notebooks/InversionModel-2015-11-10-16-51_015.vtr
|
||||
notebooks/InversionModel-2015-11-10-16-51_016.vtr
|
||||
notebooks/InversionModel-2015-11-10-16-51_017.vtr
|
||||
notebooks/InversionModel-2015-11-10-16-51_018.vtr
|
||||
notebooks/InversionModel-2015-11-10-16-51_019.vtr
|
||||
notebooks/InversionModel-2015-11-10-16-51_020.vtr
|
||||
notebooks/InversionModel-2015-11-10-16-51_021.vtr
|
||||
notebooks/InversionModel-2015-11-10-16-51_022.vtr
|
||||
notebooks/InversionModel-2015-11-10-16-51_023.vtr
|
||||
notebooks/InversionModel-2015-11-10-16-51_024.vtr
|
||||
notebooks/InversionModel-2015-11-10-16-51_025.vtr
|
||||
notebooks/InversionModel-2015-11-10-16-51_026.vtr
|
||||
notebooks/InversionModel-2015-11-10-16-51_027.vtr
|
||||
notebooks/InversionModel-2015-11-10-16-51_028.vtr
|
||||
notebooks/InversionModel-2015-11-10-16-51_029.vtr
|
||||
notebooks/InversionModel-2015-11-10-16-51_030.vtr
|
||||
notebooks/MT Script-3D_InversionTest.ipynb
|
||||
notebooks/MT3D_dobs.npy
|
||||
notebooks/MT3D_dtrue.npy
|
||||
notebooks/trueModel.vtr
|
||||
notebooks/018-InversionModel-2015-11-13-10-29.npy
|
||||
|
||||
@@ -1,14 +1,16 @@
|
||||
# Analytic solution of EM fields due to a plane wave
|
||||
|
||||
import numpy as np, SimPEG as simpeg
|
||||
from IPython.core.debugger import Tracer
|
||||
|
||||
def getEHfields(m1d,sigma,freq,zd):
|
||||
def getEHfields(m1d,sigma,freq,zd,scaleUD=True):
|
||||
'''Analytic solution for MT 1D layered earth. Returns E and H fields.
|
||||
|
||||
:param SimPEG.mesh, object m1d: Mesh object with the 1D spatial information.
|
||||
:param numpy.array, vector sigma: Physical property of conductivity corresponding with the mesh.
|
||||
:param float, freq: Frequency to calculate data at.
|
||||
:param numpy array, vector zd: location to calculate EH fields at
|
||||
:param bollean, scaleUD: scales the output to be 1 at the top, increases numeracal stability.
|
||||
|
||||
Assumes a halfspace with the same conductive as the last cell below.
|
||||
|
||||
@@ -27,7 +29,7 @@ def getEHfields(m1d,sigma,freq,zd):
|
||||
|
||||
# Initiate the propagation matrix, in the order down up.
|
||||
UDp = np.zeros((2,m1d.nC+1),dtype=complex)
|
||||
UDp[1,0] = 1 # Set the wave amplitude as 1 into the half-space at the bottom of the mesh
|
||||
UDp[1,0] = 1. # Set the wave amplitude as 1 into the half-space at the bottom of the mesh
|
||||
# Loop over all the layers, starting at the bottom layer
|
||||
for lnr, h in enumerate(m1d.hx): # lnr-number of layer, h-thickness of the layer
|
||||
# Calculate
|
||||
@@ -45,6 +47,9 @@ def getEHfields(m1d,sigma,freq,zd):
|
||||
# The down and up component in current layer.
|
||||
UDp[:,lnr+1] = elamh.dot(Pjinv.dot(Pj1)).dot(UDp[:,lnr])
|
||||
|
||||
if scaleUD:
|
||||
UDp[:,lnr+1::-1] = UDp[:,lnr+1::-1]/UDp[1,lnr+1]
|
||||
|
||||
# Calculate the fields
|
||||
Ed = np.empty((zd.size,),dtype=complex)
|
||||
Eu = np.empty((zd.size,),dtype=complex)
|
||||
|
||||
Reference in New Issue
Block a user