文件
gprMax/user_models/heterogeneous_soil.py
2019-08-26 09:37:22 +01:00

43 行
1.6 KiB
Python

import gprMax
# single objects
dxdydz = gprMax.Discretisation(p1=(1e-3, 1e-3, 1e-3))
messages = gprMax.Messages(yn='y')
tw = gprMax.TimeWindow(time=6e-9)
domain = gprMax.Domain(p1=(0.15, 0.15, 0.1))
title = gprMax.Title(name='Heterogeneous soil using a stochastic distribution of dielectric properties given by a mixing model from Peplinski')
waveform1 = gprMax.Waveform(wave_type='ricker', amp=1, freq=1.5e9, id='my_ricker')
dipole = gprMax.HertzianDipole(p1=(0.045, 0.075, 0.085), polarisation='y', waveform_id='my_ricker')
sp = gprMax.SoilPeplinski(sand_fraction=0.5,
clay_fraction=0.5,
bulk_density=2.0,
sand_density=2.66,
water_fraction_lower=0.001,
water_fraction_upper=0.25,
id='my_soil')
fb = gprMax.FractalBox(p1=(0, 0, 0), p2=(0.15, 0.15, 0.070), frac_dim=1.5, weighting=[1, 1, 1], n_materials=50, mixing_model_id='my_soil', id='my_soil_box')
asf = gprMax.AddSurfaceRoughness(p1=(0, 0, 0.070), p2=(0.15, 0.15, 0.070), frac_dim=1.5, weighting=[1, 1], limits=[0.065, 0.080], fractal_box_id='my_soil_box')
gv = gprMax.GeometryView(p1=(0, 0, 0), p2=(0.15, 0.15, 0.1), dl=(0.001, 0.001, 0.001), filename='heterogeneous_soil', output_type='n')
rx = gprMax.Rx(p1=(0.045, 0.075 + 10e-3, 0.085))
scene = gprMax.Scene()
scene.add(dxdydz)
scene.add(messages)
scene.add(tw)
scene.add(domain)
scene.add(title)
scene.add(waveform1)
scene.add(dipole)
scene.add(sp)
scene.add(fb)
scene.add(asf)
scene.add(gv)
scene.add(rx)
gprMax.run(scenes=[scene], n=1, geometry_only=False, outputfile='mysimulation')