你已经派生过 gprMax
镜像自地址
https://gitee.com/sunhf/gprMax.git
已同步 2025-08-06 20:46:52 +08:00
Added option to disable progress bars and ensure they always write to stdout instead of stderr.
这个提交包含在:
@@ -348,7 +348,7 @@ def run_model(args, modelrun, numbermodelruns, inputfile, usernamespace):
|
||||
|
||||
# Build the model, i.e. set the material properties (ID) for every edge of every Yee cell
|
||||
print()
|
||||
pbar = tqdm(total=2, desc='Building FDTD grid', ncols=get_terminal_size()[0] - 1)
|
||||
pbar = tqdm(total=2, desc='Building FDTD grid', ncols=get_terminal_size()[0] - 1, file=sys.stdout, disable=G.tqdmdisable)
|
||||
build_electric_components(G.solid, G.rigidE, G.ID, G)
|
||||
pbar.update()
|
||||
build_magnetic_components(G.solid, G.rigidH, G.ID, G)
|
||||
@@ -417,7 +417,7 @@ def run_model(args, modelrun, numbermodelruns, inputfile, usernamespace):
|
||||
for i, geometryview in enumerate(G.geometryviews):
|
||||
geometryview.set_filename(modelrun, numbermodelruns, G)
|
||||
geoiters = 6 * (((geometryview.xf - geometryview.xs) / geometryview.dx) * ((geometryview.yf - geometryview.ys) / geometryview.dy) * ((geometryview.zf - geometryview.zs) / geometryview.dz))
|
||||
pbar = tqdm(total=geoiters, unit='byte', unit_scale=True, desc='Writing geometry file {} of {}, {}'.format(i + 1, len(G.geometryviews), os.path.split(geometryview.filename)[1]), ncols=get_terminal_size()[0] - 1)
|
||||
pbar = tqdm(total=geoiters, unit='byte', unit_scale=True, desc='Writing geometry file {} of {}, {}'.format(i + 1, len(G.geometryviews), os.path.split(geometryview.filename)[1]), ncols=get_terminal_size()[0] - 1, file=sys.stdout, disable=G.tqdmdisable)
|
||||
geometryview.write_vtk(modelrun, numbermodelruns, G, pbar)
|
||||
pbar.close()
|
||||
# geometryview.write_xdmf(modelrun, numbermodelruns, G)
|
||||
@@ -445,7 +445,7 @@ def run_model(args, modelrun, numbermodelruns, inputfile, usernamespace):
|
||||
# Absolute time
|
||||
abstime = 0
|
||||
|
||||
for timestep in tqdm(range(G.iterations), desc='Running simulation, model ' + str(modelrun) + ' of ' + str(numbermodelruns), ncols=get_terminal_size()[0] - 1):
|
||||
for timestep in tqdm(range(G.iterations), desc='Running simulation, model ' + str(modelrun) + ' of ' + str(numbermodelruns), ncols=get_terminal_size()[0] - 1, file=sys.stdout, disable=G.tqdmdisable):
|
||||
# Store field component values for every receiver and transmission line
|
||||
store_outputs(timestep, G.Ex, G.Ey, G.Ez, G.Hx, G.Hy, G.Hz, G)
|
||||
|
||||
@@ -453,7 +453,7 @@ def run_model(args, modelrun, numbermodelruns, inputfile, usernamespace):
|
||||
for i, snap in enumerate(G.snapshots):
|
||||
if snap.time == timestep + 1:
|
||||
snapiters = 36 * (((snap.xf - snap.xs) / snap.dx) * ((snap.yf - snap.ys) / snap.dy) * ((snap.zf - snap.zs) / snap.dz))
|
||||
pbar = tqdm(total=snapiters, leave=False, unit='byte', unit_scale=True, desc=' Writing snapshot file {} of {}, {}'.format(i + 1, len(G.snapshots), os.path.split(snap.filename)[1]), ncols=get_terminal_size()[0] - 1)
|
||||
pbar = tqdm(total=snapiters, leave=False, unit='byte', unit_scale=True, desc=' Writing snapshot file {} of {}, {}'.format(i + 1, len(G.snapshots), os.path.split(snap.filename)[1]), ncols=get_terminal_size()[0] - 1, file=sys.stdout, disable=G.tqdmdisable)
|
||||
snap.write_vtk_imagedata(G.Ex, G.Ey, G.Ez, G.Hx, G.Hy, G.Hz, G, pbar)
|
||||
pbar.close()
|
||||
|
||||
|
@@ -74,6 +74,7 @@ class FDTDGrid(Grid):
|
||||
self.inputdirectory = ''
|
||||
self.title = ''
|
||||
self.messages = True
|
||||
self.tqdmdisable = False
|
||||
self.nx = 0
|
||||
self.ny = 0
|
||||
self.nz = 0
|
||||
|
@@ -44,11 +44,11 @@ def process_geometrycmds(geometry, G):
|
||||
|
||||
# Disable progress bar if on Windows as it does not update properly when messages are printed
|
||||
if sys.platform == 'win32':
|
||||
tqdmbar = True
|
||||
tqdmdisable = True
|
||||
else:
|
||||
tqdmbar = False
|
||||
tqdmdisable = G.tqdmdisable
|
||||
|
||||
for object in tqdm(geometry, desc='Processing geometry related cmds', unit='cmds', ncols=get_terminal_size()[0] - 1, disable=tqdmbar):
|
||||
for object in tqdm(geometry, desc='Processing geometry related cmds', unit='cmds', ncols=get_terminal_size()[0] - 1, file=sys.stdout, disable=tqdmdisable):
|
||||
tmp = object.split()
|
||||
|
||||
if tmp[0] == '#geometry_objects_file:':
|
||||
|
在新工单中引用
屏蔽一个用户