你已经派生过 gprMax
镜像自地址
https://gitee.com/sunhf/gprMax.git
已同步 2025-08-07 04:56:51 +08:00
Ran pre-commit run --all-files to modify all the files correctly.
这个提交包含在:
@@ -44,10 +44,7 @@ for obj in gssi_objects:
|
||||
scene.add(obj)
|
||||
|
||||
gv1 = gprMax.GeometryView(
|
||||
p1=(0, 0, 0),
|
||||
p2=(x, y, z),
|
||||
dl=(dl, dl, dl),
|
||||
filename="antenna_like_GSSI_400", output_type="n"
|
||||
p1=(0, 0, 0), p2=(x, y, z), dl=(dl, dl, dl), filename="antenna_like_GSSI_400", output_type="n"
|
||||
)
|
||||
gv2 = gprMax.GeometryView(
|
||||
p1=(ant_pos[0] - 0.150, ant_pos[1] - 0.150, ant_pos[2]),
|
||||
|
@@ -47,8 +47,7 @@ help_msg = {
|
||||
"scenes": "(list, req): Scenes to run the model. Multiple scene objects "
|
||||
"can given in order to run multiple simulation runs. Each scene "
|
||||
"must contain the essential simulation objects",
|
||||
"inputfile": "(str, opt): Input file path. Can also run simulation by "
|
||||
"providing an input file.",
|
||||
"inputfile": "(str, opt): Input file path. Can also run simulation by " "providing an input file.",
|
||||
"outputfile": "(str, req): File path to the output data file.",
|
||||
"n": "(int, req): Number of required simulation runs.",
|
||||
"i": "(int, opt): Model number to start/restart simulation from. It would "
|
||||
@@ -60,20 +59,16 @@ help_msg = {
|
||||
"models to be farmed out using a MPI task farm, e.g. to create a "
|
||||
"B-scan with 60 traces and use MPI to farm out each trace. For "
|
||||
"further details see the performance section of the User Guide.",
|
||||
"gpu": "(list/bool, opt): Flag to use NVIDIA GPU or list of NVIDIA GPU "
|
||||
"device ID(s) for specific GPU card(s).",
|
||||
"opencl": "(list/bool, opt): Flag to use OpenCL or list of OpenCL device "
|
||||
"ID(s) for specific compute device(s).",
|
||||
"gpu": "(list/bool, opt): Flag to use NVIDIA GPU or list of NVIDIA GPU " "device ID(s) for specific GPU card(s).",
|
||||
"opencl": "(list/bool, opt): Flag to use OpenCL or list of OpenCL device " "ID(s) for specific compute device(s).",
|
||||
"subgrid": "(bool, opt): Flag to use sub-gridding.",
|
||||
"autotranslate": "(bool, opt): For sub-gridding - auto translate objects "
|
||||
"with main grid coordinates to their equivalent local "
|
||||
"grid coordinate within the subgrid. If this option is "
|
||||
"off users must specify sub-grid object point within the "
|
||||
"global subgrid space.",
|
||||
"geometry_only": "(bool, opt): Build a model and produce any geometry "
|
||||
"views but do not run the simulation.",
|
||||
"geometry_fixed": "(bool, opt): Run a series of models where the geometry "
|
||||
"does not change between models.",
|
||||
"geometry_only": "(bool, opt): Build a model and produce any geometry " "views but do not run the simulation.",
|
||||
"geometry_fixed": "(bool, opt): Run a series of models where the geometry " "does not change between models.",
|
||||
"write_processed": "(bool, opt): Writes another input file after any "
|
||||
"Python code (#python blocks) and in the original input "
|
||||
"file has been processed.",
|
||||
|
@@ -19,6 +19,7 @@
|
||||
import logging
|
||||
|
||||
from .cmds_multiuse import (
|
||||
PMLCFS,
|
||||
AddDebyeDispersion,
|
||||
AddDrudeDispersion,
|
||||
AddLorentzDispersion,
|
||||
@@ -29,7 +30,6 @@ from .cmds_multiuse import (
|
||||
Material,
|
||||
MaterialList,
|
||||
MaterialRange,
|
||||
PMLCFS,
|
||||
Rx,
|
||||
RxArray,
|
||||
Snapshot,
|
||||
@@ -387,7 +387,7 @@ def process_multicmds(multicmds):
|
||||
material_list = MaterialList(list_of_materials=lmats, id=tmp[tokens - 1])
|
||||
scene_objects.append(material_list)
|
||||
|
||||
cmdname = '#pml_cfs'
|
||||
cmdname = "#pml_cfs"
|
||||
if multicmds[cmdname] is not None:
|
||||
for cmdinstance in multicmds[cmdname]:
|
||||
tmp = cmdinstance.split()
|
||||
@@ -396,7 +396,8 @@ def process_multicmds(multicmds):
|
||||
logger.exception("'" + cmdname + ": " + " ".join(tmp) + "'" + " requires exactly twelve parameters")
|
||||
raise ValueError
|
||||
|
||||
pml_cfs = PMLCFS(alphascalingprofile=tmp[0],
|
||||
pml_cfs = PMLCFS(
|
||||
alphascalingprofile=tmp[0],
|
||||
alphascalingdirection=tmp[1],
|
||||
alphamin=tmp[2],
|
||||
alphamax=tmp[3],
|
||||
@@ -407,7 +408,8 @@ def process_multicmds(multicmds):
|
||||
sigmascalingprofile=tmp[8],
|
||||
sigmascalingdirection=tmp[9],
|
||||
sigmamin=tmp[10],
|
||||
sigmamax=tmp[11])
|
||||
sigmamax=tmp[11],
|
||||
)
|
||||
|
||||
scene_objects.append(pml_cfs)
|
||||
|
||||
|
@@ -136,14 +136,18 @@ def process_singlecmds(singlecmds):
|
||||
logger.exception(f"{cmd} requires either one or six parameter(s)")
|
||||
raise ValueError
|
||||
|
||||
if 'pml_formulation' in locals():
|
||||
if "pml_formulation" in locals():
|
||||
if len(tmp) == 1:
|
||||
pml_props = PMLProps(formulation=pml_formulation, thickness=int(tmp[0]))
|
||||
else:
|
||||
pml_props = PMLProps(
|
||||
formulation=pml_formulation,
|
||||
x0=int(tmp[0]), y0=int(tmp[1]), z0=int(tmp[2]),
|
||||
xmax=int(tmp[3]), ymax=int(tmp[4]), zmax=int(tmp[5])
|
||||
x0=int(tmp[0]),
|
||||
y0=int(tmp[1]),
|
||||
z0=int(tmp[2]),
|
||||
xmax=int(tmp[3]),
|
||||
ymax=int(tmp[4]),
|
||||
zmax=int(tmp[5]),
|
||||
)
|
||||
else:
|
||||
if len(tmp) == 1:
|
||||
|
@@ -24,6 +24,7 @@ import numpy as np
|
||||
|
||||
logger = logging.getLogger(__name__)
|
||||
|
||||
|
||||
def diff_output_files(filename1, filename2):
|
||||
"""Calculates differences between two output files.
|
||||
|
||||
|
@@ -50,8 +50,9 @@ fig, ax = plt.subplots(
|
||||
)
|
||||
|
||||
for x, model in enumerate(testmodels):
|
||||
time, datadiffs = diff_output_files(fn.parent.joinpath(basename + "_ref.h5"),
|
||||
fn.parent.joinpath(basename + str(x + 1) + ".h5"))
|
||||
time, datadiffs = diff_output_files(
|
||||
fn.parent.joinpath(basename + "_ref.h5"), fn.parent.joinpath(basename + str(x + 1) + ".h5")
|
||||
)
|
||||
|
||||
# Print maximum error value
|
||||
start = 210
|
||||
|
@@ -74,9 +74,7 @@ for x, PMLID in enumerate(PMLIDs):
|
||||
ax.set_ylabel(f"{output} error [dB]")
|
||||
|
||||
# Save a PDF/PNG of the figure
|
||||
fig.savefig(basename + "_diffs_" + PMLID + ".pdf", dpi=None, format='pdf', bbox_inches='tight', pad_inches=0.1)
|
||||
fig.savefig(basename + "_diffs_" + PMLID + ".pdf", dpi=None, format="pdf", bbox_inches="tight", pad_inches=0.1)
|
||||
# fig.savefig(basename + "_diffs_" + PMLID + ".png", dpi=150, format='png', bbox_inches='tight', pad_inches=0.1)
|
||||
|
||||
plt.show()
|
||||
|
||||
|
||||
|
在新工单中引用
屏蔽一个用户