Basic features#

基本功能

本例向您展示如何获取和使用 Result 对象。

Perform required imports#

执行所需的导入

from ansys.dpf import post
from ansys.dpf.post import examples

Get Solution object#

获取 Solution 对象,并使用结果文件的路径将其实例化。

example_path = examples.download_all_kinds_of_complexity()
solution = post.load_solution(example_path)

Get Result objects#

Get displacement result#

获取位移 Result 对象。

displacement_result = solution.displacement()
displacement = displacement_result.vector

Get information on result#

获取位移结果信息。

获取 displacement 对象的 num_fields 属性,这通常表示 displacement 对象包含的字段数量。

displacement.num_fields
1

调用 displacement 对象的 get_data_at_field 方法,获取第 0 个字段的数据。

disp_data = displacement.get_data_at_field(0)

获取 disp_data 的长度,这通常表示 disp_data 包含的元素数量。

len(disp_data)
15113

从 disp_data 列表中获取第二个元素(在 Python 中,索引是从 0 开始的,所以索引 1 对应的是第二个元素)。

disp_data[1]
DPFArray([ 9.95996777e-06,  4.93526360e-06, -6.25236961e-07])

获取 displacement 对象的 max_data 属性,这通常表示 displacement 对象包含的数据的最大值。

displacement.max_data
DPFArray([[8.50619058e+04, 1.04659292e+01, 3.73620870e+05]])

调用 displacement 对象的 get_max_data_at_field 方法,获取第 0 个字段的数据的最大值。

displacement.get_max_data_at_field(0)
DPFArray([8.50619058e+04, 1.04659292e+01, 3.73620870e+05])

获取 displacement 对象的 min_data 属性,这通常表示 displacement 对象包含的数据的最小值。

displacement.min_data
DPFArray([[-1.82645944e-06, -1.04473039e+01, -2.94677257e-04]])

Get stress result#

获取应力结果

获取张量的应力 result 对象。可以获取节点位置的结果或单元位置的结果。默认为节点位置的结果。

el_stress_result = solution.stress(location=post.locations.elemental)
nod_stress_result = solution.stress(location=post.locations.nodal)

Get information on result#

获取有关应力结果的信息

el_stress = el_stress_result.tensor
nod_stress = nod_stress_result.tensor

el_field = el_stress[0]
el_field.location

nod_field = nod_stress[0]
nod_field.location

el_stress.get_max_data_at_field(0)
DPFArray([1.72236948e+10, 3.94412425e+09, 4.40791214e+09, 2.82004580e+09,
          1.90183439e+09, 4.26474819e+09])

Total running time of the script: (0 minutes 2.321 seconds)

Gallery generated by Sphinx-Gallery