你已经派生过 gprMax
镜像自地址
https://gitee.com/sunhf/gprMax.git
已同步 2025-08-07 15:10:13 +08:00
Stop mapping materials for voxel geometry views
- Voxel geometry views do not use compound/averaged materials. Therefore materials are guaranteed to be correctly ordered in both the serial and MPI implementations as the materials used have all be added from the Scene/input file.
这个提交包含在:
@@ -52,11 +52,11 @@ class GeometryViewVoxels(GeometryView[GridType]):
|
||||
|
||||
self.spacing = self.grid_view.step * self.grid.dl
|
||||
|
||||
self.nbytes = self.material_data.nbytes
|
||||
|
||||
# Write information about any PMLs, sources, receivers
|
||||
self.metadata = Metadata(self.grid_view)
|
||||
|
||||
self.nbytes = self.material_data.nbytes
|
||||
|
||||
def write_vtk(self):
|
||||
"""Writes geometry information to a VTKHDF file."""
|
||||
|
||||
@@ -82,10 +82,6 @@ class MPIGeometryViewVoxels(GeometryViewVoxels[MPIGrid]):
|
||||
self.origin = self.grid_view.global_start * self.grid.dl
|
||||
self.spacing = self.grid_view.step * self.grid.dl
|
||||
|
||||
# Use global material IDs rather than local IDs
|
||||
self.grid_view.initialise_materials(filter_materials=False)
|
||||
self.material_data = self.grid_view.map_to_view_materials(self.material_data)
|
||||
|
||||
self.nbytes = self.material_data.nbytes
|
||||
|
||||
# Write information about any PMLs, sources, receivers
|
||||
|
@@ -243,13 +243,18 @@ class Metadata(Generic[GridType]):
|
||||
return self.grid.size
|
||||
|
||||
def materials_comment(self) -> Optional[List[str]]:
|
||||
if self.grid_view.materials is None:
|
||||
if hasattr(self.grid_view, "materials"):
|
||||
materials = self.grid_view.materials
|
||||
else:
|
||||
materials = self.grid.materials
|
||||
|
||||
if materials is None:
|
||||
return None
|
||||
|
||||
if not self.averaged_materials:
|
||||
return [m.ID for m in self.grid_view.materials if m.type != "dielectric-smoothed"]
|
||||
return [m.ID for m in materials if m.type != "dielectric-smoothed"]
|
||||
else:
|
||||
return [m.ID for m in self.grid_view.materials]
|
||||
return [m.ID for m in materials]
|
||||
|
||||
|
||||
class MPIMetadata(Metadata[MPIGrid]):
|
||||
|
在新工单中引用
屏蔽一个用户