你已经派生过 gprMax
镜像自地址
https://gitee.com/sunhf/gprMax.git
已同步 2025-08-08 07:24:19 +08:00
Updated to account for changed PML cmd syntax
这个提交包含在:
@@ -34,7 +34,7 @@ gv1 = gprMax.GeometryView(p1=(0, 0, 0), p2=(x, y, z), dl=(dl, dl, dl),
|
|||||||
gv2 = gprMax.GeometryView(p1=(0, 0, 0), p2=(x, y, z), dl=(dl, dl, dl),
|
gv2 = gprMax.GeometryView(p1=(0, 0, 0), p2=(x, y, z), dl=(dl, dl, dl),
|
||||||
filename=Path(*parts[:-1], parts[-1] + '_f'), output_type='f')
|
filename=Path(*parts[:-1], parts[-1] + '_f'), output_type='f')
|
||||||
|
|
||||||
pmls = {'CFS-PML': {'pml_type': gprMax.PMLFormulation(pml='HORIPML'),
|
pmls = {'CFS-PML': {'pml': gprMax.PMLProps(formulation='HORIPML', thickness=10),
|
||||||
# Parameters from http://dx.doi.org/10.1109/TAP.2018.2823864
|
# Parameters from http://dx.doi.org/10.1109/TAP.2018.2823864
|
||||||
'pml_cfs': [gprMax.PMLCFS(alphascalingprofile='constant',
|
'pml_cfs': [gprMax.PMLCFS(alphascalingprofile='constant',
|
||||||
alphascalingdirection='forward',
|
alphascalingdirection='forward',
|
||||||
@@ -46,7 +46,7 @@ pmls = {'CFS-PML': {'pml_type': gprMax.PMLFormulation(pml='HORIPML'),
|
|||||||
sigmascalingdirection='forward',
|
sigmascalingdirection='forward',
|
||||||
sigmamin=0,
|
sigmamin=0,
|
||||||
sigmamax=1.1 * ((4 + 1) / (150 * np.pi * dl)))]},
|
sigmamax=1.1 * ((4 + 1) / (150 * np.pi * dl)))]},
|
||||||
'HORIPML-1': {'pml_type': gprMax.PMLFormulation(pml='HORIPML'),
|
'HORIPML-1': {'pml': gprMax.PMLProps(formulation='HORIPML', thickness=10),
|
||||||
# Parameters from http://dx.doi.org/10.1109/TAP.2011.2180344
|
# Parameters from http://dx.doi.org/10.1109/TAP.2011.2180344
|
||||||
'pml_cfs': [gprMax.PMLCFS(alphascalingprofile='constant',
|
'pml_cfs': [gprMax.PMLCFS(alphascalingprofile='constant',
|
||||||
alphascalingdirection='forward',
|
alphascalingdirection='forward',
|
||||||
@@ -58,7 +58,7 @@ pmls = {'CFS-PML': {'pml_type': gprMax.PMLFormulation(pml='HORIPML'),
|
|||||||
sigmascalingdirection='forward',
|
sigmascalingdirection='forward',
|
||||||
sigmamin=0,
|
sigmamin=0,
|
||||||
sigmamax=0.7 * ((4 + 1) / (150 * np.pi * dl)))]},
|
sigmamax=0.7 * ((4 + 1) / (150 * np.pi * dl)))]},
|
||||||
'HORIPML-2': {'pml_type': gprMax.PMLFormulation(pml='HORIPML'),
|
'HORIPML-2': {'pml': gprMax.PMLProps(formulation='HORIPML', thickness=10),
|
||||||
# Parameters from http://dx.doi.org/10.1109/TAP.2018.2823864
|
# Parameters from http://dx.doi.org/10.1109/TAP.2018.2823864
|
||||||
'pml_cfs': [gprMax.PMLCFS(alphascalingprofile='constant',
|
'pml_cfs': [gprMax.PMLCFS(alphascalingprofile='constant',
|
||||||
alphascalingdirection='forward',
|
alphascalingdirection='forward',
|
||||||
@@ -80,7 +80,7 @@ pmls = {'CFS-PML': {'pml_type': gprMax.PMLFormulation(pml='HORIPML'),
|
|||||||
sigmascalingdirection='forward',
|
sigmascalingdirection='forward',
|
||||||
sigmamin=0,
|
sigmamin=0,
|
||||||
sigmamax=2.75 / (150 * np.pi * dl))]},
|
sigmamax=2.75 / (150 * np.pi * dl))]},
|
||||||
'MRIPML-1': {'pml_type': gprMax.PMLFormulation(pml='MRIPML'),
|
'MRIPML-1': {'pml': gprMax.PMLProps(formulation='MRIPML', thickness=10),
|
||||||
# Parameters from Antonis' MATLAB script (M3Dparams.m)
|
# Parameters from Antonis' MATLAB script (M3Dparams.m)
|
||||||
'pml_cfs': [gprMax.PMLCFS(alphascalingprofile='constant',
|
'pml_cfs': [gprMax.PMLCFS(alphascalingprofile='constant',
|
||||||
alphascalingdirection='forward',
|
alphascalingdirection='forward',
|
||||||
@@ -92,7 +92,7 @@ pmls = {'CFS-PML': {'pml_type': gprMax.PMLFormulation(pml='HORIPML'),
|
|||||||
sigmascalingdirection='forward',
|
sigmascalingdirection='forward',
|
||||||
sigmamin=0,
|
sigmamin=0,
|
||||||
sigmamax=1.1 * ((4 + 1) / (150 * np.pi * dl)))]},
|
sigmamax=1.1 * ((4 + 1) / (150 * np.pi * dl)))]},
|
||||||
'MRIPML-2': {'pml_type': gprMax.PMLFormulation(pml='MRIPML'),
|
'MRIPML-2': {'pml': gprMax.PMLProps(formulation='MRIPML', thickness=10),
|
||||||
# Parameters from http://dx.doi.org/10.1109/TAP.2018.2823864
|
# Parameters from http://dx.doi.org/10.1109/TAP.2018.2823864
|
||||||
'pml_cfs': [gprMax.PMLCFS(alphascalingprofile='quadratic',
|
'pml_cfs': [gprMax.PMLCFS(alphascalingprofile='quadratic',
|
||||||
alphascalingdirection='reverse',
|
alphascalingdirection='reverse',
|
||||||
@@ -131,9 +131,7 @@ for k, v in pmls.items():
|
|||||||
# scene.add(gv1)
|
# scene.add(gv1)
|
||||||
# scene.add(gv2)
|
# scene.add(gv2)
|
||||||
|
|
||||||
pml_cells = gprMax.PMLCells(thickness=10)
|
scene.add(v['pml'])
|
||||||
scene.add(pml_cells)
|
|
||||||
scene.add(v['pml_type'])
|
|
||||||
for pml_cfs in v['pml_cfs']:
|
for pml_cfs in v['pml_cfs']:
|
||||||
scene.add(pml_cfs)
|
scene.add(pml_cfs)
|
||||||
|
|
||||||
|
@@ -34,8 +34,7 @@ gv1 = gprMax.GeometryView(p1=(0, 0, 0), p2=(x, y, z), dl=(dl, dl, dl),
|
|||||||
gv2 = gprMax.GeometryView(p1=(0, 0, 0), p2=(x, y, z), dl=(dl, dl, dl),
|
gv2 = gprMax.GeometryView(p1=(0, 0, 0), p2=(x, y, z), dl=(dl, dl, dl),
|
||||||
filename=Path(*parts[:-1], parts[-1] + '_f'), output_type='f')
|
filename=Path(*parts[:-1], parts[-1] + '_f'), output_type='f')
|
||||||
|
|
||||||
pml_type = gprMax.PMLFormulation(pml='HORIPML')
|
pml = gprMax.PMLProps(formulation='HORIPML', thickness=10)
|
||||||
pml_cells = gprMax.PMLCells(thickness=10)
|
|
||||||
|
|
||||||
# Parameters from http://dx.doi.org/10.1109/TAP.2018.2823864
|
# Parameters from http://dx.doi.org/10.1109/TAP.2018.2823864
|
||||||
pml_cfs = gprMax.PMLCFS(alphascalingprofile='constant',
|
pml_cfs = gprMax.PMLCFS(alphascalingprofile='constant',
|
||||||
@@ -62,8 +61,7 @@ scene.add(rx)
|
|||||||
# scene.add(gv1)
|
# scene.add(gv1)
|
||||||
# scene.add(gv2)
|
# scene.add(gv2)
|
||||||
|
|
||||||
scene.add(pml_cells)
|
scene.add(pml)
|
||||||
scene.add(pml_type)
|
|
||||||
scene.add(pml_cfs)
|
scene.add(pml_cfs)
|
||||||
|
|
||||||
# Run model
|
# Run model
|
||||||
|
@@ -34,7 +34,7 @@ cases = {'off': {'x0': 0, 'y0': 0, 'z0': 0, 'xmax': 0, 'ymax': 0, 'zmax':0},
|
|||||||
'zmax': {'x0': 0, 'y0': 0, 'z0': 0, 'xmax': 0, 'ymax': 0, 'zmax': thick}}
|
'zmax': {'x0': 0, 'y0': 0, 'z0': 0, 'xmax': 0, 'ymax': 0, 'zmax': thick}}
|
||||||
|
|
||||||
# PML formulation
|
# PML formulation
|
||||||
pml_type = gprMax.PMLFormulation(pml='HORIPML')
|
pml_type = gprMax.PMLProps(formulation='HORIPML')
|
||||||
|
|
||||||
## Built-in 1st order PML
|
## Built-in 1st order PML
|
||||||
pml_cfs = gprMax.PMLCFS(alphascalingprofile='constant',
|
pml_cfs = gprMax.PMLCFS(alphascalingprofile='constant',
|
||||||
@@ -102,9 +102,8 @@ for k, v in cases.items():
|
|||||||
scene.add(hertzian_dipole)
|
scene.add(hertzian_dipole)
|
||||||
scene.add(rx)
|
scene.add(rx)
|
||||||
|
|
||||||
pml_cells = gprMax.PMLCells(**v)
|
pml = gprMax.PMLProps(formulation='HORIPML', **v)
|
||||||
scene.add(pml_cells)
|
scene.add(pml)
|
||||||
scene.add(pml_type)
|
|
||||||
scene.add(pml_cfs)
|
scene.add(pml_cfs)
|
||||||
|
|
||||||
scenes.append(scene)
|
scenes.append(scene)
|
||||||
|
在新工单中引用
屏蔽一个用户