mindflow.geometry.Tetrahedron
- class mindflow.geometry.Tetrahedron(name, vertices, boundary_type='uniform', dtype=numpy.float32, sampling_config=None)[源代码]
四面体对象的定义。
- 参数:
name (str) - 四面体的名称。
vertices (numpy.ndarray) - 四面体的顶点。
boundary_type (str) - 值可以是
'uniform'
或'unweighted'
。默认值:'uniform'
。'uniform'
,每个边界中的预期样本数与边界的面积(长度)成比例的。'unweighted'
,每个边界中的预期样本数相同。
dtype (numpy.dtype) - 采样点数据类型的数据类型。默认值:
np.float32
。sampling_config (SamplingConfig) - 采样配置。默认值:
None
。
- 支持平台:
Ascend
GPU
样例:
>>> import numpy as np >>> from mindflow.geometry import generate_sampling_config, Tetrahedron >>> tetrahedron_mesh = dict({'domain': dict({'random_sampling': True, 'size': 300}), ... 'BC': dict({'random_sampling': True, 'size': 300, 'with_normal': False,}),}) >>> vertices = np.array([[0., .1, 0.], [.9, .2, .1], [.5, .6, 0.1], [.6, .5, .8]]) >>> tetrahedron = Tetrahedron("tetrahedron", vertices, ... sampling_config=generate_sampling_config(tetrahedron_mesh)) >>> domain = tetrahedron.sampling(geom_type="domain") >>> bc = tetrahedron.sampling(geom_type="bc") >>> print(domain.shape) (300, 2)